Open3D (C++ API)  0.17.0
Data Structures | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions
open3d::visualization::gui::Layout1D Class Reference

#include <Layout.h>

Inheritance diagram for open3d::visualization::gui::Layout1D:
open3d::visualization::gui::Widget open3d::visualization::gui::Horiz open3d::visualization::gui::Vert open3d::visualization::GuiSettingsView open3d::visualization::gui::CollapsableVert open3d::visualization::gui::ScrollableVert

Data Structures

class  Fixed
 
struct  Impl
 
class  Stretch
 

Public Types

enum  Dir { VERT , HORIZ }
 
- Public Types inherited from open3d::visualization::gui::Widget
enum class  DrawResult { NONE , REDRAW , RELAYOUT }
 
enum class  EventResult { IGNORED , CONSUMED , DISCARD }
 

Public Member Functions

 Layout1D (Dir dir, int spacing, const Margins &margins, const std::vector< std::shared_ptr< Widget >> &children)
 
virtual ~Layout1D ()
 
int GetSpacing () const
 
const MarginsGetMargins () const
 
void SetSpacing (int spacing)
 
void SetMargins (const Margins &margins)
 
Size CalcPreferredSize (const LayoutContext &context, const Constraints &constraints) const override
 
void Layout (const LayoutContext &context) override
 
void AddFixed (int size)
 Adds a fixed number of pixels after the previously added widget. More...
 
void AddStretch ()
 
- Public Member Functions inherited from open3d::visualization::gui::Widget
 Widget ()
 
 Widget (const std::vector< std::shared_ptr< Widget >> &children)
 
virtual ~Widget ()
 
virtual void AddChild (std::shared_ptr< Widget > child)
 
virtual const std::vector< std::shared_ptr< Widget > > GetChildren () const
 
virtual const RectGetFrame () const
 Returns the frame size in pixels. More...
 
virtual void SetFrame (const Rect &f)
 
virtual const ColorGetBackgroundColor () const
 
virtual bool IsDefaultBackgroundColor () const
 
virtual void SetBackgroundColor (const Color &color)
 
virtual bool IsVisible () const
 
virtual void SetVisible (bool vis)
 
virtual bool IsEnabled () const
 
virtual void SetEnabled (bool enabled)
 
virtual void SetTooltip (const char *text)
 
virtual const char * GetTooltip () const
 
virtual Size CalcMinimumSize (const LayoutContext &context) const
 
virtual DrawResult Draw (const DrawContext &context)
 
virtual EventResult Mouse (const MouseEvent &e)
 
virtual EventResult Key (const KeyEvent &e)
 
virtual DrawResult Tick (const TickEvent &e)
 

Static Public Member Functions

static void debug_PrintPreferredSizes (Layout1D *layout, const LayoutContext &context, const Constraints &constraints, int depth=0)
 

Protected Member Functions

int GetMinorAxisPreferredSize () const
 
void SetMinorAxisPreferredSize (int size)
 
MarginsGetMutableMargins ()
 
std::vector< std::shared_ptr< Widget > > GetVisibleChildren () const
 
- Protected Member Functions inherited from open3d::visualization::gui::Widget
void DrawImGuiPushEnabledState ()
 
void DrawImGuiPopEnabledState ()
 
void DrawImGuiTooltip ()
 

Additional Inherited Members

- Static Public Attributes inherited from open3d::visualization::gui::Widget
static constexpr int DIM_GROW = 10000
 

Detailed Description

Lays out widgets either horizontally or vertically. Base class for Vert and Horiz.

Member Enumeration Documentation

◆ Dir

Enumerator
VERT 
HORIZ 

Constructor & Destructor Documentation

◆ Layout1D()

open3d::visualization::gui::Layout1D::Layout1D ( Dir  dir,
int  spacing,
const Margins margins,
const std::vector< std::shared_ptr< Widget >> &  children 
)

Spacing is in pixels; see the comment in Margin(). 1em is typically a good value for spacing.

◆ ~Layout1D()

open3d::visualization::gui::Layout1D::~Layout1D ( )
virtual

Member Function Documentation

◆ AddFixed()

void open3d::visualization::gui::Layout1D::AddFixed ( int  size)

Adds a fixed number of pixels after the previously added widget.

◆ AddStretch()

void open3d::visualization::gui::Layout1D::AddStretch ( )

Adds a virtual widget that takes up as much space as possible. This is useful for centering widgets: { stretch, w1, w2, stretch } or for aligning widgets to one side or the other: { stretch, ok, cancel }.

◆ CalcPreferredSize()

Size open3d::visualization::gui::Layout1D::CalcPreferredSize ( const LayoutContext context,
const Constraints constraints 
) const
overridevirtual

◆ debug_PrintPreferredSizes()

void open3d::visualization::gui::Layout1D::debug_PrintPreferredSizes ( Layout1D layout,
const LayoutContext context,
const Constraints constraints,
int  depth = 0 
)
static

◆ GetMargins()

const Margins & open3d::visualization::gui::Layout1D::GetMargins ( ) const

◆ GetMinorAxisPreferredSize()

int open3d::visualization::gui::Layout1D::GetMinorAxisPreferredSize ( ) const
protected

◆ GetMutableMargins()

Margins & open3d::visualization::gui::Layout1D::GetMutableMargins ( )
protected

◆ GetSpacing()

int open3d::visualization::gui::Layout1D::GetSpacing ( ) const

◆ GetVisibleChildren()

std::vector< std::shared_ptr< Widget > > open3d::visualization::gui::Layout1D::GetVisibleChildren ( ) const
protected

◆ Layout()

void open3d::visualization::gui::Layout1D::Layout ( const LayoutContext context)
overridevirtual

◆ SetMargins()

void open3d::visualization::gui::Layout1D::SetMargins ( const Margins margins)

Sets margins. Need to signal a relayout after calling (unless it is before a layout that will happen, such as before adding as a child).

◆ SetMinorAxisPreferredSize()

void open3d::visualization::gui::Layout1D::SetMinorAxisPreferredSize ( int  size)
protected

◆ SetSpacing()

void open3d::visualization::gui::Layout1D::SetSpacing ( int  spacing)

Sets spacing. Need to signal a relayout after calling (unless it is before a layout that will happen, such as before adding as a child).


The documentation for this class was generated from the following files: