X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/22f3361e1cf25c52a2da8fdfc5cb081809e18fb9..be6577566570876c0c00621ff98c786d7c6de80e:/include/wx/generic/dirctrlg.h diff --git a/include/wx/generic/dirctrlg.h b/include/wx/generic/dirctrlg.h index 27b5fa36ef..977b5396a7 100644 --- a/include/wx/generic/dirctrlg.h +++ b/include/wx/generic/dirctrlg.h @@ -31,6 +31,8 @@ //----------------------------------------------------------------------------- class WXDLLEXPORT wxTextCtrl; +class WXDLLEXPORT wxImageList; +class WXDLLEXPORT wxHashTable; //----------------------------------------------------------------------------- // Extra styles for wxGenericDirCtrl @@ -161,9 +163,13 @@ public: virtual void ReCreateTree(); protected: - void ExpandDir(wxTreeItemId parentId); - void CollapseDir(wxTreeItemId parentId); - void AddSection(const wxString& path, const wxString& name, int imageId = 0); + virtual void ExpandDir(wxTreeItemId parentId); + virtual void CollapseDir(wxTreeItemId parentId); + virtual const wxTreeItemId AddSection(const wxString& path, const wxString& name, int imageId = 0); + virtual wxTreeItemId AppendItem (const wxTreeItemId & parent, + const wxString & text, + int image = -1, int selectedImage = -1, + wxTreeItemData * data = NULL); //void FindChildFiles(wxTreeItemId id, int dirFlags, wxArrayString& filenames); // Extract description and actual filter from overall filter string @@ -172,7 +178,6 @@ protected: private: bool m_showHidden; wxTreeItemId m_rootId; - wxImageList* m_imageList; wxString m_defaultPath; // Starting path long m_styleEx; // Extended style wxString m_filter; // Wildcards in same format as per wxFileDialog @@ -235,6 +240,42 @@ protected: #define wxID_TREECTRL 7000 #define wxID_FILTERLISTCTRL 7001 +//------------------------------------------------------------------------- +// wxFileIconsTable - use wxTheFileIconsTable which is created as necessary +//------------------------------------------------------------------------- + +class WXDLLEXPORT wxFileIconsTable +{ +public: + wxFileIconsTable(); + ~wxFileIconsTable(); + + enum iconId_Type + { + folder, + folder_open, + computer, + drive, + cdrom, + floppy, + removeable, + file, + executable + }; + + int GetIconID(const wxString& extension, const wxString& mime = wxEmptyString); + wxImageList *GetSmallImageList(); + +protected: + void Create(); // create on first use + + wxImageList *m_smallImageList; + wxHashTable *m_HashTable; +}; + +// The global fileicons table +WXDLLEXPORT_DATA(extern wxFileIconsTable *) wxTheFileIconsTable; + #endif // wxUSE_DIRDLG #endif