]> Pileus Git - ~andy/gtk/blobdiff - docs/tools/widgets.c
Use the new GtkComboBoxText API
[~andy/gtk] / docs / tools / widgets.c
index 226db88d446303624379634be4d96c6c1e5ee6d2..206c26e32c28419d1361839516456d30b33b3070 100644 (file)
@@ -21,7 +21,7 @@ find_toplevel_window (Window xid)
 
   do
     {
-      if (XQueryTree (GDK_DISPLAY (), xid, &root,
+      if (XQueryTree (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), xid, &root,
                      &parent, &children, &nchildren) == 0)
        {
          g_warning ("Couldn't find window manager window");
@@ -42,6 +42,7 @@ adjust_size_callback (WidgetInfo *info)
 {
   Window toplevel;
   Window root;
+  GdkWindow *window;
   gint tx;
   gint ty;
   guint twidth;
@@ -51,8 +52,9 @@ adjust_size_callback (WidgetInfo *info)
   gint target_width = 0;
   gint target_height = 0;
 
-  toplevel = find_toplevel_window (GDK_WINDOW_XID (info->window->window));
-  XGetGeometry (GDK_WINDOW_XDISPLAY (info->window->window),
+  window = gtk_widget_get_window (info->window);
+  toplevel = find_toplevel_window (GDK_WINDOW_XID (window));
+  XGetGeometry (GDK_WINDOW_XDISPLAY (window),
                toplevel,
                &root, &tx, &ty, &twidth, &theight, &tborder_width, &tdepth);
 
@@ -268,7 +270,7 @@ create_accel_label (void)
 
   info = new_widget_info ("accel-label", box, SMALL);
 
-  gtk_widget_add_accelerator (button, "activate", accel_group, GDK_Q, GDK_CONTROL_MASK,
+  gtk_widget_add_accelerator (button, "activate", accel_group, GDK_KEY_Q, GDK_CONTROL_MASK,
                              GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
 
   return info;
@@ -279,13 +281,24 @@ create_combo_box_entry (void)
 {
   GtkWidget *widget;
   GtkWidget *align;
+  GtkWidget *child;
+  GtkTreeModel *model;
   
   gtk_rc_parse_string ("style \"combo-box-entry-style\" {\n"
                       "  GtkComboBox::appears-as-list = 1\n"
                       "}\n"
                       "widget_class \"GtkComboBoxEntry\" style \"combo-box-entry-style\"\n" );
-  widget = gtk_combo_box_entry_new_text ();
-  gtk_entry_set_text (GTK_ENTRY (GTK_BIN (widget)->child), "Combo Box Entry");
+
+  model = (GtkTreeModel *)gtk_list_store_new (1, G_TYPE_STRING);
+  widget = g_object_new (GTK_TYPE_COMBO_BOX,
+                        "has-entry", TRUE,
+                        "model", model,
+                        "entry-text-column", 0,
+                        NULL);
+  g_object_unref (model);
+
+  child = gtk_bin_get_child (GTK_BIN (widget));
+  gtk_entry_set_text (GTK_ENTRY (child), "Combo Box Entry");
   align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);
   gtk_container_add (GTK_CONTAINER (align), widget);
 
@@ -303,8 +316,8 @@ create_combo_box (void)
                       "}\n"
                       "widget_class \"GtkComboBox\" style \"combo-box-style\"\n" );
 
-  widget = gtk_combo_box_new_text ();
-  gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Combo Box");
+  widget = gtk_combo_box_text_new ();
+  gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (widget), "Combo Box");
   gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0);
   align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);
   gtk_container_add (GTK_CONTAINER (align), widget);
@@ -612,10 +625,12 @@ create_colorsel (void)
   WidgetInfo *info;
   GtkWidget *widget;
   GtkColorSelection *colorsel;
+  GtkColorSelectionDialog *selection_dialog;
   GdkColor color;
 
   widget = gtk_color_selection_dialog_new ("Color Selection Dialog");
-  colorsel = GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (widget)->colorsel);
+  selection_dialog = GTK_COLOR_SELECTION_DIALOG (widget);
+  colorsel = GTK_COLOR_SELECTION (gtk_color_selection_dialog_get_color_selection (selection_dialog));
 
   color.red   = 0x7979;
   color.green = 0xdbdb;
@@ -794,7 +809,7 @@ create_message_dialog (void)
                                   GTK_MESSAGE_INFO,
                                   GTK_BUTTONS_OK,
                                   NULL);
-  gtk_window_set_icon_name (GTK_WINDOW (widget), "gtk-copy");
+  gtk_window_set_icon_name (GTK_WINDOW (widget), "edit-copy");
   gtk_message_dialog_set_markup (GTK_MESSAGE_DIALOG (widget),
                                 "<b>Message Dialog</b>\n\nWith secondary text");
   return new_widget_info ("messagedialog", widget, ASIS);
@@ -819,11 +834,11 @@ create_about_dialog (void)
                 "copyright", "(C) 1997-2009 The GTK+ Team",
                 "website", "http://www.gtk.org",
                 "comments", "Program to demonstrate GTK+ functions.",
-                "logo-icon-name", "gtk-about",
+                "logo-icon-name", "help-about",
                 "title", "About GTK+ Code Demos",
                 "authors", authors,
                NULL);
-  gtk_window_set_icon_name (GTK_WINDOW (widget), "gtk-about");
+  gtk_window_set_icon_name (GTK_WINDOW (widget), "help-about");
   return new_widget_info ("aboutdialog", widget, ASIS);
 }
 
@@ -913,7 +928,6 @@ create_statusbar (void)
   widget = gtk_statusbar_new ();
   align = gtk_alignment_new (0.5, 1.0, 1.0, 0.0);
   gtk_container_add (GTK_CONTAINER (align), widget);
-  gtk_statusbar_set_has_resize_grip (GTK_STATUSBAR (widget), TRUE);
   gtk_statusbar_push (GTK_STATUSBAR (widget), 0, "Hold on...");
 
   gtk_box_pack_end (GTK_BOX (vbox), align, FALSE, FALSE, 0);
@@ -991,11 +1005,13 @@ static WidgetInfo *
 create_volume_button (void)
 {
   GtkWidget *button, *widget;
+  GtkWidget *plus_button;
 
   button = gtk_volume_button_new ();
   gtk_scale_button_set_value (GTK_SCALE_BUTTON (button), 33);
   /* Hack: get the private dock */
-  widget = GTK_SCALE_BUTTON (button)->plus_button->parent->parent->parent;
+  plus_button = gtk_scale_button_get_plus_button (GTK_SCALE_BUTTON (button));
+  widget = gtk_widget_get_parent (gtk_widget_get_parent (gtk_widget_get_parent (plus_button)));
   gtk_widget_show_all (widget);
   return new_widget_info ("volumebutton", widget, ASIS);
 }