src/solaris/native/sun/awt/gtk2_interface.h

Print this page

        

*** 26,35 **** --- 26,50 ---- #define _GTK2_INTERFACE_H #include <stdlib.h> #include <jni.h> + #define _G_TYPE_CIC(ip, gt, ct) ((ct*) ip) + #define G_TYPE_CHECK_INSTANCE_CAST(instance, g_type, c_type) (_G_TYPE_CIC ((instance), (g_type), c_type)) + #define GTK_TYPE_FILE_CHOOSER (fp_gtk_file_chooser_get_type ()) + #define GTK_FILE_CHOOSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_FILE_CHOOSER, GtkFileChooser)) + #define fp_g_signal_connect(instance, detailed_signal, c_handler, data) \ + fp_g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0) + #define G_CALLBACK(f) ((GCallback) (f)) + #define G_TYPE_FUNDAMENTAL_SHIFT (2) + #define G_TYPE_MAKE_FUNDAMENTAL(x) ((GType) ((x) << G_TYPE_FUNDAMENTAL_SHIFT)) + #define G_TYPE_OBJECT G_TYPE_MAKE_FUNDAMENTAL (20) + #define G_OBJECT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_OBJECT, GObject)) + #define GTK_STOCK_CANCEL "gtk-cancel" + #define GTK_STOCK_SAVE "gtk-save" + #define GTK_STOCK_OPEN "gtk-open" + typedef enum _WidgetType { BUTTON, /* GtkButton */ CHECK_BOX, /* GtkCheckButton */ CHECK_BOX_MENU_ITEM, /* GtkCheckMenuItem */
*** 252,262 **** } GParamFlags; /* We define all structure pointers to be void* */ typedef void GError; typedef void GMainContext; ! typedef void GSList; typedef void GdkColormap; typedef void GdkDrawable; typedef void GdkGC; typedef void GdkPixbuf; --- 267,283 ---- } GParamFlags; /* We define all structure pointers to be void* */ typedef void GError; typedef void GMainContext; ! ! typedef struct _GSList GSList; ! struct _GSList ! { ! gpointer data; ! GSList *next; ! }; typedef void GdkColormap; typedef void GdkDrawable; typedef void GdkGC; typedef void GdkPixbuf;
*** 554,563 **** --- 575,643 ---- gdouble pulse_fraction; guint activity_dir : 1; guint ellipsize : 3; }; + typedef enum { + GTK_RESPONSE_NONE = -1, + GTK_RESPONSE_REJECT = -2, + GTK_RESPONSE_ACCEPT = -3, + GTK_RESPONSE_DELETE_EVENT = -4, + GTK_RESPONSE_OK = -5, + GTK_RESPONSE_CANCEL = -6, + GTK_RESPONSE_CLOSE = -7, + GTK_RESPONSE_YES = -8, + GTK_RESPONSE_NO = -9, + GTK_RESPONSE_APPLY = -10, + GTK_RESPONSE_HELP = -11 + } GtkResponseType; + + typedef struct _GtkWindow GtkWindow; + + typedef struct _GtkFileChooser GtkFileChooser; + + typedef enum { + GTK_FILE_CHOOSER_ACTION_OPEN, + GTK_FILE_CHOOSER_ACTION_SAVE, + GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, + GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER + } GtkFileChooserAction; + + typedef struct _GtkFileFilter GtkFileFilter; + + typedef enum { + GTK_FILE_FILTER_FILENAME = 1 << 0, + GTK_FILE_FILTER_URI = 1 << 1, + GTK_FILE_FILTER_DISPLAY_NAME = 1 << 2, + GTK_FILE_FILTER_MIME_TYPE = 1 << 3 + } GtkFileFilterFlags; + + typedef struct { + GtkFileFilterFlags contains; + const gchar *filename; + const gchar *uri; + const gchar *display_name; + const gchar *mime_type; + } GtkFileFilterInfo; + + typedef gboolean (*GtkFileFilterFunc)(const GtkFileFilterInfo *filter_info, + gpointer data); + + typedef void (*GDestroyNotify)(gpointer data); + + typedef void (*GCallback)(void); + + typedef struct _GClosure GClosure; + + typedef void (*GClosureNotify)(gpointer data, GClosure *closure); + + typedef enum { + G_CONNECT_AFTER = 1 << 0, G_CONNECT_SWAPPED = 1 << 1 + } GConnectFlags; + + typedef struct _GThreadFunctions GThreadFunctions; + /* * Converts java.lang.String object to UTF-8 character string. */ const char *getStrFor(JNIEnv *env, jstring value);
*** 567,576 **** --- 647,663 ---- * effect and returns success. * Returns FALSE on failure and TRUE on success. */ gboolean gtk2_check_version(); + /** + * Returns : + * NULL if the GTK+ library is compatible with the given version, or a string + * describing the version mismatch. + */ + gchar* (*fp_gtk_check_version)(guint required_major, guint required_minor, + guint required_micro); /* * Load the gtk2 library. If the library is already loaded this method has no * effect and returns success. * Returns FALSE on failure and TRUE on success. */
*** 649,664 **** --- 736,795 ---- jobject gtk2_get_setting(JNIEnv *env, Setting property); void gtk2_set_range_value(WidgetType widget_type, jdouble value, jdouble min, jdouble max, jdouble visible); + void (*fp_g_free)(gpointer mem); void (*fp_g_object_unref)(gpointer object); int (*fp_gdk_pixbuf_get_bits_per_sample)(const GdkPixbuf *pixbuf); guchar *(*fp_gdk_pixbuf_get_pixels)(const GdkPixbuf *pixbuf); gboolean (*fp_gdk_pixbuf_get_has_alpha)(const GdkPixbuf *pixbuf); int (*fp_gdk_pixbuf_get_height)(const GdkPixbuf *pixbuf); int (*fp_gdk_pixbuf_get_n_channels)(const GdkPixbuf *pixbuf); int (*fp_gdk_pixbuf_get_rowstride)(const GdkPixbuf *pixbuf); int (*fp_gdk_pixbuf_get_width)(const GdkPixbuf *pixbuf); GdkPixbuf *(*fp_gdk_pixbuf_new_from_file)(const char *filename, GError **error); + void (*fp_gtk_widget_destroy)(GtkWidget *widget); + + + /** + * Function Pointers for GtkFileChooser + */ + gchar* (*fp_gtk_file_chooser_get_filename)(GtkFileChooser *chooser); + void (*fp_gtk_widget_hide)(GtkWidget *widget); + void (*fp_gtk_main_quit)(void); + GtkWidget* (*fp_gtk_file_chooser_dialog_new)(const gchar *title, + GtkWindow *parent, GtkFileChooserAction action, + const gchar *first_button_text, ...); + gboolean (*fp_gtk_file_chooser_set_current_folder)(GtkFileChooser *chooser, + const gchar *filename); + gboolean (*fp_gtk_file_chooser_set_filename)(GtkFileChooser *chooser, + const char *filename); + void (*fp_gtk_file_filter_add_custom)(GtkFileFilter *filter, + GtkFileFilterFlags needed, GtkFileFilterFunc func, gpointer data, + GDestroyNotify notify); + void (*fp_gtk_file_chooser_set_filter)(GtkFileChooser *chooser, + GtkFileFilter *filter); + GType (*fp_gtk_file_chooser_get_type)(void); + GtkFileFilter* (*fp_gtk_file_filter_new)(void); + void (*fp_gtk_file_chooser_set_do_overwrite_confirmation)( + GtkFileChooser *chooser, gboolean do_overwrite_confirmation); + void (*fp_gtk_file_chooser_set_select_multiple)( + GtkFileChooser *chooser, gboolean select_multiple); + gchar* (*fp_gtk_file_chooser_get_current_folder)(GtkFileChooser *chooser); + GSList* (*fp_gtk_file_chooser_get_filenames)(GtkFileChooser *chooser); + guint (*fp_gtk_g_slist_length)(GSList *list); + gulong (*fp_g_signal_connect_data)(gpointer instance, + const gchar *detailed_signal, GCallback c_handler, gpointer data, + GClosureNotify destroy_data, GConnectFlags connect_flags); + void (*fp_gtk_widget_show)(GtkWidget *widget); + void (*fp_gtk_main)(void); + guint (*fp_gtk_main_level)(void); + + + gboolean (*fp_g_thread_get_initialized)(void); + void (*fp_g_thread_init)(GThreadFunctions *vtable); + void (*fp_gdk_threads_init)(void); + void (*fp_gdk_threads_enter)(void); + void (*fp_gdk_threads_leave)(void); #endif /* !_GTK2_INTERFACE_H */