forked from AuroraMiddleware/gtk
3b7fc8cdc9
This commit implements the needed machinery for GtkWidget to build it's composite content from GtkBuilder XML and adds the following API: o gtk_widget_init_template() An api to be called in instance initializers of any GtkWidget subclass that uses template XML to build it's components. o gtk_widget_class_set_template() API to associate GtkBuilder XML to a given GtkWidget subclass o gtk_widget_class_automate_child() API to declare an object built by GtkBuilder to be associated with an instance structure offset and automatically set. o gtk_widget_get_automated_child() API for bindings to fetch a child declared to be automated by gtk_widget_class_automate_child(), for the case where bindings do not generate GObjects under the hood and cannot use structure offsets to resolve composite object pointers. o gtk_widget_class_declare_callback[s]() Declare static functions to be used in signal callbacks from a given class's template XML o gtk_widget_class_set_connect_func() API for bindings to override the signal connection machinery for a given GtkWidget derived class.
66 lines
2.5 KiB
C
66 lines
2.5 KiB
C
/* GDK - The GIMP Drawing Kit
|
|
* Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
/*
|
|
* Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
|
|
* file for a list of people on the GTK+ Team. See the ChangeLog
|
|
* files for a list of changes. These files are distributed with
|
|
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
|
|
*/
|
|
|
|
#ifndef __GTK_TYPES_H__
|
|
#define __GTK_TYPES_H__
|
|
|
|
#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
|
|
#error "Only <gtk/gtk.h> can be included directly."
|
|
#endif
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
typedef struct _GtkAdjustment GtkAdjustment;
|
|
typedef struct _GtkBuilder GtkBuilder;
|
|
typedef struct _GtkClipboard GtkClipboard;
|
|
typedef struct _GtkIconSet GtkIconSet;
|
|
typedef struct _GtkIconSource GtkIconSource;
|
|
typedef struct _GtkRcStyle GtkRcStyle;
|
|
typedef struct _GtkRequisition GtkRequisition;
|
|
typedef struct _GtkSelectionData GtkSelectionData;
|
|
typedef struct _GtkSettings GtkSettings;
|
|
typedef struct _GtkStyle GtkStyle;
|
|
typedef struct _GtkStyleContext GtkStyleContext;
|
|
typedef struct _GtkTooltip GtkTooltip;
|
|
typedef struct _GtkWidget GtkWidget;
|
|
typedef struct _GtkWidgetPath GtkWidgetPath;
|
|
typedef struct _GtkWindow GtkWindow;
|
|
|
|
|
|
typedef gboolean (*GtkRcPropertyParser) (const GParamSpec *pspec,
|
|
const GString *rc_string,
|
|
GValue *property_value);
|
|
|
|
typedef void (*GtkBuilderConnectFunc) (GtkBuilder *builder,
|
|
GObject *object,
|
|
const gchar *signal_name,
|
|
const gchar *handler_name,
|
|
GObject *connect_object,
|
|
GConnectFlags flags,
|
|
gpointer user_data);
|
|
|
|
G_END_DECLS
|
|
|
|
#endif /* __GTK_TYPES_H__ */
|