1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: SWIG interface file for wxGenericDirCtrl
7 // Created: 10-June-1998
9 // Copyright: (c) 2002 by Total Control Software
10 // Licence: wxWindows license
11 /////////////////////////////////////////////////////////////////////////////
16 //---------------------------------------------------------------------------
18 MAKE_CONST_WXSTRING(DirDialogDefaultFolderStr);
20 //---------------------------------------------------------------------------
23 // Extra styles for wxGenericDirCtrl
26 // Only allow directory viewing/selection, no files
27 wxDIRCTRL_DIR_ONLY = 0x0010,
28 // When setting the default path, select the first file in the directory
29 wxDIRCTRL_SELECT_FIRST = 0x0020,
30 // Show the filter list
31 wxDIRCTRL_SHOW_FILTERS = 0x0040,
32 // Use 3D borders on internal controls
33 wxDIRCTRL_3D_INTERNAL = 0x0080,
35 wxDIRCTRL_EDIT_LABELS = 0x0100
41 class wxDirItemData : public wxObject // wxTreeItemData
44 wxDirItemData(const wxString& path, const wxString& name, bool isDir);
45 // ~wxDirItemDataEx();
46 void SetNewDirName( wxString path );
47 wxString m_path, m_name;
57 class wxGenericDirCtrl: public wxControl
60 %pythonAppend wxGenericDirCtrl "self._setOORInfo(self)"
61 %pythonAppend wxGenericDirCtrl() ""
63 wxGenericDirCtrl(wxWindow *parent, const wxWindowID id = -1,
64 const wxString& dir = wxPyDirDialogDefaultFolderStr,
65 const wxPoint& pos = wxDefaultPosition,
66 const wxSize& size = wxDefaultSize,
67 long style = wxDIRCTRL_3D_INTERNAL|wxSUNKEN_BORDER,
68 const wxString& filter = wxPyEmptyString,
69 int defaultFilter = 0,
70 const wxString& name = wxPyTreeCtrlNameStr);
71 %name(PreGenericDirCtrl)wxGenericDirCtrl();
74 bool Create(wxWindow *parent, const wxWindowID id = -1,
75 const wxString& dir = wxPyDirDialogDefaultFolderStr,
76 const wxPoint& pos = wxDefaultPosition,
77 const wxSize& size = wxDefaultSize,
78 long style = wxDIRCTRL_3D_INTERNAL|wxSUNKEN_BORDER,
79 const wxString& filter = wxPyEmptyString,
80 int defaultFilter = 0,
81 const wxString& name = wxPyTreeCtrlNameStr);
85 // Try to expand as much of the given path as possible.
86 virtual bool ExpandPath(const wxString& path);
89 virtual inline wxString GetDefaultPath() const;
90 virtual void SetDefaultPath(const wxString& path);
92 // Get dir or filename
93 virtual wxString GetPath() const;
95 // Get selected filename path only (else empty string).
96 // I.e. don't count a directory as a selection
97 virtual wxString GetFilePath() const;
98 virtual void SetPath(const wxString& path);
100 virtual void ShowHidden( bool show );
101 virtual bool GetShowHidden();
103 virtual wxString GetFilter() const;
104 virtual void SetFilter(const wxString& filter);
106 virtual int GetFilterIndex() const;
107 virtual void SetFilterIndex(int n);
109 virtual wxTreeItemId GetRootId();
111 virtual wxPyTreeCtrl* GetTreeCtrl() const;
112 virtual wxDirFilterListCtrl* GetFilterListCtrl() const;
115 // Parse the filter into an array of filters and an array of descriptions
116 // virtual int ParseFilter(const wxString& filterStr, wxArrayString& filters, wxArrayString& descriptions);
119 virtual wxTreeItemId, FindChild(wxTreeItemId parentId, const wxString& path, bool& OUTPUT),
120 "FindChild(wxTreeItemId parentId, wxString path) -> (item, done)",
121 "Find the child that matches the first part of 'path'. E.g. if a child
122 path is \"/usr\" and 'path' is \"/usr/include\" then the child for
123 /usr is returned. If the path string has been used (we're at the
124 leaf), done is set to True.
128 // Resize the components of the control
129 virtual void DoResize();
131 // Collapse & expand the tree, thus re-creating it from scratch:
132 virtual void ReCreateTree();
139 class wxDirFilterListCtrl: public wxChoice
142 %pythonAppend wxDirFilterListCtrl "self._setOORInfo(self)"
143 %pythonAppend wxDirFilterListCtrl() ""
145 wxDirFilterListCtrl(wxGenericDirCtrl* parent, const wxWindowID id = -1,
146 const wxPoint& pos = wxDefaultPosition,
147 const wxSize& size = wxDefaultSize,
149 %name(PreDirFilterListCtrl)wxDirFilterListCtrl();
151 bool Create(wxGenericDirCtrl* parent, const wxWindowID id = -1,
152 const wxPoint& pos = wxDefaultPosition,
153 const wxSize& size = wxDefaultSize,
157 void FillFilterList(const wxString& filter, int defaultFilter);
161 //---------------------------------------------------------------------------
162 //---------------------------------------------------------------------------
163 //---------------------------------------------------------------------------