DbObjectDialog::~DbObjectDialog()
{
- // no need to explicitically delete widgets within a parented layout
+ // no need to explicitly delete widgets within a parented layout
// they are automatically parented and will be deleted
- // dbManager is also parented and will be implicitically deleted
+ // dbManager is also parented and will be implicitly deleted
// this must be deleted in an implementing class
//delete dbObject;
+ // hiddenColumn QList will be deleted implicitly, since it
+ // implements implicit data sharing
}
void DbObjectDialog::connectSignals()
{
dbManager->resetModel();
}
+
+void DbObjectDialog::hideColumns()
+{
+ foreach(int c, hiddenColumns)
+ objectList->hideColumn(c);
+}
DatabaseManager *dbManager;
QDialogButtonBox *buttonBox;
QTableView *objectList;
+ QList<int> hiddenColumns;
+ void hideColumns();
private:
bool deleteItem();
--- /dev/null
+#include <QtGui>
+#include "emufrontfileobjectdialog.h"
+#include "../db/dbemufrontfileobject.h"
+
+EmuFrontFileObjectDialog::EmuFrontFileObjectDialog(QWidget *parent) :
+ DbObjectDialog(parent)
+{
+}
+
+void EmuFrontFileObjectDialog::setColumnsHidden()
+{
+ hiddenColumns << DbEmuFrontFileObject::EmuFrontFileObject_Id;
+ hiddenColumns << DbEmuFrontFileObject::EmuFrontFileObject_FileCheckSum;
+ hiddenColumns << DbEmuFrontFileObject::EmuFrontFileObject_FileType;
+ hiddenColumns << DbEmuFrontFileObject::EmuFrontFileObject_FileUpdateTime;
+ hiddenColumns << DbEmuFrontFileObject::EmuFrontFileObject_FileId;
+ hiddenColumns << DbEmuFrontFileObject::EmuFrontFileObject_FileSize;
+}
--- /dev/null
+#ifndef EMUFRONTFILEOBJECTDIALOG_H
+#define EMUFRONTFILEOBJECTDIALOG_H
+
+#include "dbobjectdialog.h"
+
+class EmuFrontFileObjectDialog : public DbObjectDialog
+{
+ Q_OBJECT
+public:
+ explicit EmuFrontFileObjectDialog(QWidget *parent = 0);
+
+protected:
+ void setColumnsHidden();
+};
+
+#endif // EMUFRONTFILEOBJECTDIALOG_H
dbManager = new DbExecutable(this);
initDataTable();
initEditDialog();
- objectList->hideColumn(DbExecutable::Executable_Id);
- objectList->hideColumn(DbExecutable::Executable_TypeId);
- objectList->hideColumn(DbExecutable::Executable_SetupId);
+ hiddenColumns << DbExecutable::Executable_Id;
+ hiddenColumns << DbExecutable::Executable_TypeId;
+ hiddenColumns << DbExecutable::Executable_SetupId;
+ hideColumns();
connectSignals();
}
buttonBox->addButton(scanButton, QDialogButtonBox::ActionRole);
initEditDialog();
- objectList->hideColumn(DbFilePath::FilePath_Id);
- objectList->hideColumn(DbFilePath::FilePath_SetupId);
+ hiddenColumns << DbFilePath::FilePath_Id;
+ hiddenColumns << DbFilePath::FilePath_SetupId;
+ hideColumns();
// do not move to parent class:
connectSignals();
#include "mediatypenamedialog.h"
MediaTypeDialog::MediaTypeDialog(QWidget* parent)
- :DbObjectDialog(parent)
+ :EmuFrontFileObjectDialog(parent)
{
setWindowTitle(tr("Set media types"));
dbManager = new DbMediaType(this);
initDataTable();
initEditDialog();
- objectList->hideColumn(DbMediaType::EmuFrontFileObject_FileId);
-
// do not move to parent class:
connectSignals();
-
+ setColumnsHidden();
+ hideColumns();
}
MediaTypeDialog::~MediaTypeDialog()
#ifndef MEDIATYPEDIALOG_H
#define MEDIATYPEDIALOG_H
-#include "dbobjectdialog.h"
+#include "emufrontfileobjectdialog.h"
-class MediaTypeDialog : public DbObjectDialog
+class MediaTypeDialog : public EmuFrontFileObjectDialog
{
Q_OBJECT
#include "platformnamedialog.h"
PlatformDialog::PlatformDialog(QWidget *parent)
- : DbObjectDialog(parent)
+ : EmuFrontFileObjectDialog(parent)
{
setWindowTitle(tr("Set emulated platforms"));
dbManager = new DbPlatform(this);
initDataTable();
initEditDialog();
- objectList->hideColumn(DbPlatform::EmuFrontFileObject_Id);
-
+ setColumnsHidden();
+ hideColumns();
+
// do not move to parent class:
connectSignals();
}
#ifndef PLATFORMDIALOG_H
#define PLATFORMDIALOG_H
-#include "dbobjectdialog.h"
+#include "emufrontfileobjectdialog.h"
-class PlatformDialog : public DbObjectDialog
+class PlatformDialog : public EmuFrontFileObjectDialog
{
Q_OBJECT
dbManager = new DbSetup(this);
initDataTable();
initEditDialog();
- objectList->hideColumn(DbSetup::Setup_Id);
- objectList->hideColumn(DbSetup::Setup_PlatformId);
- objectList->hideColumn(DbSetup::Setup_MediaTypeId);
+ hiddenColumns << DbSetup::Setup_Id;
+ hiddenColumns << DbSetup::Setup_PlatformId;
+ hiddenColumns << DbSetup::Setup_MediaTypeId;
+ hideColumns();
connectSignals();
}
utils/unziphelper.h \
utils/emuhelper.h \
dialogs/listdialog.h \
- dialogs/emufrontinputdialog.h
+ dialogs/emufrontinputdialog.h \
+ dialogs/emufrontfileobjectdialog.h
SOURCES += main.cpp \
mainwindow.cpp \
db/databasemanager.cpp \
utils/unziphelper.cpp \
utils/emuhelper.cpp \
dialogs/listdialog.cpp \
- dialogs/emufrontinputdialog.cpp
+ dialogs/emufrontinputdialog.cpp \
+ dialogs/emufrontfileobjectdialog.cpp
OTHER_FILES +=
if (!dbMic) dbMic = new DbMediaImageContainer(this);
dbMic->filter(mtid, plfid);
micTable->setModel(dbMic->getDataModel());
+ micTable->hideColumn(DbMediaImageContainer::MIC_FileId);
+ micTable->hideColumn(DbMediaImageContainer::MIC_FileSize);
+ micTable->hideColumn(DbMediaImageContainer::MIC_FileCheckSum);
+ micTable->hideColumn(DbMediaImageContainer::MIC_FilePathId);
+ micTable->hideColumn(DbMediaImageContainer::MIC_FilePathName);
+ micTable->hideColumn(DbMediaImageContainer::MIC_SetupId);
+ micTable->hideColumn(DbMediaImageContainer::MIC_PlatformName);
+ micTable->hideColumn(DbMediaImageContainer::MIC_PlatformId);
+ micTable->hideColumn(DbMediaImageContainer::MIC_MediaTypeName);
+ micTable->hideColumn(DbMediaImageContainer::MIC_MediaTypeId);
micTable->resizeColumnsToContents();
platformSelectBox->updateDataModel();
mediaTypeSelectBox->updateDataModel();