X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkprivate.h;h=5b05f5bb47d144a605c3d225c3b6f697b020fdc0;hb=5d011386a69aa59d6eda1e3ef32005efd831c179;hp=9764f62a0acc9569a89b8aaf0ab584a20ed57507;hpb=279e878bddb61086f813385dc94fd04a5465473a;p=~andy%2Fgtk diff --git a/gtk/gtkprivate.h b/gtk/gtkprivate.h index 9764f62a0..5b05f5bb4 100644 --- a/gtk/gtkprivate.h +++ b/gtk/gtkprivate.h @@ -2,77 +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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, 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-1999. See the AUTHORS + * 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/. + * 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 -/* The private flags that are used in the private_flags member of GtkWidget. - */ -typedef 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, - PRIVATE_GTK_IS_OFFSCREEN = 1 << 7 -} GtkPrivateFlags; - -/* 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) -#define GTK_WIDGET_IS_OFFSCREEN(obj) ((GTK_PRIVATE_FLAGS (obj) & PRIVATE_GTK_IS_OFFSCREEN) != 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 +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); + +gboolean _gtk_fnmatch (const char *pattern, + const char *string, + gboolean no_leading_period); + +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__ */