gtkmm
3.4.0
|
Adds scrollbars to its child widget. More...
Public Member Functions | |
virtual | ~ScrolledWindow () |
GtkScrolledWindow* | gobj () |
Provides access to the underlying C GtkObject. | |
const GtkScrolledWindow* | gobj () const |
Provides access to the underlying C GtkObject. | |
ScrolledWindow () | |
ScrolledWindow (const Glib::RefPtr< Adjustment >& hadjustment, const Glib::RefPtr< Adjustment >& vadjustment) | |
void | set_hadjustment (const Glib::RefPtr< Adjustment >& hadjustment) |
Sets the Gtk::Adjustment for the horizontal scrollbar. | |
void | set_vadjustment (const Glib::RefPtr< Adjustment >& vadjustment) |
Sets the Gtk::Adjustment for the vertical scrollbar. | |
Glib::RefPtr< Adjustment > | get_hadjustment () |
Returns the horizontal scrollbar's adjustment, used to connect the horizontal scrollbar to the child widget's horizontal scroll functionality. | |
Glib::RefPtr< const Adjustment > | get_hadjustment () const |
Returns the horizontal scrollbar's adjustment, used to connect the horizontal scrollbar to the child widget's horizontal scroll functionality. | |
Glib::RefPtr< Adjustment > | get_vadjustment () |
Returns the vertical scrollbar's adjustment, used to connect the vertical scrollbar to the child widget's vertical scroll functionality. | |
Glib::RefPtr< const Adjustment > | get_vadjustment () const |
Returns the vertical scrollbar's adjustment, used to connect the vertical scrollbar to the child widget's vertical scroll functionality. | |
void | set_policy (PolicyType hscrollbar_policy, PolicyType vscrollbar_policy) |
Sets the scrollbar policy for the horizontal and vertical scrollbars. | |
void | get_policy (PolicyType& hscrollbar_policy, PolicyType& vscrollbar_policy) const |
Retrieves the current policy values for the horizontal and vertical scrollbars. | |
void | set_placement (CornerType window_placement) |
Sets the placement of the contents with respect to the scrollbars for the scrolled window. | |
void | unset_placement () |
Unsets the placement of the contents with respect to the scrollbars for the scrolled window. | |
CornerType | get_placement () const |
Gets the placement of the contents with respect to the scrollbars for the scrolled window. | |
void | set_shadow_type (ShadowType type) |
Changes the type of shadow drawn around the contents of scrolled_window. | |
ShadowType | get_shadow_type () const |
Gets the shadow type of the scrolled window. | |
virtual void | add (Gtk::Widget& widget) |
Puts the child inside a Gtk::Viewport if it doesn't have native scrolling capability. | |
Scrollbar* | get_vscrollbar () |
Returns the vertical scrollbar of scrolled_window. | |
const Scrollbar* | get_vscrollbar () const |
Returns the vertical scrollbar of scrolled_window. | |
Scrollbar* | get_hscrollbar () |
Returns the horizontal scrollbar of scrolled_window. | |
const Scrollbar* | get_hscrollbar () const |
Returns the horizontal scrollbar of scrolled_window. | |
int | get_min_content_width () const |
Gets the minimum content width of scrolled_window, or -1 if not set. | |
void | set_min_content_width (int width) |
Sets the minimum width that scrolled_window should keep visible. | |
int | get_min_content_height () const |
Gets the minimal content height of scrolled_window, or -1 if not set. | |
void | set_min_content_height (int height) |
Sets the minimum height that scrolled_window should keep visible. | |
void | set_kinetic_scrolling (bool kinetic_scrolling=true) |
Turns kinetic scrolling on or off. | |
bool | get_kinetic_scrolling () const |
Returns the specified kinetic scrolling behavior. | |
void | set_capture_button_press (bool capture_button_press) |
Changes the behaviour of scrolled_window wrt. | |
bool | get_capture_button_press () const |
Return whether button presses are captured during kinetic scrolling. | |
Glib::PropertyProxy < Glib::RefPtr< Adjustment > > | property_hadjustment () |
The GtkAdjustment for the horizontal position. | |
Glib::PropertyProxy_ReadOnly < Glib::RefPtr< Adjustment > > | property_hadjustment () const |
The GtkAdjustment for the horizontal position. | |
Glib::PropertyProxy < Glib::RefPtr< Adjustment > > | property_vadjustment () |
The GtkAdjustment for the vertical position. | |
Glib::PropertyProxy_ReadOnly < Glib::RefPtr< Adjustment > > | property_vadjustment () const |
The GtkAdjustment for the vertical position. | |
Glib::PropertyProxy< PolicyType > | property_hscrollbar_policy () |
When the horizontal scrollbar is displayed. | |
Glib::PropertyProxy_ReadOnly < PolicyType > | property_hscrollbar_policy () const |
When the horizontal scrollbar is displayed. | |
Glib::PropertyProxy< PolicyType > | property_vscrollbar_policy () |
When the vertical scrollbar is displayed. | |
Glib::PropertyProxy_ReadOnly < PolicyType > | property_vscrollbar_policy () const |
When the vertical scrollbar is displayed. | |
Glib::PropertyProxy< CornerType > | property_window_placement () |
Where the contents are located with respect to the scrollbars. | |
Glib::PropertyProxy_ReadOnly < CornerType > | property_window_placement () const |
Where the contents are located with respect to the scrollbars. | |
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. | |
Glib::PropertyProxy_ReadOnly < bool > | property_window_placement_set () const |
Whether 'window-placement' should be used to determine the location of the contents with respect to the scrollbars. | |
Glib::PropertyProxy< ShadowType > | property_shadow_type () |
Style of bevel around the contents. | |
Glib::PropertyProxy_ReadOnly < ShadowType > | property_shadow_type () const |
Style of bevel around the contents. | |
Glib::PropertyProxy< int > | property_min_content_width () |
The minimum width that the scrolled window will allocate to its content. | |
Glib::PropertyProxy_ReadOnly< int > | property_min_content_width () const |
The minimum width that the scrolled window will allocate to its content. | |
Glib::PropertyProxy< int > | property_min_content_height () |
The minimum height that the scrolled window will allocate to its content. | |
Glib::PropertyProxy_ReadOnly< int > | property_min_content_height () const |
The minimum height that the scrolled window will allocate to its content. | |
Glib::PropertyProxy< bool > | property_kinetic_scrolling () |
Kinetic scrolling mode. | |
Glib::PropertyProxy_ReadOnly < bool > | property_kinetic_scrolling () const |
Kinetic scrolling mode. | |
Related Functions | |
(Note that these are not member functions.) | |
Gtk::ScrolledWindow* | wrap (GtkScrolledWindow* object, bool take_copy=false) |
A Glib::wrap() method for this object. |
Adds scrollbars to its child widget.
This container accepts a single child widget. It adds scrollbars to the child widget and optionally draws a beveled frame around the child widget. The scrolled window can work in two ways: 1) Some widgets have native scrolling support; these widgets handle certain Gtk::Adjustment signals. Widgets with native scroll support include Gtk::TreeView, Gtk::TextView, and Gtk::Layout. 2) For widgets that lack native scrolling support, such as Gtk::Table, Gtk::Box, and so on, the widget will be placed inside a Gtk::Viewport.
The position of the scrollbars is controlled by the scroll adjustments. See Gtk::Adjustment for the fields in an adjustment - for Gtk::Scrollbar, used by Gtk::ScrolledWindow, the "value" field represents the position of the scrollbar, which must be between the "lower" field and "upper - page_size." The "page_size" field represents the size of the visible scrollable area. The "step_increment" and "page_increment" fields are used when the user asks to step down (using the small stepper arrows) or page down (using for example the PageDown key).
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::Table.
virtual Gtk::ScrolledWindow::~ScrolledWindow | ( | ) | [virtual] |
Gtk::ScrolledWindow::ScrolledWindow | ( | const Glib::RefPtr< Adjustment >& | hadjustment, |
const Glib::RefPtr< Adjustment >& | vadjustment | ||
) | [explicit] |
virtual void Gtk::ScrolledWindow::add | ( | Gtk::Widget& | widget | ) | [virtual] |
Puts the child inside a Gtk::Viewport if it doesn't have native scrolling capability.
Reimplemented from Gtk::Container.
bool Gtk::ScrolledWindow::get_capture_button_press | ( | ) | const |
Return whether button presses are captured during kinetic scrolling.
See set_capture_button_press().
true
if button presses are captured during kinetic scrolling. Returns the horizontal scrollbar's adjustment, used to connect the horizontal scrollbar to the child widget's horizontal scroll functionality.
Glib::RefPtr<const Adjustment> Gtk::ScrolledWindow::get_hadjustment | ( | ) | const |
Returns the horizontal scrollbar's adjustment, used to connect the horizontal scrollbar to the child widget's horizontal scroll functionality.
Returns the horizontal scrollbar of scrolled_window.
0
if it does not have one. const Scrollbar* Gtk::ScrolledWindow::get_hscrollbar | ( | ) | const |
Returns the horizontal scrollbar of scrolled_window.
0
if it does not have one. bool Gtk::ScrolledWindow::get_kinetic_scrolling | ( | ) | const |
Returns the specified kinetic scrolling behavior.
int Gtk::ScrolledWindow::get_min_content_height | ( | ) | const |
Gets the minimal content height of scrolled_window, or -1 if not set.
int Gtk::ScrolledWindow::get_min_content_width | ( | ) | const |
Gets the minimum content width of scrolled_window, or -1 if not set.
CornerType Gtk::ScrolledWindow::get_placement | ( | ) | const |
Gets the placement of the contents with respect to the scrollbars for the scrolled window.
See set_placement().
See also set_placement() and unset_placement().
void Gtk::ScrolledWindow::get_policy | ( | PolicyType& | hscrollbar_policy, |
PolicyType& | vscrollbar_policy | ||
) | const |
Retrieves the current policy values for the horizontal and vertical scrollbars.
See set_policy().
hscrollbar_policy | Location to store the policy for the horizontal scrollbar, or 0 . |
vscrollbar_policy | Location to store the policy for the vertical scrollbar, or 0 . |
Gets the shadow type of the scrolled window.
See set_shadow_type().
Returns the vertical scrollbar's adjustment, used to connect the vertical scrollbar to the child widget's vertical scroll functionality.
Glib::RefPtr<const Adjustment> Gtk::ScrolledWindow::get_vadjustment | ( | ) | const |
Returns the vertical scrollbar's adjustment, used to connect the vertical scrollbar to the child widget's vertical scroll functionality.
Returns the vertical scrollbar of scrolled_window.
0
if it does not have one. const Scrollbar* Gtk::ScrolledWindow::get_vscrollbar | ( | ) | const |
Returns the vertical scrollbar of scrolled_window.
0
if it does not have one. GtkScrolledWindow* Gtk::ScrolledWindow::gobj | ( | ) | [inline] |
Provides access to the underlying C GtkObject.
Reimplemented from Gtk::Bin.
const GtkScrolledWindow* Gtk::ScrolledWindow::gobj | ( | ) | const [inline] |
Provides access to the underlying C GtkObject.
Reimplemented from Gtk::Bin.
The GtkAdjustment for the horizontal position.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Adjustment> > Gtk::ScrolledWindow::property_hadjustment | ( | ) | const |
The GtkAdjustment for the horizontal position.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
When the horizontal scrollbar is displayed.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly< PolicyType > Gtk::ScrolledWindow::property_hscrollbar_policy | ( | ) | const |
When the horizontal scrollbar is displayed.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Kinetic scrolling mode.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly< bool > Gtk::ScrolledWindow::property_kinetic_scrolling | ( | ) | const |
Kinetic scrolling mode.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
The minimum height that the scrolled window will allocate to its content.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
The minimum height that the scrolled window will allocate to its content.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
The minimum width that the scrolled window will allocate to its content.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
The minimum width that the scrolled window will allocate to its content.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Style of bevel around the contents.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Style of bevel around the contents.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
The GtkAdjustment for the vertical position.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Adjustment> > Gtk::ScrolledWindow::property_vadjustment | ( | ) | const |
The GtkAdjustment for the vertical position.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
When the vertical scrollbar is displayed.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Glib::PropertyProxy_ReadOnly< PolicyType > Gtk::ScrolledWindow::property_vscrollbar_policy | ( | ) | const |
When the vertical scrollbar is displayed.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Where the contents are located with respect to the scrollbars.
This property only takes effect if 'window-placement-set' is TRUE.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Where the contents are located with respect to the scrollbars.
This property only takes effect if 'window-placement-set' is TRUE.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Whether 'window-placement' should be used to determine the location of the contents with respect to the scrollbars.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
Whether 'window-placement' should be used to determine the location of the contents with respect to the scrollbars.
You rarely need to use properties because there are get_ and set_ methods for almost all of them.
void Gtk::ScrolledWindow::set_capture_button_press | ( | bool | capture_button_press | ) |
Changes the behaviour of scrolled_window wrt.
to the initial event that possibly starts kinetic scrolling. When 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 capture_button_press to false
.
This setting only has an effect if kinetic scrolling is enabled.
capture_button_press | true to capture button presses. |
void Gtk::ScrolledWindow::set_hadjustment | ( | const Glib::RefPtr< Adjustment >& | hadjustment | ) |
Sets the Gtk::Adjustment for the horizontal scrollbar.
hadjustment | Horizontal scroll adjustment. |
void Gtk::ScrolledWindow::set_kinetic_scrolling | ( | bool | kinetic_scrolling = true | ) |
Turns kinetic scrolling on or off.
Kinetic scrolling only applies to devices with source Gdk::SOURCE_TOUCHSCREEN.
kinetic_scrolling | true to enable kinetic scrolling. |
void Gtk::ScrolledWindow::set_min_content_height | ( | int | height | ) |
Sets the minimum height that scrolled_window should keep visible.
Note that this can and (usually will) be smaller than the minimum size of the content.
height | The minimal content height. |
void Gtk::ScrolledWindow::set_min_content_width | ( | int | width | ) |
Sets the minimum width that scrolled_window should keep visible.
Note that this can and (usually will) be smaller than the minimum size of the content.
width | The minimal content width. |
void Gtk::ScrolledWindow::set_placement | ( | CornerType | window_placement | ) |
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().
window_placement | Position of the child window. |
void Gtk::ScrolledWindow::set_policy | ( | PolicyType | hscrollbar_policy, |
PolicyType | vscrollbar_policy | ||
) |
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).
hscrollbar_policy | Policy for horizontal bar. |
vscrollbar_policy | Policy for vertical bar. |
void Gtk::ScrolledWindow::set_shadow_type | ( | ShadowType | type | ) |
Changes the type of shadow drawn around the contents of scrolled_window.
type | Kind of shadow to draw around scrolled window contents. |
void Gtk::ScrolledWindow::set_vadjustment | ( | const Glib::RefPtr< Adjustment >& | vadjustment | ) |
Sets the Gtk::Adjustment for the vertical scrollbar.
vadjustment | Vertical scroll adjustment. |
void Gtk::ScrolledWindow::unset_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 obeys the "gtk-scrolled-window-placement" XSETTING.
See also set_placement() and get_placement().
Gtk::ScrolledWindow* wrap | ( | GtkScrolledWindow * | object, |
bool | take_copy = false |
||
) | [related] |
A Glib::wrap() method for this object.
object | The C instance. |
take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref. |