X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/957aea456c1a67fb57084e7e5895fc17d85f8a12..254fbd140e67b60f46d7380c6ac242110ddd7585:/include/wx/generic/dirdlgg.h diff --git a/include/wx/generic/dirdlgg.h b/include/wx/generic/dirdlgg.h index 908473efef..a076fa4ada 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,61 @@ #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 + +#ifdef __WXWINCE__ + #define wxDD_DEFAULT_STYLE \ + (wxDEFAULT_DIALOG_STYLE | wxDD_NEW_DIR_BUTTON) +#else + #define wxDD_DEFAULT_STYLE \ + (wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxDD_NEW_DIR_BUTTON) +#endif +#endif + +#include "wx/dialog.h" + //----------------------------------------------------------------------------- // wxGenericDirDialog //----------------------------------------------------------------------------- -class WXDLLEXPORT wxGenericDirDialog: public wxDialog +class WXDLLEXPORT wxGenericDirDialog : public wxDialog { public: - wxGenericDirDialog(): wxDialog() {} - wxGenericDirDialog(wxWindow* parent, const wxString& title, + wxGenericDirDialog() : wxDialog() { } + + wxGenericDirDialog(wxWindow* parent, + const wxString& title = wxDirSelectorPromptStr, const wxString& defaultPath = wxEmptyString, - long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER, + long style = wxDD_DEFAULT_STYLE, const wxPoint& pos = wxDefaultPosition, const wxSize& sz = wxSize(450, 550), - const wxString& name = _T("dialog")); + 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; } - - inline wxString GetMessage(void) const { return m_message; } - wxString GetPath(void) const; - inline long GetStyle(void) const { return m_dialogStyle; } + void SetStyle(long style) { m_dialogStyle = style; } - 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 +78,7 @@ protected: void OnTreeSelected(wxTreeEvent &event); void OnTreeKeyDown(wxTreeEvent &event); void OnNew(wxCommandEvent& event); + void OnGoHome(wxCommandEvent& event); void OnShowHidden(wxCommandEvent& event); wxString m_message; @@ -73,12 +88,7 @@ protected: wxTextCtrl* m_input; DECLARE_EVENT_TABLE() + DECLARE_DYNAMIC_CLASS(wxGenericDirDialog) }; -#if !defined(__WXMSW__) && !defined(__WXMAC__) - #define wxDirDialog wxGenericDirDialog -#endif - -#endif // wxUSE_DIRDLG - #endif // _WX_DIRDLGG_H_