From 659adaf18762f9dbd4744e72f1bcc57df2e477c3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mikko=20Kein=C3=A4nen?= Date: Mon, 4 Oct 2010 21:30:12 +0300 Subject: [PATCH] Implementing class Executable based on EmuFrontObject (changes also on executable db table). --- doc/er.dia | Bin 4366 -> 4475 bytes doc/uml-data_objects.dia | Bin 3421 -> 3734 bytes src/dataobjects/executable.cpp | 63 ++++++++++++++++++++++++++++++++++++++-- src/dataobjects/executable.h | 24 +++++++++++++-- src/db/dbcreator.cpp | 7 ++--- 5 files changed, 86 insertions(+), 8 deletions(-) diff --git a/doc/er.dia b/doc/er.dia index 88b667c91c3e87ca26576587ffa8d00d30dc417c..2df0a3bc01435b0ba1965e49e5978219bfe3a5c5 100644 GIT binary patch literal 4475 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 N{|7)#S=)9y0RXF9&2s<% literal 4366 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 II7%`B0K0sKPXGV_ diff --git a/doc/uml-data_objects.dia b/doc/uml-data_objects.dia index 869fd38fca026681f635b9f9bbf61cc34b774d93..4e6b50ac349d6e1a26edb4cfba673802153666b1 100644 GIT binary patch literal 3734 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 IFFD!&0KDa&2><{9 diff --git a/src/dataobjects/executable.cpp b/src/dataobjects/executable.cpp index ce157c7..4b45a26 100644 --- a/src/dataobjects/executable.cpp +++ b/src/dataobjects/executable.cpp @@ -10,7 +10,7 @@ // (at your option) any later version. // // EmuFront is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of +// but WITHOUT ANY WARRANTY{} without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // @@ -18,7 +18,66 @@ // along with EmuFront. If not, see . #include "executable.h" +#include "setup.h" -Executable::Executable() +Executable::Executable() : EmuFrontObject() { } + +Executable::Executable(int id, QString name) + : EmuFrontObject(id, name) {} + +Executable::Executable(int id, QString name, QString executable, + QString options, Setup*, int type) + : EmuFrontObject(id, name), executable(executable), + options(options), setup(setup), type(type) +{} + +Executable::Executable(const Executable &e) + : EmuFrontObject(e.id, e.name), executable(e.executable), + options(e.options), type(e.type) +{ + Setup *s = e.setup; + setup = new Setup(*s); +} + +Executable::~Executable() +{ + delete setup; +} + +Executable& Executable::operator =(const Executable &e) { + if (this == &e) return *this; + id = e.id; + name = e.name; + executable = e.executable; + options = e.options; + type = e.type; + Setup *s = e.setup; + if (setup) delete setup; + setup = new Setup(*s); + return (*this); } + +QString Executable::getExecutable() const +{ return executable; } + +void Executable::setExecutable(QString e) +{ executable = e; } + +QString Executable::getOptions() const +{ return options; } + +void Executable::setOptions(QString o) +{ options = o; } + +Setup* Executable::getSetup() const +{ return setup; } + +void Executable::setSetup(Setup* s) +{ setup = s; } + +int Executable::getType() const +{ return type; } + +void Executable::setType(int t) +{ type = t; } diff --git a/src/dataobjects/executable.h b/src/dataobjects/executable.h index ef2a764..3d0a0ee 100644 --- a/src/dataobjects/executable.h +++ b/src/dataobjects/executable.h @@ -20,12 +20,32 @@ #ifndef EXECUTABLE_H #define EXECUTABLE_H -#include "emufrontfileobject.h" +#include "emufrontobject.h" -class Executable : public EmuFrontFileObject +class Setup; + +class Executable : public EmuFrontObject { public: Executable(); + Executable(int id, QString name); + Executable(int id, QString name, QString executable, QString options, Setup*, int type); + Executable(const Executable &); + ~Executable(); + Executable& operator =(const Executable &); + QString getExecutable() const; + void setExecutable(QString); + QString getOptions() const; + void setOptions(QString); + Setup* getSetup() const; + void setSetup(Setup*); + int getType() const; + void setType(int); +private: + QString executable; + QString options; + Setup *setup; + int type; }; #endif // EXECUTABLE_H diff --git a/src/db/dbcreator.cpp b/src/db/dbcreator.cpp index 8a7df69..60d2b50 100644 --- a/src/db/dbcreator.cpp +++ b/src/db/dbcreator.cpp @@ -92,10 +92,10 @@ bool DbCreator::createDB() ret = query.exec("CREATE TABLE IF NOT EXISTS executable " "(id INTEGER PRIMARY KEY, " "name TEXT, " + "executable TEXT, " "options TEXT, " "type INTEGER, " - "setupid INTEGER REFERENCES setup(id)," - "fileid INTEGER REFERENCES file(id))"); + "setupid INTEGER REFERENCES setup(id))"); /*qDebug() << "Creating TABLE filetype"; ret = query.exec("CREATE TABLE filetype IF NOT EXISTS" @@ -166,9 +166,8 @@ bool DbCreator::createDB() "BEGIN " " UPDATE platform SET platform.fileid=NULL WHERE platform.fileid = old.id;" " UPDATE mediatype SET mediatype.fileid=NULL WHERE mediatype.fileid = old.id;" - " UPDATE executable SET executable.fileid=NULL WHERE executable.fileid = old.id;" + " DELETE FROM mediaimagecontainer WHERE fileid = old.id;" " DELETE FROM mediaimagecontainer_mediaimage WHERE mediaimagecontainer_mediaimage.fileid = old.id;" - " DELETE FROM mediaimagecontainer WHERE mediaimagecontainer.fileid = old.id;" "END;" ); } -- 1.7.9.5