]>
git.saurik.com Git - wxWidgets.git/blob - contrib/utils/wxrcedit/prophnd.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Purpose: XML resources editor
3 // Author: Vaclav Slavik
6 // Copyright: (c) 2000 Vaclav Slavik
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
11 #pragma interface "prophnd.h"
18 class WXDLLEXPORT wxXmlNode
;
19 class WXDLLEXPORT wxList
;
20 class WXDLLEXPORT wxListCtrl
;
21 class WXDLLEXPORT wxPanel
;
22 class WXDLLEXPORT wxWindow
;
24 #include "wx/xml/xml.h"
25 #include "wx/dynarray.h"
27 /* ADD NEW PROPERTY TYPES HERE
28 (search for other occurences of this comment in _all_ files) */
38 PROP_NOT_IMPLEMENTED
= 7,
40 #define PROP_TYPES_CNT 8
50 WX_DECLARE_OBJARRAY(PropertyInfo
, PropertyInfoArray
);
53 class PropertyHandler
;
55 class PropsListInfo
: public wxObject
58 PropsListInfo(int index
, PropertyHandler
*hnd
, wxXmlNode
*node
,
59 PropertyInfo
*pi
, wxListCtrl
*listctrl
) :
60 m_Index(index
), m_Handler(hnd
), m_Node(node
),
61 m_PropInfo(pi
), m_ListCtrl(listctrl
) {}
62 virtual ~PropsListInfo() {}
65 PropertyHandler
*m_Handler
;
67 PropertyInfo
*m_PropInfo
;
68 wxListCtrl
*m_ListCtrl
;
79 int CreateListItem(wxListCtrl
*listctrl
, wxXmlNode
*node
, PropertyInfo
*pi
);
81 virtual wxString
GetBriefValue(wxXmlNode
*node
, PropertyInfo
*pi
);
82 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
) = 0;
87 class TextPropertyHandler
: public PropertyHandler
90 TextPropertyHandler() {}
91 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
95 class CoordPropertyHandler
: public PropertyHandler
98 CoordPropertyHandler() {}
99 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
103 class DimensionPropertyHandler
: public PropertyHandler
106 DimensionPropertyHandler() {}
107 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
111 class BoolPropertyHandler
: public PropertyHandler
114 BoolPropertyHandler() {}
115 virtual wxString
GetBriefValue(wxXmlNode
*node
, PropertyInfo
*pi
);
116 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
120 class FlagsPropertyHandler
: public PropertyHandler
123 FlagsPropertyHandler() {}
124 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
129 class NotImplPropertyHandler
: public PropertyHandler
132 NotImplPropertyHandler() {}
133 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);