OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::GUI::GLCanvas3D::ToolbarHighlighter Struct Reference

#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/GLCanvas3D.hpp>

Collaboration diagram for Slic3r::GUI::GLCanvas3D::ToolbarHighlighter:

Public Member Functions

void set_timer_owner (wxEvtHandler *owner, int timerid=wxID_ANY)
void init (GLToolbarItem *toolbar_item, GLCanvas3D *canvas)
void blink ()
void invalidate ()

Public Attributes

bool m_render_arrow { false }
GLToolbarItem * m_toolbar_item { nullptr }

Private Attributes

GLCanvas3D * m_canvas { nullptr }
int m_blink_counter { 0 }
ToolbarHighlighterTimer m_timer

Detailed Description

Member Function Documentation

◆ blink()

void Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::blink ( )
12882{
12883 if (m_toolbar_item) {
12884 char state = m_toolbar_item->get_highlight();
12887 else
12889
12891 m_canvas->set_as_dirty();
12892 }
12893 else
12894 invalidate();
12895
12896 if ((++m_blink_counter) >= 11)
12897 invalidate();
12898}
@ HighlightedShown
Definition GLToolbar.hpp:105
@ HighlightedHidden
Definition GLToolbar.hpp:106
int m_blink_counter
Definition GLCanvas3D.hpp:890
void invalidate()
Definition GLCanvas3D.cpp:12869
GLToolbarItem * m_toolbar_item
Definition GLCanvas3D.hpp:887
GLCanvas3D * m_canvas
Definition GLCanvas3D.hpp:889
bool m_render_arrow
Definition GLCanvas3D.hpp:886

References blink(), Slic3r::GUI::GLToolbarItem::HighlightedHidden, Slic3r::GUI::GLToolbarItem::HighlightedShown, invalidate(), m_blink_counter, m_canvas, m_render_arrow, and m_toolbar_item.

Referenced by blink().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ init()

void Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::init ( GLToolbarItem * toolbar_item,
GLCanvas3D * canvas )
12857{
12858 if (m_timer.IsRunning())
12859 invalidate();
12860 if (!toolbar_item || !canvas)
12861 return;
12862
12863 m_timer.Start(300, false);
12864
12865 m_toolbar_item = toolbar_item;
12866 m_canvas = canvas;
12867}
ToolbarHighlighterTimer m_timer
Definition GLCanvas3D.hpp:891

References Slic3r::GUI::GLCanvas3D::GLCanvas3D(), init(), invalidate(), m_canvas, m_timer, and m_toolbar_item.

Referenced by init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ invalidate()

void Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::invalidate ( )
12870{
12871 m_timer.Stop();
12872
12873 if (m_toolbar_item)
12875
12876 m_toolbar_item = nullptr;
12877 m_blink_counter = 0;
12878 m_render_arrow = false;
12879}
@ NotHighlighted
Definition GLToolbar.hpp:108

References invalidate(), m_blink_counter, m_render_arrow, m_timer, m_toolbar_item, and Slic3r::GUI::GLToolbarItem::NotHighlighted.

Referenced by blink(), init(), and invalidate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_timer_owner()

void Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::set_timer_owner ( wxEvtHandler * owner,
int timerid = wxID_ANY )
inline
882{ m_timer.SetOwner(owner, timerid); }

References m_timer.

Member Data Documentation

◆ m_blink_counter

int Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::m_blink_counter { 0 }
private
890{ 0 };

Referenced by blink(), and invalidate().

◆ m_canvas

GLCanvas3D* Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::m_canvas { nullptr }
private
889{ nullptr };

Referenced by blink(), and init().

◆ m_render_arrow

bool Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::m_render_arrow { false }
886{ false };

Referenced by blink(), and invalidate().

◆ m_timer

ToolbarHighlighterTimer Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::m_timer
private

Referenced by init(), invalidate(), and set_timer_owner().

◆ m_toolbar_item

GLToolbarItem* Slic3r::GUI::GLCanvas3D::ToolbarHighlighter::m_toolbar_item { nullptr }
887{ nullptr };

Referenced by blink(), init(), and invalidate().


The documentation for this struct was generated from the following files:
  • /home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/GLCanvas3D.hpp
  • /home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/GLCanvas3D.cpp