]> Pileus Git - ~andy/gtk/blob - gtk/gtkmenuitemprivate.h
stylecontext: Do invalidation on first resize container
[~andy/gtk] / gtk / gtkmenuitemprivate.h
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 #ifndef __GTK_MENU_ITEM_PRIVATE_H__
19 #define __GTK_MENU_ITEM_PRIVATE_H__
20
21 #include <gtk/gtkmenuitem.h>
22 #include <gtk/gtkaction.h>
23 #include <gtk/gtkactionhelper.h>
24
25 G_BEGIN_DECLS
26
27 struct _GtkMenuItemPrivate
28 {
29   GtkWidget *submenu;
30   GdkWindow *event_window;
31
32   guint16 toggle_size;
33   guint16 accelerator_width;
34
35   guint timer;
36
37   gchar  *accel_path;
38
39   GtkAction *action;
40   GtkActionHelper *action_helper;
41
42   guint show_submenu_indicator : 1;
43   guint submenu_placement      : 1;
44   guint submenu_direction      : 1;
45   guint right_justify          : 1;
46   guint timer_from_keypress    : 1;
47   guint from_menubar           : 1;
48   guint use_action_appearance  : 1;
49   guint reserve_indicator      : 1;
50 };
51
52 void     _gtk_menu_item_refresh_accel_path   (GtkMenuItem   *menu_item,
53                                               const gchar   *prefix,
54                                               GtkAccelGroup *accel_group,
55                                               gboolean       group_changed);
56 gboolean _gtk_menu_item_is_selectable        (GtkWidget     *menu_item);
57 void     _gtk_menu_item_popup_submenu        (GtkWidget     *menu_item,
58                                               gboolean       with_delay);
59 void     _gtk_menu_item_popdown_submenu      (GtkWidget     *menu_item);
60 void      _gtk_menu_item_refresh_accel_path  (GtkMenuItem   *menu_item,
61                                               const gchar   *prefix,
62                                               GtkAccelGroup *accel_group,
63                                               gboolean       group_changed);
64 gboolean  _gtk_menu_item_is_selectable       (GtkWidget     *menu_item);
65 void      _gtk_menu_item_popup_submenu       (GtkWidget     *menu_item,
66                                               gboolean       with_delay);
67 void      _gtk_menu_item_popdown_submenu     (GtkWidget     *menu_item);
68
69 G_END_DECLS
70
71 #endif /* __GTK_MENU_ITEM_PRIVATE_H__ */