X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/999d9a9f795cfc745681989ae0f30e531cde059f..eb9d223a9a39a6f251c63308bca268a6f66d2428:/include/wx/xrc/xh_sizer.h diff --git a/include/wx/xrc/xh_sizer.h b/include/wx/xrc/xh_sizer.h index fb5cd23670..620a0a2c6b 100644 --- a/include/wx/xrc/xh_sizer.h +++ b/include/wx/xrc/xh_sizer.h @@ -11,17 +11,16 @@ #ifndef _WX_XH_SIZER_H_ #define _WX_XH_SIZER_H_ -#ifdef __GNUG__ -#pragma interface "xh_sizer.h" -#endif - #include "wx/xrc/xmlres.h" +#include "wx/sizer.h" +#include "wx/gbsizer.h" class WXDLLEXPORT wxSizer; -class WXXMLDLLEXPORT wxSizerXmlHandler : public wxXmlResourceHandler +class WXDLLIMPEXP_XRC wxSizerXmlHandler : public wxXmlResourceHandler { +DECLARE_DYNAMIC_CLASS(wxSizerXmlHandler) public: wxSizerXmlHandler(); virtual wxObject *DoCreateResource(); @@ -29,10 +28,44 @@ public: private: bool m_isInside; + bool m_isGBS; + wxSizer *m_parentSizer; bool IsSizerNode(wxXmlNode *node); + + wxObject* Handle_sizeritem(); + wxObject* Handle_spacer(); + wxObject* Handle_sizer(); + wxSizer* Handle_wxBoxSizer(); + wxSizer* Handle_wxStaticBoxSizer(); + wxSizer* Handle_wxGridSizer(); + wxSizer* Handle_wxFlexGridSizer(); + wxSizer* Handle_wxGridBagSizer(); + + void SetGrowables(wxFlexGridSizer* fsizer, const wxChar* param, bool rows); + wxGBPosition GetGBPos(const wxString& param); + wxGBSpan GetGBSpan(const wxString& param); + wxSizerItem* MakeSizerItem(); + void SetSizerItemAttributes(wxSizerItem* sitem); + void AddSizerItem(wxSizerItem* sitem); +}; + + +class WXDLLIMPEXP_XRC wxStdDialogButtonSizerXmlHandler + : public wxXmlResourceHandler +{ +public: + wxStdDialogButtonSizerXmlHandler(); + virtual wxObject *DoCreateResource(); + virtual bool CanHandle(wxXmlNode *node); + +private: + bool m_isInside; + wxStdDialogButtonSizer *m_parentSizer; + + DECLARE_DYNAMIC_CLASS(wxStdDialogButtonSizerXmlHandler) }; -#endif // _WX_XH_BOXSIZER_H_ +#endif // _WX_XH_SIZER_H_