10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25 #ifndef _GTK2_INTERFACE_H
26 #define _GTK2_INTERFACE_H
27
28 #include <stdlib.h>
29 #include <jni.h>
30
31 #define _G_TYPE_CIC(ip, gt, ct) ((ct*) ip)
32 #define G_TYPE_CHECK_INSTANCE_CAST(instance, g_type, c_type) (_G_TYPE_CIC ((instance), (g_type), c_type))
33 #define GTK_TYPE_FILE_CHOOSER (fp_gtk_file_chooser_get_type ())
34 #define GTK_FILE_CHOOSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_FILE_CHOOSER, GtkFileChooser))
35 #define fp_g_signal_connect(instance, detailed_signal, c_handler, data) \
36 fp_g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
37 #define G_CALLBACK(f) ((GCallback) (f))
38 #define G_TYPE_FUNDAMENTAL_SHIFT (2)
39 #define G_TYPE_MAKE_FUNDAMENTAL(x) ((GType) ((x) << G_TYPE_FUNDAMENTAL_SHIFT))
40 #define G_TYPE_OBJECT G_TYPE_MAKE_FUNDAMENTAL (20)
41 #define G_OBJECT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_OBJECT, GObject))
42 #define GTK_STOCK_CANCEL "gtk-cancel"
43 #define GTK_STOCK_SAVE "gtk-save"
44 #define GTK_STOCK_OPEN "gtk-open"
45 #define GDK_CURRENT_TIME 0L
46
47 typedef enum _WidgetType
48 {
49 BUTTON, /* GtkButton */
803 GtkFileFilterFlags needed, GtkFileFilterFunc func, gpointer data,
804 GDestroyNotify notify);
805 void (*fp_gtk_file_chooser_set_filter)(GtkFileChooser *chooser,
806 GtkFileFilter *filter);
807 GType (*fp_gtk_file_chooser_get_type)(void);
808 GtkFileFilter* (*fp_gtk_file_filter_new)(void);
809 void (*fp_gtk_file_chooser_set_do_overwrite_confirmation)(
810 GtkFileChooser *chooser, gboolean do_overwrite_confirmation);
811 void (*fp_gtk_file_chooser_set_select_multiple)(
812 GtkFileChooser *chooser, gboolean select_multiple);
813 gchar* (*fp_gtk_file_chooser_get_current_folder)(GtkFileChooser *chooser);
814 GSList* (*fp_gtk_file_chooser_get_filenames)(GtkFileChooser *chooser);
815 guint (*fp_gtk_g_slist_length)(GSList *list);
816 gulong (*fp_g_signal_connect_data)(gpointer instance,
817 const gchar *detailed_signal, GCallback c_handler, gpointer data,
818 GClosureNotify destroy_data, GConnectFlags connect_flags);
819 void (*fp_gtk_widget_show)(GtkWidget *widget);
820 void (*fp_gtk_main)(void);
821 guint (*fp_gtk_main_level)(void);
822 gchar* (*fp_g_path_get_dirname) (const gchar *file_name);
823
824 /**
825 * This function is available for GLIB > 2.20, so it MUST be
826 * called within GLIB_CHECK_VERSION(2, 20, 0) check.
827 */
828 gboolean (*fp_g_thread_get_initialized)(void);
829
830 void (*fp_g_thread_init)(GThreadFunctions *vtable);
831 void (*fp_gdk_threads_init)(void);
832 void (*fp_gdk_threads_enter)(void);
833 void (*fp_gdk_threads_leave)(void);
834
835 gboolean (*fp_gtk_show_uri)(GdkScreen *screen, const gchar *uri,
836 guint32 timestamp, GError **error);
837
838 #endif /* !_GTK2_INTERFACE_H */
|
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25 #ifndef _GTK2_INTERFACE_H
26 #define _GTK2_INTERFACE_H
27
28 #include <stdlib.h>
29 #include <jni.h>
30 #include <X11/X.h>
31
32 #define _G_TYPE_CIC(ip, gt, ct) ((ct*) ip)
33 #define G_TYPE_CHECK_INSTANCE_CAST(instance, g_type, c_type) (_G_TYPE_CIC ((instance), (g_type), c_type))
34 #define GTK_TYPE_FILE_CHOOSER (fp_gtk_file_chooser_get_type ())
35 #define GTK_FILE_CHOOSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_FILE_CHOOSER, GtkFileChooser))
36 #define fp_g_signal_connect(instance, detailed_signal, c_handler, data) \
37 fp_g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
38 #define G_CALLBACK(f) ((GCallback) (f))
39 #define G_TYPE_FUNDAMENTAL_SHIFT (2)
40 #define G_TYPE_MAKE_FUNDAMENTAL(x) ((GType) ((x) << G_TYPE_FUNDAMENTAL_SHIFT))
41 #define G_TYPE_OBJECT G_TYPE_MAKE_FUNDAMENTAL (20)
42 #define G_OBJECT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_OBJECT, GObject))
43 #define GTK_STOCK_CANCEL "gtk-cancel"
44 #define GTK_STOCK_SAVE "gtk-save"
45 #define GTK_STOCK_OPEN "gtk-open"
46 #define GDK_CURRENT_TIME 0L
47
48 typedef enum _WidgetType
49 {
50 BUTTON, /* GtkButton */
804 GtkFileFilterFlags needed, GtkFileFilterFunc func, gpointer data,
805 GDestroyNotify notify);
806 void (*fp_gtk_file_chooser_set_filter)(GtkFileChooser *chooser,
807 GtkFileFilter *filter);
808 GType (*fp_gtk_file_chooser_get_type)(void);
809 GtkFileFilter* (*fp_gtk_file_filter_new)(void);
810 void (*fp_gtk_file_chooser_set_do_overwrite_confirmation)(
811 GtkFileChooser *chooser, gboolean do_overwrite_confirmation);
812 void (*fp_gtk_file_chooser_set_select_multiple)(
813 GtkFileChooser *chooser, gboolean select_multiple);
814 gchar* (*fp_gtk_file_chooser_get_current_folder)(GtkFileChooser *chooser);
815 GSList* (*fp_gtk_file_chooser_get_filenames)(GtkFileChooser *chooser);
816 guint (*fp_gtk_g_slist_length)(GSList *list);
817 gulong (*fp_g_signal_connect_data)(gpointer instance,
818 const gchar *detailed_signal, GCallback c_handler, gpointer data,
819 GClosureNotify destroy_data, GConnectFlags connect_flags);
820 void (*fp_gtk_widget_show)(GtkWidget *widget);
821 void (*fp_gtk_main)(void);
822 guint (*fp_gtk_main_level)(void);
823 gchar* (*fp_g_path_get_dirname) (const gchar *file_name);
824 XID (*fp_gdk_x11_drawable_get_xid) (GdkWindow *drawable);
825
826 /**
827 * This function is available for GLIB > 2.20, so it MUST be
828 * called within GLIB_CHECK_VERSION(2, 20, 0) check.
829 */
830 gboolean (*fp_g_thread_get_initialized)(void);
831
832 void (*fp_g_thread_init)(GThreadFunctions *vtable);
833 void (*fp_gdk_threads_init)(void);
834 void (*fp_gdk_threads_enter)(void);
835 void (*fp_gdk_threads_leave)(void);
836
837 gboolean (*fp_gtk_show_uri)(GdkScreen *screen, const gchar *uri,
838 guint32 timestamp, GError **error);
839
840 #endif /* !_GTK2_INTERFACE_H */
|