1 /* GTK - The GIMP Toolkit
2 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
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.
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.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 * Boston, MA 02111-1307, USA.
21 * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
22 * file for a list of people on the GTK+ Team. See the ChangeLog
23 * files for a list of changes. These files are distributed with
24 * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
27 #ifndef __GTK_PRIVATE_H__
28 #define __GTK_PRIVATE_H__
30 #include <gtk/gtkwidget.h>
34 void _gtk_widget_set_visible_flag (GtkWidget *widget,
36 gboolean _gtk_widget_get_resize_pending (GtkWidget *widget);
37 void _gtk_widget_set_resize_pending (GtkWidget *widget,
38 gboolean resize_pending);
39 gboolean _gtk_widget_get_in_reparent (GtkWidget *widget);
40 void _gtk_widget_set_in_reparent (GtkWidget *widget,
41 gboolean in_reparent);
42 gboolean _gtk_widget_get_anchored (GtkWidget *widget);
43 void _gtk_widget_set_anchored (GtkWidget *widget,
45 gboolean _gtk_widget_get_shadowed (GtkWidget *widget);
46 void _gtk_widget_set_shadowed (GtkWidget *widget,
48 gboolean _gtk_widget_get_alloc_needed (GtkWidget *widget);
49 void _gtk_widget_set_alloc_needed (GtkWidget *widget,
50 gboolean alloc_needed);
51 gboolean _gtk_widget_get_width_request_needed (GtkWidget *widget);
52 void _gtk_widget_set_width_request_needed (GtkWidget *widget,
53 gboolean width_request_needed);
54 gboolean _gtk_widget_get_height_request_needed (GtkWidget *widget);
55 void _gtk_widget_set_height_request_needed (GtkWidget *widget,
56 gboolean height_request_needed);
58 void _gtk_widget_override_size_request (GtkWidget *widget,
63 void _gtk_widget_restore_size_request (GtkWidget *widget,
69 const gchar *_gtk_get_datadir ();
70 const gchar *_gtk_get_libdir ();
71 const gchar *_gtk_get_sysconfdir ();
72 const gchar *_gtk_get_localedir ();
73 const gchar *_gtk_get_data_prefix ();
76 #define GTK_DATADIR _gtk_get_datadir ()
78 #define GTK_LIBDIR _gtk_get_libdir ()
80 #define GTK_LOCALEDIR _gtk_get_localedir ()
82 #define GTK_SYSCONFDIR _gtk_get_sysconfdir ()
83 #undef GTK_DATA_PREFIX
84 #define GTK_DATA_PREFIX _gtk_get_data_prefix ()
86 #endif /* G_OS_WIN32 */
88 gboolean _gtk_fnmatch (const char *pattern,
90 gboolean no_leading_period);
92 #define GTK_PARAM_READABLE G_PARAM_READABLE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB
93 #define GTK_PARAM_WRITABLE G_PARAM_WRITABLE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB
94 #define GTK_PARAM_READWRITE G_PARAM_READWRITE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB
96 /* Many keyboard shortcuts for Mac are the same as for X
97 * except they use Command key instead of Control (e.g. Cut,
98 * Copy, Paste). This symbol is for those simple cases. */
99 #ifndef GDK_WINDOWING_QUARTZ
100 #define GTK_DEFAULT_ACCEL_MOD_MASK GDK_CONTROL_MASK
102 #define GTK_DEFAULT_ACCEL_MOD_MASK GDK_META_MASK
106 /* With GtkWidget , a widget may be requested
107 * its width for 2 or maximum 3 heights in one resize
108 * (Note this define is limited by the bitfield sizes
109 * defined on the SizeRequestCache structure).
111 #define GTK_SIZE_REQUEST_CACHED_SIZES 3
121 SizeRequest widths[GTK_SIZE_REQUEST_CACHED_SIZES];
122 SizeRequest heights[GTK_SIZE_REQUEST_CACHED_SIZES];
123 guint cached_widths : 2;
124 guint cached_heights : 2;
125 guint last_cached_width : 2;
126 guint last_cached_height : 2;
132 #endif /* __GTK_PRIVATE_H__ */