+// -*- C++ -*-
/**
- * \file Dialog.cpp
+ * \file DialogView.cpp
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
- * \author Angus Leeming
+ * \author Abdelrazak Younes
*
* Full author contact details are available in file CREDITS.
*/
#include "DialogView.h"
-#include "GuiView.h"
-#include "qt_helpers.h"
-
-#include <QCloseEvent>
-#include <QShowEvent>
-
namespace lyx {
namespace frontend {
-DialogView::DialogView(GuiView & lv, std::string const & name)
- : QDialog(&lv), Dialog(lv, name)
-{}
+DialogView::DialogView(GuiView & lv, QString const & name, QString const & title)
+ : QDialog(&lv), Dialog(lv, name, "LyX: " + title)
+{
+ connect(&lv, SIGNAL(bufferViewChanged()),
+ this, SLOT(onBufferViewChanged()));
+
+ // remove question marks from Windows dialogs
+ setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
+}
+
+
+void DialogView::closeEvent(QCloseEvent * ev)
+{
+ clearParams();
+ Dialog::disconnect();
+ ev->accept();
+}
-void DialogView::setViewTitle(docstring const & title)
+void DialogView::hideEvent(QHideEvent * ev)
{
- setWindowTitle("LyX: " + toqstr(title));
+ if (!ev->spontaneous()) {
+ clearParams();
+ Dialog::disconnect();
+ ev->accept();
+ }
}
} // namespace frontend
} // namespace lyx
-#include "DialogView_moc.cpp"
+#include "moc_DialogView.cpp"