• Main Page
  • Modules
  • Classes
  • Files
  • File List
  • File Members

header/showtracker2.h

Go to the documentation of this file.
00001 #ifndef SHOWTRACKER2_H
00002 #define SHOWTRACKER2_H
00003 
00004 #include <QtGui/QMainWindow>
00005 #include <QtXml>
00006 #include <qdatetime.h>
00007 #include "ui_showtracker2.h"
00008 #include "header/config.h"
00009 #include "header/addshowdialog.h"
00010 #include "header/stshow.h"
00011 
00013 class showtracker2: public QMainWindow {
00014 Q_OBJECT
00015 
00016 public:
00017     showtracker2(QWidget *parent = 0);
00018     ~showtracker2();
00019     QString RandomMirror(QStringList mirrorList);
00020     bool DownloadFile(QString target, QString destination, bool overwrite = false);
00021 
00023     QStringList mirrorsBanner;
00024 
00026     QStringList mirrorsXml;
00027 
00029     QStringList mirrorsZip;
00030 
00032     QMap<QString, STShow> shows;
00033 
00034 private:
00035     void LoadMirrors();
00036     void GetServerTime();
00037     void LoadShows();
00038     bool LoadShow(QString showId);
00039     void SaveShows();
00040 
00041     void DisplayShows();
00042     void DisplayShow(int showNum, QString showId);
00043     void DisplaySeasons(QString showId);
00044     void DisplayEpisodes(QString showId, QString seasonId);
00045 
00046     void UpdateShow(QString showId);
00047     void UpdateShowImages(QString showId);
00048 
00049     void DownloadShowBanner(QString showId);
00050     void DownloadShowSeasonBanners(QString showId);
00051 
00052     void SetItemColour(QTableWidgetItem* item, int days, bool clear = false);
00053     void SetSeasonColour(QTableWidgetItem* item, QString showId, QString seasonId);
00054     void SetShowColour(QTableWidgetItem* item, QString showId);
00055 
00056     bool IsEpisodeWatched(QString showId, QString seasonId, QString episodeId);
00057 
00058     bool RecursiveDeleteFolder(QDir dir);
00059 
00060     Ui::showtracker2Class ui;
00061 
00063     QTimer timer;
00064 
00066     Config config;
00067 
00069     QDateTime serverTime;
00070 
00072     addshowdialog dialog;
00073 
00088     QDomDocument trackedShows;
00089 
00097     QMap<int, QPair<QString, QMap<int, QPair<QString, QMap<int, QString> > > > > orderedShows;
00098 
00099 public slots:
00100     void ShowAddDialog();
00101     void AddShow(QString showId);
00102     void RemoveSelectedShow();
00103 
00104     void UpdateShows();
00105     void UpdateShowsImages();
00106 
00107     void DeleteShowXML();
00108     void DeleteImages();
00109 
00110     void SelectShow(int currentRow, int currentColumn = -1, int previousRow = -1, int previousColumn = -1);
00111     void SelectSeason(int currentRow, int currentColumn = -1, int previousRow = -1, int previousColumn = -1);
00112     void CheckedChanged(QTableWidgetItem* item);
00113 
00114     void LoadData();
00115 };
00116 
00117 #endif // SHOWTRACKER2_H

Generated on Fri Nov 19 2010 20:40:22 for Doc by  doxygen 1.7.1