15 MRVIEWER_API
virtual void draw(
float height,
float scaling )
override;
28 MRVIEWER_API
virtual void drawSceneContextMenu_(
const std::vector<std::shared_ptr<Object>>& selected,
const std::string& uniqueStr )
override;
33 MRVIEWER_API
virtual bool drawObject_(
Object&
object,
const std::string& uniqueStr,
int depth )
override;
37 MRVIEWER_API
virtual const char* getSceneItemIconByTypeName_(
const std::string& typeName )
const;
39 bool drawTreeOpenedState_(
Object&
object,
bool leaf,
const std::string& uniqueStr,
int depth );
40 void drawObjectLine_(
Object&
object,
const std::string& uniqueStr,
bool opened );
41 void drawEyeButton_(
Object&
object,
const std::string& uniqueStr,
bool frameHovered );
43 void drawHierarhyLine_(
const Vector2f& startScreenPos,
int depth,
bool skipped );
47 float screenPosY{ 0.0f };
51 std::vector<LastDepthInfo> lastDrawnSibling_;
52 int currentElementId_{ 0 };
53 RibbonMenu* ribbonMenu_ =
nullptr;
54 bool closeContextOnChange_ =
true;
named object in the data model
Definition MRObject.h:60
class for drawing a list of scene objects in RibbonMenu style
Definition MRRibbonSceneObjectsListDrawer.h:13
virtual MRVIEWER_API void drawSceneContextMenu_(const std::vector< std::shared_ptr< Object > > &selected, const std::string &uniqueStr) override
virtual MRVIEWER_API void drawCustomObjectPrefixInScene_(const Object &obj, bool opened) override
MRVIEWER_API void initRibbonMenu(RibbonMenu *ribbonMenu)
bool getCloseContextOnChange()
get flag closing scene context menu on any change
Definition MRRibbonSceneObjectsListDrawer.h:22
void setCloseContextOnChange(bool deselect)
set closing scene context menu on any change
Definition MRRibbonSceneObjectsListDrawer.h:20
virtual MRVIEWER_API bool drawSkippedObject_(Object &object, const std::string &uniqueStr, int depth) override
draw dummy container for skipped object
virtual MRVIEWER_API bool drawObject_(Object &object, const std::string &uniqueStr, int depth) override
override this to customize whole object line
Signal< void()> onDrawContextSignal
this signal is emitted each frame inside scene context window
Definition MRRibbonSceneObjectsListDrawer.h:25
virtual MRVIEWER_API void draw(float height, float scaling) override
virtual MRVIEWER_API std::string objectLineStrId_(const Object &object, const std::string &uniqueStr) override
virtual MRVIEWER_API bool collapsingHeader_(const std::string &uniqueName, ImGuiTreeNodeFlags flags) override
override this to customize CollapsingHeader draw
class for drawing a list of scene objects (and handling interaction with it)
Definition MRSceneObjectsListDrawer.h:16
int ImGuiTreeNodeFlags
Definition MRSceneObjectsListDrawer.h:72
Definition MRCameraOrientationPlugin.h:8