File indexing completed on 2024-05-05 04:59:12

0001 /* This file is part of the KDE project
0002 
0003    Copyright (C) 2007 Lukas Appelhans <l.appelhans@gmx.de>
0004    Copyright (C) 2007 Joris Guisson   <joris.guisson@gmail.com>
0005 
0006    This program is free software; you can redistribute it and/or
0007    modify it under the terms of the GNU General Public
0008    License as published by the Free Software Foundation; either
0009    version 2 of the License, or (at your option) any later version.
0010 */
0011 
0012 #ifndef BTADVANCEDDETAILSWIDGET_H
0013 #define BTADVANCEDDETAILSWIDGET_H
0014 
0015 #include <torrent/torrentcontrol.h>
0016 
0017 #include <QWidget>
0018 
0019 #include "core/transferhandler.h"
0020 
0021 class BTTransferHandler;
0022 class QTabWidget;
0023 
0024 namespace kt
0025 {
0026 class PeerView;
0027 class ChunkDownloadView;
0028 class FileView;
0029 class Monitor;
0030 class TrackerView;
0031 class WebSeedsTab;
0032 }
0033 
0034 class BTAdvancedDetailsWidget : public QWidget
0035 {
0036     Q_OBJECT
0037 public:
0038     BTAdvancedDetailsWidget(BTTransferHandler *transfer);
0039 
0040     void deleteEvent(TransferHandler *transfer)
0041     { /**FIXME: Implement this^^**/
0042         Q_UNUSED(transfer)
0043     }
0044     void init();
0045     kt::Monitor *torrentMonitor() const;
0046 
0047 public Q_SLOTS:
0048     void slotTransferChanged(TransferHandler *transfer, TransferHandler::ChangesFlags flags);
0049 
0050 Q_SIGNALS:
0051     void aboutToClose();
0052 
0053 private:
0054     void hideEvent(QHideEvent *event) override;
0055 
0056     QTabWidget *tabWidget;
0057 
0058     BTTransferHandler *m_transfer;
0059     // kt::PeerView* peer_view;
0060     // kt::ChunkDownloadView* cd_view;
0061     kt::FileView *file_view;
0062     kt::Monitor *monitor;
0063     kt::TrackerView *tracker_view;
0064     kt::WebSeedsTab *webseeds_tab;
0065 
0066     bt::TorrentControl *tc;
0067 };
0068 
0069 #endif