]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/xrc/xmlres.h
Implement setFont on the iOS port of wxStaticText.
[wxWidgets.git] / interface / wx / xrc / xmlres.h
index a906d188c61f3882375363d64d69b0adc2919436..72583a6e86a882c2b5a35bcfe90bd488ef7b8219 100644 (file)
@@ -2,8 +2,7 @@
 // Name:        xrc/xmlres.h
 // Purpose:     interface of wxXmlResource
 // Author:      wxWidgets team
 // Name:        xrc/xmlres.h
 // Purpose:     interface of wxXmlResource
 // Author:      wxWidgets team
-// RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
 /////////////////////////////////////////////////////////////////////////////
 
 /**
@@ -89,6 +88,12 @@ public:
     */
     void AddHandler(wxXmlResourceHandler* handler);
 
     */
     void AddHandler(wxXmlResourceHandler* handler);
 
+    /**
+       Add a new handler at the begining of the handler list.
+     */
+    void InsertHandler(wxXmlResourceHandler *handler);
+
+    
     /**
         Attaches an unknown control to the given panel/window/dialog.
         Unknown controls are used in conjunction with \<object class="unknown"\>.
     /**
         Attaches an unknown control to the given panel/window/dialog.
         Unknown controls are used in conjunction with \<object class="unknown"\>.
@@ -103,6 +108,14 @@ public:
     */
     void ClearHandlers();
 
     */
     void ClearHandlers();
 
+    /**
+       Registers subclasses factory for use in XRC.  This is useful only for
+       language bindings developers who need a way to implement subclassing in
+       wxWidgets ports that don't support wxRTTI (e.g. wxPython).
+    */
+    static void AddSubclassFactory(wxXmlSubclassFactory *factory);
+
+    
     /**
         Compares the XRC version to the argument.
 
     /**
         Compares the XRC version to the argument.
 
@@ -175,7 +188,12 @@ public:
 
         If @a value_if_not_found is @c wxID_NONE, the number is obtained via
         wxNewId(). Otherwise @a value_if_not_found is used.
 
         If @a value_if_not_found is @c wxID_NONE, the number is obtained via
         wxNewId(). Otherwise @a value_if_not_found is used.
+
         Macro @c XRCID(name) is provided for convenient use in event tables.
         Macro @c XRCID(name) is provided for convenient use in event tables.
+
+        @note IDs returned by XRCID() cannot be used with the <tt>EVT_*_RANGE</tt>
+              macros, because the order in which they are assigned to symbolic @a name
+              values is not guaranteed.
     */
     static int GetXRCID(const wxString& str_id, int value_if_not_found = wxID_NONE);
 
     */
     static int GetXRCID(const wxString& str_id, int value_if_not_found = wxID_NONE);
 
@@ -255,7 +273,16 @@ public:
     bool LoadDialog(wxDialog* dlg, wxWindow* parent, const wxString& name);
 
     /**
     bool LoadDialog(wxDialog* dlg, wxWindow* parent, const wxString& name);
 
     /**
-        Loads a frame.
+       Loads a frame from the resource. @a parent points to parent window (if any).
+    */
+    wxFrame *LoadFrame(wxWindow* parent, const wxString& name);
+
+    /**
+        Loads the contents of a frame onto an existing wxFrame.
+
+        This form is used to finish creation of an already existing instance
+        (the main reason for this is that you may want to use derived class
+        with a new event table).
     */
     bool LoadFrame(wxFrame* frame, wxWindow* parent,
                    const wxString& name);
     */
     bool LoadFrame(wxFrame* frame, wxWindow* parent,
                    const wxString& name);
@@ -383,7 +410,7 @@ protected:
 
         @see wxXmlResourceHandler::ReportError(), DoReportError()
      */
 
         @see wxXmlResourceHandler::ReportError(), DoReportError()
      */
-    void ReportError(wxXmlNode *context, const wxString& message);
+    void ReportError(const wxXmlNode *context, const wxString& message);
 
     /**
         Implementation of XRC resources errors reporting.
 
     /**
         Implementation of XRC resources errors reporting.
@@ -411,7 +438,7 @@ protected:
 
         @see ReportError()
     */
 
         @see ReportError()
     */
-    virtual void DoReportError(const wxString& xrcFile, wxXmlNode *position,
+    virtual void DoReportError(const wxString& xrcFile, const wxXmlNode *position,
                                const wxString& message);
 };
 
                                const wxString& message);
 };
 
@@ -509,7 +536,7 @@ protected:
     /**
         Creates an animation (see wxAnimation) from the filename specified in @a param.
     */
     /**
         Creates an animation (see wxAnimation) from the filename specified in @a param.
     */
-    wxAnimation GetAnimation(const wxString& param = "animation");
+    wxAnimation* GetAnimation(const wxString& param = "animation");
 
     /**
         Gets a bitmap.
 
     /**
         Gets a bitmap.
@@ -548,6 +575,18 @@ protected:
     wxCoord GetDimension(const wxString& param, wxCoord defaultv = 0,
                          wxWindow* windowToUse = 0);
 
     wxCoord GetDimension(const wxString& param, wxCoord defaultv = 0,
                          wxWindow* windowToUse = 0);
 
+    /**
+        Gets a direction.
+
+        If the given @a param is not present or has empty value, @a dirDefault is
+        returned by default. Otherwise the value of the parameter is parsed and
+        a warning is generated if it's not one of @c wxLEFT, @c wxTOP, @c
+        wxRIGHT or @c wxBOTTOM.
+
+        @since 2.9.3
+     */
+    wxDirection GetDirection(const wxString& param, wxDirection dirDefault = wxLEFT);
+
     /**
         Gets a font.
     */
     /**
         Gets a font.
     */
@@ -595,13 +634,18 @@ protected:
 
         @since 2.9.1
     */
 
         @since 2.9.1
     */
-    wxImageList *GetImageList(const wxString& param = wxT("imagelist"));
+    wxImageList *GetImageList(const wxString& param = "imagelist");
 
     /**
         Gets the integer value from the parameter.
     */
     long GetLong(const wxString& param, long defaultv = 0);
 
 
     /**
         Gets the integer value from the parameter.
     */
     long GetLong(const wxString& param, long defaultv = 0);
 
+    /**
+        Gets a float value from the parameter.
+    */
+    float GetFloat(const wxString& param, float defaultv = 0);
+
     /**
         Returns the resource name.
     */
     /**
         Returns the resource name.
     */
@@ -697,5 +741,55 @@ protected:
         @since 2.9.0
      */
     void ReportParamError(const wxString& param, const wxString& message);
         @since 2.9.0
      */
     void ReportParamError(const wxString& param, const wxString& message);
+
+
+    /**
+       After CreateResource has been called this will return the current
+       wxXmlResource object.
+       
+       @since 2.9.5
+    */
+    wxXmlResource* GetResource() const;
+
+    /**
+       After CreateResource has been called this will return the XML node
+       being processed.
+
+       @since 2.9.5
+    */
+    wxXmlNode* GetNode() const;
+
+    /**
+       After CreateResource has been called this will return the class name of
+       the XML resource node being processed.
+
+       @since 2.9.5
+    */
+    wxString GetClass() const;
+
+    /**
+       After CreateResource has been called this will return the current
+       item's parent, if any.
+
+       @since 2.9.5
+    */
+    wxObject* GetParent() const;
+
+    /**
+       After CreateResource has been called this will return the instance that
+       the XML resource content should be created upon, if it has already been
+       created.  If @NULL then the handler should create the object itself.
+
+       @since 2.9.5
+    */
+    wxObject* GetInstance() const;
+
+    /**
+       After CreateResource has been called this will return the item's parent
+       as a wxWindow.
+
+       @since 2.9.5
+    */
+    wxWindow* GetParentAsWindow() const;    
 };
 
 };