#define wxID_PROP_UPDATE 3101
// Mediates between a physical panel and the property sheet
-class wxPropertyFormView: public wxPropertyView
+class WXDLLEXPORT wxPropertyFormView: public wxPropertyView
{
DECLARE_DYNAMIC_CLASS(wxPropertyFormView)
public:
void OnUpdate(wxCommandEvent& event);
void OnRevert(wxCommandEvent& event);
- virtual bool OnClose(void);
+ virtual bool OnClose();
virtual void OnDoubleClick(wxControl *item);
- // TODO: does OnCommand still get called...???
+ // TODO: does OnCommand still get called...??? No,
+ // make ProcessEvent do it.
virtual void OnCommand(wxWindow& win, wxCommandEvent& event);
+ // Extend event processing to process OnCommand
+ virtual bool ProcessEvent(wxEvent& event);
+
inline virtual void AssociatePanel(wxWindow *win) { m_propertyWindow = win; }
inline virtual wxWindow *GetPanel(void) const { return m_propertyWindow; }
wxWindow* m_propertyWindow; // Panel that the controls will appear on
wxWindow* m_managedWindow; // Frame or dialog
-
+
wxButton* m_windowCloseButton; // Or OK
wxButton* m_windowCancelButton;
wxButton* m_windowHelpButton;
DECLARE_EVENT_TABLE()
};
-
+
/*
* The type of validator used for forms (wxForm style but using an existing panel
* or dialog box).
* assocated with a window. It's that kinda thing.
*/
-class wxPropertyFormValidator: public wxPropertyValidator
+class WXDLLEXPORT wxPropertyFormValidator: public wxPropertyValidator
{
DECLARE_DYNAMIC_CLASS(wxPropertyFormValidator)
protected:
public:
wxPropertyFormValidator(long flags = 0): wxPropertyValidator(flags) { }
~wxPropertyFormValidator(void) {}
-
+
// Called to check value is OK (e.g. when OK is pressed)
// Return FALSE if value didn't check out; signal to restore old value.
- virtual bool OnCheckValue( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
+ virtual bool OnCheckValue( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
wxWindow *WXUNUSED(parentWindow) ) { return TRUE; }
// Does the transferance from the property editing area to the property itself.
// Called by the view to transfer the property to the window.
virtual bool OnDisplayValue(wxProperty *property, wxPropertyFormView *view, wxWindow *parentWindow) = 0;
- virtual void OnDoubleClick( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
- wxWindow *WXUNUSED(parentWindow) ) { }
- virtual void OnSetFocus( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
+ virtual void OnDoubleClick( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
+ wxWindow *WXUNUSED(parentWindow) ) { }
+ virtual void OnSetFocus( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
wxWindow *WXUNUSED(parentWindow) ) { }
- virtual void OnKillFocus( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
+ virtual void OnKillFocus( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
wxWindow *WXUNUSED(parentWindow) ) { }
- virtual void OnCommand( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
+ virtual void OnCommand( wxProperty *WXUNUSED(property), wxPropertyFormView *WXUNUSED(view),
wxWindow *WXUNUSED(parentWindow), wxCommandEvent& WXUNUSED(event) ) {}
+private:
+// Virtual function hiding suppression
+#if WXWIN_COMPATIBILITY_2
+ virtual void OnCommand(wxWindow& win,
+ wxCommandEvent& event)
+ { wxEvtHandler::OnCommand(win, event); }
+#endif
};
/*
* Some default validators
*/
-
-class wxRealFormValidator: public wxPropertyFormValidator
+
+class WXDLLEXPORT wxRealFormValidator: public wxPropertyFormValidator
{
DECLARE_DYNAMIC_CLASS(wxRealFormValidator)
public:
float m_realMax;
};
-class wxIntegerFormValidator: public wxPropertyFormValidator
+class WXDLLEXPORT wxIntegerFormValidator: public wxPropertyFormValidator
{
DECLARE_DYNAMIC_CLASS(wxIntegerFormValidator)
public:
long m_integerMax;
};
-class wxBoolFormValidator: public wxPropertyFormValidator
+class WXDLLEXPORT wxBoolFormValidator: public wxPropertyFormValidator
{
DECLARE_DYNAMIC_CLASS(wxBoolFormValidator)
protected:
bool OnDisplayValue(wxProperty *property, wxPropertyFormView *view, wxWindow *parentWindow);
};
-class wxStringFormValidator: public wxPropertyFormValidator
+class WXDLLEXPORT wxStringFormValidator: public wxPropertyFormValidator
{
DECLARE_DYNAMIC_CLASS(wxStringFormValidator)
public:
/*
* A default dialog box class to use.
*/
-
-class wxPropertyFormDialog: public wxDialog
+
+class WXDLLEXPORT wxPropertyFormDialog: public wxDialog
{
DECLARE_CLASS(wxPropertyFormDialog)
public:
wxPropertyFormDialog(wxPropertyFormView *v, wxWindow *parent, const wxString& title,
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_DIALOG_STYLE, const wxString& name = "dialogBox");
- bool OnClose(void);
+
+ void OnCloseWindow(wxCloseEvent& event);
void OnDefaultAction(wxControl *item);
void OnCommand(wxWindow& win, wxCommandEvent& event);
private:
wxPropertyFormView* m_view;
+
+DECLARE_EVENT_TABLE()
};
/*
* A default panel class to use.
*/
-
-class wxPropertyFormPanel: public wxPanel
+
+class WXDLLEXPORT wxPropertyFormPanel: public wxPanel
{
DECLARE_CLASS(wxPropertyFormPanel)
public:
/*
* A default frame class to use.
*/
-
-class wxPropertyFormFrame: public wxFrame
+
+class WXDLLEXPORT wxPropertyFormFrame: public wxFrame
{
DECLARE_CLASS(wxPropertyFormFrame)
public:
wxPropertyFormFrame(wxPropertyFormView *v, wxFrame *parent, const wxString& title,
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
- long style = wxDEFAULT_FRAME, const wxString& name = "frame"):
+ long style = wxDEFAULT_FRAME_STYLE, const wxString& name = "frame"):
wxFrame(parent, -1, title, pos, size, style, name)
{
m_view = v;
m_propertyPanel = NULL;
}
- bool OnClose(void);
+ void OnCloseWindow(wxCloseEvent& event);
// Must call this to create panel and associate view
virtual bool Initialize(void);
private:
wxPropertyFormView* m_view;
wxPanel* m_propertyPanel;
+
+DECLARE_EVENT_TABLE()
};
#endif