Open3D (C++ API)
|
#include <Layout.h>
Data Structures | |
struct | Impl |
Public Member Functions | |
CollapsableVert (const char *text) | |
CollapsableVert (const char *text, int spacing, const Margins &margins=Margins()) | |
virtual | ~CollapsableVert () |
void | SetIsOpen (bool is_open) |
Size | CalcPreferredSize (const Theme &theme) const override |
void | Layout (const Theme &theme) override |
Widget::DrawResult | Draw (const DrawContext &context) override |
Public Member Functions inherited from open3d::gui::Vert | |
Vert () | |
Vert (int spacing, const Margins &margins=Margins()) | |
Vert (int spacing, const Margins &margins, const std::vector< std::shared_ptr< Widget >> &children) | |
virtual | ~Vert () |
Public Member Functions inherited from open3d::gui::Layout1D | |
Layout1D (Dir dir, int spacing, const Margins &margins, const std::vector< std::shared_ptr< Widget >> &children) | |
virtual | ~Layout1D () |
int | GetSpacing () const |
const Margins & | GetMargins () const |
void | AddFixed (int size) |
Adds a fixed number of pixels after the previously added widget. More... | |
void | AddStretch () |
Public Member Functions inherited from open3d::gui::Widget | |
Widget () | |
Widget (const std::vector< std::shared_ptr< Widget >> &children) | |
virtual | ~Widget () |
void | AddChild (std::shared_ptr< Widget > child) |
const std::vector< std::shared_ptr< Widget > > | GetChildren () const |
const Rect & | GetFrame () const |
Returns the frame size in pixels. More... | |
virtual void | SetFrame (const Rect &f) |
const Color & | GetBackgroundColor () const |
bool | IsDefaultBackgroundColor () const |
void | SetBackgroundColor (const Color &color) |
bool | IsVisible () const |
virtual void | SetVisible (bool vis) |
bool | IsEnabled () const |
virtual void | SetEnabled (bool enabled) |
virtual EventResult | Mouse (const MouseEvent &e) |
virtual EventResult | Key (const KeyEvent &e) |
virtual DrawResult | Tick (const TickEvent &e) |
Additional Inherited Members | |
Public Types inherited from open3d::gui::Layout1D | |
enum | Dir { VERT, HORIZ } |
Public Types inherited from open3d::gui::Widget | |
enum | DrawResult { DrawResult::NONE, DrawResult::REDRAW, DrawResult::RELAYOUT } |
enum | EventResult { EventResult::IGNORED, EventResult::CONSUMED, EventResult::DISCARD } |
Static Public Member Functions inherited from open3d::gui::Vert | |
static std::shared_ptr< Layout1D::Fixed > | MakeFixed (int size) |
static std::shared_ptr< Layout1D::Stretch > | MakeStretch () |
Static Public Member Functions inherited from open3d::gui::Layout1D | |
static void | debug_PrintPreferredSizes (Layout1D *layout, const Theme &theme, int depth=0) |
Static Public Attributes inherited from open3d::gui::Widget | |
static constexpr int | DIM_GROW = 10000 |
Protected Member Functions inherited from open3d::gui::Layout1D | |
Margins & | GetMutableMargins () |
Protected Member Functions inherited from open3d::gui::Widget | |
void | DrawImGuiPushEnabledState () |
void | DrawImGuiPopEnabledState () |
This is a vertical layout with a twisty + title that can be clicked on to expand or collapse the layout. Collapsing the layout will hide all the items and shrink the size of the layout to the height of the title.
open3d::gui::CollapsableVert::CollapsableVert | ( | const char * | text | ) |
open3d::gui::CollapsableVert::CollapsableVert | ( | const char * | text, |
int | spacing, | ||
const Margins & | margins = Margins() |
||
) |
|
virtual |
Reimplemented from open3d::gui::Layout1D.
|
overridevirtual |
Draws the widget. If this is a Dear ImGUI widget, this is where the actual event processing happens. Return NONE if no action needs to be taken, REDRAW if the widget needs to be redrawn (e.g. its value changed), and RELAYOUT if the widget wishes to change size.
Reimplemented from open3d::gui::Widget.
|
overridevirtual |
Reimplemented from open3d::gui::Layout1D.
void open3d::gui::CollapsableVert::SetIsOpen | ( | bool | is_open | ) |
You will need to call Window::SetNeedsLayout() after this. (If you call this before the widnows is displayed everything will work out fine, as layout will automatically be called when the window is shown.)