* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
*/
-#undef GTK_DISABLE_DEPRECATED
-
-#include <config.h>
+#include "config.h"
#include <string.h> /* memset */
+#undef GTK_DISABLE_DEPRECATED
+#define __GTK_LIST_C__
+
#include "gtklist.h"
#include "gtklistitem.h"
#include "gtkmain.h"
#include "gtksignal.h"
#include "gtklabel.h"
#include "gtkmarshalers.h"
+#include "gtkintl.h"
+
#include "gtkalias.h"
enum {
(GtkClassInitFunc) NULL,
};
+ I_("GtkList");
list_type = gtk_type_unique (GTK_TYPE_CONTAINER, &list_info);
}
class->unselect_child = gtk_real_list_unselect_child;
list_signals[SELECTION_CHANGED] =
- gtk_signal_new ("selection_changed",
+ gtk_signal_new (I_("selection-changed"),
GTK_RUN_FIRST,
GTK_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (GtkListClass, selection_changed),
_gtk_marshal_VOID__VOID,
GTK_TYPE_NONE, 0);
list_signals[SELECT_CHILD] =
- gtk_signal_new ("select_child",
+ gtk_signal_new (I_("select-child"),
GTK_RUN_FIRST,
GTK_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (GtkListClass, select_child),
GTK_TYPE_NONE, 1,
GTK_TYPE_WIDGET);
list_signals[UNSELECT_CHILD] =
- gtk_signal_new ("unselect_child",
+ gtk_signal_new (I_("unselect-child"),
GTK_RUN_FIRST,
GTK_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (GtkListClass, unselect_child),
gtk_list_size_request (GtkWidget *widget,
GtkRequisition *requisition)
{
- GtkList *list;
+ GtkList *list = GTK_LIST (widget);
GtkWidget *child;
GList *children;
- g_return_if_fail (GTK_IS_LIST (widget));
- g_return_if_fail (requisition != NULL);
-
- list = GTK_LIST (widget);
requisition->width = 0;
requisition->height = 0;
child = children->data;
children = children->next;
- if (GTK_WIDGET_VISIBLE (child))
+ if (gtk_widget_get_visible (child))
{
GtkRequisition child_requisition;
gtk_list_size_allocate (GtkWidget *widget,
GtkAllocation *allocation)
{
- GtkList *list;
+ GtkList *list = GTK_LIST (widget);
GtkWidget *child;
GtkAllocation child_allocation;
GList *children;
- g_return_if_fail (GTK_IS_LIST (widget));
- g_return_if_fail (allocation != NULL);
-
- list = GTK_LIST (widget);
-
widget->allocation = *allocation;
if (GTK_WIDGET_REALIZED (widget))
gdk_window_move_resize (widget->window,
child = children->data;
children = children->next;
- if (GTK_WIDGET_VISIBLE (child))
+ if (gtk_widget_get_visible (child))
{
GtkRequisition child_requisition;
gtk_widget_get_child_requisition (child, &child_requisition);
GdkWindowAttr attributes;
gint attributes_mask;
- g_return_if_fail (GTK_IS_LIST (widget));
-
GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED);
attributes.window_type = GDK_WINDOW_CHILD;
static void
gtk_list_unmap (GtkWidget *widget)
{
- GtkList *list;
-
- g_return_if_fail (GTK_IS_LIST (widget));
+ GtkList *list = GTK_LIST (widget);
if (!GTK_WIDGET_MAPPED (widget))
return;
- list = GTK_LIST (widget);
-
GTK_WIDGET_UNSET_FLAGS (widget, GTK_MAPPED);
if (list_has_grab (list))
gtk_list_motion_notify (GtkWidget *widget,
GdkEventMotion *event)
{
- GtkList *list;
+ GtkList *list = GTK_LIST (widget);
GtkWidget *item = NULL;
GtkAdjustment *adj;
GtkContainer *container;
gint focus_row = 0;
gint length = 0;
- g_return_val_if_fail (GTK_IS_LIST (widget), FALSE);
- g_return_val_if_fail (event != NULL, FALSE);
-
- list = GTK_LIST (widget);
-
if (!list->drag_selection || !list->children)
return FALSE;
{
if (list->htimer == 0)
{
- list->htimer = g_timeout_add
+ list->htimer = gdk_threads_add_timeout
(SCROLL_TIME, (GSourceFunc) gtk_list_horizontal_timeout, widget);
if (!((x < adj->value && adj->value <= 0) ||
if (!((y < 0 && focus_row == 0) ||
(y > widget->allocation.height && focus_row >= length - 1)))
- list->vtimer = g_timeout_add (SCROLL_TIME,
+ list->vtimer = gdk_threads_add_timeout (SCROLL_TIME,
(GSourceFunc) gtk_list_vertical_timeout,
list);
gtk_list_button_press (GtkWidget *widget,
GdkEventButton *event)
{
- GtkList *list;
+ GtkList *list = GTK_LIST (widget);
GtkWidget *item;
- g_return_val_if_fail (GTK_IS_LIST (widget), FALSE);
- g_return_val_if_fail (event != NULL, FALSE);
-
if (event->button != 1)
return FALSE;
- list = GTK_LIST (widget);
item = gtk_get_event_widget ((GdkEvent*) event);
while (item && !GTK_IS_LIST_ITEM (item))
else if (list_has_grab (list))
gtk_list_end_drag_selection (list);
- if (!GTK_WIDGET_HAS_FOCUS(item))
+ if (!gtk_widget_has_focus(item))
gtk_widget_grab_focus (item);
if (list->add_mode)
gtk_list_button_release (GtkWidget *widget,
GdkEventButton *event)
{
- GtkList *list;
+ GtkList *list = GTK_LIST (widget);
GtkWidget *item;
- g_return_val_if_fail (GTK_IS_LIST (widget), FALSE);
- g_return_val_if_fail (event != NULL, FALSE);
-
- list = GTK_LIST (widget);
-
/* we don't handle button 2 and 3 */
if (event->button != 1)
return FALSE;
gtk_list_style_set (GtkWidget *widget,
GtkStyle *previous_style)
{
- g_return_if_fail (widget != NULL);
-
if (previous_style && GTK_WIDGET_REALIZED (widget))
gdk_window_set_background (widget->window, &widget->style->base[GTK_WIDGET_STATE (widget)]);
}
{
GList *item_list;
- g_return_if_fail (GTK_IS_LIST (container));
g_return_if_fail (GTK_IS_LIST_ITEM (widget));
item_list = g_list_alloc ();
GtkWidget *widget)
{
GList *item_list;
-
- g_return_if_fail (GTK_IS_LIST (container));
- g_return_if_fail (widget != NULL);
+
g_return_if_fail (container == GTK_CONTAINER (widget->parent));
item_list = g_list_alloc ();
GtkCallback callback,
gpointer callback_data)
{
- GtkList *list;
+ GtkList *list = GTK_LIST (container);
GtkWidget *child;
GList *children;
- g_return_if_fail (GTK_IS_LIST (container));
- g_return_if_fail (callback != NULL);
-
- list = GTK_LIST (container);
children = list->children;
while (children)
if (container->focus_child)
{
list->last_focus_child = container->focus_child;
- gtk_widget_unref (container->focus_child);
+ g_object_unref (container->focus_child);
}
container->focus_child = child;
if (container->focus_child)
- gtk_widget_ref (container->focus_child);
+ g_object_ref (container->focus_child);
}
/* check for v adjustment */
container = GTK_CONTAINER (widget);
if (container->focus_child == NULL ||
- !GTK_WIDGET_HAS_FOCUS (container->focus_child))
+ !gtk_widget_has_focus (container->focus_child))
{
if (GTK_LIST (container)->last_focus_child)
gtk_container_set_focus_child
tmp_list = tmp_list->next;
gtk_widget_set_parent (widget, GTK_WIDGET (list));
- gtk_signal_connect (GTK_OBJECT (widget), "drag_begin",
- GTK_SIGNAL_FUNC (gtk_list_signal_drag_begin),
+ gtk_signal_connect (GTK_OBJECT (widget), "drag-begin",
+ G_CALLBACK (gtk_list_signal_drag_begin),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "toggle_focus_row",
- GTK_SIGNAL_FUNC (gtk_list_signal_toggle_focus_row),
+ gtk_signal_connect (GTK_OBJECT (widget), "toggle-focus-row",
+ G_CALLBACK (gtk_list_signal_toggle_focus_row),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "select_all",
- GTK_SIGNAL_FUNC (gtk_list_signal_select_all),
+ gtk_signal_connect (GTK_OBJECT (widget), "select-all",
+ G_CALLBACK (gtk_list_signal_select_all),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "unselect_all",
- GTK_SIGNAL_FUNC (gtk_list_signal_unselect_all),
+ gtk_signal_connect (GTK_OBJECT (widget), "unselect-all",
+ G_CALLBACK (gtk_list_signal_unselect_all),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "undo_selection",
- GTK_SIGNAL_FUNC (gtk_list_signal_undo_selection),
+ gtk_signal_connect (GTK_OBJECT (widget), "undo-selection",
+ G_CALLBACK (gtk_list_signal_undo_selection),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "start_selection",
- GTK_SIGNAL_FUNC (gtk_list_signal_start_selection),
+ gtk_signal_connect (GTK_OBJECT (widget), "start-selection",
+ G_CALLBACK (gtk_list_signal_start_selection),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "end_selection",
- GTK_SIGNAL_FUNC (gtk_list_signal_end_selection),
+ gtk_signal_connect (GTK_OBJECT (widget), "end-selection",
+ G_CALLBACK (gtk_list_signal_end_selection),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "extend_selection",
- GTK_SIGNAL_FUNC (gtk_list_signal_extend_selection),
+ gtk_signal_connect (GTK_OBJECT (widget), "extend-selection",
+ G_CALLBACK (gtk_list_signal_extend_selection),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "scroll_horizontal",
- GTK_SIGNAL_FUNC (gtk_list_signal_scroll_horizontal),
+ gtk_signal_connect (GTK_OBJECT (widget), "scroll-horizontal",
+ G_CALLBACK (gtk_list_signal_scroll_horizontal),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "scroll_vertical",
- GTK_SIGNAL_FUNC (gtk_list_signal_scroll_vertical),
+ gtk_signal_connect (GTK_OBJECT (widget), "scroll-vertical",
+ G_CALLBACK (gtk_list_signal_scroll_vertical),
list);
- gtk_signal_connect (GTK_OBJECT (widget), "toggle_add_mode",
- GTK_SIGNAL_FUNC (gtk_list_signal_toggle_add_mode),
+ gtk_signal_connect (GTK_OBJECT (widget), "toggle-add-mode",
+ G_CALLBACK (gtk_list_signal_toggle_add_mode),
list);
gtk_signal_connect (GTK_OBJECT (widget), "select",
- GTK_SIGNAL_FUNC (gtk_list_signal_item_select),
+ G_CALLBACK (gtk_list_signal_item_select),
list);
gtk_signal_connect (GTK_OBJECT (widget), "deselect",
- GTK_SIGNAL_FUNC (gtk_list_signal_item_deselect),
+ G_CALLBACK (gtk_list_signal_item_deselect),
list);
gtk_signal_connect (GTK_OBJECT (widget), "toggle",
- GTK_SIGNAL_FUNC (gtk_list_signal_item_toggle),
+ G_CALLBACK (gtk_list_signal_item_toggle),
list);
}
else if (list->children)
new_focus_child = list->children->data;
- if (GTK_WIDGET_HAS_FOCUS (container->focus_child))
+ if (gtk_widget_has_focus (container->focus_child))
grab_focus = TRUE;
}
}
widget = tmp_list->data;
tmp_list = tmp_list->next;
- gtk_widget_ref (widget);
+ g_object_ref (widget);
if (widget->state == GTK_STATE_SELECTED)
gtk_list_unselect_child (list, widget);
if (widget == list->last_focus_child)
list->last_focus_child = NULL;
- gtk_widget_unref (widget);
+ g_object_unref (widget);
}
g_list_free (start_list);
}
}
- if (GTK_WIDGET_VISIBLE (list))
+ if (gtk_widget_get_visible (GTK_WIDGET (list)))
gtk_widget_queue_resize (GTK_WIDGET (list));
}
if (container->focus_child)
{
old_focus_child = new_focus_child = container->focus_child;
- if (GTK_WIDGET_HAS_FOCUS (container->focus_child))
+ if (gtk_widget_has_focus (container->focus_child))
grab_focus = TRUE;
}
else
widget = tmp_list->data;
tmp_list = tmp_list->next;
- gtk_widget_ref (widget);
+ g_object_ref (widget);
if (no_unref)
- gtk_widget_ref (widget);
+ g_object_ref (widget);
if (widget == new_focus_child)
{
if (widget == list->last_focus_child)
list->last_focus_child = NULL;
- gtk_widget_unref (widget);
+ g_object_unref (widget);
}
if (new_focus_child && new_focus_child != old_focus_child)
}
}
- if (GTK_WIDGET_VISIBLE (list))
+ if (gtk_widget_get_visible (GTK_WIDGET (list)))
gtk_widget_queue_resize (GTK_WIDGET (list));
}
container = GTK_CONTAINER (list);
if (container->focus_child &&
- GTK_WIDGET_HAS_FOCUS (container->focus_child))
+ gtk_widget_has_focus (container->focus_child))
gtk_widget_grab_focus (list->undo_focus_child);
else
gtk_container_set_focus_child (container, list->undo_focus_child);
static gint
gtk_list_horizontal_timeout (GtkWidget *list)
{
- GDK_THREADS_ENTER ();
-
GTK_LIST (list)->htimer = 0;
do_fake_motion (list);
- GDK_THREADS_LEAVE ();
-
return FALSE;
}
static gint
gtk_list_vertical_timeout (GtkWidget *list)
{
- GDK_THREADS_ENTER ();
-
GTK_LIST (list)->vtimer = 0;
do_fake_motion (list);
- GDK_THREADS_LEAVE ();
-
return FALSE;
}
if (!sel_list)
{
list->selection = g_list_prepend (list->selection, list_item);
- gtk_widget_ref (GTK_WIDGET (list_item));
+ g_object_ref (list_item);
}
gtk_signal_emit (GTK_OBJECT (list), list_signals[SELECTION_CHANGED]);
break;
{
list->selection = g_list_remove_link (list->selection, node);
g_list_free_1 (node);
- gtk_widget_unref (GTK_WIDGET (list_item));
+ g_object_unref (list_item);
gtk_signal_emit (GTK_OBJECT (list), list_signals[SELECTION_CHANGED]);
}
}
}
}
-#define __GTK_LIST_C__
#include "gtkaliasdef.c"