diff options
author | David Kocik <kocikdav@gmail.com> | 2020-01-03 12:33:44 +0300 |
---|---|---|
committer | David Kocik <kocikdav@gmail.com> | 2020-01-21 15:29:39 +0300 |
commit | 53f04b4bfdddb6fbc533ffe9cfcafeda1243aea7 (patch) | |
tree | 8fa98e9f609630ba2b0ac0970e70894b73ef48c9 /src/slic3r/GUI/RemovableDriveManager.cpp | |
parent | 7e97576e564a32ac00d9432ca5df71c503458f4e (diff) |
callback for showing action buttons when device is connected/disconnected
Diffstat (limited to 'src/slic3r/GUI/RemovableDriveManager.cpp')
-rw-r--r-- | src/slic3r/GUI/RemovableDriveManager.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/slic3r/GUI/RemovableDriveManager.cpp b/src/slic3r/GUI/RemovableDriveManager.cpp index 99da30ed8..74197d677 100644 --- a/src/slic3r/GUI/RemovableDriveManager.cpp +++ b/src/slic3r/GUI/RemovableDriveManager.cpp @@ -414,7 +414,8 @@ RemovableDriveManager::RemovableDriveManager(): m_last_save_name(""), m_last_save_path_verified(false), m_is_writing(false), - m_did_eject(false) + m_did_eject(false), + m_plater_ready_to_slice(true) #if __APPLE__ , m_rdmmm(new RDMMMWrapper()) #endif @@ -495,6 +496,10 @@ std::vector<DriveData> RemovableDriveManager::get_all_drives() } void RemovableDriveManager::check_and_notify() { + if(m_drive_count_changed_callback) + { + m_drive_count_changed_callback(m_plater_ready_to_slice); + } if(m_callbacks.size() != 0 && m_drives_count > m_current_drives.size() && m_last_save_path_verified && !is_drive_mounted(m_last_save_path)) { for (auto it = m_callbacks.begin(); it != m_callbacks.end(); ++it) @@ -507,10 +512,18 @@ void RemovableDriveManager::add_remove_callback(std::function<void()> callback) { m_callbacks.push_back(callback); } -void RemovableDriveManager::erase_callbacks() +void RemovableDriveManager::erase_callbacks() { m_callbacks.clear(); } +void RemovableDriveManager::set_drive_count_changed_callback(std::function<void(const bool)> callback) +{ + m_drive_count_changed_callback = callback; +} +void RemovableDriveManager::set_plater_ready_to_slice(bool b) +{ + m_plater_ready_to_slice = b; +} void RemovableDriveManager::set_last_save_path(const std::string& path) { m_last_save_path_verified = false; |