Ensure that changing an icon image doesn't change the colour back to white. Seems...
authordpage <dpage@a7884b65-44f6-0310-8a51-81a127f17b15>
Sun, 25 May 2008 19:08:39 +0000 (19:08 +0000)
committerdpage <dpage@a7884b65-44f6-0310-8a51-81a127f17b15>
Sun, 25 May 2008 19:08:39 +0000 (19:08 +0000)
git-svn-id: svn://svn.pgadmin.org/trunk/pgadmin3@7309 a7884b65-44f6-0310-8a51-81a127f17b15

pgadmin/ctl/ctlTree.cpp
pgadmin/include/ctl/ctlTree.h

index 700fbe6fe8590299535f30e61d8d069e7ec70fce..43e836697ebe52f3b285f12755a59c41a531a9d1 100644 (file)
@@ -56,20 +56,36 @@ pgCollection *ctlTree::GetParentCollection(wxTreeItemId id)
 }\r
 \r
 \r
+void ctlTree::SetItemImage(const wxTreeItemId& item, int image, wxTreeItemIcon which)\r
+{\r
+    wxTreeCtrl::SetItemImage(item, image, which);\r
+    \r
+    wxTreeItemData *data = GetItemData(item);\r
+\r
+    // Set the item colour\r
+    if (data)\r
+    {\r
+       if (((pgObject *)data)->GetMetaType() == PGM_SERVER)\r
+           SetItemBackgroundColour(item, ((pgServer *)data)->GetColour());\r
+       else if (((pgObject *)data)->GetServer())\r
+           SetItemBackgroundColour(item, ((pgObject *)data)->GetServer()->GetColour());\r
+    }\r
+}\r
+\r
 wxTreeItemId ctlTree::AppendItem(const wxTreeItemId& parent, const wxString& text, int image, int selImage, wxTreeItemData* data)\r
 {\r
-       wxTreeItemId itm = wxTreeCtrl::AppendItem(parent, text, image, selImage, data); \r
-\r
-       // Set the item colour\r
-       if (data)\r
-       {\r
-               if (((pgObject *)data)->GetMetaType() == PGM_SERVER)\r
-                       SetItemBackgroundColour(itm, ((pgServer *)data)->GetColour());\r
-               else if (((pgObject *)data)->GetServer())\r
-                       SetItemBackgroundColour(itm, ((pgObject *)data)->GetServer()->GetColour());\r
-       }\r
-\r
-       return itm;\r
+    wxTreeItemId itm = wxTreeCtrl::AppendItem(parent, text, image, selImage, data); \r
+\r
+    // Set the item colour\r
+    if (data)\r
+    {\r
+        if (((pgObject *)data)->GetMetaType() == PGM_SERVER)\r
+            SetItemBackgroundColour(itm, ((pgServer *)data)->GetColour());\r
+        else if (((pgObject *)data)->GetServer())\r
+            SetItemBackgroundColour(itm, ((pgObject *)data)->GetServer()->GetColour());\r
+    }\r
+\r
+    return itm;\r
 }\r
 \r
 wxTreeItemId ctlTree::AppendObject(pgObject *parent, pgObject *object)\r
@@ -87,7 +103,7 @@ wxTreeItemId ctlTree::AppendObject(pgObject *parent, pgObject *object)
     else if (object->WantDummyChild())\r
         AppendItem(object->GetId(), wxT("Dummy"));\r
 \r
-       return item;\r
+    return item;\r
 }\r
 \r
 \r
index a8c8df58a34f688e0eaa8b7205df20627568e5f1..500db95f5e77e3e092b5b79bdb1c81c88a01e7c8 100644 (file)
@@ -26,8 +26,9 @@ class ctlTree : public wxTreeCtrl
 {\r
 public:\r
     ctlTree(wxWindow* parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxTR_HAS_BUTTONS);\r
+    void SetItemImage(const wxTreeItemId& item, int image, wxTreeItemIcon which = wxTreeItemIcon_Normal);\r
     wxTreeItemId AppendItem(const wxTreeItemId& parent, const wxString& text, int image = -1, int selImage = -1, wxTreeItemData* data = NULL);\r
-       wxTreeItemId AppendObject(pgObject *parent, pgObject *object);\r
+    wxTreeItemId AppendObject(pgObject *parent, pgObject *object);\r
     void RemoveDummyChild(pgObject *obj);\r
     pgCollection *AppendCollection(pgObject *parent, pgaFactory &factory);\r
     pgObject *GetObject(wxTreeItemId id);\r