2
// Generated by gtkmmproc -- DO NOT MODIFY!
3
#ifndef _GTKMM_TOOLSHELL_H
4
#define _GTKMM_TOOLSHELL_H
9
/* $Id: editable.hg,v 1.3 2006/05/18 17:53:15 murrayc Exp $ */
11
/* Copyright (C) 1998-2002 The gtkmm Development Team
13
* This library is free software; you can redistribute it and/or
14
* modify it under the terms of the GNU Lesser General Public
15
* License as published by the Free Software Foundation; either
16
* version 2.1 of the License, or (at your option) any later version.
18
* This library is distributed in the hope that it will be useful,
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21
* Lesser General Public License for more details.
23
* You should have received a copy of the GNU Lesser General Public
24
* License along with this library; if not, write to the Free
25
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
28
#include <glibmm/interface.h>
29
#include <gtkmm/enums.h>
30
#include <gtkmm/sizegroup.h>
33
#ifndef DOXYGEN_SHOULD_SKIP_THIS
36
typedef struct _GtkToolShellIface GtkToolShellIface;
38
#endif /* DOXYGEN_SHOULD_SKIP_THIS */
40
#ifndef DOXYGEN_SHOULD_SKIP_THIS
41
typedef struct _GtkToolShell GtkToolShell;
42
typedef struct _GtkToolShellClass GtkToolShellClass;
43
#endif /* DOXYGEN_SHOULD_SKIP_THIS */
47
{ class ToolShell_Class; } // namespace Gtk
51
/** A base class for containers containing ToolItem widgets.
52
* This interface allows container widgets to provide additional information when embedding ToolItem widgets.
57
class ToolShell : public Glib::Interface
60
#ifndef DOXYGEN_SHOULD_SKIP_THIS
63
typedef ToolShell CppObjectType;
64
typedef ToolShell_Class CppClassType;
65
typedef GtkToolShell BaseObjectType;
66
typedef GtkToolShellIface BaseClassType;
69
friend class ToolShell_Class;
70
static CppClassType toolshell_class_;
73
ToolShell(const ToolShell&);
74
ToolShell& operator=(const ToolShell&);
77
ToolShell(); // you must derive from this class
79
/** Called by constructors of derived classes. Provide the result of
80
* the Class init() function to ensure that it is properly
83
* @param interface_class The Class object for the derived type.
85
explicit ToolShell(const Glib::Interface_Class& interface_class);
88
// This is public so that C++ wrapper instances can be
89
// created for C instances of unwrapped types.
90
// For instance, if an unexpected C type implements the C interface.
91
explicit ToolShell(GtkToolShell* castitem);
94
#endif /* DOXYGEN_SHOULD_SKIP_THIS */
99
static void add_interface(GType gtype_implementer);
101
#ifndef DOXYGEN_SHOULD_SKIP_THIS
102
static GType get_type() G_GNUC_CONST;
103
static GType get_base_type() G_GNUC_CONST;
106
///Provides access to the underlying C GObject.
107
GtkToolShell* gobj() { return reinterpret_cast<GtkToolShell*>(gobject_); }
109
///Provides access to the underlying C GObject.
110
const GtkToolShell* gobj() const { return reinterpret_cast<GtkToolShell*>(gobject_); }
117
/** Retrieves the icon size for the tool shell. Tool items must not call this
118
* function directly, but rely on Gtk::ToolItem::get_icon_size() instead.
121
* @return The current size for icons of @a shell.
123
IconSize get_icon_size() const;
125
/** Retrieves the current orientation for the tool shell. Tool items must not
126
* call this function directly, but rely on Gtk::ToolItem::get_orientation()
130
* @return The current orientation of @a shell.
132
Orientation get_orientation() const;
134
/** Retrieves whether the tool shell has text, icons, or both. Tool items must
135
* not call this function directly, but rely on gtk_tool_item_get_style()
139
* @return The current style of @a shell.
141
ToolbarStyle get_style() const;
143
/** Returns the relief style of buttons on @a shell. Tool items must not call this
144
* function directly, but rely on Gtk::ToolItem::get_relief_style() instead.
147
* @return The relief style of buttons on @a shell.
149
ReliefStyle get_relief_style() const;
151
/** Calling this function signals the tool shell that the overflow menu item for
152
* tool items have changed. If there is an overflow menu and if it is visible
153
* when this function it called, the menu will be rebuilt.
155
* Tool items must not call this function directly, but rely on
156
* Gtk::ToolItem::rebuild_menu() instead.
162
/** Retrieves the current text orientation for the tool shell. Tool items must not
163
* call this function directly, but rely on Gtk::ToolItem::get_text_orientation()
167
* @return The current text orientation of @a shell.
169
Orientation get_text_orientation() const;
171
/** Retrieves the current text alignment for the tool shell. Tool items must not
172
* call this function directly, but rely on Gtk::ToolItem::get_text_alignment()
176
* @return The current text alignment of @a shell.
178
float get_text_alignment() const;
180
/** Retrieves the current ellipsize mode for the tool shell. Tool items must not
181
* call this function directly, but rely on Gtk::ToolItem::get_ellipsize_mode()
185
* @return The current ellipsize mode of @a shell.
187
Pango::EllipsizeMode get_ellipsize_mode() const;
190
/** Retrieves the current text size group for the tool shell. Tool items must not
191
* call this function directly, but rely on Gtk::ToolItem::get_text_size_group()
195
* @return The current text size group of @a shell.
197
Glib::RefPtr<SizeGroup> get_text_size_group();
199
/** Retrieves the current text size group for the tool shell. Tool items must not
200
* call this function directly, but rely on Gtk::ToolItem::get_text_size_group()
204
* @return The current text size group of @a shell.
206
Glib::RefPtr<const SizeGroup> get_text_size_group() const;
210
virtual IconSize get_icon_size_vfunc();
212
virtual Orientation get_orientation_vfunc();
214
virtual ToolbarStyle get_style_vfunc();
216
virtual ReliefStyle get_relief_style_vfunc();
218
virtual void rebuild_menu_vfunc();
220
//TODO: Add the other vfuncs when we can break ABI.
226
//C++ methods used to invoke GTK+ virtual functions:
229
//GTK+ Virtual Functions (override these to change behaviour):
231
//Default Signal Handlers::
241
/** A Glib::wrap() method for this object.
243
* @param object The C instance.
244
* @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
245
* @result A C++ instance that wraps this C instance.
247
* @relates Gtk::ToolShell
249
Glib::RefPtr<Gtk::ToolShell> wrap(GtkToolShell* object, bool take_copy = false);
254
#endif /* _GTKMM_TOOLSHELL_H */