Added xdxf dict downloader
[mdictionary] / src / plugins / xdxf / XdxfDialog.cpp
index e4ca1bf..6949e9a 100644 (file)
@@ -54,6 +54,9 @@ XdxfDialog::XdxfDialog(XdxfPlugin *plugin,
     if(type == New) {
         connect(browseButton, SIGNAL(clicked()),
                 this, SLOT(selectFile()));
+
+        connect(downloadButton, SIGNAL(clicked()),
+                this, SLOT(downloadFile()));
     }
 
     connect(confirmButton, SIGNAL(clicked()),
@@ -74,11 +77,21 @@ void XdxfDialog::initializeUI() {
         setWindowTitle(tr("Add new XDXF dictionary"));
 
         browseLayout = new QHBoxLayout;
+
+        QHBoxLayout* buttonLayout = new QHBoxLayout;
         browseButton = new QPushButton(tr("Browse"));
+        browseButton->setMaximumWidth(150);
+
+        downloadButton = new QPushButton(tr("Download"));
+        downloadButton->setMaximumWidth(150);
+
         infoLabel->setText(tr("Dictionary file: not selected"));
 
         browseLayout->addWidget(infoLabel, 0, Qt::AlignLeft);
-        browseLayout->addWidget(browseButton, 0, Qt::AlignRight);
+
+        browseLayout->addLayout(buttonLayout);
+        buttonLayout->addWidget(browseButton);
+        buttonLayout->addWidget(downloadButton);
 
         mainVerticalLayout->addLayout(browseLayout);
     }
@@ -220,6 +233,10 @@ void XdxfDialog::selectFile() {
     }
 }
 
+void XdxfDialog::downloadFile() {
+    XdxfPlugin::dictDownloader.download(this);
+}
+
 void XdxfDialog::saveSettings() {
     _settings = new Settings;
     if(plugin) {