diff options
Diffstat (limited to 'src/gui_qt.cc')
| -rw-r--r-- | src/gui_qt.cc | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/gui_qt.cc b/src/gui_qt.cc index ec67527..3e7c696 100644 --- a/src/gui_qt.cc +++ b/src/gui_qt.cc @@ -857,10 +857,10 @@ public: void add_file(std::string const& id, std::string const& label, std::string const& value, std::string const& description, - bool must_exist, + uint8_t flags, std::vector<Filter> const& filter) override { values_.emplace_back(new FileValue(id, label, description, value, - must_exist, filter)); + flags, filter)); } std::string get_string(std::string const& id) const override { @@ -965,15 +965,15 @@ protected: struct FileValue : public Value { std::string value_; - bool must_exist_; + uint8_t flags_; std::vector<Filter> filter_; FileValue(std::string const& id, std::string const& label, std::string const& description, std::string const& value, - bool must_exist, std::vector<Filter> const& filter) + uint8_t flags, std::vector<Filter> const& filter) : Value(FILE, id, label, description), value_(value), - must_exist_(must_exist), filter_(filter) { + flags_(flags), filter_(filter) { } }; @@ -1112,7 +1112,7 @@ protected: } filter.append(')'); } - if (value->must_exist_) { + if (!(value->flags_ & FILE_SAVE)) { auto file = QFileDialog::getOpenFileName( dialog_, QString::fromStdString(value->label_), value->edit_->text(), filter); @@ -1591,6 +1591,10 @@ GuiForm* GuiForm::create(std::string const& title, } // static +uint8_t const GuiForm::FILE_OPEN = 0; +uint8_t const GuiForm::FILE_SAVE = 1; + +// static GuiFormApply* GuiFormApply::create(std::string const& title, std::string const& text, std::string const& apply_button, |
