#ifndef _WX_DIRCTRL_H_
#define _WX_DIRCTRL_H_
-#if defined(__GNUG__) && !defined(__APPLE__)
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "dirctrlg.h"
#endif
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxTextCtrl;
+class WXDLLEXPORT wxImageList;
+class WXDLLEXPORT wxHashTable;
//-----------------------------------------------------------------------------
// Extra styles for wxGenericDirCtrl
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
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
#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