1 // Generated by gmmproc 2.60.0 -- DO NOT MODIFY!
2 #ifndef _GTKMM_SHORTCUTSGROUP_H
3 #define _GTKMM_SHORTCUTSGROUP_H
4 
5 
6 #include <glibmm/ustring.h>
7 #include <sigc++/sigc++.h>
8 
9 /* Copyright (C) 2016 The gtkmm Development Team
10  *
11  * This library is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU Lesser General Public
13  * License as published by the Free Software Foundation; either
14  * version 2.1 of the License, or (at your option) any later version.
15  *
16  * This library is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19  * Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public
22  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
23  */
24 
25 #include <gtkmm/box.h>
26 
27 
28 #ifndef DOXYGEN_SHOULD_SKIP_THIS
29 using GtkShortcutsGroup = struct _GtkShortcutsGroup;
30 using GtkShortcutsGroupClass = struct _GtkShortcutsGroupClass;
31 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
32 
33 
34 #ifndef DOXYGEN_SHOULD_SKIP_THIS
35 namespace Gtk
36 { class ShortcutsGroup_Class; } // namespace Gtk
37 #endif //DOXYGEN_SHOULD_SKIP_THIS
38 
39 namespace Gtk
40 {
41 
42 /** Represents a group of shortcuts in a ShortcutsWindow.
43  *
44  * A ShortcutsGroup represents a group of related keyboard shortcuts
45  * or gestures. The group has a title. It may optionally be associated with
46  * a view of the application, which can be used to show only relevant shortcuts
47  * depending on the application context.
48  *
49  * This widget is only meant to be used with ShortcutsWindow.
50  *
51  * @newin{3,20}
52  *
53  * @ingroup Widgets
54  */
55 
56 class ShortcutsGroup : public Box
57 {
58   public:
59 #ifndef DOXYGEN_SHOULD_SKIP_THIS
60   typedef ShortcutsGroup CppObjectType;
61   typedef ShortcutsGroup_Class CppClassType;
62   typedef GtkShortcutsGroup BaseObjectType;
63   typedef GtkShortcutsGroupClass BaseClassType;
64 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
65 
66   ShortcutsGroup(ShortcutsGroup&& src) noexcept;
67   ShortcutsGroup& operator=(ShortcutsGroup&& src) noexcept;
68 
69   // noncopyable
70   ShortcutsGroup(const ShortcutsGroup&) = delete;
71   ShortcutsGroup& operator=(const ShortcutsGroup&) = delete;
72 
73   ~ShortcutsGroup() noexcept override;
74 
75 #ifndef DOXYGEN_SHOULD_SKIP_THIS
76 
77 private:
78   friend class ShortcutsGroup_Class;
79   static CppClassType shortcutsgroup_class_;
80 
81 protected:
82   explicit ShortcutsGroup(const Glib::ConstructParams& construct_params);
83   explicit ShortcutsGroup(GtkShortcutsGroup* castitem);
84 
85 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
86 
87 public:
88 
89   /** Get the GType for this class, for use with the underlying GObject type system.
90    */
91   static GType get_type()      G_GNUC_CONST;
92 
93 #ifndef DOXYGEN_SHOULD_SKIP_THIS
94 
95 
96   static GType get_base_type() G_GNUC_CONST;
97 #endif
98 
99   /// Provides access to the underlying C GObject.
gobj()100   GtkShortcutsGroup*       gobj()       { return reinterpret_cast<GtkShortcutsGroup*>(gobject_); }
101 
102   /// Provides access to the underlying C GObject.
gobj()103   const GtkShortcutsGroup* gobj() const { return reinterpret_cast<GtkShortcutsGroup*>(gobject_); }
104 
105 
106 public:
107   //C++ methods used to invoke GTK+ virtual functions:
108 
109 protected:
110   //GTK+ Virtual Functions (override these to change behaviour):
111 
112   //Default Signal Handlers::
113 
114 
115 private:
116 
117 
118 public:
119   ShortcutsGroup();
120 
121   /** Unsets the property_view() of this shortcuts group.
122    * The group will then always be visible, regardless of the value of
123    * Gtk::ShortcutsWindow::property_view_name().
124    *
125    * This is a convenience method that calls property_view().reset_value().
126    */
127   void unset_view();
128 
129   /** The title for this group of shortcuts.
130    *
131    * Default value: ""
132    *
133    * @return A PropertyProxy that allows you to get or set the value of the property,
134    * or receive notification when the value of the property changes.
135    */
136   Glib::PropertyProxy< Glib::ustring > property_title() ;
137 
138 /** The title for this group of shortcuts.
139    *
140    * Default value: ""
141    *
142    * @return A PropertyProxy_ReadOnly that allows you to get the value of the property,
143    * or receive notification when the value of the property changes.
144    */
145   Glib::PropertyProxy_ReadOnly< Glib::ustring > property_title() const;
146 
147   /** An optional view that the shortcuts in this group are relevant for.
148    * The group will be hidden if the Gtk::ShortcutsWindow::property_view_name() property
149    * does not match the view of this group.
150    *
151    * Set this to <tt>nullptr</tt> to make the group always visible.
152    *
153    * Default value: ""
154    *
155    * @return A PropertyProxy that allows you to get or set the value of the property,
156    * or receive notification when the value of the property changes.
157    */
158   Glib::PropertyProxy< Glib::ustring > property_view() ;
159 
160 /** An optional view that the shortcuts in this group are relevant for.
161    * The group will be hidden if the Gtk::ShortcutsWindow::property_view_name() property
162    * does not match the view of this group.
163    *
164    * Set this to <tt>nullptr</tt> to make the group always visible.
165    *
166    * Default value: ""
167    *
168    * @return A PropertyProxy_ReadOnly that allows you to get the value of the property,
169    * or receive notification when the value of the property changes.
170    */
171   Glib::PropertyProxy_ReadOnly< Glib::ustring > property_view() const;
172 
173 
174 };
175 
176 } // namespace Gtk
177 
178 
179 namespace Glib
180 {
181   /** A Glib::wrap() method for this object.
182    *
183    * @param object The C instance.
184    * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
185    * @result A C++ instance that wraps this C instance.
186    *
187    * @relates Gtk::ShortcutsGroup
188    */
189   Gtk::ShortcutsGroup* wrap(GtkShortcutsGroup* object, bool take_copy = false);
190 } //namespace Glib
191 
192 
193 #endif /* _GTKMM_SHORTCUTSGROUP_H */
194 
195