EmuFrontObject *dbObject;
DatabaseManager *dbManager;
QDialogButtonBox *buttonBox;
+ QTableView *objectList;
private:
bool deleteItem();
void editObject();
void activateNameDialog();
bool confirmDelete(QString name, int numRefs);
- QTableView *objectList;
void setButtonsEnabled(bool);
void layout();
void disableSelection();
void MediaImagePathMainDialog::connectSignals()
{
DbObjectDialog::connectSignals();
- connect(scanButton, SIGNAL(clicked()), this, SLOT(scanFilePath()));
+ connect(scanButton, SIGNAL(clicked()), this, SLOT(beginScanFilePath()));
}
-void MediaImagePathMainDialog::scanFilePath()
+void MediaImagePathMainDialog::beginScanFilePath()
{
qDebug() << "Scan file path requested";
+ QModelIndex index = objectList->currentIndex();
+ if (!index.isValid()) return;
+ EmuFrontObject *ob = dbManager->getDataObjectFromModel(&index);
+ if (!ob) return;
+ FilePathObject *fpo = dynamic_cast<FilePathObject*>(ob);
+ try
+ {
+ scanFilePath(fpo->getName());
+ }
+ catch (QString s)
+ {
+ QMessageBox::warning(this, tr("Warning"), s, QMessageBox::Ok);
+ }
+}
+
+void MediaImagePathMainDialog::scanFilePath(const QString fp)
+{
+ qDebug() << "Will scan file path " << fp;
+ QDir dir(fp);
+ if (!dir.exists() || !dir.isReadable()) throw QString(tr("Directory %1 doesn't exists or isn't readable!").arg(fp));
+ throw QString("test");
}
EmuFrontObject* MediaImagePathMainDialog::createObject()