Struct imgui::ChildWindow

source ·
pub struct ChildWindow<'ui> { /* private fields */ }
Expand description

Builder for a child window

Implementations§

source§

impl<'ui> ChildWindow<'ui>

source

pub fn new(ui: &'ui Ui, name: impl AsRef<str>) -> Self

👎Deprecated since 0.9.0: use ui.child_window(…) instead

Creates a new child window builder with the str.

source

pub fn new_id(ui: &'ui Ui, id: Id) -> Self

Creates a new child window builder with the given imgui id.

source

pub fn flags(self, flags: WindowFlags) -> Self

Replace current window flags with the given value

source

pub fn size(self, size: impl Into<Vector2<f32>>) -> Self

Sets the child window size.

For each independent axis of size:

  • > 0.0: fixed size
  • = 0.0: use remaining host window size
  • < 0.0: use remaining host window size minus abs(size)
source

pub fn content_size(self, size: impl Into<Vector2<f32>>) -> Self

Sets the window content size, which can be used to enforce scrollbars.

Does not include window decorations (title bar, menu bar, etc.). Set one of the values to 0.0 to leave the size automatic.

source

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

Sets the window focused state, which can be used to bring the window to front

source

pub fn bg_alpha(self, bg_alpha: f32) -> Self

Sets the background color alpha value.

See also draw_background

source

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

Enables/disables the child window border.

Disabled by default.

source

pub fn movable(self, value: bool) -> Self

Enables/disables moving the window when child window is dragged.

Enabled by default.

source

pub fn scroll_bar(self, value: bool) -> Self

Enables/disables scrollbars (scrolling is still possible with the mouse or programmatically).

Enabled by default.

source

pub fn scrollable(self, value: bool) -> Self

Enables/disables vertical scrolling with the mouse wheel.

Enabled by default. When enabled, child windows forward the mouse wheel to the parent unless NO_SCROLLBAR is also set.

source

pub fn always_auto_resize(self, value: bool) -> Self

Enables/disables resizing the window to its content on every frame.

Disabled by default.

source

pub fn draw_background(self, value: bool) -> Self

Enables/disables drawing of background color and outside border.

Enabled by default.

source

pub fn mouse_inputs(self, value: bool) -> Self

Enables/disables catching mouse input.

Enabled by default. Note: Hovering test will pass through when disabled

source

pub fn menu_bar(self, value: bool) -> Self

Enables/disables the menu bar.

Disabled by default.

source

pub fn horizontal_scrollbar(self, value: bool) -> Self

Enables/disables the horizontal scrollbar.

Disabled by default.

source

pub fn focus_on_appearing(self, value: bool) -> Self

Enables/disables taking focus when transitioning from hidden to visible state.

Enabled by default.

source

pub fn bring_to_front_on_focus(self, value: bool) -> Self

Enables/disables bringing the window to front when taking focus (e.g. clicking it or programmatically giving it focus).

Enabled by default.

source

pub fn always_vertical_scrollbar(self, value: bool) -> Self

When enabled, forces the vertical scrollbar to render regardless of the content size.

Disabled by default.

source

pub fn always_horizontal_scrollbar(self, value: bool) -> Self

When enabled, forces the horizontal scrollbar to render regardless of the content size.

Disabled by default.

source

pub fn always_use_window_padding(self, value: bool) -> Self

When enabled, ensures child windows without border use style.window_padding.

Disabled by default.

source

pub fn nav_inputs(self, value: bool) -> Self

Enables/disables gamepad/keyboard navigation within the window.

Enabled by default.

source

pub fn nav_focus(self, value: bool) -> Self

Enables/disables focusing toward this window with gamepad/keyboard navigation (e.g. CTRL+TAB).

Enabled by default.

source

pub fn no_nav(self) -> Self

Disable gamepad/keyboard navigation and focusing.

Shorthand for

.nav_inputs(false)
.nav_focus(false)
source

pub fn no_inputs(self) -> Self

Don’t handle input.

Shorthand for

.mouse_inputs(false)
.nav_inputs(false)
.nav_focus(false)
source

pub fn begin(self) -> Option<ChildWindowToken<'ui>>

Creates a child window and starts append to it.

Returns Some(ChildWindowToken) if the window is visible. After content has been rendered, the token must be ended by calling .end().

Returns None if the window is not visible and no content should be rendered.

source

pub fn build<T, F: FnOnce() -> T>(self, f: F) -> Option<T>

Creates a child window and runs a closure to construct the contents. Returns the result of the closure, if it is called.

Note: the closure is not called if no window content is visible (e.g. window is collapsed or fully clipped).

Trait Implementations§

source§

impl<'ui> Clone for ChildWindow<'ui>

source§

fn clone(&self) -> ChildWindow<'ui>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'ui> Debug for ChildWindow<'ui>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'ui> Copy for ChildWindow<'ui>

Auto Trait Implementations§

§

impl<'ui> !RefUnwindSafe for ChildWindow<'ui>

§

impl<'ui> !Send for ChildWindow<'ui>

§

impl<'ui> !Sync for ChildWindow<'ui>

§

impl<'ui> Unpin for ChildWindow<'ui>

§

impl<'ui> !UnwindSafe for ChildWindow<'ui>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

const: unstable · 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> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.