]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkclist.c
Deprecate widget flag: GTK_WIDGET_MAPPED
[~andy/gtk] / gtk / gtkclist.c
index 2886ab32b143fa7c0294b2e97d108426741210a8..83a1fa0c5c3139cab74d37d55e893c4c6dd6d66b 100644 (file)
  * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
  */
 
-#undef GDK_DISABLE_DEPRECATED
-#undef GTK_DISABLE_DEPRECATED
-
-#include <config.h>
+#include "config.h"
 
 #include <stdlib.h>
 #include <string.h>
 
+#undef GTK_DISABLE_DEPRECATED
+#define __GTK_CLIST_C__
+
+#include <gdk/gdkkeysyms.h>
+
 #include "gtkmain.h"
+#include "gtkobject.h"
+#include "gtkctree.h"
 #include "gtkclist.h"
 #include "gtkbindings.h"
 #include "gtkdnd.h"
 #include "gtkmarshalers.h"
-#include <gdk/gdkkeysyms.h>
+#include "gtkintl.h"
+
+#include "gtkalias.h"
 
 /* length of button_actions array */
 #define MAX_BUTTON 5
 
-/* the number rows memchunk expands at a time */
-#define CLIST_OPTIMUM_SIZE 64
-
 /* the width of the column resize windows */
 #define DRAG_WIDTH  6
 
@@ -486,6 +489,7 @@ gtk_clist_get_type (void)
        (GtkClassInitFunc) NULL,
       };
 
+      I_("GtkCList");
       clist_type = gtk_type_unique (GTK_TYPE_CONTAINER, &clist_info);
     }
 
@@ -574,41 +578,41 @@ gtk_clist_class_init (GtkCListClass *klass)
   klass->set_cell_contents = set_cell_contents;
   klass->cell_size_request = cell_size_request;
 
-  gtk_object_add_arg_type ("GtkCList::n_columns",
+  gtk_object_add_arg_type ("GtkCList::n-columns",
                           GTK_TYPE_UINT,
-                          GTK_ARG_READWRITE | GTK_ARG_CONSTRUCT_ONLY,
+                          GTK_ARG_READWRITE | GTK_ARG_CONSTRUCT_ONLY | G_PARAM_STATIC_NAME,
                           ARG_N_COLUMNS);
-  gtk_object_add_arg_type ("GtkCList::shadow_type",
+  gtk_object_add_arg_type ("GtkCList::shadow-type",
                           GTK_TYPE_SHADOW_TYPE,
-                          GTK_ARG_READWRITE,
+                          GTK_ARG_READWRITE | G_PARAM_STATIC_NAME,
                           ARG_SHADOW_TYPE);
-  gtk_object_add_arg_type ("GtkCList::selection_mode",
+  gtk_object_add_arg_type ("GtkCList::selection-mode",
                           GTK_TYPE_SELECTION_MODE,
-                          GTK_ARG_READWRITE,
+                          GTK_ARG_READWRITE | G_PARAM_STATIC_NAME,
                           ARG_SELECTION_MODE);
-  gtk_object_add_arg_type ("GtkCList::row_height",
+  gtk_object_add_arg_type ("GtkCList::row-height",
                           GTK_TYPE_UINT,
-                          GTK_ARG_READWRITE,
+                          GTK_ARG_READWRITE | G_PARAM_STATIC_NAME,
                           ARG_ROW_HEIGHT);
   gtk_object_add_arg_type ("GtkCList::reorderable",
                           GTK_TYPE_BOOL,
-                          GTK_ARG_READWRITE,
+                          GTK_ARG_READWRITE | G_PARAM_STATIC_NAME,
                           ARG_REORDERABLE);
-  gtk_object_add_arg_type ("GtkCList::titles_active",
+  gtk_object_add_arg_type ("GtkCList::titles-active",
                           GTK_TYPE_BOOL,
-                          GTK_ARG_READWRITE,
+                          GTK_ARG_READWRITE | G_PARAM_STATIC_NAME,
                           ARG_TITLES_ACTIVE);
-  gtk_object_add_arg_type ("GtkCList::use_drag_icons",
+  gtk_object_add_arg_type ("GtkCList::use-drag-icons",
                           GTK_TYPE_BOOL,
-                          GTK_ARG_READWRITE,
+                          GTK_ARG_READWRITE | G_PARAM_STATIC_NAME,
                           ARG_USE_DRAG_ICONS);
-  gtk_object_add_arg_type ("GtkCList::sort_type",
+  gtk_object_add_arg_type ("GtkCList::sort-type",
                           GTK_TYPE_SORT_TYPE,
-                          GTK_ARG_READWRITE,
+                          GTK_ARG_READWRITE | G_PARAM_STATIC_NAME,
                           ARG_SORT_TYPE);  
 
   widget_class->set_scroll_adjustments_signal =
-    gtk_signal_new ("set_scroll_adjustments",
+    gtk_signal_new (I_("set-scroll-adjustments"),
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, set_scroll_adjustments),
@@ -616,7 +620,7 @@ gtk_clist_class_init (GtkCListClass *klass)
                    GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
 
   clist_signals[SELECT_ROW] =
-    gtk_signal_new ("select_row",
+    gtk_signal_new (I_("select-row"),
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, select_row),
@@ -626,7 +630,7 @@ gtk_clist_class_init (GtkCListClass *klass)
                    GTK_TYPE_INT,
                    GDK_TYPE_EVENT | G_SIGNAL_TYPE_STATIC_SCOPE);
   clist_signals[UNSELECT_ROW] =
-    gtk_signal_new ("unselect_row",
+    gtk_signal_new (I_("unselect-row"),
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, unselect_row),
@@ -634,21 +638,21 @@ gtk_clist_class_init (GtkCListClass *klass)
                    GTK_TYPE_NONE, 3, GTK_TYPE_INT,
                    GTK_TYPE_INT, GDK_TYPE_EVENT);
   clist_signals[ROW_MOVE] =
-    gtk_signal_new ("row_move",
+    gtk_signal_new (I_("row-move"),
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, row_move),
                    _gtk_marshal_VOID__INT_INT,
                    GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT);
   clist_signals[CLICK_COLUMN] =
-    gtk_signal_new ("click_column",
+    gtk_signal_new (I_("click-column"),
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, click_column),
                    _gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1, GTK_TYPE_INT);
   clist_signals[RESIZE_COLUMN] =
-    gtk_signal_new ("resize_column",
+    gtk_signal_new (I_("resize-column"),
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, resize_column),
@@ -656,56 +660,56 @@ gtk_clist_class_init (GtkCListClass *klass)
                    GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT);
 
   clist_signals[TOGGLE_FOCUS_ROW] =
-    gtk_signal_new ("toggle_focus_row",
+    gtk_signal_new (I_("toggle-focus-row"),
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, toggle_focus_row),
                     _gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   clist_signals[SELECT_ALL] =
-    gtk_signal_new ("select_all",
+    gtk_signal_new (I_("select-all"),
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, select_all),
                     _gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   clist_signals[UNSELECT_ALL] =
-    gtk_signal_new ("unselect_all",
+    gtk_signal_new (I_("unselect-all"),
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, unselect_all),
                     _gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   clist_signals[UNDO_SELECTION] =
-    gtk_signal_new ("undo_selection",
+    gtk_signal_new (I_("undo-selection"),
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, undo_selection),
                    _gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   clist_signals[START_SELECTION] =
-    gtk_signal_new ("start_selection",
+    gtk_signal_new (I_("start-selection"),
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, start_selection),
                    _gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   clist_signals[END_SELECTION] =
-    gtk_signal_new ("end_selection",
+    gtk_signal_new (I_("end-selection"),
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, end_selection),
                    _gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   clist_signals[TOGGLE_ADD_MODE] =
-    gtk_signal_new ("toggle_add_mode",
+    gtk_signal_new (I_("toggle-add-mode"),
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, toggle_add_mode),
                    _gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   clist_signals[EXTEND_SELECTION] =
-    gtk_signal_new ("extend_selection",
+    gtk_signal_new (I_("extend-selection"),
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, extend_selection),
@@ -713,21 +717,21 @@ gtk_clist_class_init (GtkCListClass *klass)
                     GTK_TYPE_NONE, 3,
                    GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT, GTK_TYPE_BOOL);
   clist_signals[SCROLL_VERTICAL] =
-    gtk_signal_new ("scroll_vertical",
+    gtk_signal_new (I_("scroll-vertical"),
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, scroll_vertical),
                     _gtk_marshal_VOID__ENUM_FLOAT,
                     GTK_TYPE_NONE, 2, GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT);
   clist_signals[SCROLL_HORIZONTAL] =
-    gtk_signal_new ("scroll_horizontal",
+    gtk_signal_new (I_("scroll-horizontal"),
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, scroll_horizontal),
                     _gtk_marshal_VOID__ENUM_FLOAT,
                     GTK_TYPE_NONE, 2, GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT);
   clist_signals[ABORT_COLUMN_RESIZE] =
-    gtk_signal_new ("abort_column_resize",
+    gtk_signal_new (I_("abort-column-resize"),
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, abort_column_resize),
@@ -736,177 +740,177 @@ gtk_clist_class_init (GtkCListClass *klass)
 
   binding_set = gtk_binding_set_by_class (klass);
   gtk_binding_entry_add_signal (binding_set, GDK_Up, 0,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Up, 0,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_Down, 0,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_FORWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Down, 0,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_FORWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_Page_Up, 0,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_PAGE_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Page_Up, 0,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_PAGE_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_Page_Down, 0,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_PAGE_FORWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Page_Down, 0,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_PAGE_FORWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_Home, GDK_CONTROL_MASK,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Home, GDK_CONTROL_MASK,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_End, GDK_CONTROL_MASK,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 1.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_End, GDK_CONTROL_MASK,
-                               "scroll_vertical", 2,
+                               "scroll-vertical", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 1.0);
   
   gtk_binding_entry_add_signal (binding_set, GDK_Up, GDK_SHIFT_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Up, GDK_SHIFT_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_Down, GDK_SHIFT_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_FORWARD,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Down, GDK_SHIFT_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_FORWARD,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_Page_Up, GDK_SHIFT_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_PAGE_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Page_Up, GDK_SHIFT_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_PAGE_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_Page_Down, GDK_SHIFT_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_PAGE_FORWARD,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Page_Down, GDK_SHIFT_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_PAGE_FORWARD,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_Home,
                                GDK_SHIFT_MASK | GDK_CONTROL_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Home,
                                 GDK_SHIFT_MASK | GDK_CONTROL_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 0.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_End,
                                GDK_SHIFT_MASK | GDK_CONTROL_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 1.0, GTK_TYPE_BOOL, TRUE);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_End,
                                GDK_SHIFT_MASK | GDK_CONTROL_MASK,
-                               "extend_selection", 3,
+                               "extend-selection", 3,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 1.0, GTK_TYPE_BOOL, TRUE);
 
   
   gtk_binding_entry_add_signal (binding_set, GDK_Left, 0,
-                               "scroll_horizontal", 2,
+                               "scroll-horizontal", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Left, 0,
-                               "scroll_horizontal", 2,
+                               "scroll-horizontal", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_BACKWARD,
                                GTK_TYPE_FLOAT, 0.0);
   
   gtk_binding_entry_add_signal (binding_set, GDK_Right, 0,
-                               "scroll_horizontal", 2,
+                               "scroll-horizontal", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_FORWARD,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Right, 0,
-                               "scroll_horizontal", 2,
+                               "scroll-horizontal", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_STEP_FORWARD,
                                GTK_TYPE_FLOAT, 0.0);
 
   gtk_binding_entry_add_signal (binding_set, GDK_Home, 0,
-                               "scroll_horizontal", 2,
+                               "scroll-horizontal", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 0.0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Home, 0,
-                               "scroll_horizontal", 2,
+                               "scroll-horizontal", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 0.0);
   
   gtk_binding_entry_add_signal (binding_set, GDK_End, 0,
-                               "scroll_horizontal", 2,
+                               "scroll-horizontal", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 1.0);
+
   gtk_binding_entry_add_signal (binding_set, GDK_KP_End, 0,
-                               "scroll_horizontal", 2,
+                               "scroll-horizontal", 2,
                                GTK_TYPE_ENUM, GTK_SCROLL_JUMP,
                                GTK_TYPE_FLOAT, 1.0);
-
   
   gtk_binding_entry_add_signal (binding_set, GDK_Escape, 0,
-                               "undo_selection", 0);
+                               "undo-selection", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_Escape, 0,
-                               "abort_column_resize", 0);
+                               "abort-column-resize", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_space, 0,
-                               "toggle_focus_row", 0);
+                               "toggle-focus-row", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Space, 0,
-                               "toggle_focus_row", 0);  
+                               "toggle-focus-row", 0);  
   gtk_binding_entry_add_signal (binding_set, GDK_space, GDK_CONTROL_MASK,
-                               "toggle_add_mode", 0);
+                               "toggle-add-mode", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Space, GDK_CONTROL_MASK,
-                               "toggle_add_mode", 0);
+                               "toggle-add-mode", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_slash, GDK_CONTROL_MASK,
-                               "select_all", 0);
+                               "select-all", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_KP_Divide, GDK_CONTROL_MASK,
-                               "select_all", 0);
+                               "select-all", 0);
   gtk_binding_entry_add_signal (binding_set, '\\', GDK_CONTROL_MASK,
-                               "unselect_all", 0);
+                               "unselect-all", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_Shift_L,
                                GDK_RELEASE_MASK | GDK_SHIFT_MASK,
-                               "end_selection", 0);
+                               "end-selection", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_Shift_R,
                                GDK_RELEASE_MASK | GDK_SHIFT_MASK,
-                               "end_selection", 0);
+                               "end-selection", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_Shift_L,
                                GDK_RELEASE_MASK | GDK_SHIFT_MASK |
                                GDK_CONTROL_MASK,
-                               "end_selection", 0);
+                               "end-selection", 0);
   gtk_binding_entry_add_signal (binding_set, GDK_Shift_R,
                                GDK_RELEASE_MASK | GDK_SHIFT_MASK |
                                GDK_CONTROL_MASK,
-                               "end_selection", 0);
+                               "end-selection", 0);
 }
 
 static void
@@ -982,7 +986,7 @@ gtk_clist_get_arg (GtkObject      *object,
       GTK_VALUE_BOOL (*arg) = TRUE;
       for (i = 0; i < clist->columns; i++)
        if (clist->column[i].button &&
-           !GTK_WIDGET_SENSITIVE (clist->column[i].button))
+           !gtk_widget_get_sensitive (clist->column[i].button))
          {
            GTK_VALUE_BOOL (*arg) = FALSE;
            break;
@@ -1006,13 +1010,10 @@ gtk_clist_init (GtkCList *clist)
   clist->flags = 0;
 
   GTK_WIDGET_UNSET_FLAGS (clist, GTK_NO_WINDOW);
-  GTK_WIDGET_SET_FLAGS (clist, GTK_CAN_FOCUS);
+  gtk_widget_set_can_focus (GTK_WIDGET (clist), TRUE);
   GTK_CLIST_SET_FLAG (clist, CLIST_DRAW_DRAG_LINE);
   GTK_CLIST_SET_FLAG (clist, CLIST_USE_DRAG_ICONS);
 
-  clist->row_mem_chunk = NULL;
-  clist->cell_mem_chunk = NULL;
-
   clist->freeze_count = 0;
 
   clist->rows = 0;
@@ -1088,23 +1089,6 @@ gtk_clist_constructor (GType                  type,
                                                                construct_properties);
   GtkCList *clist = GTK_CLIST (object);
   
-  /* initalize memory chunks, if this has not been done by any
-   * possibly derived widget
-   */
-  if (!clist->row_mem_chunk)
-    clist->row_mem_chunk = g_mem_chunk_new ("clist row mem chunk",
-                                           sizeof (GtkCListRow),
-                                           sizeof (GtkCListRow) *
-                                           CLIST_OPTIMUM_SIZE, 
-                                           G_ALLOC_AND_FREE);
-  
-  if (!clist->cell_mem_chunk)
-    clist->cell_mem_chunk = g_mem_chunk_new ("clist cell mem chunk",
-                                            sizeof (GtkCell) * clist->columns,
-                                            sizeof (GtkCell) * clist->columns *
-                                            CLIST_OPTIMUM_SIZE, 
-                                            G_ALLOC_AND_FREE);
-  
   /* allocate memory for columns */
   clist->column = columns_new (clist);
   
@@ -1176,21 +1160,20 @@ gtk_clist_set_hadjustment (GtkCList      *clist,
   if (clist->hadjustment)
     {
       gtk_signal_disconnect_by_data (GTK_OBJECT (clist->hadjustment), clist);
-      gtk_object_unref (GTK_OBJECT (clist->hadjustment));
+      g_object_unref (clist->hadjustment);
     }
 
   clist->hadjustment = adjustment;
 
   if (clist->hadjustment)
     {
-      gtk_object_ref (GTK_OBJECT (clist->hadjustment));
-      gtk_object_sink (GTK_OBJECT (clist->hadjustment));
+      g_object_ref_sink (clist->hadjustment);
 
       gtk_signal_connect (GTK_OBJECT (clist->hadjustment), "changed",
-                         (GtkSignalFunc) hadjustment_changed,
+                         G_CALLBACK (hadjustment_changed),
                          (gpointer) clist);
-      gtk_signal_connect (GTK_OBJECT (clist->hadjustment), "value_changed",
-                         (GtkSignalFunc) hadjustment_value_changed,
+      gtk_signal_connect (GTK_OBJECT (clist->hadjustment), "value-changed",
+                         G_CALLBACK (hadjustment_value_changed),
                          (gpointer) clist);
     }
 
@@ -1224,21 +1207,20 @@ gtk_clist_set_vadjustment (GtkCList      *clist,
   if (clist->vadjustment)
     {
       gtk_signal_disconnect_by_data (GTK_OBJECT (clist->vadjustment), clist);
-      gtk_object_unref (GTK_OBJECT (clist->vadjustment));
+      g_object_unref (clist->vadjustment);
     }
 
   clist->vadjustment = adjustment;
 
   if (clist->vadjustment)
     {
-      gtk_object_ref (GTK_OBJECT (clist->vadjustment));
-      gtk_object_sink (GTK_OBJECT (clist->vadjustment));
+      g_object_ref_sink (clist->vadjustment);
 
       gtk_signal_connect (GTK_OBJECT (clist->vadjustment), "changed",
-                         (GtkSignalFunc) vadjustment_changed,
+                         G_CALLBACK (vadjustment_changed),
                          (gpointer) clist);
-      gtk_signal_connect (GTK_OBJECT (clist->vadjustment), "value_changed",
-                         (GtkSignalFunc) vadjustment_value_changed,
+      gtk_signal_connect (GTK_OBJECT (clist->vadjustment), "value-changed",
+                         G_CALLBACK (vadjustment_value_changed),
                          (gpointer) clist);
     }
 
@@ -1273,7 +1255,7 @@ gtk_clist_set_shadow_type (GtkCList      *clist,
 
   clist->shadow_type = type;
 
-  if (GTK_WIDGET_VISIBLE (clist))
+  if (gtk_widget_get_visible (GTK_WIDGET (clist)))
     gtk_widget_queue_resize (GTK_WIDGET (clist));
 }
 
@@ -1393,11 +1375,11 @@ gtk_clist_column_title_active (GtkCList *clist,
   clist->column[column].button_passive = FALSE;
 
   gtk_signal_disconnect_by_func (GTK_OBJECT (clist->column[column].button),
-                                (GtkSignalFunc) column_title_passive_func,
+                                G_CALLBACK (column_title_passive_func),
                                 NULL);
 
-  GTK_WIDGET_SET_FLAGS (clist->column[column].button, GTK_CAN_FOCUS);
-  if (GTK_WIDGET_VISIBLE (clist))
+  gtk_widget_set_can_focus (clist->column[column].button, TRUE);
+  if (gtk_widget_get_visible (GTK_WIDGET (clist)))
     gtk_widget_queue_draw (clist->column[column].button);
 }
 
@@ -1419,15 +1401,16 @@ gtk_clist_column_title_passive (GtkCList *clist,
   clist->column[column].button_passive = TRUE;
 
   if (button->button_down)
-    gtk_button_released (button);
+    g_signal_emit_by_name (button, "released");
   if (button->in_button)
-    gtk_button_leave (button);
+    g_signal_emit_by_name (button, "leave");
 
   gtk_signal_connect (GTK_OBJECT (clist->column[column].button), "event",
-                     (GtkSignalFunc) column_title_passive_func, NULL);
+                     G_CALLBACK (column_title_passive_func),
+                      NULL);
 
-  GTK_WIDGET_UNSET_FLAGS (clist->column[column].button, GTK_CAN_FOCUS);
-  if (GTK_WIDGET_VISIBLE (clist))
+  gtk_widget_set_can_focus (clist->column[column].button, FALSE);
+  if (gtk_widget_get_visible (GTK_WIDGET (clist)))
     gtk_widget_queue_draw (clist->column[column].button);
 }
 
@@ -1513,7 +1496,7 @@ gtk_clist_set_column_title (GtkCList    *clist,
 
   /* if this button didn't previously exist, then the
    * column button positions have to be re-computed */
-  if (GTK_WIDGET_VISIBLE (clist) && new_button)
+  if (gtk_widget_get_visible (GTK_WIDGET (clist)) && new_button)
     size_allocate_title_buttons (clist);
 }
 
@@ -1567,7 +1550,7 @@ gtk_clist_set_column_widget (GtkCList  *clist,
 
   /* if this button didn't previously exist, then the
    * column button positions have to be re-computed */
-  if (GTK_WIDGET_VISIBLE (clist) && new_button)
+  if (gtk_widget_get_visible (GTK_WIDGET (clist)) && new_button)
     size_allocate_title_buttons (clist);
 }
 
@@ -1688,7 +1671,7 @@ gtk_clist_set_column_resizeable (GtkCList *clist,
   if (resizeable)
     clist->column[column].auto_resize = FALSE;
 
-  if (GTK_WIDGET_VISIBLE (clist))
+  if (gtk_widget_get_visible (GTK_WIDGET (clist)))
     size_allocate_title_buttons (clist);
 }
 
@@ -1717,7 +1700,7 @@ gtk_clist_set_column_auto_resize (GtkCList *clist,
        }
     }
 
-  if (GTK_WIDGET_VISIBLE (clist))
+  if (gtk_widget_get_visible (GTK_WIDGET (clist)))
     size_allocate_title_buttons (clist);
 }
 
@@ -1942,8 +1925,10 @@ abort_column_resize (GtkCList *clist)
 
   if (GTK_CLIST_ADD_MODE(clist))
     {
+      gint8 dashes[] = { 4, 4 };
+
       gdk_gc_set_line_attributes (clist->xor_gc, 1, GDK_LINE_ON_OFF_DASH, 0,0);
-      gdk_gc_set_dashes (clist->xor_gc, 0, "\4\4", 2);
+      gdk_gc_set_dashes (clist->xor_gc, 0, dashes, G_N_ELEMENTS (dashes));
     }
 }
 
@@ -2156,7 +2141,7 @@ column_button_create (GtkCList *clist,
   gtk_widget_set_parent (button, GTK_WIDGET (clist));
 
   gtk_signal_connect (GTK_OBJECT (button), "clicked",
-                     (GtkSignalFunc) column_button_clicked,
+                     G_CALLBACK (column_button_clicked),
                      (gpointer) clist);
   gtk_widget_show (button);
 }
@@ -2289,6 +2274,10 @@ gtk_clist_get_text (GtkCList  *clist,
   return 1;
 }
 
+/**
+ * gtk_clist_set_pixmap:
+ * @mask: (allow-none):
+ */
 void
 gtk_clist_set_pixmap (GtkCList  *clist,
                      gint       row,
@@ -2307,9 +2296,9 @@ gtk_clist_set_pixmap (GtkCList  *clist,
 
   clist_row = ROW_ELEMENT (clist, row)->data;
   
-  gdk_pixmap_ref (pixmap);
+  g_object_ref (pixmap);
   
-  if (mask) gdk_pixmap_ref (mask);
+  if (mask) g_object_ref (mask);
   
   GTK_CLIST_GET_CLASS (clist)->set_cell_contents
     (clist, clist_row, column, GTK_CELL_PIXMAP, NULL, 0, pixmap, mask);
@@ -2373,8 +2362,8 @@ gtk_clist_set_pixtext (GtkCList    *clist,
 
   clist_row = ROW_ELEMENT (clist, row)->data;
   
-  gdk_pixmap_ref (pixmap);
-  if (mask) gdk_pixmap_ref (mask);
+  g_object_ref (pixmap);
+  if (mask) g_object_ref (mask);
   GTK_CLIST_GET_CLASS (clist)->set_cell_contents
     (clist, clist_row, column, GTK_CELL_PIXTEXT, text, spacing, pixmap, mask);
 
@@ -2546,12 +2535,11 @@ set_cell_contents (GtkCList    *clist,
       !GTK_CLIST_AUTO_RESIZE_BLOCKED (clist))
     column_auto_resize (clist, clist_row, column, requisition.width);
 
-  if (old_text)
-    g_free (old_text);
+  g_free (old_text);
   if (old_pixmap)
-    gdk_pixmap_unref (old_pixmap);
+    g_object_unref (old_pixmap);
   if (old_mask)
-    gdk_pixmap_unref (old_mask);
+    g_object_unref (old_mask);
 }
 
 PangoLayout *
@@ -2615,7 +2603,7 @@ cell_size_request (GtkCList       *clist,
       requisition->width = logical_rect.width;
       requisition->height = logical_rect.height;
       
-      g_object_unref (G_OBJECT (layout));
+      g_object_unref (layout);
     }
   else
     {
@@ -2629,14 +2617,14 @@ cell_size_request (GtkCList       *clist,
   switch (clist_row->cell[column].type)
     {
     case GTK_CELL_PIXTEXT:
-      gdk_window_get_size (GTK_CELL_PIXTEXT (clist_row->cell[column])->pixmap,
-                          &width, &height);
+      gdk_drawable_get_size (GTK_CELL_PIXTEXT (clist_row->cell[column])->pixmap,
+                             &width, &height);
       requisition->width += width;
       requisition->height = MAX (requisition->height, height);      
       break;
     case GTK_CELL_PIXMAP:
-      gdk_window_get_size (GTK_CELL_PIXMAP (clist_row->cell[column])->pixmap,
-                          &width, &height);
+      gdk_drawable_get_size (GTK_CELL_PIXMAP (clist_row->cell[column])->pixmap,
+                             &width, &height);
       requisition->width += width;
       requisition->height = MAX (requisition->height, height);
       break;
@@ -2810,7 +2798,7 @@ static void
 real_remove_row (GtkCList *clist,
                 gint      row)
 {
-  gint was_visible, was_selected;
+  gint was_visible;
   GList *list;
   GtkCListRow *clist_row;
 
@@ -2821,7 +2809,6 @@ real_remove_row (GtkCList *clist,
     return;
 
   was_visible = (gtk_clist_row_is_visible (clist, row) != GTK_VISIBILITY_NONE);
-  was_selected = 0;
 
   /* get the row we're going to delete */
   list = ROW_ELEMENT (clist, row);
@@ -2844,7 +2831,7 @@ real_remove_row (GtkCList *clist,
     clist->row_list = g_list_next (list);
   if (clist->row_list_end == list)
     clist->row_list_end = g_list_previous (list);
-  g_list_remove (list, clist_row);
+  list = g_list_remove (list, clist_row);
 
   if (row < ROW_FROM_YPIXEL (clist, 0))
     clist->voffset += clist->row_height + CELL_SPACING;
@@ -3092,10 +3079,10 @@ gtk_clist_set_row_data (GtkCList *clist,
 }
 
 void
-gtk_clist_set_row_data_full (GtkCList         *clist,
-                            gint              row,
-                            gpointer          data,
-                            GtkDestroyNotify  destroy)
+gtk_clist_set_row_data_full (GtkCList       *clist,
+                            gint            row,
+                            gpointer        data,
+                            GDestroyNotify  destroy)
 {
   GtkCListRow *clist_row;
 
@@ -3235,8 +3222,8 @@ gtk_clist_set_foreground (GtkCList       *clist,
       clist_row->foreground = *color;
       clist_row->fg_set = TRUE;
       if (GTK_WIDGET_REALIZED (clist))
-       gdk_color_alloc (gtk_widget_get_colormap (GTK_WIDGET (clist)),
-                        &clist_row->foreground);
+       gdk_colormap_alloc_color (gtk_widget_get_colormap (GTK_WIDGET (clist)),
+                                  &clist_row->foreground, FALSE, TRUE);
     }
   else
     clist_row->fg_set = FALSE;
@@ -3264,8 +3251,8 @@ gtk_clist_set_background (GtkCList       *clist,
       clist_row->background = *color;
       clist_row->bg_set = TRUE;
       if (GTK_WIDGET_REALIZED (clist))
-       gdk_color_alloc (gtk_widget_get_colormap (GTK_WIDGET (clist)),
-                        &clist_row->background);
+       gdk_colormap_alloc_color (gtk_widget_get_colormap (GTK_WIDGET (clist)),
+                                  &clist_row->background, FALSE, TRUE);
     }
   else
     clist_row->bg_set = FALSE;
@@ -3685,10 +3672,12 @@ toggle_add_mode (GtkCList *clist)
   gtk_clist_draw_focus (GTK_WIDGET (clist));
   if (!GTK_CLIST_ADD_MODE(clist))
     {
+      gint8 dashes[] = { 4, 4 };
+
       GTK_CLIST_SET_FLAG (clist, CLIST_ADD_MODE);
       gdk_gc_set_line_attributes (clist->xor_gc, 1,
                                  GDK_LINE_ON_OFF_DASH, 0, 0);
-      gdk_gc_set_dashes (clist->xor_gc, 0, "\4\4", 2);
+      gdk_gc_set_dashes (clist->xor_gc, 0, dashes, G_N_ELEMENTS (dashes));
     }
   else
     {
@@ -3948,7 +3937,7 @@ real_undo_selection (GtkCList *clist)
                       GPOINTER_TO_INT (work->data), -1, NULL);
     }
 
-  if (GTK_WIDGET_HAS_FOCUS(clist) && clist->focus_row != clist->undo_anchor)
+  if (gtk_widget_has_focus (GTK_WIDGET (clist)) && clist->focus_row != clist->undo_anchor)
     {
       gtk_clist_draw_focus (GTK_WIDGET (clist));
       clist->focus_row = clist->undo_anchor;
@@ -4290,7 +4279,7 @@ end_selection (GtkCList *clist)
   g_return_if_fail (GTK_IS_CLIST (clist));
 
   if (gdk_display_pointer_is_grabbed (gtk_widget_get_display (GTK_WIDGET (clist))) &&
-      GTK_WIDGET_HAS_FOCUS (clist))
+      gtk_widget_has_focus (GTK_WIDGET (clist)))
     return;
 
   GTK_CLIST_GET_CLASS (clist)->resync_selection (clist, NULL);
@@ -4402,13 +4391,13 @@ gtk_clist_destroy (GtkObject *object)
   if (clist->hadjustment)
     {
       gtk_signal_disconnect_by_data (GTK_OBJECT (clist->hadjustment), clist);
-      gtk_object_unref (GTK_OBJECT (clist->hadjustment));
+      g_object_unref (clist->hadjustment);
       clist->hadjustment = NULL;
     }
   if (clist->vadjustment)
     {
       gtk_signal_disconnect_by_data (GTK_OBJECT (clist->vadjustment), clist);
-      gtk_object_unref (GTK_OBJECT (clist->vadjustment));
+      g_object_unref (clist->vadjustment);
       clist->vadjustment = NULL;
     }
 
@@ -4422,8 +4411,7 @@ gtk_clist_destroy (GtkObject *object)
        clist->column[i].button = NULL;
       }
 
-  if (GTK_OBJECT_CLASS (parent_class)->destroy)
-    (*GTK_OBJECT_CLASS (parent_class)->destroy) (object);
+  GTK_OBJECT_CLASS (parent_class)->destroy (object);
 }
 
 static void
@@ -4437,9 +4425,6 @@ gtk_clist_finalize (GObject *object)
 
   columns_delete (clist);
 
-  g_mem_chunk_destroy (clist->cell_mem_chunk);
-  g_mem_chunk_destroy (clist->row_mem_chunk);
-
   G_OBJECT_CLASS (parent_class)->finalize (object);
 }
 
@@ -4538,8 +4523,8 @@ gtk_clist_realize (GtkWidget *widget)
   gdk_window_set_background (clist->clist_window,
                             &widget->style->base[GTK_STATE_NORMAL]);
   gdk_window_show (clist->clist_window);
-  gdk_window_get_size (clist->clist_window, &clist->clist_window_width,
-                      &clist->clist_window_height);
+  gdk_drawable_get_size (clist->clist_window, &clist->clist_window_width,
+                         &clist->clist_window_height);
 
   /* create resize windows */
   attributes.wclass = GDK_INPUT_ONLY;
@@ -4603,9 +4588,11 @@ gtk_clist_realize (GtkWidget *widget)
 
          colormap = gtk_widget_get_colormap (widget);
          if (clist_row->fg_set)
-           gdk_color_alloc (colormap, &clist_row->foreground);
+           gdk_colormap_alloc_color (colormap, &clist_row->foreground,
+                                      FALSE, TRUE);
          if (clist_row->bg_set)
-           gdk_color_alloc (colormap, &clist_row->background);
+           gdk_colormap_alloc_color (colormap, &clist_row->background,
+                                      FALSE, TRUE);
        }
       
       for (j = 0; j < clist->columns; j++)
@@ -4628,7 +4615,7 @@ gtk_clist_unrealize (GtkWidget *widget)
   /* freeze the list */
   clist->freeze_count++;
 
-  if (GTK_WIDGET_MAPPED (widget))
+  if (gtk_widget_get_mapped (widget))
     gtk_clist_unmap (widget);
 
   GTK_WIDGET_UNSET_FLAGS (widget, GTK_MAPPED);
@@ -4654,10 +4641,10 @@ gtk_clist_unrealize (GtkWidget *widget)
        }
     }
 
-  gdk_cursor_destroy (clist->cursor_drag);
-  gdk_gc_destroy (clist->xor_gc);
-  gdk_gc_destroy (clist->fg_gc);
-  gdk_gc_destroy (clist->bg_gc);
+  gdk_cursor_unref (clist->cursor_drag);
+  g_object_unref (clist->xor_gc);
+  g_object_unref (clist->fg_gc);
+  g_object_unref (clist->bg_gc);
 
   for (i = 0; i < clist->columns; i++)
     {
@@ -4684,8 +4671,7 @@ gtk_clist_unrealize (GtkWidget *widget)
   clist->fg_gc = NULL;
   clist->bg_gc = NULL;
 
-  if (GTK_WIDGET_CLASS (parent_class)->unrealize)
-    (* GTK_WIDGET_CLASS (parent_class)->unrealize) (widget);
+  GTK_WIDGET_CLASS (parent_class)->unrealize (widget);
 }
 
 static void
@@ -4698,7 +4684,7 @@ gtk_clist_map (GtkWidget *widget)
 
   clist = GTK_CLIST (widget);
 
-  if (!GTK_WIDGET_MAPPED (widget))
+  if (!gtk_widget_get_mapped (widget))
     {
       GTK_WIDGET_SET_FLAGS (widget, GTK_MAPPED);
 
@@ -4706,8 +4692,8 @@ gtk_clist_map (GtkWidget *widget)
       for (i = 0; i < clist->columns; i++)
        {
          if (clist->column[i].button &&
-             GTK_WIDGET_VISIBLE (clist->column[i].button) &&
-             !GTK_WIDGET_MAPPED (clist->column[i].button))
+             gtk_widget_get_visible (clist->column[i].button) &&
+             !gtk_widget_get_mapped (clist->column[i].button))
            gtk_widget_map (clist->column[i].button);
        }
       
@@ -4737,7 +4723,7 @@ gtk_clist_unmap (GtkWidget *widget)
 
   clist = GTK_CLIST (widget);
 
-  if (GTK_WIDGET_MAPPED (widget))
+  if (gtk_widget_get_mapped (widget))
     {
       GTK_WIDGET_UNSET_FLAGS (widget, GTK_MAPPED);
 
@@ -4775,7 +4761,7 @@ gtk_clist_unmap (GtkWidget *widget)
       /* unmap column buttons */
       for (i = 0; i < clist->columns; i++)
        if (clist->column[i].button &&
-           GTK_WIDGET_MAPPED (clist->column[i].button))
+           gtk_widget_get_mapped (clist->column[i].button))
          gtk_widget_unmap (clist->column[i].button);
 
       /* freeze the list */
@@ -4839,14 +4825,9 @@ static void
 gtk_clist_style_set (GtkWidget *widget,
                     GtkStyle  *previous_style)
 {
-  GtkCList *clist;
-
-  g_return_if_fail (GTK_IS_CLIST (widget));
-
-  if (GTK_WIDGET_CLASS (parent_class)->style_set)
-    (*GTK_WIDGET_CLASS (parent_class)->style_set) (widget, previous_style);
+  GtkCList *clist = GTK_CLIST (widget);
 
-  clist = GTK_CLIST (widget);
+  GTK_WIDGET_CLASS (parent_class)->style_set (widget, previous_style);
 
   if (GTK_WIDGET_REALIZED (widget))
     {
@@ -4942,7 +4923,7 @@ gtk_clist_button_press (GtkWidget      *widget,
              if (GTK_CLIST_ADD_MODE(clist))
                {
                  GTK_CLIST_UNSET_FLAG (clist, CLIST_ADD_MODE);
-                 if (GTK_WIDGET_HAS_FOCUS(widget))
+                 if (gtk_widget_has_focus (widget))
                    {
                      gtk_clist_draw_focus (widget);
                      gdk_gc_set_line_attributes (clist->xor_gc, 1,
@@ -4959,7 +4940,7 @@ gtk_clist_button_press (GtkWidget      *widget,
                }
              else if (row != clist->focus_row)
                {
-                 if (GTK_WIDGET_HAS_FOCUS(widget))
+                 if (gtk_widget_has_focus (widget))
                    {
                      gtk_clist_draw_focus (widget);
                      clist->focus_row = row;
@@ -4970,7 +4951,7 @@ gtk_clist_button_press (GtkWidget      *widget,
                }
            }
 
-         if (!GTK_WIDGET_HAS_FOCUS(widget))
+         if (!gtk_widget_has_focus (widget))
            gtk_widget_grab_focus (widget);
 
          if (button_actions & GTK_BUTTON_SELECTS)
@@ -5077,7 +5058,7 @@ gtk_clist_button_press (GtkWidget      *widget,
        if (drag_data)
          gtk_signal_handler_block_by_data (GTK_OBJECT (clist), drag_data);
 
-       if (!GTK_WIDGET_HAS_FOCUS(widget))
+       if (!gtk_widget_has_focus (widget))
          gtk_widget_grab_focus (widget);
 
        clist->drag_pos = i;
@@ -5136,9 +5117,11 @@ gtk_clist_button_release (GtkWidget      *widget,
 
       if (GTK_CLIST_ADD_MODE(clist))
        {
+         gint8 dashes[] = { 4, 4 };
+
          gdk_gc_set_line_attributes (clist->xor_gc, 1,
                                      GDK_LINE_ON_OFF_DASH, 0, 0);
-         gdk_gc_set_dashes (clist->xor_gc, 0, "\4\4", 2);
+         gdk_gc_set_dashes (clist->xor_gc, 0, dashes, G_N_ELEMENTS (dashes));
        }
 
       width = new_column_width (clist, i, &x);
@@ -5289,7 +5272,7 @@ gtk_clist_motion (GtkWidget      *widget,
       if (clist->htimer)
        return FALSE;
 
-      clist->htimer = g_timeout_add
+      clist->htimer = gdk_threads_add_timeout
        (SCROLL_TIME, (GSourceFunc) horizontal_timeout, clist);
 
       if (!((x < 0 && clist->hadjustment->value == 0) ||
@@ -5321,7 +5304,7 @@ gtk_clist_motion (GtkWidget      *widget,
       if (clist->vtimer)
        return FALSE;
 
-      clist->vtimer = g_timeout_add (SCROLL_TIME,
+      clist->vtimer = gdk_threads_add_timeout (SCROLL_TIME,
                                     (GSourceFunc) vertical_timeout, clist);
 
       if (clist->drag_button &&
@@ -5625,7 +5608,7 @@ draw_cell_pixmap (GdkWindow    *window,
   if (y + height > clip_rectangle->y + clip_rectangle->height)
     height = clip_rectangle->y + clip_rectangle->height - y;
 
-  gdk_draw_pixmap (window, fg_gc, pixmap, xsrc, ysrc, x, y, width, height);
+  gdk_draw_drawable (window, fg_gc, pixmap, xsrc, ysrc, x, y, width, height);
   gdk_gc_set_clip_origin (fg_gc, 0, 0);
   if (mask)
     gdk_gc_set_clip_mask (fg_gc, NULL);
@@ -5810,13 +5793,13 @@ draw_row (GtkCList     *clist,
       switch (clist_row->cell[i].type)
        {
        case GTK_CELL_PIXMAP:
-         gdk_window_get_size (GTK_CELL_PIXMAP (clist_row->cell[i])->pixmap,
-                              &pixmap_width, &height);
+         gdk_drawable_get_size (GTK_CELL_PIXMAP (clist_row->cell[i])->pixmap,
+                                 &pixmap_width, &height);
          width += pixmap_width;
          break;
        case GTK_CELL_PIXTEXT:
-         gdk_window_get_size (GTK_CELL_PIXTEXT (clist_row->cell[i])->pixmap,
-                              &pixmap_width, &height);
+         gdk_drawable_get_size (GTK_CELL_PIXTEXT (clist_row->cell[i])->pixmap,
+                                 &pixmap_width, &height);
          width += pixmap_width + GTK_CELL_PIXTEXT (clist_row->cell[i])->spacing;
          break;
        default:
@@ -5873,7 +5856,7 @@ draw_row (GtkCList     *clist,
                               offset,
                               row_rectangle.y + row_center_offset + clist_row->cell[i].vertical,
                               layout);
-              g_object_unref (G_OBJECT (layout));
+              g_object_unref (layout);
              gdk_gc_set_clip_rectangle (fg_gc, NULL);
            }
          break;
@@ -5884,7 +5867,7 @@ draw_row (GtkCList     *clist,
 
   /* draw focus rectangle */
   if (clist->focus_row == row &&
-      GTK_WIDGET_CAN_FOCUS (widget) && GTK_WIDGET_HAS_FOCUS(widget))
+      GTK_WIDGET_CAN_FOCUS (widget) && gtk_widget_has_focus (widget))
     {
       if (!area)
        gdk_draw_rectangle (clist->clist_window, clist->xor_gc, FALSE,
@@ -5952,8 +5935,14 @@ draw_rows (GtkCList     *clist,
     }
 
   if (!area)
-    gdk_window_clear_area (clist->clist_window, 0,
-                          ROW_TOP_YPIXEL (clist, i), 0, 0);
+    {
+      int w, h, y;
+      gdk_drawable_get_size (GDK_DRAWABLE (clist->clist_window), &w, &h);
+      y = ROW_TOP_YPIXEL (clist, i);
+      gdk_window_clear_area (clist->clist_window,
+                            0, y,
+                            w, h - y);
+    }
 }
 
 static void                          
@@ -6058,7 +6047,7 @@ adjust_adjustments (GtkCList *clist,
          clist->vadjustment->value = MAX (0, (LIST_HEIGHT (clist) -
                                               clist->clist_window_height));
          gtk_signal_emit_by_name (GTK_OBJECT (clist->vadjustment),
-                                  "value_changed");
+                                  "value-changed");
        }
       gtk_signal_emit_by_name (GTK_OBJECT (clist->vadjustment), "changed");
     }
@@ -6079,7 +6068,7 @@ adjust_adjustments (GtkCList *clist,
          clist->hadjustment->value = MAX (0, (LIST_WIDTH (clist) -
                                               clist->clist_window_width));
          gtk_signal_emit_by_name (GTK_OBJECT (clist->hadjustment),
-                                  "value_changed");
+                                  "value-changed");
        }
       gtk_signal_emit_by_name (GTK_OBJECT (clist->hadjustment), "changed");
     }
@@ -6160,7 +6149,7 @@ typedef struct
 
 /* The window to which widget->window is relative */
 #define ALLOCATION_WINDOW(widget)              \
-   (GTK_WIDGET_NO_WINDOW (widget) ?            \
+   (!gtk_widget_get_has_window (widget) ?              \
     (widget)->window :                          \
      gdk_window_get_parent ((widget)->window))
 
@@ -6172,7 +6161,7 @@ adjust_allocation_recurse (GtkWidget *widget,
   
   if (!GTK_WIDGET_REALIZED (widget))
     {
-      if (GTK_WIDGET_VISIBLE (widget))
+      if (gtk_widget_get_visible (widget))
        {
          GdkRectangle tmp_rectangle = widget->allocation;
          tmp_rectangle.x += scroll_data->dx;
@@ -6247,7 +6236,7 @@ hadjustment_value_changed (GtkAdjustment *adjustment,
 
   if (GTK_WIDGET_DRAWABLE (clist))
     {
-      if (GTK_WIDGET_CAN_FOCUS(clist) && GTK_WIDGET_HAS_FOCUS(clist) &&
+      if (GTK_WIDGET_CAN_FOCUS(clist) && gtk_widget_has_focus (GTK_WIDGET (clist)) &&
           !container->focus_child && GTK_CLIST_ADD_MODE(clist))
         {
           y = ROW_TOP_YPIXEL (clist, clist->focus_row);
@@ -6260,7 +6249,7 @@ hadjustment_value_changed (GtkAdjustment *adjustment,
       gdk_window_scroll (clist->clist_window, dx, 0);
       gdk_window_process_updates (clist->clist_window, FALSE);
 
-      if (GTK_WIDGET_CAN_FOCUS(clist) && GTK_WIDGET_HAS_FOCUS(clist) &&
+      if (GTK_WIDGET_CAN_FOCUS(clist) && gtk_widget_has_focus (GTK_WIDGET (clist)) &&
           !container->focus_child)
         {
           if (GTK_CLIST_ADD_MODE(clist))
@@ -6349,8 +6338,7 @@ column_title_new (GtkCList    *clist,
                  gint         column,
                  const gchar *title)
 {
-  if (clist->column[column].title)
-    g_free (clist->column[column].title);
+  g_free (clist->column[column].title);
 
   clist->column[column].title = g_strdup (title);
 }
@@ -6361,8 +6349,7 @@ columns_delete (GtkCList *clist)
   gint i;
 
   for (i = 0; i < clist->columns; i++)
-    if (clist->column[i].title)
-      g_free (clist->column[i].title);
+    g_free (clist->column[i].title);
       
   g_free (clist->column);
 }
@@ -6373,8 +6360,8 @@ row_new (GtkCList *clist)
   int i;
   GtkCListRow *clist_row;
 
-  clist_row = g_chunk_new (GtkCListRow, clist->row_mem_chunk);
-  clist_row->cell = g_chunk_new (GtkCell, clist->cell_mem_chunk);
+  clist_row = g_slice_new (GtkCListRow);
+  clist_row->cell = g_slice_alloc (sizeof (GtkCell) * clist->columns);
 
   for (i = 0; i < clist->columns; i++)
     {
@@ -6423,8 +6410,8 @@ row_delete (GtkCList    *clist,
   if (clist_row->destroy)
     clist_row->destroy (clist_row->data);
 
-  g_mem_chunk_free (clist->cell_mem_chunk, clist_row->cell);
-  g_mem_chunk_free (clist->row_mem_chunk, clist_row);
+  g_slice_free1 (sizeof (GtkCell) * clist->columns, clist_row->cell);
+  g_slice_free (GtkCListRow, clist_row);
 }
 
 /* FOCUS FUNCTIONS
@@ -6460,7 +6447,7 @@ gtk_clist_focus (GtkWidget        *widget,
   GtkWidget *focus_child;
   gboolean is_current_focus;
 
-  if (!GTK_WIDGET_IS_SENSITIVE (widget))
+  if (!gtk_widget_is_sensitive (widget))
     return FALSE;
 
   focus_child = GTK_CONTAINER (widget)->focus_child;
@@ -6706,7 +6693,7 @@ title_focus_move (GtkCList *clist,
   while (!return_val && j >= 0 && j < clist->columns)
     {
       if (clist->column[j].button &&
-         GTK_WIDGET_VISIBLE (clist->column[j].button))
+         gtk_widget_get_visible (clist->column[j].button))
        {
          if (focus_column (clist, j, dir))
            {
@@ -6726,7 +6713,7 @@ title_focus_move (GtkCList *clist,
       while (!return_val && j != i)
        {
          if (clist->column[j].button &&
-             GTK_WIDGET_VISIBLE (clist->column[j].button))
+             gtk_widget_get_visible (clist->column[j].button))
            {
              if (focus_column (clist, j, dir))
                {
@@ -7064,26 +7051,18 @@ do_fake_motion (GtkWidget *widget)
 static gint
 horizontal_timeout (GtkCList *clist)
 {
-  GDK_THREADS_ENTER ();
-
   clist->htimer = 0;
   do_fake_motion (GTK_WIDGET (clist));
 
-  GDK_THREADS_LEAVE ();
-  
   return FALSE;
 }
 
 static gint
 vertical_timeout (GtkCList *clist)
 {
-  GDK_THREADS_ENTER ();
-
   clist->vtimer = 0;
   do_fake_motion (GTK_WIDGET (clist));
 
-  GDK_THREADS_LEAVE ();
-
   return FALSE;
 }
 
@@ -7516,7 +7495,7 @@ gtk_clist_drag_leave (GtkWidget      *widget,
          gtk_drag_get_source_widget (context) == widget)
        {
          GList *list;
-         GdkAtom atom = gdk_atom_intern ("gtk-clist-drag-reorder", FALSE);
+         GdkAtom atom = gdk_atom_intern_static_string ("gtk-clist-drag-reorder");
 
          list = context->targets;
          while (list)
@@ -7571,7 +7550,7 @@ gtk_clist_drag_motion (GtkWidget      *widget,
   if (GTK_CLIST_REORDERABLE (clist))
     {
       GList *list;
-      GdkAtom atom = gdk_atom_intern ("gtk-clist-drag-reorder", FALSE);
+      GdkAtom atom = gdk_atom_intern_static_string ("gtk-clist-drag-reorder");
 
       list = context->targets;
       while (list)
@@ -7647,7 +7626,7 @@ gtk_clist_drag_drop (GtkWidget      *widget,
       gtk_drag_get_source_widget (context) == widget)
     {
       GList *list;
-      GdkAtom atom = gdk_atom_intern ("gtk-clist-drag-reorder", FALSE);
+      GdkAtom atom = gdk_atom_intern_static_string ("gtk-clist-drag-reorder");
 
       list = context->targets;
       while (list)
@@ -7680,7 +7659,7 @@ gtk_clist_drag_data_received (GtkWidget        *widget,
   if (GTK_CLIST_REORDERABLE (clist) &&
       gtk_drag_get_source_widget (context) == widget &&
       selection_data->target ==
-      gdk_atom_intern ("gtk-clist-drag-reorder", FALSE) &&
+      gdk_atom_intern_static_string ("gtk-clist-drag-reorder") &&
       selection_data->format == 8 &&
       selection_data->length == sizeof (GtkCListCellInfo))
     {
@@ -7716,8 +7695,7 @@ gtk_clist_drag_data_get (GtkWidget        *widget,
   g_return_if_fail (context != NULL);
   g_return_if_fail (selection_data != NULL);
 
-  if (selection_data->target ==
-      gdk_atom_intern ("gtk-clist-drag-reorder", FALSE))
+  if (selection_data->target == gdk_atom_intern_static_string ("gtk-clist-drag-reorder"))
     {
       GtkCListCellInfo *info;
 
@@ -7824,3 +7802,5 @@ gtk_clist_set_button_actions (GtkCList *clist,
       clist->button_actions[button] = button_actions;
     }
 }
+
+#include "gtkaliasdef.c"