X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e90c1d2a19361551eb07778280f22be3e759cf64..461573cc244a194f804e2bf0c8ba6a365e77c95c:/include/wx/proplist.h diff --git a/include/wx/proplist.h b/include/wx/proplist.h index 2a7bc18e83..72e0fad5fd 100644 --- a/include/wx/proplist.h +++ b/include/wx/proplist.h @@ -42,11 +42,14 @@ #ifndef _WX_PROPLIST_H_ #define _WX_PROPLIST_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "proplist.h" #endif +#if wxUSE_PROPSHEET + #include "wx/prop.h" +#include "wx/panel.h" #define wxPROP_BUTTON_CLOSE 1 #define wxPROP_BUTTON_OK 2 @@ -75,8 +78,7 @@ // Mediates between a physical panel and the property sheet class WXDLLEXPORT wxPropertyListView: public wxPropertyView { - DECLARE_DYNAMIC_CLASS(wxPropertyListView) - public: +public: wxPropertyListView(wxPanel *propPanel = NULL, long flags = wxPROP_BUTTON_DEFAULT); ~wxPropertyListView(void); @@ -183,23 +185,33 @@ public: wxButton* m_windowCancelButton; wxButton* m_windowHelpButton; -DECLARE_EVENT_TABLE() private: - virtual void ShowView(wxPropertySheet *propertySheet, wxWindow *window) - { wxPropertyView::ShowView(propertySheet, window); }; + DECLARE_DYNAMIC_CLASS(wxPropertyListView) + DECLARE_EVENT_TABLE() + + virtual void ShowView(wxPropertySheet *propertySheet, wxWindow *window) + { wxPropertyView::ShowView(propertySheet, window); }; }; class WXDLLEXPORT wxPropertyTextEdit: public wxTextCtrl { - DECLARE_CLASS(wxPropertyTextEdit) - public: - wxPropertyTextEdit(wxPropertyListView *v, wxWindow *parent, const wxWindowID id, - const wxString& value, const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = 0, const wxString& name = "text"); - void OnSetFocus(void); - void OnKillFocus(void); - - wxPropertyListView* m_view; +public: + wxPropertyTextEdit(wxPropertyListView *v = NULL, + wxWindow *parent = NULL, + const wxWindowID id = -1, + const wxString& value = wxEmptyString, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxT("text")); + + void OnSetFocus(); + void OnKillFocus(); + + wxPropertyListView* m_view; + +private: + DECLARE_CLASS(wxPropertyTextEdit) }; #define wxPROP_ALLOW_TEXT_EDITING 1 @@ -210,11 +222,9 @@ class WXDLLEXPORT wxPropertyTextEdit: public wxTextCtrl class WXDLLEXPORT wxPropertyListValidator: public wxPropertyValidator { - DECLARE_DYNAMIC_CLASS(wxPropertyListValidator) - protected: - public: +public: wxPropertyListValidator(long flags = wxPROP_ALLOW_TEXT_EDITING): wxPropertyValidator(flags) { } - ~wxPropertyListValidator(void) {} + ~wxPropertyListValidator() {} // Called when the property is selected or deselected: typically displays the value // in the edit control (having chosen a suitable control to display: (non)editable text or listbox) @@ -264,6 +274,9 @@ class WXDLLEXPORT wxPropertyListValidator: public wxPropertyValidator virtual bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); virtual bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + +private: + DECLARE_DYNAMIC_CLASS(wxPropertyListValidator) }; /* @@ -272,22 +285,28 @@ class WXDLLEXPORT wxPropertyListValidator: public wxPropertyValidator class WXDLLEXPORT wxPropertyListDialog: public wxDialog { - DECLARE_CLASS(wxPropertyListDialog) - public: - wxPropertyListDialog(wxPropertyListView *v, wxWindow *parent, const wxString& title, - const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = "dialogBox"); - void OnCloseWindow(wxCloseEvent& event); - void OnDefaultAction(wxControl *item); - void OnCancel(wxCommandEvent& event); +public: + wxPropertyListDialog(wxPropertyListView *v = NULL, + wxWindow *parent = NULL, + const wxString& title = wxEmptyString, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxDEFAULT_DIALOG_STYLE, + const wxString& name = wxT("dialogBox")); - // Extend event processing to search the view's event table - virtual bool ProcessEvent(wxEvent& event); + void OnCloseWindow(wxCloseEvent& event); + void OnDefaultAction(wxControl *item); + void OnCancel(wxCommandEvent& event); - private: - wxPropertyListView* m_view; + // Extend event processing to search the view's event table + virtual bool ProcessEvent(wxEvent& event); -DECLARE_EVENT_TABLE() +private: + wxPropertyListView* m_view; + +private: + DECLARE_CLASS(wxPropertyListDialog) + DECLARE_EVENT_TABLE() }; /* @@ -296,31 +315,35 @@ DECLARE_EVENT_TABLE() class WXDLLEXPORT wxPropertyListPanel: public wxPanel { - DECLARE_CLASS(wxPropertyListPanel) - public: - wxPropertyListPanel(wxPropertyListView *v, wxWindow *parent, const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - long style = 0, const wxString& name = "panel"): - wxPanel(parent, -1, pos, size, style, name) - { - m_view = v; - } - ~wxPropertyListPanel(); - void OnDefaultAction(wxControl *item); - - inline void SetView(wxPropertyListView* v) { m_view = v; } - inline wxPropertyListView* GetView() const { return m_view; } - - // Extend event processing to search the view's event table - virtual bool ProcessEvent(wxEvent& event); - - // Call Layout() - void OnSize(wxSizeEvent& event); - - private: - wxPropertyListView* m_view; - -DECLARE_EVENT_TABLE() +public: + wxPropertyListPanel(wxPropertyListView *v = NULL, + wxWindow *parent = NULL, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxT("panel")) + : wxPanel(parent, -1, pos, size, style, name) + { + m_view = v; + } + ~wxPropertyListPanel(); + void OnDefaultAction(wxControl *item); + + inline void SetView(wxPropertyListView* v) { m_view = v; } + inline wxPropertyListView* GetView() const { return m_view; } + + // Extend event processing to search the view's event table + virtual bool ProcessEvent(wxEvent& event); + + // Call Layout() + void OnSize(wxSizeEvent& event); + +private: + wxPropertyListView* m_view; + +private: + DECLARE_EVENT_TABLE() + DECLARE_CLASS(wxPropertyListPanel) }; /* @@ -329,28 +352,34 @@ DECLARE_EVENT_TABLE() class WXDLLEXPORT wxPropertyListFrame: public wxFrame { - DECLARE_CLASS(wxPropertyListFrame) - public: - wxPropertyListFrame(wxPropertyListView *v, wxFrame *parent, const wxString& title, - const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = wxDEFAULT_FRAME_STYLE, const wxString& name = "frame"): - wxFrame(parent, -1, title, pos, size, style, name) - { - m_view = v; - m_propertyPanel = NULL; - } - void OnCloseWindow(wxCloseEvent& event); - - // Must call this to create panel and associate view - virtual bool Initialize(void); - virtual wxPropertyListPanel *OnCreatePanel(wxFrame *parent, wxPropertyListView *v); - inline virtual wxPropertyListPanel *GetPropertyPanel(void) const { return m_propertyPanel; } - - private: - wxPropertyListView* m_view; - wxPropertyListPanel* m_propertyPanel; - -DECLARE_EVENT_TABLE() +public: + wxPropertyListFrame(wxPropertyListView *v = NULL, + wxFrame *parent = NULL, + const wxString& title = wxEmptyString, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxDEFAULT_FRAME_STYLE, + const wxString& name = _T("frame")) + : wxFrame(parent, -1, title, pos, size, style, name) + { + m_view = v; + m_propertyPanel = NULL; + } + void OnCloseWindow(wxCloseEvent& event); + + // Must call this to create panel and associate view + virtual bool Initialize(void); + virtual wxPropertyListPanel *OnCreatePanel(wxFrame *parent, wxPropertyListView *v); + inline virtual wxPropertyListPanel *GetPropertyPanel(void) const { return m_propertyPanel; } + inline wxPropertyListView* GetView() const { return m_view; } + +private: + wxPropertyListView* m_view; + wxPropertyListPanel* m_propertyPanel; + +private: + DECLARE_EVENT_TABLE() + DECLARE_CLASS(wxPropertyListFrame) }; /* @@ -359,41 +388,40 @@ DECLARE_EVENT_TABLE() class WXDLLEXPORT wxRealListValidator: public wxPropertyListValidator { - DECLARE_DYNAMIC_CLASS(wxRealListValidator) - public: - // 0.0, 0.0 means no range - wxRealListValidator(float min = 0.0, float max = 0.0, long flags = wxPROP_ALLOW_TEXT_EDITING):wxPropertyListValidator(flags) - { - m_realMin = min; m_realMax = max; - } - ~wxRealListValidator(void) {} - - bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when TICK is pressed or focus is lost. - // Return FALSE if value didn't check out; signal to restore old value. - bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when TICK is pressed or focus is lost or view wants to update - // the property list. - // Does the transfer from the property editing area to the property itself - bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - protected: - float m_realMin; - float m_realMax; +public: + // 0.0, 0.0 means no range + wxRealListValidator(float min = 0.0, float max = 0.0, long flags = wxPROP_ALLOW_TEXT_EDITING):wxPropertyListValidator(flags) + { m_realMin = min; m_realMax = max; } + ~wxRealListValidator() {} + + bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + + // Called when TICK is pressed or focus is lost. + // Return FALSE if value didn't check out; signal to restore old value. + bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + + // Called when TICK is pressed or focus is lost or view wants to update + // the property list. + // Does the transfer from the property editing area to the property itself + bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + +protected: + float m_realMin; + float m_realMax; + +private: + DECLARE_DYNAMIC_CLASS(wxRealListValidator) }; class WXDLLEXPORT wxIntegerListValidator: public wxPropertyListValidator { - DECLARE_DYNAMIC_CLASS(wxIntegerListValidator) - public: +public: // 0, 0 means no range wxIntegerListValidator(long min = 0, long max = 0, long flags = wxPROP_ALLOW_TEXT_EDITING):wxPropertyListValidator(flags) { m_integerMin = min; m_integerMax = max; } - ~wxIntegerListValidator(void) {} + ~wxIntegerListValidator() {} bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); @@ -406,157 +434,162 @@ class WXDLLEXPORT wxIntegerListValidator: public wxPropertyListValidator // Does the transfer from the property editing area to the property itself bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - protected: - long m_integerMin; - long m_integerMax; +protected: + long m_integerMin; + long m_integerMax; + +private: + DECLARE_DYNAMIC_CLASS(wxIntegerListValidator) }; class WXDLLEXPORT wxBoolListValidator: public wxPropertyListValidator { - DECLARE_DYNAMIC_CLASS(wxBoolListValidator) - protected: - public: - wxBoolListValidator(long flags = 0):wxPropertyListValidator(flags) - { - } - ~wxBoolListValidator(void) {} - - bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnPrepareDetailControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnClearDetailControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when TICK is pressed or focus is lost. - // Return FALSE if value didn't check out; signal to restore old value. - bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when TICK is pressed or focus is lost or view wants to update - // the property list. - // Does the transfer from the property editing area to the property itself - bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when the property is double clicked. Extra functionality can be provided, - // cycling through possible values. - virtual bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); +public: + wxBoolListValidator(long flags = 0):wxPropertyListValidator(flags) {} + ~wxBoolListValidator() {} + + bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnPrepareDetailControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnClearDetailControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + + // Called when TICK is pressed or focus is lost. + // Return FALSE if value didn't check out; signal to restore old value. + bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + + // Called when TICK is pressed or focus is lost or view wants to update + // the property list. + // Does the transfer from the property editing area to the property itself + bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + + // Called when the property is double clicked. Extra functionality can be provided, + // cycling through possible values. + virtual bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + +private: + DECLARE_DYNAMIC_CLASS(wxBoolListValidator) }; class WXDLLEXPORT wxStringListValidator: public wxPropertyListValidator { - DECLARE_DYNAMIC_CLASS(wxStringListValidator) - public: +public: wxStringListValidator(wxStringList *list = NULL, long flags = 0); - ~wxStringListValidator(void) - { - if (m_strings) - delete m_strings; - } - - bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnPrepareDetailControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnClearDetailControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when TICK is pressed or focus is lost. - // Return FALSE if value didn't check out; signal to restore old value. - bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when TICK is pressed or focus is lost or view wants to update - // the property list. - // Does the transfer from the property editing area to the property itself - bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when the property is double clicked. Extra functionality can be provided, - // cycling through possible values. - bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - protected: - wxStringList* m_strings; + ~wxStringListValidator() + { + if (m_strings) + delete m_strings; + } + + bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnPrepareDetailControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnClearDetailControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + + // Called when TICK is pressed or focus is lost. + // Return FALSE if value didn't check out; signal to restore old value. + bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + + // Called when TICK is pressed or focus is lost or view wants to update + // the property list. + // Does the transfer from the property editing area to the property itself + bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + + // Called when the property is double clicked. Extra functionality can be provided, + // cycling through possible values. + bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + +protected: + wxStringList* m_strings; + +private: + DECLARE_DYNAMIC_CLASS(wxStringListValidator) }; class WXDLLEXPORT wxFilenameListValidator: public wxPropertyListValidator { - DECLARE_DYNAMIC_CLASS(wxFilenameListValidator) - public: - wxFilenameListValidator(wxString message = "Select a file", wxString wildcard = "*.*", long flags = 0); +public: + wxFilenameListValidator(wxString message = wxT("Select a file"), wxString wildcard = wxALL_FILES_PATTERN, long flags = 0); + ~wxFilenameListValidator(); - ~wxFilenameListValidator(void); + // Called when TICK is pressed or focus is lost. + // Return FALSE if value didn't check out; signal to restore old value. + bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - // Called when TICK is pressed or focus is lost. - // Return FALSE if value didn't check out; signal to restore old value. - bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - - // Called when TICK is pressed or focus is lost or view wants to update - // the property list. - // Does the transferance from the property editing area to the property itself - bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + // Called when TICK is pressed or focus is lost or view wants to update + // the property list. + // Does the transferance from the property editing area to the property itself + bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - // Called when the edit (...) button is pressed. - void OnEdit(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + // Called when the edit (...) button is pressed. + void OnEdit(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - protected: - wxString m_filenameWildCard; - wxString m_filenameMessage; +protected: + wxString m_filenameWildCard; + wxString m_filenameMessage; +private: + DECLARE_DYNAMIC_CLASS(wxFilenameListValidator) }; class WXDLLEXPORT wxColourListValidator: public wxPropertyListValidator { - DECLARE_DYNAMIC_CLASS(wxColourListValidator) - protected: - public: - wxColourListValidator(long flags = 0); - - ~wxColourListValidator(void); +public: + wxColourListValidator(long flags = 0); + ~wxColourListValidator(); - bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - // Called when the edit (...) button is pressed. - void OnEdit(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + // Called when the edit (...) button is pressed. + void OnEdit(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + +private: + DECLARE_DYNAMIC_CLASS(wxColourListValidator) }; class WXDLLEXPORT wxListOfStringsListValidator: public wxPropertyListValidator { - DECLARE_DYNAMIC_CLASS(wxListOfStringsListValidator) - protected: - public: - wxListOfStringsListValidator(long flags = 0); - - ~wxListOfStringsListValidator(void) - { - } +public: + wxListOfStringsListValidator(long flags = 0); + ~wxListOfStringsListValidator() {} - bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnPrepareControls(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - // Called when TICK is pressed or focus is lost. - // Return FALSE if value didn't check out; signal to restore old value. - bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + // Called when TICK is pressed or focus is lost. + // Return FALSE if value didn't check out; signal to restore old value. + bool OnCheckValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - // Called when TICK is pressed or focus is lost or view wants to update - // the property list. - // Does the transfer from the property editing area to the property itself - bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + // Called when TICK is pressed or focus is lost or view wants to update + // the property list. + // Does the transfer from the property editing area to the property itself + bool OnRetrieveValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + bool OnDisplayValue(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - // Called when the property is double clicked. - bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + // Called when the property is double clicked. + bool OnDoubleClick(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); - bool EditStringList(wxWindow *parent, wxStringList *stringList, const wxChar *title = T("String List Editor")); + bool EditStringList(wxWindow *parent, wxStringList *stringList, const wxChar *title = wxT("String List Editor")); - // Called when the edit (...) button is pressed. - void OnEdit(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + // Called when the edit (...) button is pressed. + void OnEdit(wxProperty *property, wxPropertyListView *view, wxWindow *parentWindow); + +private: + DECLARE_DYNAMIC_CLASS(wxListOfStringsListValidator) }; +#endif + // wxUSE_PROPSHEET + #endif // _WX_PROPLIST_H_