Restore wxDIRCTRL_SHOW_FILTERS flag of wxDirCtrl.
Closes #8572. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -39,10 +39,8 @@ enum
|
|||||||
wxDIRCTRL_DIR_ONLY = 0x0010,
|
wxDIRCTRL_DIR_ONLY = 0x0010,
|
||||||
// When setting the default path, select the first file in the directory
|
// When setting the default path, select the first file in the directory
|
||||||
wxDIRCTRL_SELECT_FIRST = 0x0020,
|
wxDIRCTRL_SELECT_FIRST = 0x0020,
|
||||||
#if WXWIN_COMPATIBILITY_2_8
|
// Show the filter list
|
||||||
// Unused, for compatibility only
|
|
||||||
wxDIRCTRL_SHOW_FILTERS = 0x0040,
|
wxDIRCTRL_SHOW_FILTERS = 0x0040,
|
||||||
#endif // WXWIN_COMPATIBILITY_2_8
|
|
||||||
// Use 3D borders on internal controls
|
// Use 3D borders on internal controls
|
||||||
wxDIRCTRL_3D_INTERNAL = 0x0080,
|
wxDIRCTRL_3D_INTERNAL = 0x0080,
|
||||||
// Editable labels
|
// Editable labels
|
||||||
|
@@ -12,6 +12,8 @@ enum
|
|||||||
wxDIRCTRL_DIR_ONLY = 0x0010,
|
wxDIRCTRL_DIR_ONLY = 0x0010,
|
||||||
// When setting the default path, select the first file in the directory
|
// When setting the default path, select the first file in the directory
|
||||||
wxDIRCTRL_SELECT_FIRST = 0x0020,
|
wxDIRCTRL_SELECT_FIRST = 0x0020,
|
||||||
|
// Show the filter list
|
||||||
|
wxDIRCTRL_SHOW_FILTERS = 0x0040,
|
||||||
// Use 3D borders on internal controls
|
// Use 3D borders on internal controls
|
||||||
wxDIRCTRL_3D_INTERNAL = 0x0080,
|
wxDIRCTRL_3D_INTERNAL = 0x0080,
|
||||||
// Editable labels
|
// Editable labels
|
||||||
@@ -38,6 +40,8 @@ enum
|
|||||||
@style{wxDIRCTRL_SELECT_FIRST}
|
@style{wxDIRCTRL_SELECT_FIRST}
|
||||||
When setting the default path, select the first file in the
|
When setting the default path, select the first file in the
|
||||||
directory.
|
directory.
|
||||||
|
@style{wxDIRCTRL_SHOW_FILTERS}
|
||||||
|
Show the drop-down filter list.
|
||||||
@style{wxDIRCTRL_EDIT_LABELS}
|
@style{wxDIRCTRL_EDIT_LABELS}
|
||||||
Allow the folder and file labels to be editable.
|
Allow the folder and file labels to be editable.
|
||||||
@style{wxDIRCTRL_MULTIPLE}
|
@style{wxDIRCTRL_MULTIPLE}
|
||||||
|
@@ -135,6 +135,7 @@ protected:
|
|||||||
wxCheckBox *m_chkDirOnly,
|
wxCheckBox *m_chkDirOnly,
|
||||||
*m_chk3D,
|
*m_chk3D,
|
||||||
*m_chkFirst,
|
*m_chkFirst,
|
||||||
|
*m_chkFilters,
|
||||||
*m_chkLabels,
|
*m_chkLabels,
|
||||||
*m_chkMulti;
|
*m_chkMulti;
|
||||||
|
|
||||||
@@ -190,6 +191,7 @@ void DirCtrlWidgetsPage::CreateContent()
|
|||||||
m_chkDirOnly = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_DIR_ONLY"));
|
m_chkDirOnly = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_DIR_ONLY"));
|
||||||
m_chk3D = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_3D_INTERNAL"));
|
m_chk3D = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_3D_INTERNAL"));
|
||||||
m_chkFirst = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_SELECT_FIRST"));
|
m_chkFirst = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_SELECT_FIRST"));
|
||||||
|
m_chkFilters = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_SHOW_FILTERS"));
|
||||||
m_chkLabels = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_EDIT_LABELS"));
|
m_chkLabels = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_EDIT_LABELS"));
|
||||||
m_chkMulti = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_MULTIPLE"));
|
m_chkMulti = CreateCheckBoxAndAddToSizer(sizerUseFlags, wxT("wxDIRCTRL_MULTIPLE"));
|
||||||
sizerLeft->Add(sizerUseFlags, wxSizerFlags().Expand().Border());
|
sizerLeft->Add(sizerUseFlags, wxSizerFlags().Expand().Border());
|
||||||
@@ -252,6 +254,7 @@ void DirCtrlWidgetsPage::CreateDirCtrl()
|
|||||||
( m_chkDirOnly->IsChecked() ? wxDIRCTRL_DIR_ONLY : 0 ) |
|
( m_chkDirOnly->IsChecked() ? wxDIRCTRL_DIR_ONLY : 0 ) |
|
||||||
( m_chk3D->IsChecked() ? wxDIRCTRL_3D_INTERNAL : 0 ) |
|
( m_chk3D->IsChecked() ? wxDIRCTRL_3D_INTERNAL : 0 ) |
|
||||||
( m_chkFirst->IsChecked() ? wxDIRCTRL_SELECT_FIRST : 0 ) |
|
( m_chkFirst->IsChecked() ? wxDIRCTRL_SELECT_FIRST : 0 ) |
|
||||||
|
( m_chkFilters->IsChecked() ? wxDIRCTRL_SHOW_FILTERS : 0 ) |
|
||||||
( m_chkLabels->IsChecked() ? wxDIRCTRL_EDIT_LABELS : 0 ) |
|
( m_chkLabels->IsChecked() ? wxDIRCTRL_EDIT_LABELS : 0 ) |
|
||||||
( m_chkMulti->IsChecked() ? wxDIRCTRL_MULTIPLE : 0)
|
( m_chkMulti->IsChecked() ? wxDIRCTRL_MULTIPLE : 0)
|
||||||
);
|
);
|
||||||
|
@@ -518,7 +518,7 @@ bool wxGenericDirCtrl::Create(wxWindow *parent,
|
|||||||
m_treeCtrl = CreateTreeCtrl(this, wxID_TREECTRL,
|
m_treeCtrl = CreateTreeCtrl(this, wxID_TREECTRL,
|
||||||
wxPoint(0,0), GetClientSize(), treeStyle);
|
wxPoint(0,0), GetClientSize(), treeStyle);
|
||||||
|
|
||||||
if (!filter.empty())
|
if (!filter.empty() && (style & wxDIRCTRL_SHOW_FILTERS))
|
||||||
m_filterListCtrl = new wxDirFilterListCtrl(this, wxID_FILTERLISTCTRL);
|
m_filterListCtrl = new wxDirFilterListCtrl(this, wxID_FILTERLISTCTRL);
|
||||||
|
|
||||||
m_defaultPath = dir;
|
m_defaultPath = dir;
|
||||||
@@ -1251,7 +1251,7 @@ void wxGenericDirCtrl::SetFilter(const wxString& filter)
|
|||||||
{
|
{
|
||||||
m_filter = filter;
|
m_filter = filter;
|
||||||
|
|
||||||
if (!filter.empty() && !m_filterListCtrl)
|
if (!filter.empty() && !m_filterListCtrl && HasFlag(wxDIRCTRL_SHOW_FILTERS))
|
||||||
m_filterListCtrl = new wxDirFilterListCtrl(this, wxID_FILTERLISTCTRL);
|
m_filterListCtrl = new wxDirFilterListCtrl(this, wxID_FILTERLISTCTRL);
|
||||||
else if (filter.empty() && m_filterListCtrl)
|
else if (filter.empty() && m_filterListCtrl)
|
||||||
{
|
{
|
||||||
|
@@ -33,6 +33,7 @@ wxGenericDirCtrlXmlHandler::wxGenericDirCtrlXmlHandler()
|
|||||||
XRC_ADD_STYLE(wxDIRCTRL_DIR_ONLY);
|
XRC_ADD_STYLE(wxDIRCTRL_DIR_ONLY);
|
||||||
XRC_ADD_STYLE(wxDIRCTRL_3D_INTERNAL);
|
XRC_ADD_STYLE(wxDIRCTRL_3D_INTERNAL);
|
||||||
XRC_ADD_STYLE(wxDIRCTRL_SELECT_FIRST);
|
XRC_ADD_STYLE(wxDIRCTRL_SELECT_FIRST);
|
||||||
|
XRC_ADD_STYLE(wxDIRCTRL_SHOW_FILTERS);
|
||||||
XRC_ADD_STYLE(wxDIRCTRL_EDIT_LABELS);
|
XRC_ADD_STYLE(wxDIRCTRL_EDIT_LABELS);
|
||||||
XRC_ADD_STYLE(wxDIRCTRL_MULTIPLE);
|
XRC_ADD_STYLE(wxDIRCTRL_MULTIPLE);
|
||||||
AddWindowStyles();
|
AddWindowStyles();
|
||||||
|
Reference in New Issue
Block a user