// Generated by gmmproc 2.66.7 -- DO NOT MODIFY! #ifndef _GTKMM_SCROLLEDWINDOW_H #define _GTKMM_SCROLLEDWINDOW_H #include #include /* * Copyright (C) 1998-2002 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 GtkScrolledWindow = struct _GtkScrolledWindow; using GtkScrolledWindowClass = struct _GtkScrolledWindowClass; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { class GTKMM_API ScrolledWindow_Class; } // namespace Gtk #endif //DOXYGEN_SHOULD_SKIP_THIS namespace Gtk { class GTKMM_API Adjustment; class GTKMM_API Scrollbar; /** Adds scrollbars to its child widget. * * This container accepts a single child widget and makes that child scrollable * using either internally added scrollbars or externally associated adjustments. * * Widgets with native scrolling support, i.e. those whose classes implement the * Gtk::Scrollable interface, are added directly. For other types of widget, the * class Gtk::Viewport acts as an adaptor, giving scrollability to other widgets. * %Gtk::ScrolledWindow’s implementation of Gtk::Container::add() intelligently * accounts for whether or not the added child is a %Gtk::Scrollable. If it isn’t, * %Gtk::ScrolledWindow wraps the child in a %Gtk::Viewport and adds that for you. * Therefore, you can just add any child widget and not worry about the details. * * Unless property_hscrollbar_policy() and property_vscrollbar_policy() are * Gtk::POLICY_NEVER or Gtk::POLICY_EXTERNAL, * %Gtk::ScrolledWindow adds internal Gtk::Scrollbar widgets around its child. The * scroll position of the child, and if applicable the scrollbars, is controlled * by the property_hadjustment() and property_vadjustment() * that are associated with the %Gtk::ScrolledWindow. See the docs on Gtk::Scrollbar * for the details, but note that the “step_increment” and “page_increment” * fields are only effective if the policy causes scrollbars to be present. * * If a %Gtk::ScrolledWindow doesn’t behave quite as you would like, or * doesn’t have exactly the right layout, it’s very possible to set up * your own scrolling with Gtk::Scrollbar and for example a Gtk::Grid. * * # Touch support * * %Gtk::ScrolledWindow has built-in support for touch devices. When a * touchscreen is used, swiping will move the scrolled window, and will * expose 'kinetic' behavior. This can be turned off with * property_kinetic_scrolling() if it is undesired. * * %Gtk::ScrolledWindow also displays visual 'overshoot' indication when * the content is pulled beyond the end, and this situation can be * captured with signal_edge_overshot(). * * If no mouse device is present, the scrollbars will be overlayed as * narrow, auto-hiding indicators over the content. If traditional * scrollbars are desired although no mouse is present, this behavior * can be turned off with property_overlay_scrolling(). * * @ingroup Widgets * @ingroup Containers */ class GTKMM_API ScrolledWindow : public Bin { public: #ifndef DOXYGEN_SHOULD_SKIP_THIS typedef ScrolledWindow CppObjectType; typedef ScrolledWindow_Class CppClassType; typedef GtkScrolledWindow BaseObjectType; typedef GtkScrolledWindowClass BaseClassType; #endif /* DOXYGEN_SHOULD_SKIP_THIS */ ScrolledWindow(ScrolledWindow&& src) noexcept; ScrolledWindow& operator=(ScrolledWindow&& src) noexcept; // noncopyable ScrolledWindow(const ScrolledWindow&) = delete; ScrolledWindow& operator=(const ScrolledWindow&) = delete; ~ScrolledWindow() noexcept override; #ifndef DOXYGEN_SHOULD_SKIP_THIS private: friend class GTKMM_API ScrolledWindow_Class; static CppClassType scrolledwindow_class_; protected: explicit ScrolledWindow(const Glib::ConstructParams& construct_params); explicit ScrolledWindow(GtkScrolledWindow* 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. GtkScrolledWindow* gobj() { return reinterpret_cast(gobject_); } /// Provides access to the underlying C GObject. const GtkScrolledWindow* 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: public: ScrolledWindow(); explicit ScrolledWindow(const Glib::RefPtr& hadjustment, const Glib::RefPtr& vadjustment); //TODO: Add unset_*adjustment(). //But the C API does not do that. murrayc. /** Sets the Gtk::Adjustment for the horizontal scrollbar. * * @param hadjustment Horizontal scroll adjustment. */ void set_hadjustment(const Glib::RefPtr& hadjustment); /** Sets the Gtk::Adjustment for the vertical scrollbar. * * @param vadjustment Vertical scroll adjustment. */ void set_vadjustment(const Glib::RefPtr& vadjustment); /** Returns the horizontal scrollbar’s adjustment, used to connect the * horizontal scrollbar to the child widget’s horizontal scroll * functionality. * * @return The horizontal Gtk::Adjustment. */ Glib::RefPtr get_hadjustment(); /** Returns the horizontal scrollbar’s adjustment, used to connect the * horizontal scrollbar to the child widget’s horizontal scroll * functionality. * * @return The horizontal Gtk::Adjustment. */ Glib::RefPtr get_hadjustment() const; /** Returns the vertical scrollbar’s adjustment, used to connect the * vertical scrollbar to the child widget’s vertical scroll functionality. * * @return The vertical Gtk::Adjustment. */ Glib::RefPtr get_vadjustment(); /** Returns the vertical scrollbar’s adjustment, used to connect the * vertical scrollbar to the child widget’s vertical scroll functionality. * * @return The vertical Gtk::Adjustment. */ Glib::RefPtr get_vadjustment() const; /** Sets the scrollbar policy for the horizontal and vertical scrollbars. * * The policy determines when the scrollbar should appear; it is a value * from the Gtk::PolicyType enumeration. If Gtk::POLICY_ALWAYS, the * scrollbar is always present; if Gtk::POLICY_NEVER, the scrollbar is * never present; if Gtk::POLICY_AUTOMATIC, the scrollbar is present only * if needed (that is, if the slider part of the bar would be smaller * than the trough — the display is larger than the page size). * * @param hscrollbar_policy Policy for horizontal bar. * @param vscrollbar_policy Policy for vertical bar. */ void set_policy(PolicyType hscrollbar_policy, PolicyType vscrollbar_policy); /** Retrieves the current policy values for the horizontal and vertical * scrollbars. See set_policy(). * * @param hscrollbar_policy Location to store the policy * for the horizontal scrollbar, or nullptr. * @param vscrollbar_policy Location to store the policy * for the vertical scrollbar, or nullptr. */ void get_policy(PolicyType& hscrollbar_policy, PolicyType& vscrollbar_policy) const; /** Sets the placement of the contents with respect to the scrollbars * for the scrolled window. * * The default is Gtk::CORNER_TOP_LEFT, meaning the child is * in the top left, with the scrollbars underneath and to the right. * Other values in Gtk::CornerType are Gtk::CORNER_TOP_RIGHT, * Gtk::CORNER_BOTTOM_LEFT, and Gtk::CORNER_BOTTOM_RIGHT. * * See also get_placement() and * unset_placement(). * * @param window_placement Position of the child window. */ void set_placement(CornerType window_placement); /** Unsets the placement of the contents with respect to the scrollbars * for the scrolled window. If no window placement is set for a scrolled * window, it defaults to Gtk::CORNER_TOP_LEFT. * * See also set_placement() and * get_placement(). * * @newin{2,10} */ void unset_placement(); /** Gets the placement of the contents with respect to the scrollbars * for the scrolled window. See set_placement(). * * @return The current placement value. * * See also set_placement() and * unset_placement(). */ CornerType get_placement() const; /** Changes the type of shadow drawn around the contents of * @a scrolled_window. * * @param type Kind of shadow to draw around scrolled window contents. */ void set_shadow_type(ShadowType type); /** Gets the shadow type of the scrolled window. See * set_shadow_type(). * * @return The current shadow type. */ ShadowType get_shadow_type() const; ///Puts the child inside a Gtk::Viewport if it doesn't have native scrolling capability. void add(Gtk::Widget& widget) override; #ifndef GTKMM_DISABLE_DEPRECATED /** Removes the contained widget, possibly also a Gtk::Viewport. * Since this can only hold one widget it is not necessary to specify which * widget to remove, like containers that don't derive from Gtk::Bin. * * This method is useful if you have added a widget without native scrolling * capability, and ScrolledWindow::add() has created a Gtk::Viewport. * * If the child of the ScrolledWindow is a Gtk::Viewport that was created by add(), * remove_with_viewport() removes the Viewport's child from the Viewport, * and removes the Viewport from the ScrolledWindow. The Viewport is destroyed. * * @newin{3,8} * @deprecated Use Bin::remove() instead. It's now identical to remove_with_viewport(). */ void remove_with_viewport(); #endif // GTKMM_DISABLE_DEPRECATED /** Returns the vertical scrollbar of @a scrolled_window. * * @newin{2,8} * * @return The vertical scrollbar of the scrolled window. */ Scrollbar* get_vscrollbar(); /** Returns the vertical scrollbar of @a scrolled_window. * * @newin{2,8} * * @return The vertical scrollbar of the scrolled window. */ const Scrollbar* get_vscrollbar() const; /** Returns the horizontal scrollbar of @a scrolled_window. * * @newin{2,8} * * @return The horizontal scrollbar of the scrolled window. */ Scrollbar* get_hscrollbar(); /** Returns the horizontal scrollbar of @a scrolled_window. * * @newin{2,8} * * @return The horizontal scrollbar of the scrolled window. */ const Scrollbar* get_hscrollbar() const; /** Gets the minimum content width of @a scrolled_window, or -1 if not set. * * @newin{3,0} * * @return The minimum content width. */ int get_min_content_width() const; /** Sets the minimum width that @a scrolled_window should keep visible. * Note that this can and (usually will) be smaller than the minimum * size of the content. * * It is a programming error to set the minimum content width to a * value greater than Gtk::ScrolledWindow::property_max_content_width(). * * @newin{3,0} * * @param width The minimal content width. */ void set_min_content_width(int width); /** Gets the minimal content height of @a scrolled_window, or -1 if not set. * * @newin{3,0} * * @return The minimal content height. */ int get_min_content_height() const; /** Sets the minimum height that @a scrolled_window should keep visible. * Note that this can and (usually will) be smaller than the minimum * size of the content. * * It is a programming error to set the minimum content height to a * value greater than Gtk::ScrolledWindow::property_max_content_height(). * * @newin{3,0} * * @param height The minimal content height. */ void set_min_content_height(int height); /** Turns kinetic scrolling on or off. * Kinetic scrolling only applies to devices with source * Gdk::SOURCE_TOUCHSCREEN. * * @newin{3,4} * * @param kinetic_scrolling true to enable kinetic scrolling. */ void set_kinetic_scrolling(bool kinetic_scrolling = true); /** Returns the specified kinetic scrolling behavior. * * @newin{3,4} * * @return The scrolling behavior flags. */ bool get_kinetic_scrolling() const; /** Changes the behaviour of @a scrolled_window with regard to the initial * event that possibly starts kinetic scrolling. When @a capture_button_press * is set to true, the event is captured by the scrolled window, and * then later replayed if it is meant to go to the child widget. * * This should be enabled if any child widgets perform non-reversible * actions on Gtk::Widget::signal_button_press_event(). If they don't, and handle * additionally handle Gtk::Widget::signal_grab_broken_event(), it might be better * to set @a capture_button_press to false. * * This setting only has an effect if kinetic scrolling is enabled. * * @newin{3,4} * * @param capture_button_press true to capture button presses. */ void set_capture_button_press(bool capture_button_press); /** Return whether button presses are captured during kinetic * scrolling. See set_capture_button_press(). * * @newin{3,4} * * @return true if button presses are captured during kinetic scrolling. */ bool get_capture_button_press() const; /** Enables or disables overlay scrolling for this scrolled window. * * @newin{3,16} * * @param overlay_scrolling Whether to enable overlay scrolling. */ void set_overlay_scrolling(bool overlay_scrolling = true); /** Returns whether overlay scrolling is enabled for this scrolled window. * * @newin{3,16} * * @return true if overlay scrolling is enabled. */ bool get_overlay_scrolling() const; /** Sets the maximum width that @a scrolled_window should keep visible. The * @a scrolled_window will grow up to this width before it starts scrolling * the content. * * It is a programming error to set the maximum content width to a value * smaller than Gtk::ScrolledWindow::property_min_content_width(). * * @newin{3,22} * * @param width The maximum content width. */ void set_max_content_width(int width); /** Returns the maximum content width set. * * @newin{3,22} * * @return The maximum content width, or -1. */ int get_max_content_width() const; /** Sets the maximum height that @a scrolled_window should keep visible. The * @a scrolled_window will grow up to this height before it starts scrolling * the content. * * It is a programming error to set the maximum content height to a value * smaller than Gtk::ScrolledWindow::property_min_content_height(). * * @newin{3,22} * * @param height The maximum content height. */ void set_max_content_height(int height); /** Returns the maximum content height set. * * @newin{3,22} * * @return The maximum content height, or -1. */ int get_max_content_height() const; /** Sets whether the natural width of the child should be calculated and propagated * through the scrolled window’s requested natural width. * * @newin{3,22} * * @param propagate Whether to propagate natural width. */ void set_propagate_natural_width(bool propagate = true); /** Reports whether the natural width of the child will be calculated and propagated * through the scrolled window’s requested natural width. * * @newin{3,22} * * @return Whether natural width propagation is enabled. */ bool get_propagate_natural_width() const; /** Sets whether the natural height of the child should be calculated and propagated * through the scrolled window’s requested natural height. * * @newin{3,22} * * @param propagate Whether to propagate natural height. */ void set_propagate_natural_height(bool propagate = true); /** Reports whether the natural height of the child will be calculated and propagated * through the scrolled window’s requested natural height. * * @newin{3,22} * * @return Whether natural height propagation is enabled. */ bool get_propagate_natural_height() const; //Keybinding signals: // no_default_handler because the wrapped C signals have no default handlers. /** * @par Slot Prototype: * void on_my_%edge_overshot(Gtk::PositionType pos) * * Flags: Run Last * * The signal_edge_overshot() signal is emitted whenever user initiated scrolling * makes the scrolled window firmly surpass (i.e.\ with some edge resistance) * the lower or upper limits defined by the adjustment in that orientation. * * A similar behavior without edge resistance is provided by the * Gtk::ScrolledWindow::signal_edge_reached() signal. * * @note The @a pos argument is LTR/RTL aware, so callers should be aware too * if intending to provide behavior on horizontal edges. * * @newin{3,16} * * @param pos Edge side that was hit. */ Glib::SignalProxy< void,Gtk::PositionType > signal_edge_overshot(); /** * @par Slot Prototype: * void on_my_%edge_reached(Gtk::PositionType pos) * * Flags: Run Last * * The signal_edge_reached() signal is emitted whenever user-initiated scrolling * makes the scrolled window exactly reach the lower or upper limits * defined by the adjustment in that orientation. * * A similar behavior with edge resistance is provided by the * Gtk::ScrolledWindow::signal_edge_overshot() signal. * * @note The @a pos argument is LTR/RTL aware, so callers should be aware too * if intending to provide behavior on horizontal edges. * * @newin{3,16} * * @param pos Edge side that was reached. */ Glib::SignalProxy< void,Gtk::PositionType > signal_edge_reached(); /** The GtkAdjustment for the horizontal position. * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< Glib::RefPtr > property_hadjustment() ; /** The GtkAdjustment for the horizontal position. * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< Glib::RefPtr > property_hadjustment() const; /** The GtkAdjustment for the vertical position. * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< Glib::RefPtr > property_vadjustment() ; /** The GtkAdjustment for the vertical position. * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< Glib::RefPtr > property_vadjustment() const; /** When the horizontal scrollbar is displayed. * * Default value: Gtk::POLICY_AUTOMATIC * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< PolicyType > property_hscrollbar_policy() ; /** When the horizontal scrollbar is displayed. * * Default value: Gtk::POLICY_AUTOMATIC * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< PolicyType > property_hscrollbar_policy() const; /** When the vertical scrollbar is displayed. * * Default value: Gtk::POLICY_AUTOMATIC * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< PolicyType > property_vscrollbar_policy() ; /** When the vertical scrollbar is displayed. * * Default value: Gtk::POLICY_AUTOMATIC * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< PolicyType > property_vscrollbar_policy() const; /** Where the contents are located with respect to the scrollbars. * * Default value: Gtk::CORNER_TOP_LEFT * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< CornerType > property_window_placement() ; /** Where the contents are located with respect to the scrollbars. * * Default value: Gtk::CORNER_TOP_LEFT * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< CornerType > property_window_placement() const; #ifndef GTKMM_DISABLE_DEPRECATED /** Whether "window-placement" should be used to determine the location * of the contents with respect to the scrollbars. * * @newin{2,10} * * Deprecated: 3.10: This value is ignored and * Gtk::ScrolledWindow::property_window_placement() value is always honored. * * @deprecated This value is ignored and the property_window_placement() value is always honored. * * Default value: true * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< bool > property_window_placement_set() ; /** Whether "window-placement" should be used to determine the location * of the contents with respect to the scrollbars. * * @newin{2,10} * * Deprecated: 3.10: This value is ignored and * Gtk::ScrolledWindow::property_window_placement() value is always honored. * * @deprecated This value is ignored and the property_window_placement() value is always honored. * * Default value: true * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_window_placement_set() const; #endif // GTKMM_DISABLE_DEPRECATED /** Style of bevel around the contents. * * Default value: Gtk::SHADOW_NONE * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< ShadowType > property_shadow_type() ; /** Style of bevel around the contents. * * Default value: Gtk::SHADOW_NONE * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< ShadowType > property_shadow_type() const; /** The minimum content width of @a scrolled_window, or -1 if not set. * * @newin{3,0} * * Default value: -1 * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< int > property_min_content_width() ; /** The minimum content width of @a scrolled_window, or -1 if not set. * * @newin{3,0} * * Default value: -1 * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< int > property_min_content_width() const; /** The minimum content height of @a scrolled_window, or -1 if not set. * * @newin{3,0} * * Default value: -1 * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< int > property_min_content_height() ; /** The minimum content height of @a scrolled_window, or -1 if not set. * * @newin{3,0} * * Default value: -1 * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< int > property_min_content_height() const; /** Whether kinetic scrolling is enabled or not. Kinetic scrolling * only applies to devices with source Gdk::SOURCE_TOUCHSCREEN. * * @newin{3,4} * * Default value: true * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< bool > property_kinetic_scrolling() ; /** Whether kinetic scrolling is enabled or not. Kinetic scrolling * only applies to devices with source Gdk::SOURCE_TOUCHSCREEN. * * @newin{3,4} * * Default value: true * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_kinetic_scrolling() const; /** Whether overlay scrolling is enabled or not. If it is, the * scrollbars are only added as traditional widgets when a mouse * is present. Otherwise, they are overlayed on top of the content, * as narrow indicators. * * @newin{3,16} * * Default value: true * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< bool > property_overlay_scrolling() ; /** Whether overlay scrolling is enabled or not. If it is, the * scrollbars are only added as traditional widgets when a mouse * is present. Otherwise, they are overlayed on top of the content, * as narrow indicators. * * @newin{3,16} * * Default value: true * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_overlay_scrolling() const; /** The maximum content width of @a scrolled_window, or -1 if not set. * * @newin{3,22} * * Default value: -1 * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< int > property_max_content_width() ; /** The maximum content width of @a scrolled_window, or -1 if not set. * * @newin{3,22} * * Default value: -1 * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< int > property_max_content_width() const; /** The maximum content height of @a scrolled_window, or -1 if not set. * * @newin{3,22} * * Default value: -1 * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< int > property_max_content_height() ; /** The maximum content height of @a scrolled_window, or -1 if not set. * * @newin{3,22} * * Default value: -1 * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< int > property_max_content_height() const; /** Whether the natural width of the child should be calculated and propagated * through the scrolled window’s requested natural width. * * This is useful in cases where an attempt should be made to allocate exactly * enough space for the natural size of the child. * * @newin{3,22} * * Default value: false * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< bool > property_propagate_natural_width() ; /** Whether the natural width of the child should be calculated and propagated * through the scrolled window’s requested natural width. * * This is useful in cases where an attempt should be made to allocate exactly * enough space for the natural size of the child. * * @newin{3,22} * * Default value: false * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_propagate_natural_width() const; /** Whether the natural height of the child should be calculated and propagated * through the scrolled window’s requested natural height. * * This is useful in cases where an attempt should be made to allocate exactly * enough space for the natural size of the child. * * @newin{3,22} * * Default value: false * * @return A PropertyProxy that allows you to get or set the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy< bool > property_propagate_natural_height() ; /** Whether the natural height of the child should be calculated and propagated * through the scrolled window’s requested natural height. * * This is useful in cases where an attempt should be made to allocate exactly * enough space for the natural size of the child. * * @newin{3,22} * * Default value: false * * @return A PropertyProxy_ReadOnly that allows you to get the value of the property, * or receive notification when the value of the property changes. */ Glib::PropertyProxy_ReadOnly< bool > property_propagate_natural_height() const; }; } //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::ScrolledWindow */ GTKMM_API Gtk::ScrolledWindow* wrap(GtkScrolledWindow* object, bool take_copy = false); } //namespace Glib #endif /* _GTKMM_SCROLLEDWINDOW_H */