Filelistengine.h
上传用户:xinrui0099
上传日期:2010-03-05
资源大小:48k
文件大小:3k
源码类别:

Symbian

开发平台:

C/C++

  1. /*
  2. * ============================================================================
  3. *  Name     : FileListEngine.h
  4. *  Part of  : FileList project from Forum Nokia sample code
  5. *  Created  : 18.12.2002 by Forum Nokia
  6. *  Description:
  7. *     Engine for constructing filelist.
  8. *  Version  : 1.0
  9. *  Copyright: Nokia Corporation, 2003
  10. * ============================================================================
  11. */
  12. #ifndef FILELISTENGINE_H
  13. #define FILELISTENGINE_H
  14. #include <coecntrl.h>
  15. #include <f32file.h>        // for CDir
  16. #include <documenthandler.h>// for launching
  17. #include <badesca.h>        // for CDesCArray
  18. #include <apmstd.h>         // for TDataType
  19. /**
  20.  *  CFileListEngine  
  21.  *  Used to list all the files in specific directories.
  22.  */
  23. class CFileListEngine : public CCoeControl
  24.     {
  25.     public: // // Constructors and destructor
  26.         /**
  27.         * Symbian default constructor.
  28.         */      
  29.         void ConstructL();
  30.         /**
  31.         * Destructor.
  32.         */      
  33.         ~CFileListEngine();
  34.     public: // New functions
  35.     void GetVideoFilePathAndNameAtPositon(TInt aPosition, TDes &aName );
  36.         /**
  37.         * This Method reads the appropriate directory list.
  38.         */      
  39.         TInt StartFileList();
  40.         /**
  41.         * This Method constructs the listbox items with directory 
  42. * information
  43.         */      
  44.         void GetFileListItems(CDesCArray* iItems);
  45.         /**
  46.         * Sets which directory to list.
  47. * @param aDirectory directory to set
  48.         */      
  49.         void SetDirectory(TInt aDirectory);
  50.         /**
  51.         * This Method sets whether modification date or file size 
  52. * is shown. There is also option for toggling the status.
  53. * @param aSizeDate set size or date
  54.         */      
  55.         void SetSizeDate(TInt aSizeDate);
  56.         /**
  57.         * This Method ends the FileList session
  58.         */      
  59.         void EndFileList();
  60.         /**
  61.         * This Method removes all listbox items when a new list 
  62. * needs to be shown.
  63.         */      
  64.         TBool RemoveItems(CDesCArray* aItems);
  65.         /**
  66.         * This Method launches selected item with DocumentHandler. 
  67. * DocumentHandler will launch correct application depending
  68. * on the file type.
  69. * Note that all the extensions do not work on emulator.
  70.         */      
  71.         void LaunchCurrent(TInt aPosition);
  72.     private: //Data
  73.         // Define local CDir variable
  74.         CDir* iDirList;
  75.         // Fileserver session
  76.         RFs iFsSession;
  77.   
  78.     private: // variables
  79.         // Which directory to show
  80.         TInt iDirectory;    
  81.         // Show date or size?
  82.         TInt iSizeDate;     
  83.     };
  84. #endif // FILELISTENGINE_H