Moved the implemtation of the generic and the
native GTK 2.4 file dialogs into one place by making wxFileDialog derive from the generic variant and by then choosing which implementation to use. Later, we'll add run-time checks. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -159,11 +159,7 @@ wxSaveFileSelector(const wxChar *what,
|
||||
#elif defined(__WXMOTIF__)
|
||||
#include "wx/motif/filedlg.h"
|
||||
#elif defined(__WXGTK__)
|
||||
#ifdef __WXGTK24__
|
||||
#include "wx/gtk/filedlg.h"
|
||||
#else
|
||||
#include "wx/generic/filedlgg.h"
|
||||
#endif
|
||||
#elif defined(__WXX11__)
|
||||
#include "wx/generic/filedlgg.h"
|
||||
#elif defined(__WXMGL__)
|
||||
|
@@ -34,7 +34,7 @@ class WXDLLEXPORT wxListItem;
|
||||
class WXDLLEXPORT wxStaticText;
|
||||
class WXDLLEXPORT wxTextCtrl;
|
||||
|
||||
#if defined(__WXUNIVERSAL__)||defined(__WXGTK__)||defined(__WXX11__)||defined(__WXMGL__)||defined(__WXCOCOA__)
|
||||
#if defined(__WXUNIVERSAL__)||defined(__WXX11__)||defined(__WXMGL__)||defined(__WXCOCOA__)
|
||||
#define USE_GENERIC_FILEDIALOG
|
||||
#endif
|
||||
|
||||
@@ -53,7 +53,15 @@ public:
|
||||
const wxString& defaultFile = wxEmptyString,
|
||||
const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
|
||||
long style = 0,
|
||||
const wxPoint& pos = wxDefaultPosition);
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
bool bypassGenericImpl = false );
|
||||
bool Create( wxWindow *parent,
|
||||
const wxString& message = wxFileSelectorPromptStr,
|
||||
const wxString& defaultDir = wxEmptyString,
|
||||
const wxString& defaultFile = wxEmptyString,
|
||||
const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
|
||||
long style = 0,
|
||||
const wxPoint& pos = wxDefaultPosition );
|
||||
virtual ~wxGenericFileDialog();
|
||||
|
||||
virtual void SetMessage(const wxString& message) { SetTitle(message); }
|
||||
@@ -87,6 +95,10 @@ public:
|
||||
virtual void HandleAction( const wxString &fn );
|
||||
|
||||
virtual void UpdateControls();
|
||||
|
||||
private:
|
||||
// Don't use this implementation at all :-)
|
||||
bool m_bypassGenericImpl;
|
||||
|
||||
protected:
|
||||
// use the filter with the given index
|
||||
@@ -114,8 +126,6 @@ private:
|
||||
|
||||
class WXDLLEXPORT wxFileDialog: public wxGenericFileDialog
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxFileDialog)
|
||||
|
||||
public:
|
||||
wxFileDialog() {}
|
||||
|
||||
@@ -129,6 +139,9 @@ public:
|
||||
:wxGenericFileDialog(parent, message, defaultDir, defaultFile, wildCard, style, pos)
|
||||
{
|
||||
}
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxFileDialog)
|
||||
};
|
||||
|
||||
#endif // USE_GENERIC_FILEDIALOG
|
||||
|
@@ -15,11 +15,13 @@
|
||||
#pragma interface
|
||||
#endif
|
||||
|
||||
#include "wx/generic/filedlgg.h"
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
// wxFileDialog
|
||||
//-------------------------------------------------------------------------
|
||||
|
||||
class wxFileDialog: public wxFileDialogBase
|
||||
class wxFileDialog: public wxGenericFileDialog
|
||||
{
|
||||
public:
|
||||
wxFileDialog() { }
|
||||
@@ -44,13 +46,20 @@ public:
|
||||
virtual void SetWildcard(const wxString& wildCard);
|
||||
virtual void SetFilterIndex(int filterIndex);
|
||||
|
||||
virtual int ShowModal();
|
||||
virtual bool Show( bool show = true );
|
||||
|
||||
void OnFakeOk( wxCommandEvent &event );
|
||||
|
||||
//private:
|
||||
bool m_destroyed_by_delete;
|
||||
|
||||
void UpdateFromDialog();
|
||||
void UpdateDialog();
|
||||
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxFileDialog)
|
||||
DECLARE_EVENT_TABLE()
|
||||
};
|
||||
|
||||
#endif // __GTKFILEDLGH__
|
||||
|
@@ -15,11 +15,13 @@
|
||||
#pragma interface
|
||||
#endif
|
||||
|
||||
#include "wx/generic/filedlgg.h"
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
// wxFileDialog
|
||||
//-------------------------------------------------------------------------
|
||||
|
||||
class wxFileDialog: public wxFileDialogBase
|
||||
class wxFileDialog: public wxGenericFileDialog
|
||||
{
|
||||
public:
|
||||
wxFileDialog() { }
|
||||
@@ -44,13 +46,20 @@ public:
|
||||
virtual void SetWildcard(const wxString& wildCard);
|
||||
virtual void SetFilterIndex(int filterIndex);
|
||||
|
||||
virtual int ShowModal();
|
||||
virtual bool Show( bool show = true );
|
||||
|
||||
void OnFakeOk( wxCommandEvent &event );
|
||||
|
||||
//private:
|
||||
bool m_destroyed_by_delete;
|
||||
|
||||
void UpdateFromDialog();
|
||||
void UpdateDialog();
|
||||
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxFileDialog)
|
||||
DECLARE_EVENT_TABLE()
|
||||
};
|
||||
|
||||
#endif // __GTKFILEDLGH__
|
||||
|
Reference in New Issue
Block a user