< prev index next >
modules/javafx.graphics/src/main/native-glass/gtk/glass_general.h
Print this page
@@ -28,13 +28,17 @@
#include <jni.h>
#include <stdint.h>
#include <X11/Xlib.h>
#include <gdk/gdk.h>
+#include <gdk/gdkx.h>
#include <gtk/gtk.h>
-#include "glass_wrapper.h"
+#if GTK_CHECK_VERSION(3, 0, 0)
+#define GLASS_GTK3
+#endif
+
#define JLONG_TO_PTR(value) ((void*)(intptr_t)(value))
#define PTR_TO_JLONG(value) ((jlong)(intptr_t)(value))
#define FILE_PREFIX "file://"
@@ -42,10 +46,12 @@
#define URI_LIST_LINE_BREAK "\r\n"
extern JNIEnv* mainEnv; // Use only with main loop thread!!!
extern JavaVM* javaVM;
+#define GLASS_GDK_KEY_CONSTANT(key) (GDK_KEY_ ## key)
+
#include <exception>
struct jni_exception: public std::exception {
jni_exception(jthrowable _th): throwable(_th), message() {
jclass jc = mainEnv->FindClass("java/lang/Throwable");
@@ -247,7 +253,98 @@
gsize get_files_count(gchar **uris);
jobject uris_to_java(JNIEnv *env, gchar **uris, gboolean files);
-#endif /* GLASS_GENERAL_H */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern jboolean gtk_verbose;
+
+void
+glass_widget_set_visual (GtkWidget *widget, GdkVisual *visual);
+
+gint
+glass_gdk_visual_get_depth (GdkVisual * visual);
+
+GdkScreen *
+glass_gdk_window_get_screen(GdkWindow * gdkWindow);
+
+gboolean
+glass_gdk_mouse_devices_grab(GdkWindow * gdkWindow);
+
+gboolean
+glass_gdk_mouse_devices_grab_with_cursor(GdkWindow * gdkWindow, GdkCursor *cursor, gboolean owner_events);
+
+void
+glass_gdk_mouse_devices_ungrab();
+
+void
+glass_gdk_master_pointer_grab(GdkWindow *window, GdkCursor *cursor);
+
+void
+glass_gdk_master_pointer_ungrab();
+
+void
+glass_gdk_master_pointer_get_position(gint *x, gint *y);
+
+gboolean
+glass_gdk_device_is_grabbed(GdkDevice *device);
+
+void
+glass_gdk_device_ungrab(GdkDevice *device);
+
+GdkWindow *
+glass_gdk_device_get_window_at_position(
+ GdkDevice *device, gint *x, gint *y);
+
+void
+glass_gtk_configure_transparency_and_realize(GtkWidget *window,
+ gboolean transparent);
+
+const guchar *
+glass_gtk_selection_data_get_data_with_length(
+ GtkSelectionData * selectionData,
+ gint * length);
+
+void
+glass_gtk_window_configure_from_visual(GtkWidget *widget, GdkVisual *visual);
+
+void
+glass_gdk_window_get_size(GdkWindow *window, gint *w, gint *h);
+
+void
+glass_gdk_display_get_pointer(GdkDisplay* display, gint* x, gint *y);
+
+void
+glass_gdk_x11_display_set_window_scale(GdkDisplay *display, gint scale);
+
+gboolean
+glass_configure_window_transparency(GtkWidget *window, gboolean transparent);
+
+GdkPixbuf *
+glass_pixbuf_from_window(GdkWindow *window,
+ gint srcx, gint srcy,
+ gint width, gint height);
+
+void
+glass_window_apply_shape_mask(GdkWindow *window,
+ void* data, uint width, uint height);
+
+void
+glass_window_reset_input_shape_mask(GdkWindow *window);
+
+GdkWindow *
+glass_gdk_drag_context_get_dest_window (GdkDragContext * context);
+
+guint
+glass_settings_get_guint_opt (const gchar *schema_name,
+ const gchar *key_name,
+ int defval);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* GLASS_GENERAL_H */
< prev index next >