Skip to main content

MenuBuilder

Struct MenuBuilder 

Source
pub struct MenuBuilder { /* private fields */ }
Expand description

A builder-pattern type to construct Menu objects.

Implementations§

Source§

impl MenuBuilder

Source

pub fn accel_group(self, accel_group: &impl IsA<AccelGroup>) -> Self

The accel group holding accelerators for the menu.

Source

pub fn accel_path(self, accel_path: impl Into<GString>) -> Self

An accel path used to conveniently construct accel paths of child items.

Source

pub fn active(self, active: i32) -> Self

The index of the currently selected menu item, or -1 if no menu item is selected.

Source

pub fn anchor_hints(self, anchor_hints: AnchorHints) -> Self

Positioning hints for aligning the menu relative to a rectangle.

These hints determine how the menu should be positioned in the case that the menu would fall off-screen if placed in its ideal position.

For example, gdk::AnchorHints::FLIP_Y will replace gdk::Gravity::NorthWest with gdk::Gravity::SouthWest and vice versa if the menu extends beyond the bottom edge of the monitor.

See gtk_menu_popup_at_rect (), gtk_menu_popup_at_widget (), gtk_menu_popup_at_pointer (), rect-anchor-dx, rect-anchor-dy, menu-type-hint, and popped-up.

Source

pub fn attach_widget(self, attach_widget: &impl IsA<Widget>) -> Self

The widget the menu is attached to. Setting this property attaches the menu without a GtkMenuDetachFunc. If you need to use a detacher, use gtk_menu_attach_to_widget() directly.

Source

pub fn menu_type_hint(self, menu_type_hint: WindowTypeHint) -> Self

The gdk::WindowTypeHint to use for the menu’s gdk::Window.

See gtk_menu_popup_at_rect (), gtk_menu_popup_at_widget (), gtk_menu_popup_at_pointer (), anchor-hints, rect-anchor-dx, rect-anchor-dy, and popped-up.

Source

pub fn monitor(self, monitor: i32) -> Self

The monitor the menu will be popped up on.

Source

pub fn rect_anchor_dx(self, rect_anchor_dx: i32) -> Self

Horizontal offset to apply to the menu, i.e. the rectangle or widget anchor.

See gtk_menu_popup_at_rect (), gtk_menu_popup_at_widget (), gtk_menu_popup_at_pointer (), anchor-hints, rect-anchor-dy, menu-type-hint, and popped-up.

Source

pub fn rect_anchor_dy(self, rect_anchor_dy: i32) -> Self

Vertical offset to apply to the menu, i.e. the rectangle or widget anchor.

See gtk_menu_popup_at_rect (), gtk_menu_popup_at_widget (), gtk_menu_popup_at_pointer (), anchor-hints, rect-anchor-dx, menu-type-hint, and popped-up.

Source

pub fn reserve_toggle_size(self, reserve_toggle_size: bool) -> Self

A boolean that indicates whether the menu reserves space for toggles and icons, regardless of their actual presence.

This property should only be changed from its default value for special-purposes such as tabular menus. Regular menus that are connected to a menu bar or context menus should reserve toggle space for consistency.

Source

pub fn take_focus(self, take_focus: bool) -> Self

A boolean that determines whether the menu and its submenus grab the keyboard focus. See MenuShellExt::set_take_focus() and MenuShellExt::takes_focus().

Source

pub fn border_width(self, border_width: u32) -> Self

Source

pub fn child(self, child: &impl IsA<Widget>) -> Self

Source

pub fn resize_mode(self, resize_mode: ResizeMode) -> Self

Source

pub fn app_paintable(self, app_paintable: bool) -> Self

Source

pub fn can_default(self, can_default: bool) -> Self

Source

pub fn can_focus(self, can_focus: bool) -> Self

Source

pub fn events(self, events: EventMask) -> Self

Source

pub fn expand(self, expand: bool) -> Self

Whether to expand in both directions. Setting this sets both hexpand and vexpand

Source

pub fn focus_on_click(self, focus_on_click: bool) -> Self

Whether the widget should grab focus when it is clicked with the mouse.

This property is only relevant for widgets that can take focus.

Before 3.20, several widgets (GtkButton, GtkFileChooserButton, GtkComboBox) implemented this property individually.

Source

pub fn halign(self, halign: Align) -> Self

How to distribute horizontal space if widget gets extra space, see Align

Source

pub fn has_default(self, has_default: bool) -> Self

Source

pub fn has_focus(self, has_focus: bool) -> Self

Source

pub fn has_tooltip(self, has_tooltip: bool) -> Self

Enables or disables the emission of query-tooltip on widget. A value of true indicates that widget can have a tooltip, in this case the widget will be queried using query-tooltip to determine whether it will provide a tooltip or not.

Note that setting this property to true for the first time will change the event masks of the GdkWindows of this widget to include leave-notify and motion-notify events. This cannot and will not be undone when the property is set to false again.

Source

pub fn height_request(self, height_request: i32) -> Self

Source

pub fn hexpand(self, hexpand: bool) -> Self

Whether to expand horizontally. See WidgetExt::set_hexpand().

Source

pub fn hexpand_set(self, hexpand_set: bool) -> Self

Whether to use the hexpand property. See WidgetExt::is_hexpand_set().

Source

pub fn is_focus(self, is_focus: bool) -> Self

Source

pub fn margin(self, margin: i32) -> Self

Sets all four sides’ margin at once. If read, returns max margin on any side.

Source

pub fn margin_bottom(self, margin_bottom: i32) -> Self

Margin on bottom side of widget.

This property adds margin outside of the widget’s normal size request, the margin will be added in addition to the size from WidgetExt::set_size_request() for example.

Source

pub fn margin_end(self, margin_end: i32) -> Self

Margin on end of widget, horizontally. This property supports left-to-right and right-to-left text directions.

This property adds margin outside of the widget’s normal size request, the margin will be added in addition to the size from WidgetExt::set_size_request() for example.

Source

pub fn margin_start(self, margin_start: i32) -> Self

Margin on start of widget, horizontally. This property supports left-to-right and right-to-left text directions.

This property adds margin outside of the widget’s normal size request, the margin will be added in addition to the size from WidgetExt::set_size_request() for example.

Source

pub fn margin_top(self, margin_top: i32) -> Self

Margin on top side of widget.

This property adds margin outside of the widget’s normal size request, the margin will be added in addition to the size from WidgetExt::set_size_request() for example.

Source

pub fn name(self, name: impl Into<GString>) -> Self

Source

pub fn no_show_all(self, no_show_all: bool) -> Self

Source

pub fn opacity(self, opacity: f64) -> Self

The requested opacity of the widget. See WidgetExt::set_opacity() for more details about window opacity.

Before 3.8 this was only available in GtkWindow

Source

pub fn parent(self, parent: &impl IsA<Container>) -> Self

Source

pub fn receives_default(self, receives_default: bool) -> Self

Source

pub fn sensitive(self, sensitive: bool) -> Self

Source

pub fn tooltip_markup(self, tooltip_markup: impl Into<GString>) -> Self

Sets the text of tooltip to be the given string, which is marked up with the [Pango text markup language][PangoMarkupFormat]. Also see Tooltip::set_markup().

This is a convenience property which will take care of getting the tooltip shown if the given string is not None: has-tooltip will automatically be set to true and there will be taken care of query-tooltip in the default signal handler.

Note that if both tooltip-text and tooltip-markup are set, the last one wins.

Source

pub fn tooltip_text(self, tooltip_text: impl Into<GString>) -> Self

Sets the text of tooltip to be the given string.

Also see Tooltip::set_text().

This is a convenience property which will take care of getting the tooltip shown if the given string is not None: has-tooltip will automatically be set to true and there will be taken care of query-tooltip in the default signal handler.

Note that if both tooltip-text and tooltip-markup are set, the last one wins.

Source

pub fn valign(self, valign: Align) -> Self

How to distribute vertical space if widget gets extra space, see Align

Source

pub fn vexpand(self, vexpand: bool) -> Self

Whether to expand vertically. See WidgetExt::set_vexpand().

Source

pub fn vexpand_set(self, vexpand_set: bool) -> Self

Whether to use the vexpand property. See WidgetExt::is_vexpand_set().

Source

pub fn visible(self, visible: bool) -> Self

Source

pub fn width_request(self, width_request: i32) -> Self

Source

pub fn build(self) -> Menu

Build the Menu.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.