X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkprivate.h;h=5b05f5bb47d144a605c3d225c3b6f697b020fdc0;hb=HEAD;hp=8ac037a83b116f9057033a4a2073c168b36c4e09;hpb=1c77b5f9269a9841b100664dae61a95e1810da38;p=~andy%2Fgtk diff --git a/gtk/gtkprivate.h b/gtk/gtkprivate.h index 8ac037a83..5b05f5bb4 100644 --- a/gtk/gtkprivate.h +++ b/gtk/gtkprivate.h @@ -2,73 +2,91 @@ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public + * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . */ + +/* + * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GTK+ Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GTK+ at ftp://ftp.gtk.org/pub/gtk/. + */ + #ifndef __GTK_PRIVATE_H__ #define __GTK_PRIVATE_H__ +#include +#include -#include -#include +#include "gtkcsstypesprivate.h" +#include "gtktexthandleprivate.h" +G_BEGIN_DECLS -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ +#define GTK_PARAM_READABLE G_PARAM_READABLE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB +#define GTK_PARAM_WRITABLE G_PARAM_WRITABLE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB +#define GTK_PARAM_READWRITE G_PARAM_READWRITE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB +#ifdef G_DISABLE_CAST_CHECKS +/* This is true for debug no and minimum */ +#define gtk_internal_return_if_fail(__expr) G_STMT_START{ (void)0; }G_STMT_END +#define gtk_internal_return_val_if_fail(__expr, __val) G_STMT_START{ (void)0; }G_STMT_END +#else +/* This is true for debug yes */ +#define gtk_internal_return_if_fail(__expr) g_return_if_fail(__expr) +#define gtk_internal_return_val_if_fail(__expr, __val) g_return_val_if_fail(__expr, __val) +#endif +const gchar * _gtk_get_datadir (void); +const gchar * _gtk_get_libdir (void); +const gchar * _gtk_get_sysconfdir (void); +const gchar * _gtk_get_localedir (void); +const gchar * _gtk_get_data_prefix (void); -/* The private flags that are used in the private_flags member of GtkWidget. - */ -enum -{ - PRIVATE_GTK_USER_STYLE = 1 << 0, - PRIVATE_GTK_REDRAW_PENDING = 1 << 1, - PRIVATE_GTK_RESIZE_PENDING = 1 << 2, - PRIVATE_GTK_RESIZE_NEEDED = 1 << 3, - PRIVATE_GTK_LEAVE_PENDING = 1 << 4, - PRIVATE_GTK_HAS_SHAPE_MASK = 1 << 5, - PRIVATE_GTK_IN_REPARENT = 1 << 6 -}; - -/* Macros for extracting a widgets private_flags from GtkWidget. - */ -#define GTK_PRIVATE_FLAGS(wid) (GTK_WIDGET (wid)->private_flags) -#define GTK_WIDGET_USER_STYLE(obj) ((GTK_PRIVATE_FLAGS (obj) & PRIVATE_GTK_USER_STYLE) != 0) -#define GTK_WIDGET_REDRAW_PENDING(obj) ((GTK_PRIVATE_FLAGS (obj) & PRIVATE_GTK_REDRAW_PENDING) != 0) -#define GTK_CONTAINER_RESIZE_PENDING(obj) ((GTK_PRIVATE_FLAGS (obj) & PRIVATE_GTK_RESIZE_PENDING) != 0) -#define GTK_WIDGET_RESIZE_NEEDED(obj) ((GTK_PRIVATE_FLAGS (obj) & PRIVATE_GTK_RESIZE_NEEDED) != 0) -#define GTK_WIDGET_LEAVE_PENDING(obj) ((GTK_PRIVATE_FLAGS (obj) & PRIVATE_GTK_LEAVE_PENDING) != 0) -#define GTK_WIDGET_HAS_SHAPE_MASK(obj) ((GTK_PRIVATE_FLAGS (obj) & PRIVATE_GTK_HAS_SHAPE_MASK) != 0) -#define GTK_WIDGET_IN_REPARENT(obj) ((GTK_PRIVATE_FLAGS (obj) & PRIVATE_GTK_IN_REPARENT) != 0) - -/* Macros for setting and clearing private widget flags. - * we use a preprocessor string concatenation here for a clear - * flags/private_flags distinction at the cost of single flag operations. - */ -#define GTK_PRIVATE_SET_FLAG(wid,flag) G_STMT_START{ (GTK_PRIVATE_FLAGS (wid) |= (PRIVATE_ ## flag)); }G_STMT_END -#define GTK_PRIVATE_UNSET_FLAG(wid,flag) G_STMT_START{ (GTK_PRIVATE_FLAGS (wid) &= ~(PRIVATE_ ## flag)); }G_STMT_END +gboolean _gtk_fnmatch (const char *pattern, + const char *string, + gboolean no_leading_period); -/* True if there is a good chance the mb functions will handle things - * correctly - set if either mblen("\xc0", MB_CUR_MAX) == 1 in the - * C locale, or were using X's mb functions. (-DX_LOCALE && locale != C) - */ -extern gint gtk_use_mb; +gchar * _gtk_get_lc_ctype (void); + +gboolean _gtk_boolean_handled_accumulator (GSignalInvocationHint *ihint, + GValue *return_accu, + const GValue *handler_return, + gpointer dummy); + +gboolean _gtk_single_string_accumulator (GSignalInvocationHint *ihint, + GValue *return_accu, + const GValue *handler_return, + gpointer dummy); + +GdkModifierType _gtk_replace_virtual_modifiers (GdkKeymap *keymap, + GdkModifierType modifiers); +GdkModifierType _gtk_get_primary_accel_mod (void); + +gboolean _gtk_translate_keyboard_accel_state (GdkKeymap *keymap, + guint hardware_keycode, + GdkModifierType state, + GdkModifierType accel_mask, + gint group, + guint *keyval, + gint *effective_group, + gint *level, + GdkModifierType *consumed_modifiers); -#ifdef __cplusplus -} -#endif /* __cplusplus */ +gboolean _gtk_propagate_captured_event (GtkWidget *widget, + GdkEvent *event, + GtkWidget *topmost); +G_END_DECLS #endif /* __GTK_PRIVATE_H__ */