]> Some of my projects - aniplayer-old.git/commitdiff
Switch to LocalMyList master
authorAPTX <marek321@gmail.com>
Sat, 8 Dec 2012 16:32:36 +0000 (17:32 +0100)
committerAPTX <marek321@gmail.com>
Sat, 8 Dec 2012 16:32:36 +0000 (17:32 +0100)
src/aniplayer.cpp
src/src.pro
src/videowindow.cpp
src/videowindow.h

index f34ffd2fd56a61fad947eb6655ef519d1f48c693..4543882c6762fdde8880bd6822c98f3e0b2f1dd8 100644 (file)
@@ -2,7 +2,6 @@
 
 #include <QSettings>
 
 
 #include <QSettings>
 
-#include <AniDBUdpClient/Client>
 #include "videowindow.h"
 
 #include <QDebug>
 #include "videowindow.h"
 
 #include <QDebug>
@@ -21,7 +20,6 @@ AniPlayer::AniPlayer(int &argc, char *argv[]) : QtSingleApplication(argc, argv)
 AniPlayer::~AniPlayer()
 {
        m_instance = 0;
 AniPlayer::~AniPlayer()
 {
        m_instance = 0;
-       AniDBUdpClient::Client::destroy();
 }
 
 
 }
 
 
index 4ec033b964ec10654dd92a4d887a48a490f036ab..8aabd0d413afd9d9b330bdd18a0a456e5f12f61a 100644 (file)
@@ -1,7 +1,7 @@
 # -------------------------------------------------
 # Project created by QtCreator 2009-02-11T10:09:59
 # -------------------------------------------------
 # -------------------------------------------------
 # Project created by QtCreator 2009-02-11T10:09:59
 # -------------------------------------------------
-CONFIG += use_anidbudpclient
+CONFIG += use_localmylist
 QT += phonon
 unix { 
     message(Using system (KDE?) Phonon)
 QT += phonon
 unix { 
     message(Using system (KDE?) Phonon)
@@ -78,6 +78,13 @@ use_anidbudpclient {
     message(Building without AniDBUdpClient!)
     DEFINES += NO_ANIDBUDPCLIENT
 }
     message(Building without AniDBUdpClient!)
     DEFINES += NO_ANIDBUDPCLIENT
 }
+use_localmylist {
+       LIBS += -llocalmylist
+       QT *= sql
+}
+!use_localmylist {
+       DEFINES += ANIPLAYER_NO_LOCALMYLIST
+}
 
 include(../lib/qtsingleapplication/src/qtsingleapplication.pri)
 
 
 include(../lib/qtsingleapplication/src/qtsingleapplication.pri)
 
index 81140599506cf69e4b13d857b8ee9a28ce24e47e..ec54f3bd57c328c377b907df2b4563cf9cc185c7 100644 (file)
@@ -28,7 +28,9 @@
 #ifndef NO_ANIDBUDPCLIENT
 #      include <AniDBUdpClient/Client>
 #endif
 #ifndef NO_ANIDBUDPCLIENT
 #      include <AniDBUdpClient/Client>
 #endif
-
+#ifndef ANIPLAYER_NO_LOCALMYLIST
+#      include <LocalMyList/MyList>
+#endif
 #include <QDebug>
 
 #ifdef Q_OS_WIN
 #include <QDebug>
 
 #ifdef Q_OS_WIN
@@ -50,7 +52,7 @@ VideoWindow::VideoWindow(QWidget *parent) : QMainWindow(parent)
 #endif
        destroyed = menuMoving = windowMoving = m_closeOnStop = false;
 
 #endif
        destroyed = menuMoving = windowMoving = m_closeOnStop = false;
 
-#ifndef NO_ANIDBUDPCLIENT
+#if !defined(NO_ANIDBUDPCLIENT) || !defined(ANIPLAYER_NO_LOCALMYLIST)
        m_marked = true;
        m_automark = 0;
 #endif
        m_marked = true;
        m_automark = 0;
 #endif
@@ -103,7 +105,7 @@ VideoWindow::VideoWindow(QWidget *parent) : QMainWindow(parent)
        m_actions["toggleFrameless"]->setChecked(false);
        m_actions["toggleOverlay"]->setChecked(false);
 #endif
        m_actions["toggleFrameless"]->setChecked(false);
        m_actions["toggleOverlay"]->setChecked(false);
 #endif
-#ifndef NO_ANIDBUDPCLIENT
+#if !defined(NO_ANIDBUDPCLIENT) || !defined(ANIPLAYER_NO_LOCALMYLIST)
        addAction("markWatched", "Mark Watched", QKeySequence("CTRL+M"));
        addAction("settings", "Settings", QKeySequence("F7"));
 #endif
        addAction("markWatched", "Mark Watched", QKeySequence("CTRL+M"));
        addAction("settings", "Settings", QKeySequence("F7"));
 #endif
@@ -134,7 +136,7 @@ VideoWindow::VideoWindow(QWidget *parent) : QMainWindow(parent)
 
        connect(videoPlayer, SIGNAL(stateChanged(Phonon::State, Phonon::State)), this, SLOT(handleStateChange(Phonon::State,Phonon::State)));
        connect(videoPlayer->mediaController(), SIGNAL(availableSubtitlesChanged()), this, SLOT(updateSubtitles()));
 
        connect(videoPlayer, SIGNAL(stateChanged(Phonon::State, Phonon::State)), this, SLOT(handleStateChange(Phonon::State,Phonon::State)));
        connect(videoPlayer->mediaController(), SIGNAL(availableSubtitlesChanged()), this, SLOT(updateSubtitles()));
-#ifndef NO_ANIDBUDPCLIENT
+#if !defined(NO_ANIDBUDPCLIENT) || !defined(ANIPLAYER_NO_LOCALMYLIST)
        connect(m_actions["markWatched"], SIGNAL(triggered()), this, SLOT(markWatched()));
        connect(m_actions["settings"], SIGNAL(triggered()), this, SLOT(anidbSettings()));
 #endif
        connect(m_actions["markWatched"], SIGNAL(triggered()), this, SLOT(markWatched()));
        connect(m_actions["settings"], SIGNAL(triggered()), this, SLOT(anidbSettings()));
 #endif
@@ -187,6 +189,14 @@ VideoWindow::VideoWindow(QWidget *parent) : QMainWindow(parent)
        AniDBUdpClient::Client::instance()->setCompression(true);
        AniDBUdpClient::Client::instance()->setIdlePolicy(AniDBUdpClient::ImmediateLogoutIdlePolicy);
 #endif
        AniDBUdpClient::Client::instance()->setCompression(true);
        AniDBUdpClient::Client::instance()->setIdlePolicy(AniDBUdpClient::ImmediateLogoutIdlePolicy);
 #endif
+
+#ifndef ANIPLAYER_NO_LOCALMYLIST
+       LocalMyList::instance()->loadLocalSettings();
+       if (!LocalMyList::instance()->database()->connect())
+       {
+               qWarning("LocalMyList failed to connect to DB");
+       }
+#endif
 }
 
 VideoWindow::~VideoWindow()
 }
 
 VideoWindow::~VideoWindow()
@@ -421,7 +431,7 @@ qDebug() << "Media changed state from" << oldstate << "to" << newstate;
                        if (!isFullScreen())
                                resizeToVideo();
 #endif
                        if (!isFullScreen())
                                resizeToVideo();
 #endif
-#ifndef NO_ANIDBUDPCLIENT
+#if !defined(NO_ANIDBUDPCLIENT) || !defined(ANIPLAYER_NO_LOCALMYLIST)
 /*                     if (!m_marked)
                                addReply->deleteLater();
 
 /*                     if (!m_marked)
                                addReply->deleteLater();
 
@@ -444,7 +454,7 @@ void VideoWindow::tick(qint64 time)
 {
        menu->tick(time);
 
 {
        menu->tick(time);
 
-#ifndef NO_ANIDBUDPCLIENT
+#if !defined(NO_ANIDBUDPCLIENT) || !defined(ANIPLAYER_NO_LOCALMYLIST)
        if (!m_automarkable || !m_automark || m_marked)
                return;
 
        if (!m_automarkable || !m_automark || m_marked)
                return;
 
@@ -514,11 +524,11 @@ void VideoWindow::mouseReleaseEvent(QMouseEvent *event)
                        menu->hide();
                }
 #else
                        menu->hide();
                }
 #else
-#ifdef Q_WS_X11
+#      ifdef Q_WS_X11
                setWindowState(windowState() ^ Qt::WindowFullScreen);
                setWindowState(windowState() ^ Qt::WindowFullScreen);
-#else
+#      else
                videoPlayer->videoWidget()->toggleFullScreen();
                videoPlayer->videoWidget()->toggleFullScreen();
-#endif
+#      endif
                updateCursor();
 
                event->accept();
                updateCursor();
 
                event->accept();
@@ -583,7 +593,31 @@ void VideoWindow::moveWithMenu()
        menuMoving = false;
 }
 
        menuMoving = false;
 }
 
-#ifndef NO_ANIDBUDPCLIENT
+#if !defined(ANIPLAYER_NO_LOCALMYLIST)
+void VideoWindow::markWatched()
+{
+       using namespace LocalMyList;
+       if (m_marked)
+       {
+               menu->showMessage(tr("File already marked"));
+               return;
+       }
+       File f = MyList::instance()->database()->getFileByPath(QFileInfo(videoPlayer->currentFile()).canonicalFilePath());
+       if (!f.fid)
+       {
+               menu->showMessage(tr("File not in LocalMyList!"));
+               return;
+       }
+       if (f.myWatched.isValid())
+       {
+               menu->showMessage(tr("File already marked watched"));
+               return;
+       }
+       MyList::instance()->markWatched(f.fid);
+       menu->showMessage(tr("Mark watched request submitted to LocalMyList"));
+       m_marked = true;
+}
+#elif !defined(NO_ANIDBUDPCLIENT)
 void VideoWindow::markWatched()
 {
        if (m_marked)
 void VideoWindow::markWatched()
 {
        if (m_marked)
@@ -637,11 +671,12 @@ void VideoWindow::markingStatus(AniDBUdpClient::File::Action action, AniDBUdpCli
                default: ;
        }
 }
                default: ;
        }
 }
-
+#endif
 void VideoWindow::anidbSettings()
 {
        AniDBConfigDialog dialog(this);
 
 void VideoWindow::anidbSettings()
 {
        AniDBConfigDialog dialog(this);
 
+#ifndef NO_ANIDBUDPCLIENT
        dialog.setHost(AniDBUdpClient::Client::instance()->host());
        dialog.setHostPort(AniDBUdpClient::Client::instance()->hostPort());
        dialog.setLocalPort(AniDBUdpClient::Client::instance()->localPort());
        dialog.setHost(AniDBUdpClient::Client::instance()->host());
        dialog.setHostPort(AniDBUdpClient::Client::instance()->hostPort());
        dialog.setLocalPort(AniDBUdpClient::Client::instance()->localPort());
@@ -649,6 +684,7 @@ void VideoWindow::anidbSettings()
        dialog.setPass(AniDBUdpClient::Client::instance()->pass());
        dialog.setEncryption(AniDBUdpClient::Client::instance()->encryptionEnabled());
        dialog.setApiKey(AniDBUdpClient::Client::instance()->apiKey());
        dialog.setPass(AniDBUdpClient::Client::instance()->pass());
        dialog.setEncryption(AniDBUdpClient::Client::instance()->encryptionEnabled());
        dialog.setApiKey(AniDBUdpClient::Client::instance()->apiKey());
+#endif
        dialog.setAutomark(m_automark);
        dialog.setPaths(m_automarkPaths);
        dialog.setOpSkip(m_opSkip);
        dialog.setAutomark(m_automark);
        dialog.setPaths(m_automarkPaths);
        dialog.setOpSkip(m_opSkip);
@@ -657,7 +693,7 @@ void VideoWindow::anidbSettings()
        {
                return;
        }
        {
                return;
        }
-
+#ifndef NO_ANIDBUDPCLIENT
        AniDBUdpClient::Client::instance()->disconnect();
 
        AniDBUdpClient::Client::instance()->setHost(dialog.host());
        AniDBUdpClient::Client::instance()->disconnect();
 
        AniDBUdpClient::Client::instance()->setHost(dialog.host());
@@ -667,6 +703,7 @@ void VideoWindow::anidbSettings()
        AniDBUdpClient::Client::instance()->setPass(dialog.pass());
        AniDBUdpClient::Client::instance()->setEncryptionEnabled(dialog.encryption());
        AniDBUdpClient::Client::instance()->setApiKey(dialog.apiKey());
        AniDBUdpClient::Client::instance()->setPass(dialog.pass());
        AniDBUdpClient::Client::instance()->setEncryptionEnabled(dialog.encryption());
        AniDBUdpClient::Client::instance()->setApiKey(dialog.apiKey());
+#endif
        m_automark = dialog.automark();
        m_automarkPaths = dialog.paths();
        m_opSkip = dialog.opSkip();
        m_automark = dialog.automark();
        m_automarkPaths = dialog.paths();
        m_opSkip = dialog.opSkip();
@@ -696,7 +733,6 @@ qDebug() << "PART" << p;
                }
        }
 }
                }
        }
 }
-#endif
 
 void VideoWindow::addAction(const QString &name, const QString &text, const QKeySequence &shortcut, bool checkable)
 {
 
 void VideoWindow::addAction(const QString &name, const QString &text, const QKeySequence &shortcut, bool checkable)
 {
@@ -757,8 +793,8 @@ void VideoWindow::saveSettings()
                settings.setValue("state", menu->saveState());
                settings.setValue("isVisible", menu->isVisible());
        settings.endGroup();
                settings.setValue("state", menu->saveState());
                settings.setValue("isVisible", menu->isVisible());
        settings.endGroup();
-#  ifndef NO_ANIDBUDPCLIENT
        settings.beginGroup("anidbudpapiclient");
        settings.beginGroup("anidbudpapiclient");
+#  ifndef NO_ANIDBUDPCLIENT
                settings.setValue("host", AniDBUdpClient::Client::instance()->host());
                settings.setValue("hostPort", AniDBUdpClient::Client::instance()->hostPort());
                settings.setValue("localPort", AniDBUdpClient::Client::instance()->localPort());
                settings.setValue("host", AniDBUdpClient::Client::instance()->host());
                settings.setValue("hostPort", AniDBUdpClient::Client::instance()->hostPort());
                settings.setValue("localPort", AniDBUdpClient::Client::instance()->localPort());
@@ -766,10 +802,10 @@ void VideoWindow::saveSettings()
                settings.setValue("pass", AniDBUdpClient::Client::instance()->pass());
                settings.setValue("encryption", AniDBUdpClient::Client::instance()->encryptionEnabled());
                settings.setValue("apiKey", AniDBUdpClient::Client::instance()->apiKey());
                settings.setValue("pass", AniDBUdpClient::Client::instance()->pass());
                settings.setValue("encryption", AniDBUdpClient::Client::instance()->encryptionEnabled());
                settings.setValue("apiKey", AniDBUdpClient::Client::instance()->apiKey());
+#  endif
                settings.setValue("automark", m_automark);
                settings.setValue("paths", m_automarkPaths);
        settings.endGroup();
                settings.setValue("automark", m_automark);
                settings.setValue("paths", m_automarkPaths);
        settings.endGroup();
-#  endif
 #endif
 }
 
 #endif
 }
 
@@ -795,8 +831,8 @@ void VideoWindow::loadSettings()
                menu->restoreGeometry(settings.value("geometry", menu->saveGeometry()).toByteArray());
                menu->setVisible(settings.value("isVisible", true).toBool());
        settings.endGroup();
                menu->restoreGeometry(settings.value("geometry", menu->saveGeometry()).toByteArray());
                menu->setVisible(settings.value("isVisible", true).toBool());
        settings.endGroup();
-#  ifndef NO_ANIDBUDPCLIENT
        settings.beginGroup("anidbudpapiclient");
        settings.beginGroup("anidbudpapiclient");
+#  ifndef NO_ANIDBUDPCLIENT
                AniDBUdpClient::Client::instance()->setHost(settings.value("host", "api.anidb.info").toString());
                AniDBUdpClient::Client::instance()->setHostPort(settings.value("hostPort", 9000).toInt());
                AniDBUdpClient::Client::instance()->setLocalPort(settings.value("localPort", 9001).toInt());
                AniDBUdpClient::Client::instance()->setHost(settings.value("host", "api.anidb.info").toString());
                AniDBUdpClient::Client::instance()->setHostPort(settings.value("hostPort", 9000).toInt());
                AniDBUdpClient::Client::instance()->setLocalPort(settings.value("localPort", 9001).toInt());
@@ -804,10 +840,11 @@ void VideoWindow::loadSettings()
                AniDBUdpClient::Client::instance()->setPass(settings.value("pass").toString());
                AniDBUdpClient::Client::instance()->setEncryptionEnabled(settings.value("encryption").toBool());
                AniDBUdpClient::Client::instance()->setApiKey(settings.value("apiKey").toString());
                AniDBUdpClient::Client::instance()->setPass(settings.value("pass").toString());
                AniDBUdpClient::Client::instance()->setEncryptionEnabled(settings.value("encryption").toBool());
                AniDBUdpClient::Client::instance()->setApiKey(settings.value("apiKey").toString());
+#  endif
                m_automark = settings.value("automark", 0).toInt();
                m_automarkPaths = settings.value("paths", QStringList()).toStringList();
        settings.endGroup();
                m_automark = settings.value("automark", 0).toInt();
                m_automarkPaths = settings.value("paths", QStringList()).toStringList();
        settings.endGroup();
-#  endif
+
 #endif
 }
 
 #endif
 }
 
index 5d00f46141aa0100b9bb678d5187a57574889ca5..384f5190f5b2e4fd0347530e04d40b80a2b6b558 100644 (file)
@@ -102,14 +102,13 @@ private slots:
 
        void tick(qint64 time);
 
 
        void tick(qint64 time);
 
-#ifndef NO_ANIDBUDPCLIENT
        void markWatched();
        void markWatched();
+#ifndef NO_ANIDBUDPCLIENT
        void markingStatus(AniDBUdpClient::File::Action action, AniDBUdpClient::File::ActionState actionState, int percent);
        void markingStatus(AniDBUdpClient::File::Action action, AniDBUdpClient::File::ActionState actionState, int percent);
-
+#endif
        void anidbSettings();
        void updateAutomarkable();
 
        void anidbSettings();
        void updateAutomarkable();
 
-#endif
 private:
        void addAction(const QString &name, const QString &text, const QKeySequence &shortcut = QKeySequence(), bool checkable = false);
        void addAction(const QString &name, const QString &text, const QIcon& icon, const QKeySequence &shortcut = QKeySequence(), bool checkable = false);
 private:
        void addAction(const QString &name, const QString &text, const QKeySequence &shortcut = QKeySequence(), bool checkable = false);
        void addAction(const QString &name, const QString &text, const QIcon& icon, const QKeySequence &shortcut = QKeySequence(), bool checkable = false);
@@ -158,12 +157,12 @@ private:
 
        int m_opSkip;
 
 
        int m_opSkip;
 
-#ifndef NO_ANIDBUDPCLIENT
+//#ifndef NO_ANIDBUDPCLIENT
        int m_automark;
        QStringList m_automarkPaths;
        bool m_marked;
        bool m_automarkable;
        int m_automark;
        QStringList m_automarkPaths;
        bool m_marked;
        bool m_automarkable;
-#endif
+//#endif
 
        DirectoryPlaylist *playlist;
 
 
        DirectoryPlaylist *playlist;