connect(nameDialog, SIGNAL(dataObjectUpdated()), this, SLOT(updateData()));
}
+void DbObjectDialog::editObject()
+{
+ QModelIndex index = objectList->currentIndex();
+ if (!index.isValid())
+ return;
+ deleteCurrentObject();
+ dbObject = dbManager->getDataObjectFromModel(&index);
+ nameDialog->setDataObject(dbObject);
+ activateNameDialog();
+}
+
void DbObjectDialog::updateList() const
{
if (!dbManager) return;
// implementation specific, deletes current data object from memory
virtual void deleteCurrentObject();
virtual void addObject() =0;
- virtual void editObject() =0;
virtual bool deleteItem() = 0;
virtual void updateDb(const EmuFrontObject*) const = 0;
virtual void insertDb(const EmuFrontObject*) const = 0;
+ void editObject();
void connectSignals();
void activateNameDialog();
void initDataTable();
nameDialog = new MediaImagePathDialog(this, dynamic_cast<FilePathObject*>(dbObject));
dbManager = new DbMediaImagePath(this);
initDataTable();
+ // do not move to parent class:
connectSignals();
}
-void MediaImagePathMainDialog::connectSignals()
-{
-}
-
MediaImagePathMainDialog::~MediaImagePathMainDialog()
{
- delete dynamic_cast<FilePathObject*>(dbObject);
+ deleteCurrentObject();
}
int MediaImagePathMainDialog::deleteObject()
void MediaImagePathMainDialog::addObject()
{
-
-}
-
-void MediaImagePathMainDialog::editObject()
-{
-
+ deleteCurrentObject();
+ dbObject = new FilePathObject;
+ nameDialog->setDataObject(dbObject);
+ activateNameDialog();
}
void MediaImagePathMainDialog::deleteCurrentObject()
{
-
+ delete dynamic_cast<FilePathObject*>(dbObject);
}
void MediaImagePathMainDialog::updateDb(const EmuFrontObject *) const
virtual int deleteObject();
virtual void deleteCurrentObject();
virtual void addObject();
- virtual void editObject();
virtual bool deleteItem();
virtual void updateDb(const EmuFrontObject*) const;
virtual void insertDb(const EmuFrontObject*) const;
-private:
- void connectSignals();
};
#endif // MEDIAIMAGEPATHMAINDIALOG_H
MediaTypeDialog::~MediaTypeDialog()
{
- delete dynamic_cast<MediaType*>(dbObject);
+ deleteCurrentObject();
}
void MediaTypeDialog::addObject()
{
- delete dynamic_cast<MediaType*>(dbObject);
+ deleteCurrentObject();
dbObject = new MediaType;
nameDialog->setDataObject(dbObject);
activateNameDialog();
}
-void MediaTypeDialog::editObject()
-{
- qDebug() << "editObject called";
- QModelIndex index = objectList->currentIndex();
- if (!index.isValid())
- return;
- qDebug() << "we have a valid index";
- delete dbObject;
- dbObject = (dynamic_cast<DbMediaType*>(dbManager))->getDataObjectFromModel(&index);
- nameDialog->setDataObject(dbObject);
- activateNameDialog();
-}
-
void MediaTypeDialog::deleteCurrentObject()
{
delete dynamic_cast<MediaType*>(dbObject);
virtual int deleteObject();
virtual void deleteCurrentObject();
virtual void addObject();
- virtual void editObject();
virtual bool deleteItem();
virtual void updateDb(const EmuFrontObject*) const;
virtual void insertDb(const EmuFrontObject*) const;
#include "platformdialog.h"
#include "platformnamedialog.h"
-
-//QTextStream cout(stdout, QIODevice::WriteOnly);
-
PlatformDialog::PlatformDialog(QWidget *parent)
: DbObjectDialog(parent)
{
setWindowTitle(tr("Set emulated platforms"));
- //nameDialog = 0;
nameDialog = new PlatformNameDialog(this, dynamic_cast<Platform*>(dbObject));
dbManager = new DbPlatform(this);
initDataTable();
activateNameDialog();
}
-void PlatformDialog::editObject()
-{
- qDebug() << "editObject called_";
- QModelIndex index = objectList->currentIndex();
- if (!index.isValid())
- return;
- qDebug() << "we have a valid index";
- delete dbObject;
- dbObject = (dynamic_cast<DbPlatform*>(dbManager))->getDataObjectFromModel(&index);
- nameDialog->setDataObject(dbObject);
- activateNameDialog();
-}
-
void PlatformDialog::deleteCurrentObject()
{
delete dynamic_cast<Platform*>(dbObject);
}
-
void PlatformDialog::updateDb(const EmuFrontObject *ob) const
{
if (!ob) return;
virtual int deleteObject();
virtual void deleteCurrentObject();
virtual void addObject();
- virtual void editObject();
virtual bool deleteItem();
virtual void updateDb(const EmuFrontObject*) const;
virtual void insertDb(const EmuFrontObject*) const;