Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/prusa3d/PrusaSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'xs/src/slic3r/AppControllerWx.cpp')
-rw-r--r--xs/src/slic3r/AppControllerWx.cpp57
1 files changed, 23 insertions, 34 deletions
diff --git a/xs/src/slic3r/AppControllerWx.cpp b/xs/src/slic3r/AppControllerWx.cpp
index 9f52e52d2..25cd739f3 100644
--- a/xs/src/slic3r/AppControllerWx.cpp
+++ b/xs/src/slic3r/AppControllerWx.cpp
@@ -25,40 +25,43 @@
namespace Slic3r {
-bool AppControllerBoilerplate::supports_asynch() const
+bool AppControllerGui::supports_asynch() const
{
return true;
}
-void AppControllerBoilerplate::process_events()
+void AppControllerGui::process_events()
{
wxYieldIfNeeded();
}
-AppControllerBoilerplate::PathList
-AppControllerBoilerplate::query_destination_paths(
+FilePathList AppControllerGui::query_destination_paths(
const std::string &title,
- const std::string &extensions) const
+ const std::string &extensions,
+ const std::string &/*functionid*/,
+ const std::string& hint) const
{
wxFileDialog dlg(wxTheApp->GetTopWindow(), _(title) );
dlg.SetWildcard(extensions);
- dlg.ShowModal();
+ dlg.SetFilename(hint);
- wxArrayString paths;
- dlg.GetPaths(paths);
+ FilePathList ret;
- PathList ret(paths.size(), "");
- for(auto& p : paths) ret.push_back(p.ToStdString());
+ if(dlg.ShowModal() == wxID_OK) {
+ wxArrayString paths;
+ dlg.GetPaths(paths);
+ for(auto& p : paths) ret.push_back(p.ToStdString());
+ }
return ret;
}
-AppControllerBoilerplate::Path
-AppControllerBoilerplate::query_destination_path(
+FilePath AppControllerGui::query_destination_path(
const std::string &title,
const std::string &extensions,
+ const std::string &/*functionid*/,
const std::string& hint) const
{
wxFileDialog dlg(wxTheApp->GetTopWindow(), _(title) );
@@ -66,16 +69,16 @@ AppControllerBoilerplate::query_destination_path(
dlg.SetFilename(hint);
- Path ret;
+ FilePath ret;
if(dlg.ShowModal() == wxID_OK) {
- ret = Path(dlg.GetPath());
+ ret = FilePath(dlg.GetPath());
}
return ret;
}
-bool AppControllerBoilerplate::report_issue(IssueType issuetype,
+bool AppControllerGui::report_issue(IssueType issuetype,
const std::string &description,
const std::string &brief)
{
@@ -93,13 +96,6 @@ bool AppControllerBoilerplate::report_issue(IssueType issuetype,
return ret != wxCANCEL;
}
-bool AppControllerBoilerplate::report_issue(
- AppControllerBoilerplate::IssueType issuetype,
- const std::string &description)
-{
- return report_issue(issuetype, description, std::string());
-}
-
wxDEFINE_EVENT(PROGRESS_STATUS_UPDATE_EVENT, wxCommandEvent);
struct Zipper::Impl {
@@ -235,8 +231,7 @@ public:
};
}
-AppControllerBoilerplate::ProgresIndicatorPtr
-AppControllerBoilerplate::create_progress_indicator(
+ProgresIndicatorPtr AppControllerGui::create_progress_indicator(
unsigned statenum,
const std::string& title,
const std::string& firstmsg) const
@@ -251,20 +246,13 @@ AppControllerBoilerplate::create_progress_indicator(
return pri;
}
-AppControllerBoilerplate::ProgresIndicatorPtr
-AppControllerBoilerplate::create_progress_indicator(
- unsigned statenum, const std::string &title) const
-{
- return create_progress_indicator(statenum, title, std::string());
-}
-
namespace {
class Wrapper: public ProgressIndicator, public wxEvtHandler {
ProgressStatusBar *m_sbar;
using Base = ProgressIndicator;
wxString m_message;
- AppControllerBoilerplate& m_ctl;
+ AppControllerBase& m_ctl;
void showProgress(bool show = true) {
m_sbar->show_progress(show);
@@ -288,7 +276,7 @@ class Wrapper: public ProgressIndicator, public wxEvtHandler {
public:
inline Wrapper(ProgressStatusBar *sbar,
- AppControllerBoilerplate& ctl):
+ AppControllerBase& ctl):
m_sbar(sbar), m_ctl(ctl)
{
Base::max(static_cast<float>(m_sbar->get_range()));
@@ -344,7 +332,8 @@ public:
void AppController::set_global_progress_indicator(ProgressStatusBar *prsb)
{
if(prsb) {
- global_progress_indicator(std::make_shared<Wrapper>(prsb, *this));
+ auto ctl = GUI::get_appctl();
+ ctl->global_progress_indicator(std::make_shared<Wrapper>(prsb, *ctl));
}
}