class open3d.visualization.gui.WidgetStack

A widget stack saves all widgets pushed into by push_widget and always shows the top one. The WidgetStack is a subclass of WidgetProxy, in otherwords, the topmost widget will delegate itself to WidgetStack. pop_widget will remove the topmost widget and callback set by set_on_top taking the new topmost widget will be called. The WidgetStack disappears in GUI if there is no widget in stack.

class Constraints

Constraints object for Widget.calc_preferred_size()

__init__(self: open3d.cpu.pybind.visualization.gui.Widget.Constraints) → None
property height
property width
class EventCallbackResult

Returned by event handlers


IGNORED : Event handler ignored the event, widget will handle event normally

HANDLED : Event handler handled the event, but widget will still handle the event normally. This is useful when you are augmenting base functionality

CONSUMED : Event handler consumed the event, event handling stops, widget will not handle the event. This is useful when you are replacing functionality

CONSUMED = <EventCallbackResult.CONSUMED: 2>
HANDLED = <EventCallbackResult.HANDLED: 1>
IGNORED = <EventCallbackResult.IGNORED: 0>
property value
__init__(self: open3d.cpu.pybind.visualization.gui.WidgetStack) → None

Creates a widget stack. The widget stack without anywidget will not be shown in GUI until set_widget iscalled to push a widget.

add_child(self: open3d.cpu.pybind.visualization.gui.Widget, arg0: open3d.cpu.pybind.visualization.gui.Widget) → None

Adds a child widget

calc_preferred_size(self: open3d.cpu.pybind.visualization.gui.Widget, arg0: open3d.cpu.pybind.visualization.gui.LayoutContext, arg1: open3d.cpu.pybind.visualization.gui.Widget.Constraints) → open3d.cpu.pybind.visualization.gui.Size

Returns the preferred size of the widget. This is intended to be called only during layout, although it will also work during drawing. Calling it at other times will not work, as it requires some internal setup in order to function properly

get_children(self: open3d.cpu.pybind.visualization.gui.Widget) → List[open3d.cpu.pybind.visualization.gui.Widget]

Returns the array of children. Do not modify.

get_widget(self: open3d.cpu.pybind.visualization.gui.WidgetProxy) → open3d.cpu.pybind.visualization.gui.Widget

Retrieve current delegated widget.return instance of current delegated widget set by set_widget. An empty pointer will be returned if there is none.

pop_widget(self: open3d.cpu.pybind.visualization.gui.WidgetStack) → open3d.cpu.pybind.visualization.gui.Widget

pop the topmost widget in the stack. The new topmost widgetof stack will be the widget on the show in GUI.

push_widget(self: open3d.cpu.pybind.visualization.gui.WidgetStack, arg0: open3d.cpu.pybind.visualization.gui.Widget) → None

push a new widget onto the WidgetStack’s stack, hiding whatever widget was there before and making the new widget visible.

set_on_top(self: open3d.cpu.pybind.visualization.gui.WidgetStack, arg0: Callable[[open3d.cpu.pybind.visualization.gui.Widget], None]) → None

Callable[[widget] -> None], called while a widget becomes the topmost of stack after some widget is poppedout. It won’t be called if a widget is pushed into stackby set_widget.

set_widget(self: open3d.cpu.pybind.visualization.gui.WidgetProxy, arg0: open3d.cpu.pybind.visualization.gui.Widget) → None

set a new widget to be delegated by this one. After set_widget, the previously delegated widget , will be abandon all calls to Widget’s API will be conducted to widget. Before any set_widget call, this widget is invisible and disabled, seems it does not exist because it won’t be drawn or in a layout.

CONSUMED = <EventCallbackResult.CONSUMED: 2>
HANDLED = <EventCallbackResult.HANDLED: 1>
IGNORED = <EventCallbackResult.IGNORED: 0>
property background_color

Background color of the widget

property enabled

True if widget is enabled, False if disabled

property frame

The widget’s frame. Setting this value will be overridden if the frame is within a layout.

property tooltip

Widget’s tooltip that is displayed on mouseover

property visible

True if widget is visible, False otherwise