Pass database object to others using their constructors.

Prepare SQLiteDB class functions so it can be instantiated.
This commit is contained in:
codestation
2014-01-29 01:06:19 -04:30
parent a021c5db8f
commit f722c4579b
18 changed files with 224 additions and 130 deletions

View File

@@ -32,8 +32,8 @@
#include <vitamtp.h>
BackupManagerForm::BackupManagerForm(QWidget *parent) :
QWidget(parent),
BackupManagerForm::BackupManagerForm(Database *db, QWidget *parent) :
QDialog(parent), m_db(db),
ui(new Ui::BackupManagerForm)
{
ui->setupUi(this);
@@ -64,11 +64,11 @@ void BackupManagerForm::removeEntry(BackupItem *item)
return;
}
QMutexLocker locker(&db->mutex);
QMutexLocker locker(&m_db->mutex);
int parent_ohfi = db->getParentId(item->ohfi);
removeRecursively(db->getAbsolutePath(item->ohfi));
db->deleteEntry(item->ohfi);
int parent_ohfi = m_db->getParentId(item->ohfi);
removeRecursively(m_db->getAbsolutePath(item->ohfi));
m_db->deleteEntry(item->ohfi);
for(int i = 0; i < ui->tableWidget->rowCount(); ++i) {
BackupItem *iter_item = static_cast<BackupItem *>(ui->tableWidget->cellWidget(i, 0));
@@ -79,7 +79,7 @@ void BackupManagerForm::removeEntry(BackupItem *item)
}
if(parent_ohfi > 0) {
setBackupUsage(db->getObjectSize(parent_ohfi));
setBackupUsage(m_db->getObjectSize(parent_ohfi));
}
}
@@ -141,17 +141,17 @@ void BackupManagerForm::loadBackupListing(int index)
sys_dir = true;
}
db->mutex.lock();
m_db->mutex.lock();
// get the item list
metadata_t *meta = NULL;
int row_count = db->getObjectMetadatas(ohfi, &meta);
int row_count = m_db->getObjectMetadatas(ohfi, &meta);
ui->tableWidget->setRowCount(row_count);
// exit if there aren't any items
if(row_count == 0) {
setBackupUsage(0);
db->mutex.unlock();
m_db->mutex.unlock();
return;
}
@@ -163,8 +163,8 @@ void BackupManagerForm::loadBackupListing(int index)
#else
horiz_header->setResizeMode(QHeaderView::Stretch);
#endif
setBackupUsage(db->getObjectSize(ohfi));
QString path = db->getAbsolutePath(ohfi);
setBackupUsage(m_db->getObjectSize(ohfi));
QString path = m_db->getAbsolutePath(ohfi);
QList<BackupItem *> item_list;
while(meta) {
@@ -228,7 +228,7 @@ void BackupManagerForm::loadBackupListing(int index)
}
vert_header->setUpdatesEnabled(true);
db->mutex.unlock();
m_db->mutex.unlock();
// apply filter
this->on_filterLineEdit_textChanged(ui->filterLineEdit->text());

View File

@@ -20,24 +20,24 @@
#ifndef BACKUPMANAGERFORM_H
#define BACKUPMANAGERFORM_H
#include "qlistdb.h"
#include "database.h"
#include "backupitem.h"
#include <QWidget>
#include <QDialog>
namespace Ui {
class BackupManagerForm;
}
class BackupManagerForm : public QWidget
class BackupManagerForm : public QDialog
{
Q_OBJECT
public:
explicit BackupManagerForm(QWidget *parent = 0);
explicit BackupManagerForm(Database *db, QWidget *parent = 0);
~BackupManagerForm();
QListDB *db;
Database *m_db;
private:
void setupForm();

View File

@@ -83,6 +83,7 @@ void ConfigWidget::setDefaultData()
ui->metadataCheck->setChecked(settings.value("skipMetadata", false).toBool());
ui->usbCheck->setChecked(settings.value("disableUSB", false).toBool());
ui->wifiCheck->setChecked(settings.value("disableWireless", false).toBool());
ui->databaseSelect->setCurrentIndex(settings.value("useMemoryStorage", true).toBool() ? 0 : 1);
}
ConfigWidget::~ConfigWidget()
@@ -154,6 +155,7 @@ void ConfigWidget::accept()
settings.setValue("skipMetadata", ui->metadataCheck->isChecked());
settings.setValue("disableUSB", ui->usbCheck->isChecked());
settings.setValue("disableWireless", ui->wifiCheck->isChecked());
settings.setValue("useMemoryStorage", ui->databaseSelect->currentIndex() == 0);
settings.sync();
done(Accepted);

View File

@@ -282,15 +282,17 @@
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="comboBox">
<property name="enabled">
<bool>false</bool>
</property>
<widget class="QComboBox" name="databaseSelect">
<item>
<property name="text">
<string>In Memory</string>
</property>
</item>
<item>
<property name="text">
<string>SQLite</string>
</property>
</item>
</widget>
</item>
</layout>