made it possible to customize wxGenericDirCtrl, such as using checked wxTreeCtrl (patch #1019699)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík
2004-11-03 23:01:57 +00:00
parent b438278443
commit a78955e377
4 changed files with 36 additions and 30 deletions

View File

@@ -177,6 +177,7 @@ protected:
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData * data = NULL); wxTreeItemData * data = NULL);
//void FindChildFiles(wxTreeItemId id, int dirFlags, wxArrayString& filenames); //void FindChildFiles(wxTreeItemId id, int dirFlags, wxArrayString& filenames);
virtual wxTreeCtrl* CreateTreeCtrl(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long treeStyle);
// Extract description and actual filter from overall filter string // Extract description and actual filter from overall filter string
bool ExtractWildcard(const wxString& filterStr, int n, wxString& filter, wxString& description); bool ExtractWildcard(const wxString& filterStr, int n, wxString& filter, wxString& description);

View File

@@ -94,16 +94,16 @@ public:
// Additionally, the application might choose to show a state icon // Additionally, the application might choose to show a state icon
// which corresponds to an app-defined item state (for example, // which corresponds to an app-defined item state (for example,
// checked/unchecked) which are taken from the state image list. // checked/unchecked) which are taken from the state image list.
wxImageList *GetImageList() const; virtual wxImageList *GetImageList() const;
wxImageList *GetStateImageList() const; virtual wxImageList *GetStateImageList() const;
wxImageList *GetButtonsImageList() const; virtual wxImageList *GetButtonsImageList() const;
void SetImageList(wxImageList *imageList); virtual void SetImageList(wxImageList *imageList);
void SetStateImageList(wxImageList *imageList); virtual void SetStateImageList(wxImageList *imageList);
void SetButtonsImageList(wxImageList *imageList); virtual void SetButtonsImageList(wxImageList *imageList);
void AssignImageList(wxImageList *imageList); virtual void AssignImageList(wxImageList *imageList);
void AssignStateImageList(wxImageList *imageList); virtual void AssignStateImageList(wxImageList *imageList);
void AssignButtonsImageList(wxImageList *imageList); virtual void AssignButtonsImageList(wxImageList *imageList);
// Functions to work with tree ctrl items. // Functions to work with tree ctrl items.
@@ -113,7 +113,7 @@ public:
// retrieve item's label // retrieve item's label
wxString GetItemText(const wxTreeItemId& item) const; wxString GetItemText(const wxTreeItemId& item) const;
// get one of the images associated with the item (normal by default) // get one of the images associated with the item (normal by default)
int GetItemImage(const wxTreeItemId& item, virtual int GetItemImage(const wxTreeItemId& item,
wxTreeItemIcon which = wxTreeItemIcon_Normal) const; wxTreeItemIcon which = wxTreeItemIcon_Normal) const;
// get the data associated with the item // get the data associated with the item
wxTreeItemData *GetItemData(const wxTreeItemId& item) const; wxTreeItemData *GetItemData(const wxTreeItemId& item) const;
@@ -133,7 +133,7 @@ public:
// set item's label // set item's label
void SetItemText(const wxTreeItemId& item, const wxString& text); void SetItemText(const wxTreeItemId& item, const wxString& text);
// get one of the images associated with the item (normal by default) // get one of the images associated with the item (normal by default)
void SetItemImage(const wxTreeItemId& item, int image, virtual void SetItemImage(const wxTreeItemId& item, int image,
wxTreeItemIcon which = wxTreeItemIcon_Normal); wxTreeItemIcon which = wxTreeItemIcon_Normal);
// associate some data with the item // associate some data with the item
void SetItemData(const wxTreeItemId& item, wxTreeItemData *data); void SetItemData(const wxTreeItemId& item, wxTreeItemData *data);
@@ -250,32 +250,32 @@ public:
// ---------- // ----------
// add the root node to the tree // add the root node to the tree
wxTreeItemId AddRoot(const wxString& text, virtual wxTreeItemId AddRoot(const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);
// insert a new item in as the first child of the parent // insert a new item in as the first child of the parent
wxTreeItemId PrependItem(const wxTreeItemId& parent, virtual wxTreeItemId PrependItem(const wxTreeItemId& parent,
const wxString& text, const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);
// insert a new item after a given one // insert a new item after a given one
wxTreeItemId InsertItem(const wxTreeItemId& parent, virtual wxTreeItemId InsertItem(const wxTreeItemId& parent,
const wxTreeItemId& idPrevious, const wxTreeItemId& idPrevious,
const wxString& text, const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);
// insert a new item before the one with the given index // insert a new item before the one with the given index
wxTreeItemId InsertItem(const wxTreeItemId& parent, virtual wxTreeItemId InsertItem(const wxTreeItemId& parent,
size_t index, size_t index,
const wxString& text, const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);
// insert a new item in as the last child of the parent // insert a new item in as the last child of the parent
wxTreeItemId AppendItem(const wxTreeItemId& parent, virtual wxTreeItemId AppendItem(const wxTreeItemId& parent,
const wxString& text, const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);

View File

@@ -115,13 +115,13 @@ public:
// Additionally, the application might choose to show a state icon // Additionally, the application might choose to show a state icon
// which corresponds to an app-defined item state (for example, // which corresponds to an app-defined item state (for example,
// checked/unchecked) which are taken from the state image list. // checked/unchecked) which are taken from the state image list.
wxImageList *GetImageList() const; virtual wxImageList *GetImageList() const;
wxImageList *GetStateImageList() const; virtual wxImageList *GetStateImageList() const;
void SetImageList(wxImageList *imageList); virtual void SetImageList(wxImageList *imageList);
void SetStateImageList(wxImageList *imageList); virtual void SetStateImageList(wxImageList *imageList);
void AssignImageList(wxImageList *imageList); virtual void AssignImageList(wxImageList *imageList);
void AssignStateImageList(wxImageList *imageList); virtual void AssignStateImageList(wxImageList *imageList);
// Functions to work with tree ctrl items. Unfortunately, they can _not_ be // Functions to work with tree ctrl items. Unfortunately, they can _not_ be
// member functions of wxTreeItem because they must know the tree the item // member functions of wxTreeItem because they must know the tree the item
@@ -134,7 +134,7 @@ public:
// retrieve items label // retrieve items label
wxString GetItemText(const wxTreeItemId& item) const; wxString GetItemText(const wxTreeItemId& item) const;
// get one of the images associated with the item (normal by default) // get one of the images associated with the item (normal by default)
int GetItemImage(const wxTreeItemId& item, virtual int GetItemImage(const wxTreeItemId& item,
wxTreeItemIcon which = wxTreeItemIcon_Normal) const; wxTreeItemIcon which = wxTreeItemIcon_Normal) const;
// get the data associated with the item // get the data associated with the item
wxTreeItemData *GetItemData(const wxTreeItemId& item) const; wxTreeItemData *GetItemData(const wxTreeItemId& item) const;
@@ -154,7 +154,7 @@ public:
// set items label // set items label
void SetItemText(const wxTreeItemId& item, const wxString& text); void SetItemText(const wxTreeItemId& item, const wxString& text);
// get one of the images associated with the item (normal by default) // get one of the images associated with the item (normal by default)
void SetItemImage(const wxTreeItemId& item, int image, virtual void SetItemImage(const wxTreeItemId& item, int image,
wxTreeItemIcon which = wxTreeItemIcon_Normal); wxTreeItemIcon which = wxTreeItemIcon_Normal);
// associate some data with the item // associate some data with the item
void SetItemData(const wxTreeItemId& item, wxTreeItemData *data); void SetItemData(const wxTreeItemId& item, wxTreeItemData *data);
@@ -264,32 +264,32 @@ public:
// ---------- // ----------
// add the root node to the tree // add the root node to the tree
wxTreeItemId AddRoot(const wxString& text, virtual wxTreeItemId AddRoot(const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);
// insert a new item in as the first child of the parent // insert a new item in as the first child of the parent
wxTreeItemId PrependItem(const wxTreeItemId& parent, virtual wxTreeItemId PrependItem(const wxTreeItemId& parent,
const wxString& text, const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);
// insert a new item after a given one // insert a new item after a given one
wxTreeItemId InsertItem(const wxTreeItemId& parent, virtual wxTreeItemId InsertItem(const wxTreeItemId& parent,
const wxTreeItemId& idPrevious, const wxTreeItemId& idPrevious,
const wxString& text, const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);
// insert a new item before the one with the given index // insert a new item before the one with the given index
wxTreeItemId InsertItem(const wxTreeItemId& parent, virtual wxTreeItemId InsertItem(const wxTreeItemId& parent,
size_t index, size_t index,
const wxString& text, const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);
// insert a new item in as the last child of the parent // insert a new item in as the last child of the parent
wxTreeItemId AppendItem(const wxTreeItemId& parent, virtual wxTreeItemId AppendItem(const wxTreeItemId& parent,
const wxString& text, const wxString& text,
int image = -1, int selectedImage = -1, int image = -1, int selectedImage = -1,
wxTreeItemData *data = NULL); wxTreeItemData *data = NULL);

View File

@@ -519,7 +519,7 @@ bool wxGenericDirCtrl::Create(wxWindow *parent,
else else
filterStyle |= wxBORDER_SUNKEN; filterStyle |= wxBORDER_SUNKEN;
m_treeCtrl = new wxTreeCtrl(this, wxID_TREECTRL, m_treeCtrl = CreateTreeCtrl(this, wxID_TREECTRL,
wxPoint(0,0), GetClientSize(), treeStyle); wxPoint(0,0), GetClientSize(), treeStyle);
if (!filter.IsEmpty() && (style & wxDIRCTRL_SHOW_FILTERS)) if (!filter.IsEmpty() && (style & wxDIRCTRL_SHOW_FILTERS))
@@ -584,6 +584,11 @@ void wxGenericDirCtrl::Init()
m_filterListCtrl = NULL; m_filterListCtrl = NULL;
} }
wxTreeCtrl* wxGenericDirCtrl::CreateTreeCtrl(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long treeStyle)
{
return new wxTreeCtrl(parent, id, pos, size, treeStyle);
}
void wxGenericDirCtrl::ShowHidden( bool show ) void wxGenericDirCtrl::ShowHidden( bool show )
{ {
m_showHidden = show; m_showHidden = show;