| /* |
| * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved. |
| * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
| * |
| * This code is free software; you can redistribute it and/or modify it |
| * under the terms of the GNU General Public License version 2 only, as |
| * published by the Free Software Foundation. Oracle designates this |
| * particular file as subject to the "Classpath" exception as provided |
| * by Oracle in the LICENSE file that accompanied this code. |
| * |
| * This code 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 General Public License |
| * version 2 for more details (a copy is included in the LICENSE file that |
| * accompanied this code). |
| * |
| * You should have received a copy of the GNU General Public License version |
| * 2 along with this work; if not, write to the Free Software Foundation, |
| * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
| * |
| * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
| * or visit www.oracle.com if you need additional information or have any |
| * questions. |
| */ |
| #ifndef _GTK3_INTERFACE_H |
| #define _GTK3_INTERFACE_H |
| |
| #include <stdlib.h> |
| #include <jni.h> |
| #include <X11/X.h> |
| #include "gtk_interface.h" |
| |
| #define LIGHTNESS_MULT 1.3 |
| #define DARKNESS_MULT 0.7 |
| |
| #define G_PI 3.1415926535897932384626433832795028841971693993751 |
| |
| typedef enum |
| { |
| GTK_STATE_FLAG_NORMAL = 0, |
| GTK_STATE_FLAG_ACTIVE = 1 << 0, |
| GTK_STATE_FLAG_PRELIGHT = 1 << 1, |
| GTK_STATE_FLAG_SELECTED = 1 << 2, |
| GTK_STATE_FLAG_INSENSITIVE = 1 << 3, |
| GTK_STATE_FLAG_INCONSISTENT = 1 << 4, |
| GTK_STATE_FLAG_FOCUSED = 1 << 5, |
| GTK_STATE_FLAG_BACKDROP = 1 << 6, |
| GTK_STATE_FLAG_DIR_LTR = 1 << 7, |
| GTK_STATE_FLAG_DIR_RTL = 1 << 8, |
| GTK_STATE_FLAG_LINK = 1 << 9, |
| GTK_STATE_FLAG_VISITED = 1 << 10, |
| GTK_STATE_FLAG_CHECKED = 1 << 11 |
| } GtkStateFlags; |
| |
| typedef enum { |
| GTK_JUNCTION_NONE = 0, |
| GTK_JUNCTION_CORNER_TOPLEFT = 1 << 0, |
| GTK_JUNCTION_CORNER_TOPRIGHT = 1 << 1, |
| GTK_JUNCTION_CORNER_BOTTOMLEFT = 1 << 2, |
| GTK_JUNCTION_CORNER_BOTTOMRIGHT = 1 << 3, |
| GTK_JUNCTION_TOP = |
| (GTK_JUNCTION_CORNER_TOPLEFT | GTK_JUNCTION_CORNER_TOPRIGHT), |
| GTK_JUNCTION_BOTTOM = |
| (GTK_JUNCTION_CORNER_BOTTOMLEFT | GTK_JUNCTION_CORNER_BOTTOMRIGHT), |
| GTK_JUNCTION_LEFT = |
| (GTK_JUNCTION_CORNER_TOPLEFT | GTK_JUNCTION_CORNER_BOTTOMLEFT), |
| GTK_JUNCTION_RIGHT = |
| (GTK_JUNCTION_CORNER_TOPRIGHT | GTK_JUNCTION_CORNER_BOTTOMRIGHT) |
| } GtkJunctionSides; |
| |
| typedef enum { |
| GTK_REGION_EVEN = 1 << 0, |
| GTK_REGION_ODD = 1 << 1, |
| GTK_REGION_FIRST = 1 << 2, |
| GTK_REGION_LAST = 1 << 3, |
| GTK_REGION_ONLY = 1 << 4, |
| GTK_REGION_SORTED = 1 << 5 |
| } GtkRegionFlags; |
| |
| typedef enum |
| { |
| GTK_WINDOW_TOPLEVEL, |
| GTK_WINDOW_POPUP |
| } GtkWindowType; |
| |
| typedef enum |
| { |
| G_PARAM_READABLE = 1 << 0, |
| G_PARAM_WRITABLE = 1 << 1, |
| G_PARAM_CONSTRUCT = 1 << 2, |
| G_PARAM_CONSTRUCT_ONLY = 1 << 3, |
| G_PARAM_LAX_VALIDATION = 1 << 4, |
| G_PARAM_STATIC_NAME = 1 << 5 |
| } GParamFlags; |
| |
| typedef enum |
| { |
| GTK_ICON_LOOKUP_NO_SVG = 1 << 0, |
| GTK_ICON_LOOKUP_FORCE_SVG = 1 << 1, |
| GTK_ICON_LOOKUP_USE_BUILTIN = 1 << 2, |
| GTK_ICON_LOOKUP_GENERIC_FALLBACK = 1 << 3, |
| GTK_ICON_LOOKUP_FORCE_SIZE = 1 << 4 |
| } GtkIconLookupFlags; |
| |
| typedef enum |
| { |
| GTK_UPDATE_CONTINUOUS, |
| GTK_UPDATE_DISCONTINUOUS, |
| GTK_UPDATE_DELAYED |
| } GtkUpdateType; |
| |
| typedef enum |
| { |
| GTK_PROGRESS_CONTINUOUS, |
| GTK_PROGRESS_DISCRETE |
| } GtkProgressBarStyle; |
| |
| typedef enum |
| { |
| GTK_PROGRESS_LEFT_TO_RIGHT, |
| GTK_PROGRESS_RIGHT_TO_LEFT, |
| GTK_PROGRESS_BOTTOM_TO_TOP, |
| GTK_PROGRESS_TOP_TO_BOTTOM |
| } GtkProgressBarOrientation; |
| |
| typedef enum { |
| CAIRO_FORMAT_INVALID = -1, |
| CAIRO_FORMAT_ARGB32 = 0, |
| CAIRO_FORMAT_RGB24 = 1, |
| CAIRO_FORMAT_A8 = 2, |
| CAIRO_FORMAT_A1 = 3, |
| CAIRO_FORMAT_RGB16_565 = 4 |
| } cairo_format_t; |
| |
| /* We define all structure pointers to be void* */ |
| typedef void GdkPixbuf; |
| typedef void GMainContext; |
| typedef void GVfs; |
| |
| typedef void GdkColormap; |
| typedef void GdkDrawable; |
| typedef void GdkGC; |
| typedef void GdkPixmap; |
| typedef void GtkStyleContext; |
| typedef void GtkFixed; |
| typedef void GtkMenuItem; |
| typedef void GtkMenuShell; |
| typedef void GtkWidgetClass; |
| typedef void PangoFontDescription; |
| typedef void GtkSettings; |
| typedef void GtkStyleProvider; |
| typedef void cairo_pattern_t; |
| typedef void cairo_t; |
| typedef void cairo_surface_t; |
| typedef void GtkScrolledWindow; |
| typedef void GtkIconTheme; |
| typedef void GtkWidget; |
| typedef void GtkMisc; |
| typedef void GtkContainer; |
| typedef void GtkBin; |
| typedef void GtkAdjustment; |
| typedef void GtkRange; |
| typedef void GtkProgressBar; |
| typedef void GtkProgress; |
| |
| /* Some real structures */ |
| typedef struct |
| { |
| guint32 pixel; |
| guint16 red; |
| guint16 green; |
| guint16 blue; |
| } GdkColor; |
| |
| typedef struct |
| { |
| gdouble red; |
| gdouble green; |
| gdouble blue; |
| gdouble alpha; |
| } GdkRGBA; |
| |
| typedef struct { |
| gint fd; |
| gushort events; |
| gushort revents; |
| } GPollFD; |
| |
| typedef struct { |
| gint x; |
| gint y; |
| gint width; |
| gint height; |
| } GdkRectangle; |
| |
| typedef struct { |
| int x, y; |
| int width, height; |
| } GtkAllocation; |
| |
| typedef struct { |
| gint width; |
| gint height; |
| } GtkRequisition; |
| |
| typedef struct { |
| GtkWidgetClass *g_class; |
| } GTypeInstance; |
| |
| typedef struct { |
| gint16 left; |
| gint16 right; |
| gint16 top; |
| gint16 bottom; |
| } GtkBorder; |
| |
| typedef struct |
| { |
| GType g_type; |
| union { |
| gint v_int; |
| guint v_uint; |
| glong v_long; |
| gulong v_ulong; |
| gint64 v_int64; |
| guint64 v_uint64; |
| gfloat v_float; |
| gdouble v_double; |
| gpointer v_pointer; |
| } data[2]; |
| } GValue; |
| |
| typedef struct { |
| GTypeInstance g_type_instance; |
| const gchar *name; |
| GParamFlags flags; |
| GType value_type; |
| GType owner_type; |
| } GParamSpec; |
| |
| |
| static gchar* (*fp_glib_check_version)(guint required_major, |
| guint required_minor, guint required_micro); |
| |
| /** |
| * Returns : |
| * NULL if the GTK+ library is compatible with the given version, or a string |
| * describing the version mismatch. |
| */ |
| static gchar* (*fp_gtk_check_version)(guint required_major, guint |
| required_minor, guint required_micro); |
| |
| static void (*fp_g_free)(gpointer mem); |
| static void (*fp_g_object_unref)(gpointer object); |
| static GdkWindow *(*fp_gdk_get_default_root_window) (void); |
| |
| static int (*fp_gdk_pixbuf_get_bits_per_sample)(const GdkPixbuf *pixbuf); |
| static guchar *(*fp_gdk_pixbuf_get_pixels)(const GdkPixbuf *pixbuf); |
| static gboolean (*fp_gdk_pixbuf_get_has_alpha)(const GdkPixbuf *pixbuf); |
| static int (*fp_gdk_pixbuf_get_height)(const GdkPixbuf *pixbuf); |
| static int (*fp_gdk_pixbuf_get_n_channels)(const GdkPixbuf *pixbuf); |
| static int (*fp_gdk_pixbuf_get_rowstride)(const GdkPixbuf *pixbuf); |
| static int (*fp_gdk_pixbuf_get_width)(const GdkPixbuf *pixbuf); |
| static GdkPixbuf *(*fp_gdk_pixbuf_new_from_file)(const char *filename, |
| GError **error); |
| static GdkColorspace (*fp_gdk_pixbuf_get_colorspace)(const GdkPixbuf *pixbuf); |
| |
| static GdkPixbuf *(*fp_gdk_pixbuf_get_from_drawable)(GdkWindow *window, |
| int src_x, int src_y, int width, int height); |
| static GdkPixbuf *(*fp_gdk_pixbuf_scale_simple)(GdkPixbuf *src, |
| int dest_width, int dest_heigh, GdkInterpType interp_type); |
| |
| |
| static void (*fp_gtk_widget_destroy)(void *widget); |
| static void (*fp_gtk_window_present)(GtkWindow *window); |
| static void (*fp_gtk_window_move)(GtkWindow *window, gint x, gint y); |
| static void (*fp_gtk_window_resize)(GtkWindow *window, gint width, gint height); |
| |
| /** |
| * Function Pointers for GtkFileChooser |
| */ |
| static gchar* (*fp_gtk_file_chooser_get_filename)(GtkFileChooser *chooser); |
| static void (*fp_gtk_widget_hide)(void *widget); |
| static void (*fp_gtk_main_quit)(void); |
| static void* (*fp_gtk_file_chooser_dialog_new)(const gchar *title, |
| GtkWindow *parent, GtkFileChooserAction action, |
| const gchar *first_button_text, ...); |
| static gboolean (*fp_gtk_file_chooser_set_current_folder) |
| (GtkFileChooser *chooser, const gchar *filename); |
| static gboolean (*fp_gtk_file_chooser_set_filename)(GtkFileChooser *chooser, |
| const char *filename); |
| static void (*fp_gtk_file_chooser_set_current_name)(GtkFileChooser *chooser, |
| const gchar *name); |
| static void (*fp_gtk_file_filter_add_custom)(GtkFileFilter *filter, |
| GtkFileFilterFlags needed, GtkFileFilterFunc func, gpointer data, |
| GDestroyNotify notify); |
| static void (*fp_gtk_file_chooser_set_filter)(GtkFileChooser *chooser, |
| GtkFileFilter *filter); |
| static GType (*fp_gtk_file_chooser_get_type)(void); |
| static GtkFileFilter* (*fp_gtk_file_filter_new)(void); |
| static void (*fp_gtk_file_chooser_set_do_overwrite_confirmation)( |
| GtkFileChooser *chooser, gboolean do_overwrite_confirmation); |
| static void (*fp_gtk_file_chooser_set_select_multiple)( |
| GtkFileChooser *chooser, gboolean select_multiple); |
| static gchar* (*fp_gtk_file_chooser_get_current_folder) |
| (GtkFileChooser *chooser); |
| static GSList* (*fp_gtk_file_chooser_get_filenames)(GtkFileChooser *chooser); |
| static guint (*fp_gtk_g_slist_length)(GSList *list); |
| static gulong (*fp_g_signal_connect_data)(gpointer instance, |
| const gchar *detailed_signal, GCallback c_handler, gpointer data, |
| GClosureNotify destroy_data, GConnectFlags connect_flags); |
| static void (*fp_gtk_widget_show)(void *widget); |
| static void (*fp_gtk_main)(void); |
| static guint (*fp_gtk_main_level)(void); |
| static gchar* (*fp_g_path_get_dirname) (const gchar *file_name); |
| static XID (*fp_gdk_x11_drawable_get_xid) (GdkWindow *drawable); |
| |
| static GList* (*fp_g_list_append) (GList *list, gpointer data); |
| static void (*fp_g_list_free) (GList *list); |
| static void (*fp_g_list_free_full) (GList *list, GDestroyNotify free_func); |
| |
| static void (*fp_gdk_threads_enter)(void); |
| static void (*fp_gdk_threads_leave)(void); |
| |
| static gboolean (*fp_gtk_show_uri)(GdkScreen *screen, const gchar *uri, |
| guint32 timestamp, GError **error); |
| |
| // Implementation functions prototypes |
| static void gtk3_init(GtkApi* gtk); |
| static GValue* (*fp_g_value_init)(GValue *value, GType g_type); |
| static gboolean (*fp_g_type_is_a)(GType type, GType is_a_type); |
| static gboolean (*fp_g_value_get_boolean)(const GValue *value); |
| static gchar (*fp_g_value_get_char)(const GValue *value); |
| static guchar (*fp_g_value_get_uchar)(const GValue *value); |
| static gint (*fp_g_value_get_int)(const GValue *value); |
| static guint (*fp_g_value_get_uint)(const GValue *value); |
| static glong (*fp_g_value_get_long)(const GValue *value); |
| static gulong (*fp_g_value_get_ulong)(const GValue *value); |
| static gint64 (*fp_g_value_get_int64)(const GValue *value); |
| static guint64 (*fp_g_value_get_uint64)(const GValue *value); |
| static gfloat (*fp_g_value_get_float)(const GValue *value); |
| static gdouble (*fp_g_value_get_double)(const GValue *value); |
| static const gchar* (*fp_g_value_get_string)(const GValue *value); |
| static gint (*fp_g_value_get_enum)(const GValue *value); |
| static guint (*fp_g_value_get_flags)(const GValue *value); |
| static GParamSpec* (*fp_g_value_get_param)(const GValue *value); |
| static gpointer* (*fp_g_value_get_boxed)(const GValue *value); |
| static gpointer* (*fp_g_value_get_pointer)(const GValue *value); |
| static void (*fp_g_object_get)(gpointer object, |
| const gchar* fpn, ...); |
| static void (*fp_g_object_set)(gpointer object, |
| const gchar *first_property_name, |
| ...); |
| |
| static gboolean (*fp_g_main_context_iteration)(GMainContext *context); |
| static gboolean (*fp_g_str_has_prefix)(const gchar *str, const gchar *prefix); |
| static gchar** (*fp_g_strsplit)(const gchar *string, const gchar *delimiter, |
| gint max_tokens); |
| static void (*fp_g_strfreev)(gchar **str_array); |
| |
| |
| static cairo_surface_t* (*fp_cairo_image_surface_create)(cairo_format_t format, |
| int width, int height); |
| static void (*fp_cairo_surface_destroy)(cairo_surface_t *surface); |
| static cairo_t* (*fp_cairo_create)(cairo_surface_t *target); |
| static void (*fp_cairo_destroy)(cairo_t *cr); |
| static void (*fp_cairo_fill)(cairo_t *cr); |
| static void (*fp_cairo_surface_flush)(cairo_surface_t *surface); |
| static void (*fp_cairo_rectangle)(cairo_t *cr, double x, double y, double width, |
| double height); |
| static void (*fp_cairo_set_source_rgb)(cairo_t *cr, double red, double green, |
| double blue); |
| static void (*fp_cairo_set_source_rgba)(cairo_t *cr, double red, double green, |
| double blue, double alpha); |
| static void (*fp_cairo_paint)(cairo_t *cr); |
| static void (*fp_cairo_clip)(cairo_t *cr); |
| static unsigned char* (*fp_cairo_image_surface_get_data)( |
| cairo_surface_t *surface); |
| static int (*fp_cairo_image_surface_get_stride) (cairo_surface_t *surface); |
| static GdkPixbuf* (*fp_gdk_pixbuf_get_from_surface)(cairo_surface_t *surface, |
| gint src_x, gint src_y, gint width, gint height); |
| static GtkStateType (*fp_gtk_widget_get_state)(GtkWidget *widget); |
| static void (*fp_gtk_widget_set_state)(GtkWidget *widget, GtkStateType state); |
| static gboolean (*fp_gtk_widget_is_focus)(GtkWidget *widget); |
| static void (*fp_gtk_widget_set_allocation)(GtkWidget *widget, |
| const GtkAllocation *allocation); |
| static GtkWidget* (*fp_gtk_widget_get_parent)(GtkWidget *widget); |
| static GtkStyleContext* (*fp_gtk_widget_get_style_context)(GtkWidget *widget); |
| static void (*fp_gtk_style_context_get_color)(GtkStyleContext *context, |
| GtkStateFlags state, GdkRGBA *color); |
| static void (*fp_gtk_style_context_get_background_color) |
| (GtkStyleContext *context, GtkStateFlags state, GdkRGBA *color); |
| static void (*fp_gtk_style_context_get)(GtkStyleContext *context, |
| GtkStateFlags state, ...); |
| static GtkStateFlags (*fp_gtk_widget_get_state_flags)(GtkWidget* widget); |
| static void (*fp_gtk_style_context_set_state)(GtkStyleContext* style, |
| GtkStateFlags flags); |
| static void (*fp_gtk_style_context_add_class)(GtkStyleContext *context, |
| const gchar *class_name); |
| static void (*fp_gtk_style_context_save)(GtkStyleContext *context); |
| static void (*fp_gtk_style_context_restore)(GtkStyleContext *context); |
| static void (*fp_gtk_render_check)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height); |
| static void (*fp_gtk_render_option)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height); |
| static void (*fp_gtk_render_extension)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height, |
| GtkPositionType gap_side); |
| static void (*fp_gtk_render_expander)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height); |
| static void (*fp_gtk_render_frame_gap)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height, |
| GtkPositionType gap_side, gdouble xy0_gap, |
| gdouble xy1_gap); |
| static void (*fp_gtk_render_line)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x0, gdouble y0, gdouble x1, gdouble y1); |
| static GdkPixbuf* (*fp_gtk_widget_render_icon_pixbuf)(GtkWidget *widget, |
| const gchar *stock_id, GtkIconSize size); |
| static cairo_surface_t* (*fp_gdk_window_create_similar_image_surface)( |
| GdkWindow *window, cairo_format_t format, int width, |
| int height, int scale); |
| static cairo_surface_t* (*fp_gdk_window_create_similar_surface)( |
| GdkWindow *window, cairo_format_t format, |
| int width, int height); |
| static GdkWindow* (*fp_gtk_widget_get_window)(GtkWidget *widget); |
| static GtkSettings *(*fp_gtk_settings_get_for_screen)(GdkScreen *screen); |
| static GdkScreen *(*fp_gtk_widget_get_screen)(GtkWidget *widget); |
| static GtkStyleProvider* (*fp_gtk_css_provider_get_named)(const gchar *name, |
| const gchar *variant); |
| static void (*fp_gtk_style_context_add_provider)(GtkStyleContext *context, |
| GtkStyleProvider *provider, guint priority); |
| static void (*fp_gtk_render_frame)(GtkStyleContext *context,cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height); |
| static void (*fp_gtk_render_focus)(GtkStyleContext *context,cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height); |
| static void (*fp_gtk_render_handle)(GtkStyleContext *context,cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height); |
| static void (*fp_gtk_style_context_get_property)(GtkStyleContext *context, |
| const gchar *property, GtkStateFlags state, GValue *value); |
| static void (*fp_gtk_render_activity)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height); |
| static void (*fp_gtk_render_background)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height); |
| static gboolean (*fp_gtk_style_context_has_class)(GtkStyleContext *context, |
| const gchar *class_name); |
| static void transform_detail_string (const gchar *detail, |
| GtkStyleContext *context); |
| void (*fp_gtk_style_context_set_junction_sides)(GtkStyleContext *context, |
| GtkJunctionSides sides); |
| void (*fp_gtk_style_context_add_region)(GtkStyleContext *context, |
| const gchar *region_name, GtkRegionFlags flags); |
| void (*fp_gtk_render_arrow)(GtkStyleContext *context, cairo_t *cr, |
| gdouble angle, gdouble x, gdouble y, gdouble size); |
| void (*fp_gtk_bin_set_child)(GtkBin *bin, GtkWidget *widget); |
| void (*fp_gtk_scrolled_window_set_shadow_type)( |
| GtkScrolledWindow *scrolled_window, GtkShadowType type); |
| static void (*fp_gtk_render_slider)(GtkStyleContext *context, cairo_t *cr, |
| gdouble x, gdouble y, gdouble width, gdouble height, |
| GtkOrientation orientation); |
| static void (*fp_gtk_style_context_get_padding)(GtkStyleContext *self, |
| GtkStateFlags state, GtkBorder* padding); |
| static void (*fp_gtk_range_set_inverted)(GtkRange *range, gboolean setting); |
| static PangoFontDescription* (*fp_gtk_style_context_get_font)( |
| GtkStyleContext *context, GtkStateFlags state); |
| static int (*fp_gtk_widget_get_allocated_width)(GtkWidget *widget); |
| static int (*fp_gtk_widget_get_allocated_height)(GtkWidget *widget); |
| static GtkIconTheme* (*fp_gtk_icon_theme_get_default)(void); |
| static GdkPixbuf* (*fp_gtk_icon_theme_load_icon)(GtkIconTheme *icon_theme, |
| const gchar *icon_name, gint size, |
| GtkIconLookupFlags flags, GError **error); |
| static void (*fp_gtk_adjustment_set_lower)(GtkAdjustment *adjustment, |
| gdouble lower); |
| static void (*fp_gtk_adjustment_set_page_increment)(GtkAdjustment *adjustment, |
| gdouble page_increment); |
| static void (*fp_gtk_adjustment_set_page_size)(GtkAdjustment *adjustment, |
| gdouble page_size); |
| static void (*fp_gtk_adjustment_set_step_increment)(GtkAdjustment *adjustment, |
| gdouble step_increment); |
| static void (*fp_gtk_adjustment_set_upper)(GtkAdjustment *adjustment, |
| gdouble upper); |
| static void (*fp_gtk_adjustment_set_value)(GtkAdjustment *adjustment, |
| gdouble value); |
| static GdkGC *(*fp_gdk_gc_new)(GdkDrawable*); |
| static void (*fp_gdk_rgb_gc_set_foreground)(GdkGC*, guint32); |
| static void (*fp_gdk_draw_rectangle)(GdkDrawable*, GdkGC*, gboolean, |
| gint, gint, gint, gint); |
| static GdkPixbuf *(*fp_gdk_pixbuf_new)(GdkColorspace colorspace, |
| gboolean has_alpha, int bits_per_sample, int width, int height); |
| static void (*fp_gdk_drawable_get_size)(GdkDrawable *drawable, |
| gint* width, gint* height); |
| static gboolean (*fp_gtk_init_check)(int* argc, char** argv); |
| |
| /* Widget creation */ |
| static GtkWidget* (*fp_gtk_arrow_new)(GtkArrowType arrow_type, |
| GtkShadowType shadow_type); |
| static GtkWidget* (*fp_gtk_button_new)(); |
| static GtkWidget* (*fp_gtk_check_button_new)(); |
| static GtkWidget* (*fp_gtk_check_menu_item_new)(); |
| static GtkWidget* (*fp_gtk_color_selection_dialog_new)(const gchar* title); |
| static GtkWidget* (*fp_gtk_combo_box_new)(); |
| static GtkWidget* (*fp_gtk_combo_box_entry_new)(); |
| static GtkWidget* (*fp_gtk_entry_new)(); |
| static GtkWidget* (*fp_gtk_fixed_new)(); |
| static GtkWidget* (*fp_gtk_handle_box_new)(); |
| static GtkWidget* (*fp_gtk_hpaned_new)(); |
| static GtkWidget* (*fp_gtk_vpaned_new)(); |
| static GtkWidget* (*fp_gtk_scale_new)(GtkOrientation orientation, |
| GtkAdjustment* adjustment); |
| static GtkWidget* (*fp_gtk_hscrollbar_new)(GtkAdjustment* adjustment); |
| static GtkWidget* (*fp_gtk_vscrollbar_new)(GtkAdjustment* adjustment); |
| static GtkWidget* (*fp_gtk_hseparator_new)(); |
| static GtkWidget* (*fp_gtk_vseparator_new)(); |
| static GtkWidget* (*fp_gtk_image_new)(); |
| static GtkWidget* (*fp_gtk_label_new)(const gchar* str); |
| static GtkWidget* (*fp_gtk_menu_new)(); |
| static GtkWidget* (*fp_gtk_menu_bar_new)(); |
| static GtkWidget* (*fp_gtk_menu_item_new)(); |
| static GtkWidget* (*fp_gtk_notebook_new)(); |
| static GtkWidget* (*fp_gtk_progress_bar_new)(); |
| static GtkWidget* (*fp_gtk_progress_bar_set_orientation)( |
| GtkProgressBar *pbar, |
| GtkProgressBarOrientation orientation); |
| static GtkWidget* (*fp_gtk_radio_button_new)(GSList *group); |
| static GtkWidget* (*fp_gtk_radio_menu_item_new)(GSList *group); |
| static GtkWidget* (*fp_gtk_scrolled_window_new)(GtkAdjustment *hadjustment, |
| GtkAdjustment *vadjustment); |
| static GtkWidget* (*fp_gtk_separator_menu_item_new)(); |
| static GtkWidget* (*fp_gtk_separator_tool_item_new)(); |
| static GtkWidget* (*fp_gtk_text_view_new)(); |
| static GtkWidget* (*fp_gtk_toggle_button_new)(); |
| static GtkWidget* (*fp_gtk_toolbar_new)(); |
| static GtkWidget* (*fp_gtk_tree_view_new)(); |
| static GtkWidget* (*fp_gtk_viewport_new)(GtkAdjustment *hadjustment, |
| GtkAdjustment *vadjustment); |
| static GtkWidget* (*fp_gtk_window_new)(GtkWindowType type); |
| static GtkWidget* (*fp_gtk_dialog_new)(); |
| static GtkWidget* (*fp_gtk_spin_button_new)(GtkAdjustment *adjustment, |
| gdouble climb_rate, guint digits); |
| static GtkWidget* (*fp_gtk_frame_new)(const gchar *label); |
| |
| /* Other widget operations */ |
| static GtkAdjustment* (*fp_gtk_adjustment_new)(gdouble value, |
| gdouble lower, gdouble upper, gdouble step_increment, |
| gdouble page_increment, gdouble page_size); |
| static void (*fp_gtk_container_add)(GtkContainer *window, GtkWidget *widget); |
| static void (*fp_gtk_menu_shell_append)(GtkMenuShell *menu_shell, |
| GtkWidget *child); |
| static void (*fp_gtk_menu_item_set_submenu)(GtkMenuItem *menu_item, |
| GtkWidget *submenu); |
| static void (*fp_gtk_widget_realize)(GtkWidget *widget); |
| static GdkPixbuf* (*fp_gtk_widget_render_icon)(GtkWidget *widget, |
| const gchar *stock_id, GtkIconSize size, const gchar *detail); |
| static void (*fp_gtk_widget_set_name)(GtkWidget *widget, const gchar *name); |
| static void (*fp_gtk_widget_set_parent)(GtkWidget *widget, GtkWidget *parent); |
| static void (*fp_gtk_widget_set_direction)(GtkWidget *widget, |
| GtkTextDirection direction); |
| static void (*fp_gtk_widget_style_get)(GtkWidget *widget, |
| const gchar *first_property_name, ...); |
| static void (*fp_gtk_widget_class_install_style_property)( |
| GtkWidgetClass* class, GParamSpec *pspec); |
| static GParamSpec* (*fp_gtk_widget_class_find_style_property)( |
| GtkWidgetClass* class, const gchar* property_name); |
| static void (*fp_gtk_widget_style_get_property)(GtkWidget* widget, |
| const gchar* property_name, GValue* value); |
| static char* (*fp_pango_font_description_to_string)( |
| const PangoFontDescription* fd); |
| static GtkSettings* (*fp_gtk_settings_get_default)(); |
| static GtkSettings* (*fp_gtk_widget_get_settings)(GtkWidget *widget); |
| static GType (*fp_gtk_border_get_type)(); |
| static void (*fp_gtk_arrow_set)(GtkWidget* arrow, |
| GtkArrowType arrow_type, |
| GtkShadowType shadow_type); |
| static void (*fp_gtk_widget_size_request)(GtkWidget *widget, |
| GtkRequisition *requisition); |
| static GtkAdjustment* (*fp_gtk_range_get_adjustment)(GtkRange* range); |
| |
| #endif /* !_GTK3_INTERFACE_H */ |