2000-07-25 18:47:21 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
2006-07-04 18:08:09 +00:00
|
|
|
// Name: wx/xrc/xh_sizer.h
|
2000-07-25 18:47:21 +00:00
|
|
|
// Purpose: XML resource handler for wxBoxSizer
|
|
|
|
// Author: Vaclav Slavik
|
|
|
|
// Created: 2000/04/24
|
|
|
|
// Copyright: (c) 2000 Vaclav Slavik
|
|
|
|
// Licence: wxWindows licence
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#ifndef _WX_XH_SIZER_H_
|
|
|
|
#define _WX_XH_SIZER_H_
|
|
|
|
|
2001-06-09 22:18:45 +00:00
|
|
|
#include "wx/xrc/xmlres.h"
|
2006-10-03 14:53:40 +00:00
|
|
|
|
|
|
|
#if wxUSE_XRC
|
|
|
|
|
2003-11-07 08:27:41 +00:00
|
|
|
#include "wx/sizer.h"
|
|
|
|
#include "wx/gbsizer.h"
|
2000-07-25 18:47:21 +00:00
|
|
|
|
2003-07-04 13:33:42 +00:00
|
|
|
class WXDLLIMPEXP_XRC wxSizerXmlHandler : public wxXmlResourceHandler
|
2000-07-25 18:47:21 +00:00
|
|
|
{
|
2015-04-23 11:49:01 +00:00
|
|
|
wxDECLARE_DYNAMIC_CLASS(wxSizerXmlHandler);
|
2006-10-03 14:53:40 +00:00
|
|
|
|
2001-05-02 23:01:00 +00:00
|
|
|
public:
|
|
|
|
wxSizerXmlHandler();
|
|
|
|
virtual wxObject *DoCreateResource();
|
|
|
|
virtual bool CanHandle(wxXmlNode *node);
|
|
|
|
|
2010-10-24 14:33:58 +00:00
|
|
|
protected:
|
|
|
|
virtual wxSizer* DoCreateSizer(const wxString& name);
|
|
|
|
virtual bool IsSizerNode(wxXmlNode *node) const;
|
|
|
|
|
2001-05-02 23:01:00 +00:00
|
|
|
private:
|
|
|
|
bool m_isInside;
|
2003-11-07 08:27:41 +00:00
|
|
|
bool m_isGBS;
|
2004-06-11 13:14:23 +00:00
|
|
|
|
2001-05-02 23:01:00 +00:00
|
|
|
wxSizer *m_parentSizer;
|
2001-06-05 22:03:02 +00:00
|
|
|
|
2003-11-07 08:27:41 +00:00
|
|
|
|
|
|
|
wxObject* Handle_sizeritem();
|
|
|
|
wxObject* Handle_spacer();
|
|
|
|
wxObject* Handle_sizer();
|
|
|
|
wxSizer* Handle_wxBoxSizer();
|
2007-01-18 18:27:58 +00:00
|
|
|
#if wxUSE_STATBOX
|
2003-11-07 08:27:41 +00:00
|
|
|
wxSizer* Handle_wxStaticBoxSizer();
|
2007-01-18 18:27:58 +00:00
|
|
|
#endif
|
2003-11-07 08:27:41 +00:00
|
|
|
wxSizer* Handle_wxGridSizer();
|
2008-12-23 22:33:08 +00:00
|
|
|
wxFlexGridSizer* Handle_wxFlexGridSizer();
|
2008-12-24 00:29:38 +00:00
|
|
|
wxGridBagSizer* Handle_wxGridBagSizer();
|
2008-05-08 22:45:44 +00:00
|
|
|
wxSizer* Handle_wxWrapSizer();
|
2003-11-07 08:27:41 +00:00
|
|
|
|
2009-03-16 13:33:39 +00:00
|
|
|
bool ValidateGridSizerChildren();
|
2012-10-19 22:03:25 +00:00
|
|
|
void SetFlexibleMode(wxFlexGridSizer* fsizer);
|
2003-11-07 08:27:41 +00:00
|
|
|
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);
|
2004-06-11 13:14:23 +00:00
|
|
|
void AddSizerItem(wxSizerItem* sitem);
|
2015-04-05 18:30:02 +00:00
|
|
|
int GetSizerFlags();
|
2000-07-25 18:47:21 +00:00
|
|
|
};
|
|
|
|
|
2006-10-03 14:53:40 +00:00
|
|
|
#if wxUSE_BUTTON
|
2000-07-25 18:47:21 +00:00
|
|
|
|
2005-03-27 21:28:27 +00:00
|
|
|
class WXDLLIMPEXP_XRC wxStdDialogButtonSizerXmlHandler
|
|
|
|
: public wxXmlResourceHandler
|
|
|
|
{
|
2015-04-23 11:49:01 +00:00
|
|
|
wxDECLARE_DYNAMIC_CLASS(wxStdDialogButtonSizerXmlHandler);
|
2006-10-03 14:53:40 +00:00
|
|
|
|
2005-03-27 21:28:27 +00:00
|
|
|
public:
|
|
|
|
wxStdDialogButtonSizerXmlHandler();
|
|
|
|
virtual wxObject *DoCreateResource();
|
|
|
|
virtual bool CanHandle(wxXmlNode *node);
|
|
|
|
|
|
|
|
private:
|
|
|
|
bool m_isInside;
|
|
|
|
wxStdDialogButtonSizer *m_parentSizer;
|
|
|
|
};
|
|
|
|
|
2006-10-03 14:53:40 +00:00
|
|
|
#endif // wxUSE_BUTTON
|
|
|
|
|
|
|
|
#endif // wxUSE_XRC
|
2005-03-27 21:28:27 +00:00
|
|
|
|
|
|
|
#endif // _WX_XH_SIZER_H_
|