]> Some of my projects - localmylist.git/commitdiff
Add script "constructors" for database structs.
authorAPTX <marek321@gmail.com>
Sun, 15 Jul 2012 23:00:07 +0000 (01:00 +0200)
committerAPTX <marek321@gmail.com>
Sun, 15 Jul 2012 23:00:07 +0000 (01:00 +0200)
localmylist/database.h
localmylist/scriptable.cpp
localmylist/scriptable.h

index e605a51e08f1ab47e04561bc14d71a0989292f9d..907918325bc5bff4a620a710033702b103d03b5f 100644 (file)
@@ -245,37 +245,37 @@ public slots:
        bool setConfig(const QString &key, const QVariant &value);
 
        int isKnownFile(const QByteArray &ed2k, qint64 size);
-       bool addFileLocation(const FileLocation &fileLocation);
-       bool setFileLocation(const FileLocation &fileLocation);
+       bool addFileLocation(const LocalMyList::FileLocation &fileLocation);
+       bool setFileLocation(const LocalMyList::FileLocation &fileLocation);
 
        LocalMyList::Anime getAnime(int aid);
        LocalMyList::Episode getEpisode(int eid);
        LocalMyList::File getFile(int fid);
        LocalMyList::File getFileByPath(const QString &path);
 
-       bool setAnime(const Anime &anime);
-       bool setEpisode(const Episode &episode);
-       bool setFile(const File &file);
+       bool setAnime(const LocalMyList::Anime &anime);
+       bool setEpisode(const LocalMyList::Episode &episode);
+       bool setFile(const LocalMyList::File &file);
 
-       bool addTitle(const AnimeTitle &title);
-       bool addAnime(const Anime &anime);
-       bool addEpisode(const Episode &episode);
-       bool addFile(const File &file);
-       bool addFileEpisodeRel(const FileEpisodeRel &fileEpisodeRel);
+       bool addTitle(const LocalMyList::AnimeTitle &title);
+       bool addAnime(const LocalMyList::Anime &anime);
+       bool addEpisode(const LocalMyList::Episode &episode);
+       bool addFile(const LocalMyList::File &file);
+       bool addFileEpisodeRel(const LocalMyList::FileEpisodeRel &fileEpisodeRel);
 
-       bool addUnknownFile(const UnknownFile &file);
+       bool addUnknownFile(const LocalMyList::UnknownFile &file);
        UnknownFile getUnknownFile(const QByteArray &ed2k, qint64 size);
        UnknownFile getUnknownFileByPath(const QString &path);
        bool removeUnknownFile(const QByteArray &ed2k, qint64 size);
 
-       bool addRequest(const PendingRequest &request);
+       bool addRequest(const LocalMyList::PendingRequest &request);
        QList<PendingRequest> getRequestBatch(int limit = 10);
-       bool clearRequest(const PendingRequest &request);
+       bool clearRequest(const LocalMyList::PendingRequest &request);
 
-       bool addPendingMyListUpdate(const PendingMyListUpdate &request);
+       bool addPendingMyListUpdate(const LocalMyList::PendingMyListUpdate &request);
        LocalMyList::PendingMyListUpdate getPendingMyListUpdate(qint64 updateId);
        QList<PendingMyListUpdate> getPendingMyListUpdateBatch(int limit = 10);
-       bool clearPendingMyListUpdate(const PendingMyListUpdate &request);
+       bool clearPendingMyListUpdate(const LocalMyList::PendingMyListUpdate &request);
 
        QStringList getWatchedDirectories(int hostId);
 
index f32dbbcfb272b4fcbbbc2e875923f4e655c1384c..420b0f8763b8df3d27181d0a6cae1d173d142d10 100644 (file)
@@ -9,36 +9,47 @@ void registerTypes(QScriptEngine *engine)
        Scriptable::Anime *AnimePrototype = new Scriptable::Anime();
        engine->setDefaultPrototype(qMetaTypeId<Anime>(), engine->newQObject(AnimePrototype));
        engine->setDefaultPrototype(qMetaTypeId<Anime*>(), engine->newQObject(AnimePrototype));
+       engine->globalObject().setProperty("Anime", engine->newFunction(Scriptable::Anime_ctor));
        Scriptable::Episode *EpisodePrototype = new Scriptable::Episode();
        engine->setDefaultPrototype(qMetaTypeId<Episode>(), engine->newQObject(EpisodePrototype));
        engine->setDefaultPrototype(qMetaTypeId<Episode*>(), engine->newQObject(EpisodePrototype));
+       engine->globalObject().setProperty("Episode", engine->newFunction(Scriptable::Episode_ctor));
        Scriptable::File *FilePrototype = new Scriptable::File();
        engine->setDefaultPrototype(qMetaTypeId<File>(), engine->newQObject(FilePrototype));
        engine->setDefaultPrototype(qMetaTypeId<File*>(), engine->newQObject(FilePrototype));
+       engine->globalObject().setProperty("File", engine->newFunction(Scriptable::File_ctor));
        Scriptable::FileLocation *FileLocationPrototype = new Scriptable::FileLocation();
        engine->setDefaultPrototype(qMetaTypeId<FileLocation>(), engine->newQObject(FileLocationPrototype));
        engine->setDefaultPrototype(qMetaTypeId<FileLocation*>(), engine->newQObject(FileLocationPrototype));
+       engine->globalObject().setProperty("FileLocation", engine->newFunction(Scriptable::FileLocation_ctor));
        Scriptable::UnknownFile *UnknownFilePrototype = new Scriptable::UnknownFile();
        engine->setDefaultPrototype(qMetaTypeId<UnknownFile>(), engine->newQObject(UnknownFilePrototype));
        engine->setDefaultPrototype(qMetaTypeId<UnknownFile*>(), engine->newQObject(UnknownFilePrototype));
+       engine->globalObject().setProperty("UnknownFile", engine->newFunction(Scriptable::UnknownFile_ctor));
        Scriptable::FileEpisodeRel *FileEpisodeRelPrototype = new Scriptable::FileEpisodeRel();
        engine->setDefaultPrototype(qMetaTypeId<FileEpisodeRel>(), engine->newQObject(FileEpisodeRelPrototype));
        engine->setDefaultPrototype(qMetaTypeId<FileEpisodeRel*>(), engine->newQObject(FileEpisodeRelPrototype));
+       engine->globalObject().setProperty("FileEpisodeRel", engine->newFunction(Scriptable::FileEpisodeRel_ctor));
        Scriptable::PendingRequest *PendingRequestPrototype = new Scriptable::PendingRequest();
        engine->setDefaultPrototype(qMetaTypeId<PendingRequest>(), engine->newQObject(PendingRequestPrototype));
        engine->setDefaultPrototype(qMetaTypeId<PendingRequest*>(), engine->newQObject(PendingRequestPrototype));
+       engine->globalObject().setProperty("PendingRequest", engine->newFunction(Scriptable::PendingRequest_ctor));
        Scriptable::PendingMyListUpdate *PendingMyListUpdatePrototype = new Scriptable::PendingMyListUpdate();
        engine->setDefaultPrototype(qMetaTypeId<PendingMyListUpdate>(), engine->newQObject(PendingMyListUpdatePrototype));
        engine->setDefaultPrototype(qMetaTypeId<PendingMyListUpdate*>(), engine->newQObject(PendingMyListUpdatePrototype));
+       engine->globalObject().setProperty("PendingMyListUpdate", engine->newFunction(Scriptable::PendingMyListUpdate_ctor));
        Scriptable::HostInfo *HostInfoPrototype = new Scriptable::HostInfo();
        engine->setDefaultPrototype(qMetaTypeId<HostInfo>(), engine->newQObject(HostInfoPrototype));
        engine->setDefaultPrototype(qMetaTypeId<HostInfo*>(), engine->newQObject(HostInfoPrototype));
+       engine->globalObject().setProperty("HostInfo", engine->newFunction(Scriptable::HostInfo_ctor));
        Scriptable::OpenFileData *OpenFileDataPrototype = new Scriptable::OpenFileData();
        engine->setDefaultPrototype(qMetaTypeId<OpenFileData>(), engine->newQObject(OpenFileDataPrototype));
        engine->setDefaultPrototype(qMetaTypeId<OpenFileData*>(), engine->newQObject(OpenFileDataPrototype));
+       engine->globalObject().setProperty("OpenFileData", engine->newFunction(Scriptable::OpenFileData_ctor));
        Scriptable::DatabaseConnectionSettings *DatabaseConnectionSettingsPrototype = new Scriptable::DatabaseConnectionSettings();
        engine->setDefaultPrototype(qMetaTypeId<DatabaseConnectionSettings>(), engine->newQObject(DatabaseConnectionSettingsPrototype));
        engine->setDefaultPrototype(qMetaTypeId<DatabaseConnectionSettings*>(), engine->newQObject(DatabaseConnectionSettingsPrototype));
+       engine->globalObject().setProperty("DatabaseConnectionSettings", engine->newFunction(Scriptable::DatabaseConnectionSettings_ctor));
 }
 
 namespace Scriptable {
@@ -1921,5 +1932,62 @@ void DatabaseConnectionSettings::write_database(QString val)
        o->database = val;
 }
 
+// --------------------------------------------------------------------------------
+
+QScriptValue Anime_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::Anime());
+}
+
+QScriptValue Episode_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::Episode());
+}
+
+QScriptValue File_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::File());
+}
+
+QScriptValue FileLocation_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::FileLocation());
+}
+
+QScriptValue UnknownFile_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::UnknownFile());
+}
+
+QScriptValue FileEpisodeRel_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::FileEpisodeRel());
+}
+
+QScriptValue PendingRequest_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::PendingRequest());
+}
+
+QScriptValue PendingMyListUpdate_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::PendingMyListUpdate());
+}
+
+QScriptValue HostInfo_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::HostInfo());
+}
+
+QScriptValue OpenFileData_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::OpenFileData());
+}
+
+QScriptValue DatabaseConnectionSettings_ctor(QScriptContext *, QScriptEngine *engine)
+{
+       return engine->toScriptValue(::LocalMyList::DatabaseConnectionSettings());
+}
+
 } // namespace Scriptable
 } // namespace LocalMyList
index c85a1464e0ca7caba6a5e5962274268e4c3c446e..6679b15187643404227d19a7d5d342fbc6a2902b 100644 (file)
@@ -667,6 +667,18 @@ public:
        void write_database(QString val);
 };
 
+QScriptValue Anime_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue Episode_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue File_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue FileLocation_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue UnknownFile_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue FileEpisodeRel_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue PendingRequest_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue PendingMyListUpdate_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue HostInfo_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue OpenFileData_ctor(QScriptContext *, QScriptEngine *engine);
+QScriptValue DatabaseConnectionSettings_ctor(QScriptContext *, QScriptEngine *engine);
+
 } // namespace Scriptable
 
 } // namespace LocalMyList