1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Contrib. demo
4 // Author: Aleksandras Gluchovas
8 // Copyright: (c) Aleksandras Gluchovas
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
15 #include "controlbar.h"
16 #include "objstore.h" // used for persistance of control-bars
18 // serializers for some additional classes placed here
19 #include "rowdragpl.h"
21 #include "newbmpbtn.h"
23 #include "controlarea.h"
25 // serialziers for common components of frame-layout engine
27 class wxFrameLayoutSerializer
: public wxEvtHandlerSerializer
29 DECLARE_SERIALIZER_CLASS( wxFrameLayoutSerializer
);
31 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
33 static void Initialize( wxObject
* pObj
);
36 class cbBarSpySerializer
: public wxSerializerBase
38 DECLARE_SERIALIZER_CLASS( cbBarSpySerializer
);
40 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
42 static void Initialize( wxObject
* pObj
);
45 class cbBarDimHandlerBaseSerializer
: public wxSerializerBase
47 DECLARE_SERIALIZER_CLASS( cbBarDimHandlerBaseSerializer
);
49 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
52 class cbDimInfoSerializer
: public wxSerializerBase
54 DECLARE_SERIALIZER_CLASS( cbDimInfoSerializer
);
56 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
59 class cbRowInfoSerializer
: public wxSerializerBase
61 DECLARE_SERIALIZER_CLASS( cbRowInfoSerializer
);
63 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
65 class cbBarInfoSerializer
: public wxSerializerBase
67 DECLARE_SERIALIZER_CLASS( cbBarInfoSerializer
);
69 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
71 class cbCommonPanePropertiesSerializer
: public wxSerializerBase
73 DECLARE_SERIALIZER_CLASS( cbCommonPanePropertiesSerializer
);
75 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
78 class cbDockPaneSerializer
: public wxSerializerBase
80 DECLARE_SERIALIZER_CLASS( cbDockPaneSerializer
);
82 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
85 class cbUpdatesManagerBaseSerializer
: public wxSerializerBase
87 DECLARE_SERIALIZER_CLASS( cbUpdatesManagerBaseSerializer
);
89 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
92 class cbPluginBaseSerializer
: public wxSerializerBase
94 DECLARE_SERIALIZER_CLASS( cbPluginBaseSerializer
);
96 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
98 static void Initialize( wxObject
* pObj
);
101 class cbRowDragPluginSerializer
: public wxSerializerBase
103 DECLARE_SERIALIZER_CLASS( cbRowDragPluginSerializer
);
105 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
107 static void Initialize( wxObject
* pObj
);
110 class cbHiddenBarInfoSerializer
: public wxSerializerBase
112 DECLARE_SERIALIZER_CLASS( cbHiddenBarInfoSerializer
);
114 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
117 class cbFloatedBarWindowSerializer
: public wxWindowSerializer
119 DECLARE_SERIALIZER_CLASS( cbFloatedBarWindowSerializer
);
121 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
123 static void Initialize( wxObject
* pObj
);
125 static void CreateFloatedBarWindowFn( cbFloatedBarWindow
* fbar
, wxWindow
* parent
, const wxWindowID id
,
126 const wxPoint
& pos
, const wxSize
& size
, long style
,
127 const wxString
& name
);
130 /*** serializers for some additional classes (FOR NOW:: also placed here) ***/
132 class wxNewBitmapButtonSerializer
: public wxWindowSerializer
134 DECLARE_SERIALIZER_CLASS( wxNewBitmapButtonSerializer
);
136 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
138 static void Initialize( wxObject
* pObj
);
140 static void CreateNewBmpBtnWindowFn( wxNewBitmapButton
* btn
, wxWindow
* parent
, const wxWindowID id
,
141 const wxPoint
& pos
, const wxSize
& size
, long style
,
142 const wxString
& name
);
145 class wxDynamicToolBarSerializer
: public wxWindowSerializer
147 DECLARE_SERIALIZER_CLASS( wxDynamicToolBarSerializer
);
149 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
151 static void Initialize( wxObject
* pObj
);
153 static void CreateDynTBarWindowFn( wxDynamicToolBar
* btn
, wxWindow
* parent
, const wxWindowID id
,
154 const wxPoint
& pos
, const wxSize
& size
, long style
,
155 const wxString
& name
);
158 class wxDynToolInfoSerializer
: public wxSerializerBase
160 DECLARE_SERIALIZER_CLASS( wxDynToolInfoSerializer
);
162 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
165 class wxTabbedWindowSerializer
: public wxWindowSerializer
167 DECLARE_SERIALIZER_CLASS( wxTabbedWindowSerializer
);
169 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);
171 static void Initialize( wxObject
* pObj
);
174 class twTabInfoSerializer
: wxSerializerBase
176 DECLARE_SERIALIZER_CLASS( twTabInfoSerializer
);
178 static void Serialize( wxObject
* pObj
, wxObjectStorage
& store
);