Added build script of Debian
[qtrapids] / src / gui / MainWindow.h
index a47ca78..a4335ac 100644 (file)
@@ -1,11 +1,9 @@
 /***************************************************************************
- *   Copyright (C) 2009 by Lassi Väätämöinen   *
- *   lassi.vaatamoinen@ixonos.com   *
+ *   Copyright (C) 2010 by Ixonos Plc   *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
  *   it under the terms of the GNU General Public License as published by  *
- *   the Free Software Foundation; either version 2 of the License, or     *
- *   (at your option) any later version.                                   *
+ *   the Free Software Foundation; version 2 of the License.               *
  *                                                                         *
  *   This program is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
@@ -32,58 +30,66 @@ class QTabWidget;
 class DownloadView;
 class SeedView;
 class PreferencesDialog;
+class PluginInterface; 
 
 /**
        @author Lassi Väätämöinen <lassi.vaatamoinen@ixonos.com>
 */
 class MainWindow : public QMainWindow, public qtrapids::PluginHostInterface
 {
-    Q_OBJECT
+       Q_OBJECT
 
-public:
+       public:
     MainWindow();
-
     virtual ~MainWindow();
+               
+               // Implemented from PluginHostInterface
+               virtual bool setGui(QWidget* widget, PluginWidgetType type = UNKNOWN_TYPE, qtrapids::PluginInterface* plugin = NULL);
+               virtual void addPluginWidget(QWidget* widget, PluginWidgetType type = UNKNOWN_TYPE);
+               virtual void addToolbar(QWidget* widget, PluginWidgetType type = UNKNOWN_TYPE);
+               virtual void addToolItem(QWidget* widget, PluginWidgetType type = UNKNOWN_TYPE);
+               virtual void addMenu(QWidget* widget, PluginWidgetType type = UNKNOWN_TYPE);
+               virtual void addMenuItem(QWidget* widget, PluginWidgetType type = UNKNOWN_TYPE);
+               virtual bool eventRequest(QVariant param, PluginRequest req = UNKNOWN_REQUEST);
+               
+       signals:
+               void itemSelected(bool enabled);
+               
+       public slots:
+       private slots:
+               void on_openAction_clicked();
+               void on_removeAction_clicked();
+               void on_quitAction_clicked();
+               void on_preferencesAction_clicked();
+               void on_aboutAction_clicked();
+               void on_aboutQtAction_clicked();
+               void on_tabWidget_tabCloseRequested(int index);
+               void on_downloadItemSelectionChanged();
+               void on_seedItemSelectionChanged();
+               void handleToolBarAction(QAction* action);
+               void on_torrentFileSelected(const QString& file);
+               void on_alert(std::auto_ptr<Alert> al);
+       
+       private:
+               void LoadPlugins();
+               void RestoreSettings();
+               void StartTorrentFromBufferData(char const* data, int size);
+               
+       private:
+               QTabWidget *tabWidget_;
+               DownloadView *dlView_;
+               SeedView *seedView_;
+               QWidget *searchWidget_;
+               PreferencesDialog *preferencesDialog_;
+               QSettings settings_;
+               QList<QDir> pluginDirs_;
+               QStringList pluginFileNames_;
+               //std::vector< std::auto_ptr<QTorrentHandle> const > torrentHandles_;
+               
+               qtrapids::QBittorrentSession btSession_;
+               
 
-    // Implemented from PluginHostInterface
-    virtual bool setGui(qtrapids::PluginInterface* from, QWidget* widget);
-    virtual void addPluginWidget(qtrapids::PluginInterface* from, QWidget* widget);
-    virtual void addToolbar(qtrapids::PluginInterface* from, QWidget* widget);
-    virtual void addToolItem(qtrapids::PluginInterface* from, QWidget* widget);
-    virtual void addMenu(qtrapids::PluginInterface* from, QWidget* widget);
-    virtual void addMenuItem(qtrapids::PluginInterface* from, QWidget* widget);
-
-signals:
-    void itemSelected(bool enabled);
-
-public slots:
-private slots:
-    void on_openAction_clicked();
-    void on_removeAction_clicked();
-    void on_quitAction_clicked();
-    void on_preferencesAction_clicked();
-    void on_aboutAction_clicked();
-    void on_aboutQtAction_clicked();
-    void on_downloadItemSelectionChanged();
-    void on_seedItemSelectionChanged();
-    void handleToolBarAction(QAction* action);
-    void on_torrentFileSelected(const QString& file);
-    void on_alert(std::auto_ptr<Alert> al);
-
-private:
-    void LoadPlugins();
-
-private:
-    QTabWidget *tabWidget_;
-    DownloadView *dlView_;
-    SeedView *seedView_;
-    PreferencesDialog *preferencesDialog_;
-    QSettings settings_;
-    QDir pluginsDir_;
-    QStringList pluginFileNames_;
-
-    qtrapids::QBittorrentSession btSession_;
-
+               //bool IsNewTorrent(std::auto_ptr<QTorrentHandle> handlePtr);
 };
 
 #endif