use generic file picker in wxFLP_SAVE case as the native one doesn't allow to select non-existent files

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2008-02-09 23:30:47 +00:00
parent 6214812cad
commit 4db3720881
2 changed files with 3 additions and 10 deletions

View File

@ -99,15 +99,6 @@ public: // overrides
// event handler for the click
void OnDialogOK(wxCommandEvent &);
// GtkFileChooserButton does not support GTK_FILE_CHOOSER_ACTION_SAVE
// so we replace it with GTK_FILE_CHOOSER_ACTION_OPEN; since wxFD_SAVE
// is not supported, wxFD_OVERWRITE_PROMPT isn't too...
virtual long GetDialogStyle() const
{
return (wxGenericFileButton::GetDialogStyle() &
~(wxFD_SAVE | wxFD_OVERWRITE_PROMPT)) | wxFD_OPEN;
}
virtual void SetPath(const wxString &str);
// see macro defined above

View File

@ -41,7 +41,9 @@ bool wxFileButton::Create( wxWindow *parent, wxWindowID id,
long style, const wxValidator& validator,
const wxString &name )
{
if (!gtk_check_version(2,6,0))
// we can't use the native button for wxFLP_SAVE pickers as it can only
// open existing files and there is no way to create a new file using it
if ( !(style & wxFLP_SAVE) && !gtk_check_version(2,6,0) )
{
// VERY IMPORTANT: this code is identic to relative code in wxDirButton;
// if you find a problem here, fix it also in wxDirButton !