X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/748fcded3c795db266076aac381aa335cc4aa42d..682214d5c6ec3e56dbdfd0c97d70d87e614b38c2:/include/wx/generic/dirdlgg.h diff --git a/include/wx/generic/dirdlgg.h b/include/wx/generic/dirdlgg.h index fdcd6caba5..9453d84505 100644 --- a/include/wx/generic/dirdlgg.h +++ b/include/wx/generic/dirdlgg.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: dirdlgg.h +// Name: wx/generic/dirdlgg.h // Purpose: wxGenericDirCtrl class // Builds on wxDirCtrl class written by Robert Roebling for the // wxFile application, modified by Harm van der Heijden. @@ -15,47 +15,55 @@ #ifndef _WX_DIRDLGG_H_ #define _WX_DIRDLGG_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "dirdlgg.h" #endif -#include "wx/defs.h" - -#if wxUSE_DIRDLG - -#include "wx/dialog.h" class WXDLLEXPORT wxGenericDirCtrl; class WXDLLEXPORT wxTextCtrl; class WXDLLEXPORT wxTreeEvent; +// we may be included directly as well as from wx/dirdlg.h (FIXME) +extern WXDLLEXPORT_DATA(const wxChar*) wxDirDialogNameStr; +extern WXDLLEXPORT_DATA(const wxChar*) wxDirSelectorPromptStr; +#ifndef wxDD_DEFAULT_STYLE + #define wxDD_DEFAULT_STYLE \ + (wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxDD_NEW_DIR_BUTTON) +#endif + +#include "wx/dialog.h" + //----------------------------------------------------------------------------- // wxGenericDirDialog //----------------------------------------------------------------------------- -class wxGenericDirDialog: public wxDialog +class WXDLLEXPORT wxGenericDirDialog : public wxDialog { public: - wxGenericDirDialog(): wxDialog() {} - wxGenericDirDialog(wxWindow* parent, const wxString& title, - const wxString& defaultPath = wxEmptyString, - long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER, - const wxPoint& pos = wxDefaultPosition, - const wxSize& sz = wxSize(450, 550), - const wxString& name = _T("dialog")); + wxGenericDirDialog() : wxDialog() { } + + wxGenericDirDialog(wxWindow* parent, + const wxString& title = wxDirSelectorPromptStr, + const wxString& defaultPath = wxEmptyString, + long style = wxDD_DEFAULT_STYLE, + const wxPoint& pos = wxDefaultPosition, + const wxSize& sz = wxSize(450, 550), + const wxString& name = wxDirDialogNameStr); //// Accessors - inline void SetMessage(const wxString& message) { m_message = message; } + void SetMessage(const wxString& message) { m_message = message; } void SetPath(const wxString& path); - inline void SetStyle(long style) { m_dialogStyle = style; } + void SetStyle(long style) { m_dialogStyle = style; } - inline wxString GetMessage(void) const { return m_message; } - wxString GetPath(void) const; - inline long GetStyle(void) const { return m_dialogStyle; } - - wxTextCtrl* GetInputCtrl() const { return m_input; } + wxString GetMessage() const { return m_message; } + wxString GetPath() const; + long GetStyle() const { return m_dialogStyle; } //// Overrides - int ShowModal(); + virtual int ShowModal(); + + // this one is specific to wxGenericDirDialog + wxTextCtrl* GetInputCtrl() const { return m_input; } protected: //// Event handlers @@ -64,6 +72,8 @@ protected: void OnTreeSelected(wxTreeEvent &event); void OnTreeKeyDown(wxTreeEvent &event); void OnNew(wxCommandEvent& event); + void OnGoHome(wxCommandEvent& event); + void OnShowHidden(wxCommandEvent& event); wxString m_message; long m_dialogStyle; @@ -72,12 +82,7 @@ protected: wxTextCtrl* m_input; DECLARE_EVENT_TABLE() + DECLARE_DYNAMIC_CLASS(wxGenericDirDialog) }; -#if !defined(__WXMSW__) && !defined(__WXMAC__) && !defined(__WXPM__) - #define wxDirDialog wxGenericDirDialog -#endif - -#endif // wxUSE_DIRDLG - #endif // _WX_DIRDLGG_H_