New xdxf dialog, one which provides methods to add new or change setting of existing...
[mdictionary] / src / plugins / xdxf / XdxfDictDialog.cpp
index 2deb306..f1bcad2 100644 (file)
@@ -27,6 +27,8 @@
 #include "XdxfLoadDialog.h"
 #include "XdxfSettingsDialog.h"
 #include "xdxfplugin.h"
+#include "XdxfDialog.h"
+#include <QDebug>
 
 XdxfDictDialog::XdxfDictDialog(XdxfPlugin *plugin, QObject *parent) :
     DictDialog(parent) {
@@ -34,9 +36,25 @@ XdxfDictDialog::XdxfDictDialog(XdxfPlugin *plugin, QObject *parent) :
 }
 
 Settings* XdxfDictDialog::addNewDictionary(QWidget *parent) {
-    return XdxfLoadDialog::getSettings(parent);
+    qDebug()<<parent;
+    XdxfDialog d(0, XdxfDialog::New, parent);
+
+    connect(&d, SIGNAL(notify(Notify::NotifyType,QString, QWidget*)),
+            this, SIGNAL(notify(Notify::NotifyType,QString, QWidget*)));
+
+    if(d.exec() == QDialog::Accepted) {
+        return d.getSettings();
+    }
+    return 0;
 }
 
 void XdxfDictDialog::changeSettings(QWidget * parent) {
-    XdxfSettingsDialog::getSettings(plugin, parent);
+    XdxfDialog d(plugin, XdxfDialog::Change, parent);
+
+    connect(&d, SIGNAL(notify(Notify::NotifyType,QString, QWidget*)),
+            this, SIGNAL(notify(Notify::NotifyType,QString, QWidget*)));
+
+    if(d.exec() == QDialog::Accepted) {
+        plugin->setSettings(d.getSettings());
+    }
 }