1 /* GTK - The GIMP Toolkit 2 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 /* 19 * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS 20 * file for a list of people on the GTK+ Team. See the ChangeLog 21 * files for a list of changes. These files are distributed with 22 * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 23 */ 24 25 #ifndef __GTK_PRIVATE_H__ 26 #define __GTK_PRIVATE_H__ 27 28 #include <glib-object.h> 29 #include <gdk/gdk.h> 30 31 #include "gtkcsstypesprivate.h" 32 #include "gtktexthandleprivate.h" 33 34 G_BEGIN_DECLS 35 36 #define GTK_PARAM_READABLE G_PARAM_READABLE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB 37 #define GTK_PARAM_WRITABLE G_PARAM_WRITABLE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB 38 #define GTK_PARAM_READWRITE G_PARAM_READWRITE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB 39 40 #define OPPOSITE_ORIENTATION(_orientation) (1 - (_orientation)) 41 42 #ifdef G_DISABLE_CAST_CHECKS 43 /* This is true for debug no and minimum */ 44 #define gtk_internal_return_if_fail(__expr) G_STMT_START{ (void)0; }G_STMT_END 45 #define gtk_internal_return_val_if_fail(__expr, __val) G_STMT_START{ (void)0; }G_STMT_END 46 #else 47 /* This is true for debug yes */ 48 #define gtk_internal_return_if_fail(__expr) g_return_if_fail(__expr) 49 #define gtk_internal_return_val_if_fail(__expr, __val) g_return_val_if_fail(__expr, __val) 50 #endif 51 52 const gchar * _gtk_get_datadir (void); 53 const gchar * _gtk_get_libdir (void); 54 const gchar * _gtk_get_sysconfdir (void); 55 const gchar * _gtk_get_localedir (void); 56 const gchar * _gtk_get_data_prefix (void); 57 58 gboolean _gtk_fnmatch (const char *pattern, 59 const char *string, 60 gboolean no_leading_period); 61 62 gchar * _gtk_get_lc_ctype (void); 63 64 void _gtk_ensure_resources (void); 65 66 gboolean _gtk_boolean_handled_accumulator (GSignalInvocationHint *ihint, 67 GValue *return_accu, 68 const GValue *handler_return, 69 gpointer dummy); 70 71 gboolean _gtk_single_string_accumulator (GSignalInvocationHint *ihint, 72 GValue *return_accu, 73 const GValue *handler_return, 74 gpointer dummy); 75 76 GdkModifierType _gtk_replace_virtual_modifiers (GdkKeymap *keymap, 77 GdkModifierType modifiers); 78 GdkModifierType _gtk_get_primary_accel_mod (void); 79 80 gboolean _gtk_translate_keyboard_accel_state (GdkKeymap *keymap, 81 guint hardware_keycode, 82 GdkModifierType state, 83 GdkModifierType accel_mask, 84 gint group, 85 guint *keyval, 86 gint *effective_group, 87 gint *level, 88 GdkModifierType *consumed_modifiers); 89 90 gboolean _gtk_propagate_captured_event (GtkWidget *widget, 91 GdkEvent *event, 92 GtkWidget *topmost); 93 94 95 gdouble _gtk_get_slowdown (); 96 void _gtk_set_slowdown (gdouble slowdown_factor); 97 98 gboolean gtk_should_use_portal (void); 99 char *gtk_get_portal_request_path (GDBusConnection *connection, 100 char **token); 101 char *gtk_get_portal_session_path (GDBusConnection *connection, 102 char **token); 103 guint gtk_get_portal_interface_version (GDBusConnection *connection, 104 const char *interface_name); 105 106 #ifdef G_OS_WIN32 107 void _gtk_load_dll_with_libgtk3_manifest (const char *dllname); 108 #endif 109 110 gboolean gtk_simulate_touchscreen (void); 111 112 guint gtk_get_display_debug_flags (GdkDisplay *display); 113 114 GBytes *get_emoji_data (void); 115 116 #ifdef G_ENABLE_DEBUG 117 118 #define GTK_DISPLAY_DEBUG_CHECK(display,type) G_UNLIKELY (gtk_get_display_debug_flags (display) & GTK_DEBUG_##type) 119 120 #else 121 122 #define GTK_DISPLAY_DEBUG_CHECK(display,type) 0 123 124 #endif /* G_ENABLE_DEBUG */ 125 126 G_END_DECLS 127 128 #endif /* __GTK_PRIVATE_H__ */ 129