]>
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"
35 PROP_NOT_IMPLEMENTED
= 6,
37 #define PROP_TYPES_CNT 7
47 WX_DECLARE_OBJARRAY(PropertyInfo
, PropertyInfoArray
);
50 class PropertyHandler
;
52 class PropsListInfo
: public wxObject
55 PropsListInfo(int index
, PropertyHandler
*hnd
, wxXmlNode
*node
,
56 PropertyInfo
*pi
, wxListCtrl
*listctrl
) :
57 m_Index(index
), m_Handler(hnd
), m_Node(node
),
58 m_PropInfo(pi
), m_ListCtrl(listctrl
) {}
59 virtual ~PropsListInfo() {}
62 PropertyHandler
*m_Handler
;
64 PropertyInfo
*m_PropInfo
;
65 wxListCtrl
*m_ListCtrl
;
76 int CreateListItem(wxListCtrl
*listctrl
, wxXmlNode
*node
, PropertyInfo
*pi
);
78 virtual wxString
GetBriefValue(wxXmlNode
*node
, PropertyInfo
*pi
);
79 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
) = 0;
84 class TextPropertyHandler
: public PropertyHandler
87 TextPropertyHandler() {}
88 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
92 class CoordPropertyHandler
: public PropertyHandler
95 CoordPropertyHandler() {}
96 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
100 class BoolPropertyHandler
: public PropertyHandler
103 BoolPropertyHandler() {}
104 virtual wxString
GetBriefValue(wxXmlNode
*node
, PropertyInfo
*pi
);
105 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
109 class FlagsPropertyHandler
: public PropertyHandler
112 FlagsPropertyHandler() {}
113 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);
118 class NotImplPropertyHandler
: public PropertyHandler
121 NotImplPropertyHandler() {}
122 virtual wxPanel
*CreateEditPanel(wxWindow
*parent
, PropsListInfo
*pli
);