// Generated by gmmproc 2.66.7 -- DO NOT MODIFY! #ifndef _GTKMM_HVBOX_H #define _GTKMM_HVBOX_H #include #include /* Copyright (C) 1998-2011 The gtkmm Development Team * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include #ifndef DOXYGEN_SHOULD_SKIP_THIS using GtkVBox = struct _GtkVBox; using GtkVBoxClass = struct _GtkVBoxClass; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { class GTKMM_API VBox_Class; } // namespace Gtk #endif //DOXYGEN_SHOULD_SKIP_THIS #ifndef DOXYGEN_SHOULD_SKIP_THIS using GtkHBox = struct _GtkHBox; using GtkHBoxClass = struct _GtkHBoxClass; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { class GTKMM_API HBox_Class; } // namespace Gtk #endif //DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { /** Vertical Box for laying widgets in a vertical row. * * You should create these objects, but it is more comfortable to pass * around pointers of Gtk::Box. All the methods that do anything are in * class Gtk::Box and this allows you to later change the direction of the * box, when there's no dependencies to HBox and VBox classes. * * @ingroup Widgets * @ingroup Containers * * @deprecated Use Box instead, which is a very quick and easy change. But we recommend switching to Grid, since * Box will go away eventually. */ class GTKMM_API VBox : public Box { public: #ifndef DOXYGEN_SHOULD_SKIP_THIS typedef VBox CppObjectType; typedef VBox_Class CppClassType; typedef GtkVBox BaseObjectType; typedef GtkVBoxClass BaseClassType; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ VBox(VBox&& src) noexcept; VBox& operator=(VBox&& src) noexcept; // noncopyable VBox(const VBox&) = delete; VBox& operator=(const VBox&) = delete; ~VBox() noexcept override; #ifndef DOXYGEN_SHOULD_SKIP_THIS private: friend class GTKMM_API VBox_Class; static CppClassType vbox_class_; protected: explicit VBox(const Glib::ConstructParams& construct_params); explicit VBox(GtkVBox* castitem); #endif /* DOXYGEN_SHOULD_SKIP_THIS */ public: /** Get the GType for this class, for use with the underlying GObject type system. */ static GType get_type() G_GNUC_CONST; #ifndef DOXYGEN_SHOULD_SKIP_THIS static GType get_base_type() G_GNUC_CONST; #endif /// Provides access to the underlying C GObject. GtkVBox* gobj() { return reinterpret_cast(gobject_); } /// Provides access to the underlying C GObject. const GtkVBox* gobj() const { return reinterpret_cast(gobject_); } public: //C++ methods used to invoke GTK+ virtual functions: protected: //GTK+ Virtual Functions (override these to change behaviour): //Default Signal Handlers:: private: //TODO: Do this when we can stop using this as a base class elsewhere, when we break ABI: _IS_DEPRECATED public: //TODO: Remove the homogoenous parameter as it was removed in gtk_box_new(). /** Creates a new vertical box. * @param homogeneous true if all children are to be given equal space allotments. * @param spacing Determines the space in pixels between child widgets. */ explicit VBox(bool homogeneous = false, int spacing = 0); }; /** Horizontal Box for laying widgets in a horizontal row. * * You should create these objects, but it is more comfortable to pass * around pointers of Gtk::Box. All the methods that do anything are in * class Gtk::Box and this allows you to later change the direction of the * box, when there's no dependencies to HBox and VBox classes. * * Use the Gtk::Box packing interface to determine the arrangement, spacing, * width, and alignment of Gtk::HBox children. * * All children are allocated the same height. * * @ingroup Widgets * @ingroup Containers * * @deprecated Use Box instead, which is a very quick and easy change. But we recommend switching to Grid, since * Box will go away eventually. */ class GTKMM_API HBox : public Box { public: #ifndef DOXYGEN_SHOULD_SKIP_THIS typedef HBox CppObjectType; typedef HBox_Class CppClassType; typedef GtkHBox BaseObjectType; typedef GtkHBoxClass BaseClassType; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ HBox(HBox&& src) noexcept; HBox& operator=(HBox&& src) noexcept; // noncopyable HBox(const HBox&) = delete; HBox& operator=(const HBox&) = delete; ~HBox() noexcept override; #ifndef DOXYGEN_SHOULD_SKIP_THIS private: friend class GTKMM_API HBox_Class; static CppClassType hbox_class_; protected: explicit HBox(const Glib::ConstructParams& construct_params); explicit HBox(GtkHBox* castitem); #endif /* DOXYGEN_SHOULD_SKIP_THIS */ public: /** Get the GType for this class, for use with the underlying GObject type system. */ static GType get_type() G_GNUC_CONST; #ifndef DOXYGEN_SHOULD_SKIP_THIS static GType get_base_type() G_GNUC_CONST; #endif /// Provides access to the underlying C GObject. GtkHBox* gobj() { return reinterpret_cast(gobject_); } /// Provides access to the underlying C GObject. const GtkHBox* gobj() const { return reinterpret_cast(gobject_); } public: //C++ methods used to invoke GTK+ virtual functions: protected: //GTK+ Virtual Functions (override these to change behaviour): //Default Signal Handlers:: private: //TODO: Do this when we can stop using this as a base class elsewhere, when we break ABI: _IS_DEPRECATED public: //TODO: Remove the homogoenous parameter as it was removed in gtk_box_new(). /** Creates a new horizontal box. * @param homogeneous true if all children are to be given equal space allotments. * @param spacing Determines the space in pixels between child widgets. */ explicit HBox(bool homogeneous = false, int spacing = 0); }; } // namespace Gtk namespace Glib { /** A Glib::wrap() method for this object. * * @param object The C instance. * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref. * @result A C++ instance that wraps this C instance. * * @relates Gtk::VBox */ GTKMM_API Gtk::VBox* wrap(GtkVBox* object, bool take_copy = false); } //namespace Glib namespace Glib { /** A Glib::wrap() method for this object. * * @param object The C instance. * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref. * @result A C++ instance that wraps this C instance. * * @relates Gtk::HBox */ GTKMM_API Gtk::HBox* wrap(GtkHBox* object, bool take_copy = false); } //namespace Glib #endif /* _GTKMM_HVBOX_H */