◆ bind()
| void Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::bind |
( |
int | id, |
|
|
wxWindow * | window, |
|
|
const std::string & | plugin_key ) |
|
inline |
166 {
167 std::lock_guard<std::mutex> lk(
m_mtx);
170 }
std::mutex m_mtx
Definition PluginHostUi.cpp:234
std::unordered_map< int, std::string > m_owners
Definition PluginHostUi.cpp:236
std::unordered_map< int, wxWindow * > m_resources
Definition PluginHostUi.cpp:235
References m_mtx, m_owners, and m_resources.
◆ bind_callback()
| void Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::bind_callback |
( |
const CallablePtr & | callback, |
|
|
const std::string & | plugin_key ) |
|
inline |
211 {
212 if (!callback)
213 return;
214 std::lock_guard<std::mutex> lk(
m_mtx);
216 }
std::unordered_map< std::string, std::vector< std::weak_ptr< GilSafeCallable > > > m_callbacks
Definition PluginHostUi.cpp:237
References m_callbacks, and m_mtx.
◆ get_as()
template<typename T>
| T * Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::get_as |
( |
int | id | ) |
|
|
inline |
180 {
181 std::lock_guard<std::mutex> lk(
m_mtx);
184 return nullptr;
185 return dynamic_cast<T*>(it->second);
186 }
References m_mtx, and m_resources.
◆ instance()
| UiRegistry & Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::instance |
( |
| ) |
|
|
inlinestatic |
155 {
156 static UiRegistry r;
157 return r;
158 }
Referenced by Slic3r::anonymous_namespace{PluginHostUi.cpp}::handle_close(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::handle_post(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::handle_show(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::plater_notification(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::progress_close(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::progress_is_open(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::progress_pulse(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::progress_start_pulse(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::progress_stop_pulse(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::progress_update(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::ui_create_dock_panel(), Slic3r::anonymous_namespace{PluginHostUi.cpp}::ui_create_progress_dialog(), and Slic3r::anonymous_namespace{PluginHostUi.cpp}::ui_create_window().
◆ is_open()
| bool Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::is_open |
( |
int | id | ) |
|
|
inline |
◆ remove()
| void Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::remove |
( |
int | id | ) |
|
|
inline |
◆ reserve_id()
| int Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::reserve_id |
( |
| ) |
|
|
inline |
161 {
162 std::lock_guard<std::mutex> lk(
m_mtx);
164 }
int m_next_id
Definition PluginHostUi.cpp:238
References m_mtx, and m_next_id.
◆ take_callbacks_for_plugin()
| std::vector< CallablePtr > Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::take_callbacks_for_plugin |
( |
const std::string & | plugin_key | ) |
|
|
inline |
218 {
219 std::lock_guard<std::mutex> lk(
m_mtx);
222 return {};
223 std::vector<CallablePtr> callbacks;
224 callbacks.reserve(it->second.size());
225 for (const std::weak_ptr<GilSafeCallable>& weak_callback : it->second) {
226 if (auto callback = weak_callback.lock())
227 callbacks.push_back(std::move(callback));
228 }
230 return callbacks;
231 }
References m_callbacks, and m_mtx.
◆ take_for_plugin()
| std::vector< wxWindow * > Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::take_for_plugin |
( |
const std::string & | plugin_key | ) |
|
|
inline |
193 {
194 std::lock_guard<std::mutex> lk(
m_mtx);
195 std::vector<wxWindow*> out;
197 if (it->second == plugin_key) {
200 out.push_back(rit->second);
202 }
204 } else {
205 ++it;
206 }
207 }
208 return out;
209 }
References m_mtx, m_owners, and m_resources.
◆ m_callbacks
| std::unordered_map<std::string, std::vector<std::weak_ptr<GilSafeCallable> > > Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::m_callbacks |
|
private |
◆ m_mtx
| std::mutex Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::m_mtx |
|
private |
◆ m_next_id
| int Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::m_next_id {1} |
|
private |
◆ m_owners
| std::unordered_map<int, std::string> Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::m_owners |
|
private |
◆ m_resources
| std::unordered_map<int, wxWindow*> Slic3r::anonymous_namespace{PluginHostUi.cpp}::UiRegistry::m_resources |
|
private |
The documentation for this class was generated from the following file: