source: trunk/qt/DetailsDialog.h @ 14561

Last change on this file since 14561 was 14561, checked in by mikedld, 7 years ago

Remove context help button from dialogs on Windows

We don't currently (if ever) provide context help, so the button is
useless. Moreover, on Windows 10 it's even larger than before and
sometimes title text doesn't fit because of it.

  • Property svn:keywords set to Date Rev Author Id
File size: 2.4 KB
Line 
1/*
2 * This file Copyright (C) 2009-2015 Mnemosyne LLC
3 *
4 * It may be used under the GNU GPL versions 2 or 3
5 * or any future license endorsed by Mnemosyne LLC.
6 *
7 * $Id: DetailsDialog.h 14561 2015-09-01 20:19:26Z mikedld $
8 */
9
10#ifndef QTR_DETAILS_DIALOG_H
11#define QTR_DETAILS_DIALOG_H
12
13#include <QString>
14#include <QMap>
15#include <QSet>
16#include <QTimer>
17
18#include "BaseDialog.h"
19
20#include "ui_DetailsDialog.h"
21
22class QTreeWidgetItem;
23
24class Prefs;
25class Session;
26class Torrent;
27class TorrentModel;
28class TrackerDelegate;
29class TrackerModel;
30class TrackerModelFilter;
31
32class DetailsDialog: public BaseDialog
33{
34    Q_OBJECT
35
36  public:
37    DetailsDialog (Session&, Prefs&, const TorrentModel&, QWidget * parent = nullptr);
38    virtual ~DetailsDialog ();
39
40    void setIds (const QSet<int>& ids);
41
42    // QWidget
43    virtual QSize sizeHint () const { return QSize (440, 460); }
44
45  private:
46    void initPeersTab ();
47    void initTrackerTab ();
48    void initInfoTab ();
49    void initFilesTab ();
50    void initOptionsTab ();
51
52    void getNewData ();
53
54    QIcon getStockIcon (const QString& freedesktop_name, int fallback);
55
56  private slots:
57    void refresh ();
58    void refreshPref (int key);
59
60    void onTorrentChanged ();
61    void onTimer ();
62
63    // Tracker tab
64    void onTrackerSelectionChanged ();
65    void onAddTrackerClicked ();
66    void onEditTrackerClicked ();
67    void onRemoveTrackerClicked ();
68    void onShowTrackerScrapesToggled (bool);
69    void onShowBackupTrackersToggled (bool);
70
71    // Files tab
72    void onFilePriorityChanged (const QSet<int>& fileIndices, int);
73    void onFileWantedChanged (const QSet<int>& fileIndices, bool);
74    void onPathEdited (const QString& oldpath, const QString& newname);
75    void onOpenRequested (const QString& path);
76
77    // Options tab
78    void onBandwidthPriorityChanged (int);
79    void onHonorsSessionLimitsToggled (bool);
80    void onDownloadLimitedToggled (bool);
81    void onSpinBoxEditingFinished ();
82    void onUploadLimitedToggled (bool);
83    void onRatioModeChanged (int);
84    void onIdleModeChanged (int);
85    void onIdleLimitChanged ();
86
87  private:
88    Session& mySession;
89    Prefs& myPrefs;
90    const TorrentModel& myModel;
91
92    Ui::DetailsDialog ui;
93
94    QSet<int> myIds;
95    QTimer myTimer;
96    bool myChangedTorrents;
97    bool myHavePendingRefresh;
98
99    TrackerModel * myTrackerModel;
100    TrackerModelFilter * myTrackerFilter;
101    TrackerDelegate * myTrackerDelegate;
102
103    QMap<QString, QTreeWidgetItem*> myPeers;
104};
105
106#endif // QTR_DETAILS_DIALOG_H
Note: See TracBrowser for help on using the repository browser.