Пример #1
0
static void
gnc_header_set_property (GObject *object,
                         guint param_id,
                         const GValue *value,
                         GParamSpec *pspec)
{
    GncHeader *header = GNC_HEADER (object);
    GtkLayout *layout = GTK_LAYOUT (GNOME_CANVAS_ITEM (header)->canvas);
    gboolean needs_update = FALSE;
    gchar *old_name;

    switch (param_id)
    {
    case PROP_SHEET:
        header->sheet = GNUCASH_SHEET (g_value_get_object (value));
        gtk_layout_set_hadjustment (layout, header->sheet->hadj);
        needs_update = TRUE;
        break;
    case PROP_CURSOR_NAME:
        old_name = header->cursor_name;

        header->cursor_name = g_value_dup_string (value);
        needs_update = !old_name || !header->cursor_name ||
                       strcmp (old_name, header->cursor_name) != 0;
        g_free (old_name);
        break;
    default:
        G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
        break;
    }

    if ((header->sheet != NULL) && needs_update)
        gnc_header_reconfigure (header);
}
Пример #2
0
void nsgtk_layout_set_hadjustment(GtkLayout *layout, GtkAdjustment *adj) 
{
#if GTK_CHECK_VERSION(3,0,0)
	gtk_scrollable_set_hadjustment(GTK_SCROLLABLE(layout), adj);
#else
	gtk_layout_set_hadjustment(layout, adj);
#endif
}
Пример #3
0
/* Alena: set horizontal adjustment for layout */
int
clip_GTK_LAYOUTSETHADJUSTMENT(ClipMachine * cm)
{
	C_widget *clay = _fetch_cw_arg(cm);
	C_widget * cadj = _fetch_cwidget(cm,_clip_spar(cm, 2));
	GtkAdjustment *adj;
	CHECKCWID(clay,GTK_IS_LAYOUT);
	CHECKOPT2(2,MAP_t,NUMERIC_t); CHECKCWIDOPT(cadj,GTK_IS_ADJUSTMENT);

	adj = cadj ? GTK_ADJUSTMENT(cadj->widget) : NULL;
	gtk_layout_set_hadjustment(GTK_LAYOUT(clay->widget), adj);

	return 0;
err:
	return 1;
}
Пример #4
0
/*
 * Standard Gtk+ function
 */
GtkWidget* a_Dw_gtk_viewport_new (GtkAdjustment *hadjustment,
                                  GtkAdjustment *vadjustment)
{
   GtkWidget *widget;

   widget = gtk_widget_new (GTK_TYPE_DW_VIEWPORT, NULL);
   gtk_layout_set_hadjustment (GTK_LAYOUT (widget), hadjustment);
   gtk_layout_set_vadjustment (GTK_LAYOUT (widget), vadjustment);

   /* Following two statements expect that the adjustments are passed as
    * arguments (!= NULL), and don't change. This is the case in dillo,
    * however, for more general perposes, the signal function
    * "set_scroll_adjustments" had to be redefined.
    */
   gtk_signal_connect (GTK_OBJECT (hadjustment), "value_changed",
                       GTK_SIGNAL_FUNC (Dw_gtk_viewport_adj_changed),
                       (gpointer) widget);
   gtk_signal_connect (GTK_OBJECT (vadjustment), "value_changed",
                       GTK_SIGNAL_FUNC (Dw_gtk_viewport_adj_changed),
                       (gpointer) widget);

   return widget;
}