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 */