Added wxFLP_SMALL and wxDIRP_SMALL styles for wx{File,Dir}PickerCtrl.

These styles allow to use a smaller browse button as the standard one takes
too much space, often leaving too little of it for the more important text
control part.

Notice that both styles are, in fact, equal to wxPB_SMALL but only file and
directory pickers currently use it as it doesn't make sense for the colour and
font pickers.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2011-08-27 14:11:25 +00:00
parent ea7ff9ad2a
commit 75bc8b3454
10 changed files with 74 additions and 16 deletions

View File

@@ -100,7 +100,8 @@ protected:
wxCheckBox *m_chkDirTextCtrl,
*m_chkDirChangeDir,
*m_chkDirMustExist;
*m_chkDirMustExist,
*m_chkSmall;
wxBoxSizer *m_sizer;
private:
@@ -148,6 +149,7 @@ void DirPickerWidgetsPage::CreateContent()
m_chkDirTextCtrl = CreateCheckBoxAndAddToSizer(dirbox, wxT("With textctrl"), false);
m_chkDirMustExist = CreateCheckBoxAndAddToSizer(dirbox, wxT("Dir must exist"), false);
m_chkDirChangeDir = CreateCheckBoxAndAddToSizer(dirbox, wxT("Change working dir"), false);
m_chkSmall = CreateCheckBoxAndAddToSizer(dirbox, "&Small version", false);
boxleft->Add(dirbox, 0, wxALL|wxGROW, 5);
boxleft->Add(new wxButton(this, PickerPage_Reset, wxT("&Reset")),
@@ -196,6 +198,9 @@ long DirPickerWidgetsPage::GetPickerStyle()
if ( m_chkDirChangeDir->GetValue() )
style |= wxDIRP_CHANGE_DIR;
if ( m_chkSmall->GetValue() )
style |= wxDIRP_SMALL;
return style;
}
@@ -213,6 +218,7 @@ void DirPickerWidgetsPage::Reset()
m_chkDirTextCtrl->SetValue((wxDIRP_DEFAULT_STYLE & wxDIRP_USE_TEXTCTRL) != 0);
m_chkDirMustExist->SetValue((wxDIRP_DEFAULT_STYLE & wxDIRP_DIR_MUST_EXIST) != 0);
m_chkDirChangeDir->SetValue((wxDIRP_DEFAULT_STYLE & wxDIRP_CHANGE_DIR) != 0);
m_chkSmall->SetValue((wxFLP_DEFAULT_STYLE & wxDIRP_SMALL) != 0);
}
@@ -236,7 +242,8 @@ void DirPickerWidgetsPage::OnCheckBox(wxCommandEvent &event)
{
if (event.GetEventObject() == m_chkDirTextCtrl ||
event.GetEventObject() == m_chkDirChangeDir ||
event.GetEventObject() == m_chkDirMustExist)
event.GetEventObject() == m_chkDirMustExist ||
event.GetEventObject() == m_chkSmall)
RecreatePicker();
}