]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk1/treegtk.cpp
Using buffered drawing won't let the themed background show through,
[wxWidgets.git] / src / gtk1 / treegtk.cpp
index 6d8fa194e161bc0d7feb275b0b1e99208529feeb..5e93570b6043ee12442539a6ef1ffdcb09dcd2b9 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        treectrl.cpp
+// Name:        src/gtk1/treectrl.cpp
 // Purpose:     wxTreeCtrl
 // Author:      Denis Pershin
 // Modified by:
@@ -9,24 +9,20 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
-#pragma implementation "treectrl.h"
-#endif
-
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
 #ifdef __BORLANDC__
-#pragma hdrstop
+    #pragma hdrstop
 #endif
 
 #ifndef WX_PRECOMP
-#include "wx/wx.h"
+    #include "wx/wx.h"
+    #include "wx/log.h"
+    #include "wx/textctrl.h"
 #endif
 
-#include "wx/gtk/treectrl.h"
-#include <wx/textctrl.h>
-#include "wx/log.h"
+#include "wx/gtk1/treectrl.h"
 
 #include <gtk/gtk.h>
 
@@ -75,10 +71,8 @@ static void gtk_treeitem_select_callback(GtkWidget *widget, wxTreeItemId *treeit
   owner->SendSelChanged(GTK_TREE_ITEM(widget));
 }
 
-#if !USE_SHARED_LIBRARY
 IMPLEMENT_DYNAMIC_CLASS(wxTreeCtrl, wxControl)
 
-#endif
 
 void wxTreeCtrl::Init() {
   m_imageListNormal = NULL;
@@ -109,7 +103,7 @@ bool wxTreeCtrl::Create(wxWindow *parent, wxWindowID id, const wxPoint& pos,
   if (y < 0)
     y = 0;
 
-  m_needParent = TRUE;
+  m_needParent = true;
 
 printf("precreate\n");
   PreCreation( parent, id, pos, size, style, name );
@@ -139,7 +133,7 @@ printf("postcreate\n");
 
   gtk_widget_realize(GTK_WIDGET(m_tree));
 
-  Show(TRUE);
+  Show(true);
 
   return TRUE;
 }
@@ -158,12 +152,14 @@ static void gtk_treectrl_count_callback (GtkWidget *widget, gpointer data) {
     gtk_container_foreach(GTK_CONTAINER(widget), gtk_treectrl_count_callback, data);
 }
 
-size_t wxTreeCtrl::GetCount() const {
-  int count = 0;
+unsigned int wxTreeCtrl::GetCount() const
+{
+    int count = 0;
+
+    if (m_anchor != NULL)
+        gtk_treectrl_count_callback(GTK_WIDGET(m_anchor), &count);
 
-  if (m_anchor != NULL)
-    gtk_treectrl_count_callback(GTK_WIDGET(m_anchor), &count);
-  return count;
+    return (unsigned int)count;
 }
 
 unsigned int wxTreeCtrl::GetIndent() const {
@@ -190,16 +186,17 @@ void wxTreeCtrl::SetStateImageList(wxImageList *imageList) {
   m_imageListState = imageList;
 }
 
-wxString wxTreeCtrl::GetItemText(const wxTreeItemId &item) const {
-  char *t;
+wxString wxTreeCtrl::GetItemText(const wxTreeItemId &item) const
+{
+    char *t;
 
-  if (!item.IsOk())
-    return wxString("");
+    if (!item.IsOk())
+        return wxEmptyString;
 
-  GtkLabel *l = GTK_LABEL(gtk_object_get_data(GTK_OBJECT((GtkTreeItem *)item), "w_label"));
-  gtk_label_get(l, &t);
+    GtkLabel *l = GTK_LABEL(gtk_object_get_data(GTK_OBJECT((GtkTreeItem *)item), "w_label"));
+    gtk_label_get(l, &t);
 
-  return t;
+    return t;
 }
 
 int wxTreeCtrl::GetItemImage(const wxTreeItemId& item) const {
@@ -317,7 +314,7 @@ wxTreeItemId wxTreeCtrl::GetSelection() const {
   return p;
 }
 
-wxTreeItemId wxTreeCtrl::GetParent(const wxTreeItemId& item) const {
+wxTreeItemId wxTreeCtrl::GetItemParent(const wxTreeItemId& item) const {
   if (item.IsOk())
     return (GtkTreeItem *)gtk_object_get_data(GTK_OBJECT((GtkTreeItem *)item), "parent");
 
@@ -498,7 +495,7 @@ printf("begin insert\n");
   const wxBitmap *bmp;
   const wxImageList *list;
   if ((list = GetImageList(wxIMAGE_LIST_NORMAL)) != NULL)
-    if ((bmp = list->GetBitmap(image)) != NULL)
+    if ((bmp = list->GetBitmapPtr(image)) != NULL)
       if (bmp->Ok()) {
         GdkBitmap *mask = NULL;
         if (bmp->GetMask())
@@ -723,7 +720,7 @@ long wxTreeCtrl::GetChild(long item) const {
 
   p = findGtkTreeItem(item);
   GList *list = gtk_container_children(GTK_CONTAINER(p));
-  next = GTK_TREE_ITEM(list->data);;
+  next = GTK_TREE_ITEM(list->data);
 
   if (next != NULL)
     return (long)gtk_object_get_data(GTK_OBJECT(next), "id");
@@ -731,62 +728,68 @@ long wxTreeCtrl::GetChild(long item) const {
   return (-1);
 }
 
-long wxTreeCtrl::GetFirstVisibleItem(void) const {
-  GtkTreeItem *next = NULL;
+long wxTreeCtrl::GetFirstVisibleItem(void) const
+{
+    GtkTreeItem *next = NULL;
 
-  GList *list = gtk_container_children(GTK_CONTAINER(m_anchor));
-  next = GTK_TREE_ITEM(list->data);;
+    GList *list = gtk_container_children(GTK_CONTAINER(m_anchor));
+    next = GTK_TREE_ITEM(list->data);
 //  gtk_container_foreach(GTK_CONTAINER(m_anchor), gtk_treectrl_next_visible_callback, &next);
 
-  if (next != NULL)
-    return (long)gtk_object_get_data(GTK_OBJECT(next), "id");
+    if (next != NULL)
+        return (long)gtk_object_get_data(GTK_OBJECT(next), "id");
 
-  return (-1);
+    return wxNOT_FOUND;
 }
 
-long wxTreeCtrl::GetNextVisibleItem(long item) const {
-  GtkTreeItem *p;
-  GtkTreeItem *next = NULL;
+long wxTreeCtrl::GetNextVisibleItem(long item) const
+{
+    GtkTreeItem *p;
+    GtkTreeItem *next = NULL;
 
-  p = findGtkTreeItem(item);
-  GList *list = gtk_container_children(GTK_CONTAINER(p));
-  next = GTK_TREE_ITEM(list->data);;
+    p = findGtkTreeItem(item);
+    GList *list = gtk_container_children(GTK_CONTAINER(p));
+    next = GTK_TREE_ITEM(list->data);
 //  gtk_container_foreach(GTK_CONTAINER(p), gtk_treectrl_next_visible_callback, &next);
 
-  if (next != NULL)
-    return (long)gtk_object_get_data(GTK_OBJECT(next), "id");
+    if (next != NULL)
+        return (long)gtk_object_get_data(GTK_OBJECT(next), "id");
 
-  return (-1);
+    return wxNOT_FOUND;
 }
 
-bool wxTreeCtrl::GetItem(wxTreeItem& info) const {
-  GtkTreeItem *p;
+bool wxTreeCtrl::GetItem(wxTreeItem& info) const
+{
+    GtkTreeItem *p;
 
-  p = findGtkTreeItem(info.m_itemId);
+    p = findGtkTreeItem(info.m_itemId);
 
-  if (p == NULL) {
-    wxLogSysError("TreeCtrl::GetItem failed");
-    return FALSE;
-  }
+    if (p == NULL)
+    {
+        wxLogSysError("TreeCtrl::GetItem failed");
+        return false;
+    }
 
-  wxConvertFromGtkTreeItem(info, p);
+    wxConvertFromGtkTreeItem(info, p);
 
-  return TRUE;
+    return true;
 }
 
-bool wxTreeCtrl::SetItem(wxTreeItem& info) {
-  GtkTreeItem *p;
+bool wxTreeCtrl::SetItem(wxTreeItem& info)
+{
+    GtkTreeItem *p;
 
-  p = findGtkTreeItem(info.m_itemId);
+    p = findGtkTreeItem(info.m_itemId);
 
-  if (p == NULL) {
-    wxLogSysError("TreeCtrl::SetItem failed");
-    return FALSE;
-  }
+    if (p == NULL)
+    {
+        wxLogSysError("TreeCtrl::SetItem failed");
+        return false;
+    }
 
-  wxConvertToGtkTreeItem(this, info, &p);
+    wxConvertToGtkTreeItem(this, info, &p);
 
-  return TRUE;
+    return true;
 }
 
 int wxTreeCtrl::GetItemState(long item, long stateMask) const {
@@ -816,16 +819,17 @@ bool wxTreeCtrl::SetItemState(long item, long state, long stateMask) {
 
 // Operations
 /*
-bool wxTreeCtrl::DeleteChildren(long item) {
-  GtkTreeItem *p;
+bool wxTreeCtrl::DeleteChildren(long item)
+{
+    GtkTreeItem *p;
 
-  p = findGtkTreeItem(item);
-  if (p == NULL)
-    return FALSE;
+    p = findGtkTreeItem(item);
+    if (p == NULL)
+        return false;
 
-  gtk_tree_item_remove_subtree(GTK_TREE_ITEM(p));
+    gtk_tree_item_remove_subtree(GTK_TREE_ITEM(p));
 
-  return TRUE;
+    return true;
 }
 */