OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::GUI::IMReturnToolbar Class Reference

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

Collaboration diagram for Slic3r::GUI::IMReturnToolbar:

Public Member Functions

 IMReturnToolbar ()
bool init ()
bool is_enabled () const
void set_enabled (bool enable)
ImTextureID get_return_texture_id ()

Private Attributes

bool m_enabled { false }
ImTextureID texture_id
GLTexture return_textrue

Detailed Description

Constructor & Destructor Documentation

◆ IMReturnToolbar()

Slic3r::GUI::IMReturnToolbar::IMReturnToolbar ( )
inline
83{}

Member Function Documentation

◆ get_return_texture_id()

ImTextureID Slic3r::GUI::IMReturnToolbar::get_return_texture_id ( )
inline
88{ return texture_id; }
ImTextureID texture_id
Definition IMToolbar.hpp:79

References texture_id.

◆ init()

bool Slic3r::GUI::IMReturnToolbar::init ( )
66{
67 bool compress = false;
68 GLint last_texture;
69 unsigned m_image_texture{ 0 };
70
71 std::string path = resources_dir() + "/images/";
72 std::string file_name;
73
74 file_name = path + "assemble_return.svg";
75
76 ThumbnailData data;
77 if (!get_data_from_svg(file_name, 20, data))
78 return false;
79
80 unsigned char* pixels = (unsigned char*)(&data.pixels[0]);
82 glsafe(::glGenTextures(1, &m_image_texture));
83 glsafe(::glBindTexture(GL_TEXTURE_2D, m_image_texture));
89 else
90 glsafe(::glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, data.width, data.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels));
91
92 // Store our identifier
93 texture_id = (ImTextureID)(intptr_t)m_image_texture;
94
95 // Restore state
96 glsafe(::glBindTexture(GL_TEXTURE_2D, last_texture));
97
98 return true;
99}
#define glsafe(cmd)
Definition OpenGLUtils.hpp:25
#define GL_TEXTURE_MIN_FILTER
Definition gl.h:1828
#define glPixelStorei
Definition gl.h:4451
GLAD_API_CALL int GLAD_GL_EXT_texture_compression_s3tc
Definition gl.h:2167
#define GL_LINEAR
Definition gl.h:930
#define glTexParameteri
Definition gl.h:4911
int GLint
Definition gl.h:2062
#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT
Definition gl.h:449
#define glGetIntegerv
Definition gl.h:3873
#define glTexImage2D
Definition gl.h:4895
#define GL_UNSIGNED_BYTE
Definition gl.h:1937
#define glGenTextures
Definition gl.h:3787
#define glBindTexture
Definition gl.h:3299
#define GL_RGBA
Definition gl.h:1493
#define GL_TEXTURE_MAG_FILTER
Definition gl.h:1822
#define GL_TEXTURE_2D
Definition gl.h:1739
#define GL_TEXTURE_BINDING_2D
Definition gl.h:1749
#define GL_UNPACK_ROW_LENGTH
Definition gl.h:1931
bool get_data_from_svg(const std::string &filename, unsigned int max_size_px, ThumbnailData &thumbnail_data)
Definition ImGuiWrapper.cpp:227
const std::string & resources_dir()
Definition utils.cpp:296

References Slic3r::GUI::get_data_from_svg(), GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, GL_LINEAR, GL_RGBA, GL_TEXTURE_2D, GL_TEXTURE_BINDING_2D, GL_TEXTURE_MAG_FILTER, GL_TEXTURE_MIN_FILTER, GL_UNPACK_ROW_LENGTH, GL_UNSIGNED_BYTE, GLAD_GL_EXT_texture_compression_s3tc, glBindTexture, glGenTextures, glGetIntegerv, glPixelStorei, glsafe, glTexImage2D, glTexParameteri, Slic3r::ThumbnailData::height, Slic3r::ThumbnailData::pixels, Slic3r::resources_dir(), texture_id, and Slic3r::ThumbnailData::width.

Here is the call graph for this function:

◆ is_enabled()

bool Slic3r::GUI::IMReturnToolbar::is_enabled ( ) const
inline
86{ return m_enabled; }
bool m_enabled
Definition IMToolbar.hpp:78

References m_enabled.

◆ set_enabled()

void Slic3r::GUI::IMReturnToolbar::set_enabled ( bool enable)
inline
87{ m_enabled = enable; }

References m_enabled.

Member Data Documentation

◆ m_enabled

bool Slic3r::GUI::IMReturnToolbar::m_enabled { false }
private
78{ false };

Referenced by is_enabled(), and set_enabled().

◆ return_textrue

GLTexture Slic3r::GUI::IMReturnToolbar::return_textrue
private

◆ texture_id

ImTextureID Slic3r::GUI::IMReturnToolbar::texture_id
private

Referenced by get_return_texture_id(), and init().


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