if (GetItemData(sel) == 0)
return;
- wxItemResource* res = (wxItemResource*) GetItemData(sel);
+ wxItemResource* res = (wxResourceTreeData *)GetItemData(sel)->GetResource();
wxString resType(res->GetType());
if (resType != "wxDialog" && resType != "wxDialogBox" && resType != "wxPanel")
return;
if (m_invalid)
return;
- wxItemResource* res = (wxItemResource*) GetItemData(sel);
+ wxItemResource* res = ((wxResourceTreeData *)GetItemData(sel))->GetResource();
wxString resType(res->GetType());
if (resType != "wxDialog" && resType != "wxDialogBox" && resType != "wxPanel")
return;
m_editorResourceTree->SetInvalid(TRUE);
m_editorResourceTree->DeleteAllItems();
- long id = m_editorResourceTree->InsertItem(0, "Dialogs"
-#ifdef __WXMSW__
- , 1, 2
-#endif
- );
+ long id = m_editorResourceTree->AddRoot("Dialogs", 1, 2);
m_resourceTable.BeginFind();
wxNode *node;
AddItemsRecursively(id, res);
}
}
- m_editorResourceTree->ExpandItem(id, wxTREE_EXPAND_EXPAND);
+ m_editorResourceTree->Expand(id);
m_editorResourceTree->SetInvalid(FALSE);
}
#endif
);
- m_editorResourceTree->SetItemData(id, (long) resource);
+ m_editorResourceTree->SetItemData(id, new wxResourceTreeData(resource));
if (strcmp(resource->GetType(), "wxBitmap") != 0)
{
int sel = m_editorResourceTree->GetSelection();
if (sel != 0)
{
- wxItemResource *res = (wxItemResource *)m_editorResourceTree->GetItemData(sel);
+ wxResourceTreeData *data = (wxResourceTreeData *)m_editorResourceTree->GetItemData(sel);
+ wxItemResource *res = data->GetResource();
return Edit(res);
}
return FALSE;
int sel = m_editorResourceTree->GetSelection();
if (sel != 0)
{
- wxItemResource *res = (wxItemResource *)m_editorResourceTree->GetItemData(sel);
+ wxResourceTreeData *data = (wxResourceTreeData *)m_editorResourceTree->GetItemData(sel);
+ wxItemResource *res = data->GetResource();
wxWindow *win = FindWindowForResource(res);
if (win)
{
#include "wx/resource.h"
#include "wx/toolbar.h"
#include "wx/imaglist.h"
+#include "wx/treectrl.h"
#include "proplist.h"
#include "symbtabl.h"
#define TOOLBAR_TO_BACK 17
#define TOOLBAR_COPY_SIZE 18
+/*
+ * this class is used to store data associated with a tree item
+ */
+class wxResourceTreeData : public wxTreeItemData
+{
+public:
+ wxResourceTreeData(wxItemResource *resource) { m_resource = resource; }
+
+ wxItemResource *GetResource() const { return m_resource; }
+
+private:
+ wxItemResource *m_resource;
+};
+
#endif