|
From: Emilien K. <cur...@us...> - 2005-03-08 18:46:39
|
Update of /cvsroot/wxdevcenter/wxDevCenter/include/wxDevCenter In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22285/include/wxDevCenter Modified Files: Tag: manager-virtualization FileSystem.h FileSystemStandard.h Manager.h Log Message: Passage du FileSystemManager à la nouvelle architecture des gestionnaires. Index: Manager.h =================================================================== RCS file: /cvsroot/wxdevcenter/wxDevCenter/include/wxDevCenter/Attic/Manager.h,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** Manager.h 8 Mar 2005 17:26:27 -0000 1.1.2.1 --- Manager.h 8 Mar 2005 18:46:24 -0000 1.1.2.2 *************** *** 98,106 **** * @param nIndex Index de l'objet. * @return Référence de l'objet.*/ ! ItemType& Item(unsigned int n){return *at(n);} /** Accès constant à un objet. * @param nIndex Index de l'objet. * @return Référence de l'objet.*/ ! const ItemType& Item(unsigned int n)const{return *at(n) ;} /** Enregistrement d'un objet. * @param pObj Adresse de l'objet. --- 98,106 ---- * @param nIndex Index de l'objet. * @return Référence de l'objet.*/ ! ItemType& Item(unsigned int nIndex){return *at(nIndex);} /** Accès constant à un objet. * @param nIndex Index de l'objet. * @return Référence de l'objet.*/ ! const ItemType& Item(unsigned int nIndex)const{return *at(nIndex);} /** Enregistrement d'un objet. * @param pObj Adresse de l'objet. *************** *** 153,156 **** --- 153,158 ---- { public: + /** Constructeur.*/ + InitializableObjectManager():ObjectManager<ItemType>(){} /** @name Surcharge des fonctions de manipulations. * @{ */ *************** *** 260,268 **** * @param nIndex Index du patron. * @return Référence du patron.*/ ! Template& GetTemplate(unsigned int n){return InitializableObjectManager<Template>::Item(n);} /** Accès constant à un patron. * @param nIndex Index du patron. * @return Référence du patron.*/ ! const Template& GetTemplate(unsigned int n)const{return InitializableObjectManager<Template>::Item(n);} /** Enregistrement d'un patron. * @param pTemplate Adresse du patron. --- 262,270 ---- * @param nIndex Index du patron. * @return Référence du patron.*/ ! Template& GetTemplate(unsigned int nIndex){return InitializableObjectManager<Template>::Item(nIndex);} /** Accès constant à un patron. * @param nIndex Index du patron. * @return Référence du patron.*/ ! const Template& GetTemplate(unsigned int nIndex)const{return InitializableObjectManager<Template>::Item(nIndex);} /** Enregistrement d'un patron. * @param pTemplate Adresse du patron. Index: FileSystemStandard.h =================================================================== RCS file: /cvsroot/wxdevcenter/wxDevCenter/include/wxDevCenter/FileSystemStandard.h,v retrieving revision 1.9 retrieving revision 1.9.2.1 diff -C2 -d -r1.9 -r1.9.2.1 *** FileSystemStandard.h 7 Mar 2005 15:23:02 -0000 1.9 --- FileSystemStandard.h 8 Mar 2005 18:46:24 -0000 1.9.2.1 *************** *** 42,45 **** --- 42,48 ---- { public: + virtual wxString GetFileSystemName()const{return WXDC_SYSTEM_STDFS_NAME;} + virtual wxIconBundle GetIconBundle()const{return wxGetApp().LoadAppIconBundle("desktop");} + wxString GetProtocoleName()const{return "file";} bool CreateDirectory(FilePath strDir); Index: FileSystem.h =================================================================== RCS file: /cvsroot/wxdevcenter/wxDevCenter/include/wxDevCenter/FileSystem.h,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** FileSystem.h 25 Feb 2005 20:45:55 -0000 1.3 --- FileSystem.h 8 Mar 2005 18:46:24 -0000 1.3.2.1 *************** *** 33,36 **** --- 33,37 ---- #define __WXDEVCENTER_FILESYSTEM + #include <wxDevCenter/Manager.h> #include <wxDevCenter/FileTools.h> *************** *** 121,127 **** * @see UnixStandardFileSystem */ ! class WXDC_DLL_BASE FileSystem : public wxObject { public: /** @name Enumération du contenu. * @{ */ --- 122,137 ---- * @see UnixStandardFileSystem */ ! class WXDC_DLL_BASE FileSystem : public wxObject, public InitializableInterface { public: + /** @name Propriétés générales. + * @{ */ + /** Retourne le nom du système de fichier. + * Le nom n'est qu'une donnée de présentation est en aucun cas une clef unique.*/ + virtual wxString GetFileSystemName()const{return wxT("");} + /** Retourne le bundle d'icones du système de fichier.*/ + virtual wxIconBundle GetIconBundle()const{return wxIconBundle();} + /** @} */ + /** @name Enumération du contenu. * @{ */ *************** *** 212,278 **** * Fait le lien entre les noms de fichiers, les systèmes de fichiers et les archives. */ ! class WXDC_DLL_BASE FileSystemManager : public wxObject { public: - /** Structure d'association des systèmes de fichiers avec d'autres infos.*/ - struct WXDC_DLL_BASE FileSystemManagerAssoc - { - /** Adresse de l'instance du système de fichier.*/ - FileSystem* pFileSystem; - /** Nom du système de fichier.*/ - wxString strName; - /** Bundle d'icone associé.*/ - wxIconBundle Icones; - }; - protected: - WX_DEFINE_USER_EXPORTED_ARRAY(FileSystemManagerAssoc*, FileSystemManagerAssocArray, class WXDC_DLL_BASE); - - /** Tableau des systèmes de fichiers enregistrés.*/ - FileSystemManagerAssocArray m_arFileSystems; - public: FileSystemManager(); virtual ~FileSystemManager(); - /** Enregistre un nouveau système de fichier. - * @param pFileSystem Système de fichier à enregistrer. - * @param strName Nom de présentation du système. - * @param Icones Bundle d'icone pour la représentation graphique. - */ - void RegisterFileSystem(FileSystem* pFileSystem, const wxString& strName, const wxIconBundle& Icones); - - /** Désinscrit le système de fichier. - * Le système de fichier est désinscrit mais pas détruit. - * @param pFileSystem Système de fichier à désinscrire. - */ - void RemoveFileSystem(FileSystem* pFileSystem); - - /** Supprime le système de fichier. - * Le système de fichier est désinscrit puis détruit. - * @param pFileSystem Système de fichier à supprimer. - */ - void DeleteFileSystem(FileSystem* pFileSystem); - - /** Retourne le nombre de systèmes de fichiers enregistrés. - * @return Nombre de systèmes enregistrés. - */ - unsigned int GetCount(); - - /** Cherche si un système de fichier est attaché. - * @param pFileSystem Système de fichier à supprimer. - * @return Index du système de fichier et -1 si non attaché.*/ - int Find(FileSystem* pFileSystem); - - /** Retourne une référence vers la description demandée. - * @param nIndex Indice du système de fichier. - * @return Référence de l'association du système de fichier. - */ - FileSystemManagerAssoc& GetFileSystem(int nIndex){return *m_arFileSystems[nIndex];} - - /** Retourne une référence vers la description demandée. - * @param pFileSystem Systeme de fichier demandé. - * @return Référence de l'association du système de fichier. - */ - FileSystemManagerAssoc& GetFileSystem(FileSystem* pFileSystem){return *m_arFileSystems[Find(pFileSystem)];} - /** Retourne le système de fichier correspondant à un chemin de fichier. * @param strPath Chemin du fichier. --- 222,231 ---- * Fait le lien entre les noms de fichiers, les systèmes de fichiers et les archives. */ ! class WXDC_DLL_BASE FileSystemManager : public InitializableObjectManager<FileSystem> { public: FileSystemManager(); virtual ~FileSystemManager(); /** Retourne le système de fichier correspondant à un chemin de fichier. * @param strPath Chemin du fichier. |