pub struct TopBottomPanel { /* private fields */ }Expand description
A panel that covers the entire top or bottom of a Ui or screen.
The order in which you add panels matter! The first panel you add will always be the outermost, and the last you add will always be the innermost.
⚠ Always add any CentralPanel last.
See the module level docs for more details.
egui::TopBottomPanel::top("my_panel").show(ctx, |ui| {
ui.label("Hello World!");
});See also SidePanel.
Implementations§
Source§impl TopBottomPanel
impl TopBottomPanel
Sourcepub fn top(id: impl Into<Id>) -> Self
pub fn top(id: impl Into<Id>) -> Self
The id should be globally unique, e.g. Id::new("my_top_panel").
Sourcepub fn bottom(id: impl Into<Id>) -> Self
pub fn bottom(id: impl Into<Id>) -> Self
The id should be globally unique, e.g. Id::new("my_bottom_panel").
Sourcepub fn new(side: TopBottomSide, id: impl Into<Id>) -> Self
pub fn new(side: TopBottomSide, id: impl Into<Id>) -> Self
The id should be globally unique, e.g. Id::new("my_panel").
Sourcepub fn resizable(self, resizable: bool) -> Self
pub fn resizable(self, resizable: bool) -> Self
Can panel be resized by dragging the edge of it?
Default is false.
If you want your panel to be resizable you also need to make the ui use the available space.
This can be done by using Ui::take_available_space, or using a
widget in it that takes up more space as you resize it, such as:
- Wrapping text (
Ui::horizontal_wrapped). - A
crate::ScrollArea. - A
crate::Separator. - A
crate::TextEdit. - …
Sourcepub fn show_separator_line(self, show_separator_line: bool) -> Self
pub fn show_separator_line(self, show_separator_line: bool) -> Self
Show a separator line, even when not interacting with it?
Default: true.
Sourcepub fn default_height(self, default_height: f32) -> Self
pub fn default_height(self, default_height: f32) -> Self
The initial height of the TopBottomPanel, including margins.
Defaults to crate::style::Spacing::interact_size.y, plus frame margins.
Sourcepub fn min_height(self, min_height: f32) -> Self
pub fn min_height(self, min_height: f32) -> Self
Minimum height of the panel, including margins.
Sourcepub fn max_height(self, max_height: f32) -> Self
pub fn max_height(self, max_height: f32) -> Self
Maximum height of the panel, including margins.
Sourcepub fn height_range(self, height_range: impl Into<Rangef>) -> Self
pub fn height_range(self, height_range: impl Into<Rangef>) -> Self
The allowable height range for the panel, including margins.
Sourcepub fn exact_height(self, height: f32) -> Self
pub fn exact_height(self, height: f32) -> Self
Enforce this exact height, including margins.
Source§impl TopBottomPanel
impl TopBottomPanel
Sourcepub fn show_inside<R>(
self,
ui: &mut Ui,
add_contents: impl FnOnce(&mut Ui) -> R,
) -> InnerResponse<R>
pub fn show_inside<R>( self, ui: &mut Ui, add_contents: impl FnOnce(&mut Ui) -> R, ) -> InnerResponse<R>
Show the panel inside a Ui.
Sourcepub fn show<R>(
self,
ctx: &Context,
add_contents: impl FnOnce(&mut Ui) -> R,
) -> InnerResponse<R>
pub fn show<R>( self, ctx: &Context, add_contents: impl FnOnce(&mut Ui) -> R, ) -> InnerResponse<R>
Show the panel at the top level.
Sourcepub fn show_animated<R>(
self,
ctx: &Context,
is_expanded: bool,
add_contents: impl FnOnce(&mut Ui) -> R,
) -> Option<InnerResponse<R>>
pub fn show_animated<R>( self, ctx: &Context, is_expanded: bool, add_contents: impl FnOnce(&mut Ui) -> R, ) -> Option<InnerResponse<R>>
Show the panel if is_expanded is true,
otherwise don’t show it, but with a nice animation between collapsed and expanded.
Sourcepub fn show_animated_inside<R>(
self,
ui: &mut Ui,
is_expanded: bool,
add_contents: impl FnOnce(&mut Ui) -> R,
) -> Option<InnerResponse<R>>
pub fn show_animated_inside<R>( self, ui: &mut Ui, is_expanded: bool, add_contents: impl FnOnce(&mut Ui) -> R, ) -> Option<InnerResponse<R>>
Show the panel if is_expanded is true,
otherwise don’t show it, but with a nice animation between collapsed and expanded.
Sourcepub fn show_animated_between<R>(
ctx: &Context,
is_expanded: bool,
collapsed_panel: Self,
expanded_panel: Self,
add_contents: impl FnOnce(&mut Ui, f32) -> R,
) -> Option<InnerResponse<R>>
pub fn show_animated_between<R>( ctx: &Context, is_expanded: bool, collapsed_panel: Self, expanded_panel: Self, add_contents: impl FnOnce(&mut Ui, f32) -> R, ) -> Option<InnerResponse<R>>
Show either a collapsed or a expanded panel, with a nice animation between.
Sourcepub fn show_animated_between_inside<R>(
ui: &mut Ui,
is_expanded: bool,
collapsed_panel: Self,
expanded_panel: Self,
add_contents: impl FnOnce(&mut Ui, f32) -> R,
) -> InnerResponse<R>
pub fn show_animated_between_inside<R>( ui: &mut Ui, is_expanded: bool, collapsed_panel: Self, expanded_panel: Self, add_contents: impl FnOnce(&mut Ui, f32) -> R, ) -> InnerResponse<R>
Show either a collapsed or a expanded panel, with a nice animation between.