]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/prop.h
AIX patches from Hans-Joachim Baader <hans-joachim.baader@cjt.de>
[wxWidgets.git] / include / wx / prop.h
index e753c0293e72af642562f810e1341c7f7965e6cb..c933e4e72d08bcb7364fbe508b357e8d30af2d08 100644 (file)
@@ -38,18 +38,31 @@ class wxPropertyValidatorRegistry;
 #define wxPROPERTY_VERSION 2.0
 
 // A storable sheet of values
-class wxPropertySheet: public wxObject
+class WXDLLEXPORT wxPropertySheet: public wxObject
 {
  DECLARE_DYNAMIC_CLASS(wxPropertySheet)
  public:
-  wxPropertySheet(void);
+  wxPropertySheet(const wxString& name = "");
   ~wxPropertySheet(void);
 
+  // Set the name of the sheet
+  inline virtual void SetName(const wxString& name) { m_name=name; }
+  inline virtual wxString GetName() const { return m_name; }
+  // Does this sheet contain a property with this name
+  virtual bool HasProperty(const wxString& name) const;
+
+  // Set property name to value
+  virtual bool SetProperty(const wxString& name, const wxPropertyValue& value);
+
+  // Remove property from sheet by name, deleting it
+  virtual void RemoveProperty(const wxString& name);
+
+  // Get the name of the sheet
   // Add a property
   virtual void AddProperty(wxProperty *property);
 
   // Get property by name
-  virtual wxProperty *GetProperty(wxString name);
+  virtual wxProperty *GetProperty(const wxString& name) const;
 
   // Clear all properties
   virtual void Clear(void);
@@ -67,13 +80,13 @@ class wxPropertySheet: public wxObject
   wxObject*         m_viewedObject;
   wxList            m_properties;
   wxPropertyView*   m_propertyView;
-
+  wxString                     m_name;
 };
 
 
 // Base class for property sheet views. There are currently two directly derived
 // classes: wxPropertyListView, and wxPropertyFormView.
-class wxPropertyView: public wxEvtHandler
+class WXDLLEXPORT wxPropertyView: public wxEvtHandler
 {
  DECLARE_DYNAMIC_CLASS(wxPropertyView)
  public:
@@ -99,9 +112,11 @@ class wxPropertyView: public wxEvtHandler
   inline virtual void SetPropertySheet(wxPropertySheet *sheet) { m_propertySheet = sheet; }
   inline virtual wxPropertySheet *GetPropertySheet(void) const { return m_propertySheet; }
 
+/*
   virtual void OnOk(void) {};
   virtual void OnCancel(void) {};
   virtual void OnHelp(void) {};
+*/
 
   inline virtual bool OnClose(void) { return FALSE; }
   inline long GetFlags(void) { return m_buttonFlags; }
@@ -115,7 +130,7 @@ class wxPropertyView: public wxEvtHandler
 };
 
 
-class wxPropertyValidator: public wxEvtHandler
+class WXDLLEXPORT wxPropertyValidator: public wxEvtHandler
 {
   DECLARE_DYNAMIC_CLASS(wxPropertyValidator)
  public:
@@ -143,7 +158,7 @@ class wxPropertyValidator: public wxEvtHandler
 
 // extern wxPropertyValidator *wxDefaultPropertyValidator;
 
-class wxPropertyValidatorRegistry: public wxHashTable
+class WXDLLEXPORT wxPropertyValidatorRegistry: public wxHashTable
 {
   DECLARE_DYNAMIC_CLASS(wxPropertyValidatorRegistry)
  public:
@@ -172,7 +187,7 @@ typedef enum {
     wxPropertyValueStringPtr
 } wxPropertyValueType;
 
-class wxPropertyValue: public wxObject
+class WXDLLEXPORT wxPropertyValue: public wxObject
 {
   DECLARE_DYNAMIC_CLASS(wxPropertyValue)
 
@@ -287,7 +302,7 @@ class wxPropertyValue: public wxObject
  * Property class: contains a name and a value.
  */
 
-class wxProperty: public wxObject
+class WXDLLEXPORT wxProperty: public wxObject
 {
   DECLARE_DYNAMIC_CLASS(wxProperty)
  protected: