/////////////////////////////////////////////////////////////////////////////
-// Name: xh_listc.h
-// Purpose: XML resource handler for wxCalendarCtrl
+// Name: wx/xrc/xh_listc.h
+// Purpose: XML resource handler for wxListCtrl
// Author: Brian Gavin
// Created: 2000/09/09
// RCS-ID: $Id$
#ifndef _WX_XH_LISTC_H_
#define _WX_XH_LISTC_H_
-#if defined(__GNUG__) && !defined(__APPLE__)
-#pragma interface "xh_listc.h"
-#endif
-
#include "wx/xrc/xmlres.h"
-class WXXMLDLLEXPORT wxListCtrlXmlHandler : public wxXmlResourceHandler
+#if wxUSE_XRC && wxUSE_LISTCTRL
+
+class WXDLLIMPEXP_FWD_CORE wxListCtrl;
+class WXDLLIMPEXP_FWD_CORE wxListItem;
+
+class WXDLLIMPEXP_XRC wxListCtrlXmlHandler : public wxXmlResourceHandler
{
public:
wxListCtrlXmlHandler();
virtual wxObject *DoCreateResource();
virtual bool CanHandle(wxXmlNode *node);
+
+private:
+ // handlers for wxListCtrl itself and its listcol and listitem children
+ wxListCtrl *HandleListCtrl();
+ void HandleListCol();
+ void HandleListItem();
+
+ // common part to HandleList{Col,Item}()
+ void HandleCommonItemAttrs(wxListItem& item);
+
+ // gets the items image index in the corresponding image list (normal if
+ // which is wxIMAGE_LIST_NORMAL or small if it is wxIMAGE_LIST_SMALL)
+ long GetImageIndex(wxListCtrl *listctrl, int which);
+
+ DECLARE_DYNAMIC_CLASS(wxListCtrlXmlHandler)
};
+#endif // wxUSE_XRC && wxUSE_LISTCTRL
#endif // _WX_XH_LISTC_H_