diff --git a/src/gui/control/text_ctrl.cpp b/src/gui/control/text_ctrl.cpp index c2996e3b..8a3d1a9d 100644 --- a/src/gui/control/text_ctrl.cpp +++ b/src/gui/control/text_ctrl.cpp @@ -74,6 +74,7 @@ void TextCtrl::setValue(const FakeTextValueP& value) { } void TextCtrl::onChangeSet() { + wxLogDebug(_("TextCtrl::onChangeSet %p"),this); DataEditor::onChangeSet(); // initialize if (viewers.empty()) { @@ -109,6 +110,8 @@ void TextCtrl::onInit() { FOR_EACH_EDITOR { e->onShow(true); } + // also init the DataEditor + DataEditor::onInit(); } void TextCtrl::onSize(wxSizeEvent&) { diff --git a/src/gui/set/window.cpp b/src/gui/set/window.cpp index 07db14d7..fabe04b1 100644 --- a/src/gui/set/window.cpp +++ b/src/gui/set/window.cpp @@ -437,14 +437,14 @@ void SetWindow::updateRecentSets() { void SetWindow::onFileNew(wxCommandEvent&) { - if (!askSaveAndContinue()) return; + if (isOnlyWithSet() && !askSaveAndContinue()) return; // new set? SetP new_set = new_set_window(this); if (new_set) setSet(new_set); } void SetWindow::onFileOpen(wxCommandEvent&) { - if (!askSaveAndContinue()) return; + if (isOnlyWithSet() && !askSaveAndContinue()) return; wxFileDialog dlg(this, _TITLE_("open set"), _(""), _(""), import_formats(), wxOPEN); if (dlg.ShowModal() == wxID_OK) { wxBusyCursor busy;