Qt client accessibility improvements (part 1) (#6518)

* Details dialog Information tab a11y improvements

* Details dialog Options tab a11y improvements

* Make torrent dialog a11y improvements

* Relocate torrent data dialog a11y improvements

* Statistics dialog a11y improvements

* Session dialog a11y improvements

* Trackers dialog a11y improvements

* Preferences dialog Speed tab a11y improvements

* Preferences dialog Downloading tab a11y improvements

* Preferences dialog Seeding tab a11y improvements

* Preferences dialog Privacy tab a11y improvements

* Preferences dialog Network tab a11y improvements

* Preferences dialog Desktop tab a11y improvements

* Preferences dialog Remote tab a11y improvements

* Fix filterbar tab order (depends on construction order if not explicit)
This commit is contained in:
Mike Gelfand 2024-01-10 21:01:03 +00:00 committed by GitHub
parent 33f11f8679
commit 852fa6d169
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 2121 additions and 2343 deletions

View File

@ -262,7 +262,7 @@ DetailsDialog::DetailsDialog(Session& session, Prefs& prefs, TorrentModel const&
initOptionsTab();
adjustSize();
ui_.commentBrowser->setMaximumHeight(QWIDGETSIZE_MAX);
ui_.commentTextEdit->setMaximumHeight(QWIDGETSIZE_MAX);
ui_.tabs->setCurrentIndex(prev_tab_index_);
static std::array<int, 2> constexpr InitKeys = {
@ -900,7 +900,7 @@ void DetailsDialog::refreshUI()
if (torrents.empty())
{
labels_baseline_.clear();
ui_.labelsTextEdit->setText({});
ui_.labelsTextEdit->setPlainText({});
ui_.labelsTextEdit->setPlaceholderText(none);
ui_.labelsTextEdit->setReadOnly(true);
ui_.labelsTextEdit->setEnabled(true);
@ -911,7 +911,7 @@ void DetailsDialog::refreshUI()
[&baseline](auto const* tor) { return tor->labels() == baseline; }))
{
labels_baseline_ = baseline.join(QStringLiteral(", "));
ui_.labelsTextEdit->setText(labels_baseline_);
ui_.labelsTextEdit->setPlainText(labels_baseline_);
ui_.labelsTextEdit->setPlaceholderText(none);
ui_.labelsTextEdit->setReadOnly(false);
ui_.labelsTextEdit->setEnabled(true);
@ -919,7 +919,7 @@ void DetailsDialog::refreshUI()
else // mixed
{
labels_baseline_.clear();
ui_.labelsTextEdit->setText({});
ui_.labelsTextEdit->setPlainText({});
ui_.labelsTextEdit->setPlaceholderText(mixed);
ui_.labelsTextEdit->setEnabled(false);
}
@ -944,12 +944,12 @@ void DetailsDialog::refreshUI()
}
}
if (ui_.commentBrowser->toPlainText() != string)
if (ui_.commentTextEdit->toPlainText() != string)
{
ui_.commentBrowser->setText(string);
ui_.commentTextEdit->setPlainText(string);
}
ui_.commentBrowser->setEnabled(!is_comment_mixed && !string.isEmpty());
ui_.commentTextEdit->setEnabled(!is_comment_mixed && !string.isEmpty());
// myOriginLabel
string = none;
@ -1044,7 +1044,7 @@ void DetailsDialog::refreshUI()
}
}
ui_.addedLabelValue->setText(string);
ui_.addedValueLabel->setText(string);
///
/// Options Tab
@ -1324,12 +1324,12 @@ void DetailsDialog::setEnabled(bool enabled)
void DetailsDialog::initInfoTab()
{
int const cbh = QFontMetrics{ ui_.commentBrowser->font() }.lineSpacing() * 4;
ui_.commentBrowser->setFixedHeight(cbh);
int const cbh = QFontMetrics{ ui_.commentTextEdit->font() }.lineSpacing() * 4;
ui_.commentTextEdit->setFixedHeight(cbh);
int const lteh = QFontMetrics{ ui_.labelsTextEdit->font() }.lineSpacing() * 2;
ui_.labelsTextEdit->setFixedHeight(lteh);
ui_.labelsTextEdit->setText(QStringLiteral("Initializing..."));
ui_.labelsTextEdit->setPlainText(QStringLiteral("Initializing..."));
auto* cr = new ColumnResizer{ this };
cr->addLayout(ui_.activitySectionLayout);
@ -1550,8 +1550,7 @@ void DetailsDialog::initOptionsTab()
auto* cr = new ColumnResizer{ this };
cr->addLayout(ui_.speedSectionLayout);
cr->addLayout(ui_.seedingLimitsSectionRatioLayout);
cr->addLayout(ui_.seedingLimitsSectionIdleLayout);
cr->addLayout(ui_.seedingLimitsSectionLayout);
cr->addLayout(ui_.peerConnectionsSectionLayout);
cr->update();

File diff suppressed because it is too large Load Diff

View File

@ -223,25 +223,21 @@ FilterBar::FilterBar(Prefs& prefs, TorrentModel const& torrents, TorrentFilter c
, prefs_{ prefs }
, torrents_{ torrents }
, filter_{ filter }
, count_label_{ new QLabel{ tr("Show:"), this } }
, is_bootstrapping_{ true }
{
auto* h = new QHBoxLayout{ this };
h->setContentsMargins(3, 3, 3, 3);
count_label_ = new QLabel{ tr("Show:"), this };
h->addWidget(count_label_);
h->addWidget(activity_combo_);
tracker_combo_ = createTrackerCombo(tracker_model_);
h->addWidget(tracker_combo_);
h->addStretch();
h->addWidget(line_edit_, 1);
line_edit_->setClearButtonEnabled(true);
line_edit_->setPlaceholderText(tr("Search…"));
line_edit_->setMaximumWidth(250);
h->addWidget(line_edit_, 1);
connect(line_edit_, &QLineEdit::textChanged, this, &FilterBar::onTextChanged);
// listen for changes from the other players

View File

@ -56,13 +56,15 @@ private:
TorrentModel const& torrents_;
TorrentFilter const& filter_;
std::map<QString, int> sitename_counts_;
FilterBarComboBox* const activity_combo_ = createActivityCombo();
FilterBarComboBox* tracker_combo_ = {};
QLabel* count_label_ = {};
QStandardItemModel* const tracker_model_ = new QStandardItemModel{ this };
QTimer recount_timer_;
QLabel* const count_label_ = {};
FilterBarComboBox* const activity_combo_ = createActivityCombo();
FilterBarComboBox* const tracker_combo_ = createTrackerCombo(tracker_model_);
QLineEdit* const line_edit_ = new QLineEdit{ this };
std::map<QString, int> sitename_counts_;
QTimer recount_timer_;
Pending pending_ = {};
bool is_bootstrapping_ = {};

View File

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>566</width>
<height>426</height>
<width>503</width>
<height>472</height>
</rect>
</property>
<property name="acceptDrops">
@ -18,193 +18,161 @@
</property>
<layout class="QVBoxLayout" name="dialogLayout">
<item>
<widget class="QLabel" name="filesSectionLabel">
<property name="styleSheet">
<string notr="true">font-weight:bold</string>
</property>
<property name="text">
<widget class="QGroupBox" name="filesSection">
<property name="title">
<string>Files</string>
</property>
<layout class="QGridLayout" name="filesSectionLayout" columnstretch="0,1">
<item row="0" column="0">
<widget class="QLabel" name="destinationLabel">
<property name="text">
<string>Sa&amp;ve to:</string>
</property>
<property name="buddy">
<cstring>destinationButton</cstring>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="PathButton" name="destinationButton"/>
</item>
<item row="1" column="0">
<widget class="QRadioButton" name="sourceFolderRadio">
<property name="text">
<string>Source f&amp;older:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="PathButton" name="sourceFolderButton">
<property name="enabled">
<bool>false</bool>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QRadioButton" name="sourceFileRadio">
<property name="text">
<string>Source &amp;file:</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="PathButton" name="sourceFileButton"/>
</item>
<item row="3" column="1">
<widget class="QLabel" name="sourceSizeLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="pieceSizeLabel">
<property name="text">
<string>Piece s&amp;ize:</string>
</property>
<property name="buddy">
<cstring>pieceSizeSlider</cstring>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QSlider" name="pieceSizeSlider">
<property name="minimum">
<number>14</number>
</property>
<property name="maximum">
<number>28</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<layout class="QGridLayout" name="filesSectionLayout" columnstretch="0,1">
<property name="leftMargin">
<number>18</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="destinationLabel">
<property name="text">
<string>Sa&amp;ve to:</string>
</property>
<property name="buddy">
<cstring>destinationButton</cstring>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="PathButton" name="destinationButton"/>
</item>
<item row="1" column="0">
<widget class="QRadioButton" name="sourceFolderRadio">
<property name="text">
<string>Source f&amp;older:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="PathButton" name="sourceFolderButton">
<property name="enabled">
<bool>false</bool>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QRadioButton" name="sourceFileRadio">
<property name="text">
<string>Source &amp;file:</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="PathButton" name="sourceFileButton"/>
</item>
<item row="3" column="1">
<widget class="QLabel" name="sourceSizeLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QSlider" name="pieceSizeSlider">
<property name="minimum">
<number>14</number>
</property>
<property name="maximum">
<number>28</number>
</property>
<property name="pageStep">
<number>1</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="pieceSizeLabel">
<property name="text">
<string>Piece s&amp;ize:</string>
</property>
<property name="buddy">
<cstring>pieceSizeSlider</cstring>
</property>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="propertiesSectionSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>1</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="propertiesSectionLabel">
<property name="styleSheet">
<string notr="true">font-weight:bold</string>
</property>
<property name="text">
<widget class="QGroupBox" name="propertiesSection">
<property name="title">
<string>Properties</string>
</property>
</widget>
</item>
<item>
<layout class="QGridLayout" name="propertiesSectionLayout" columnstretch="0,1">
<property name="leftMargin">
<number>18</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="trackersLabel">
<property name="text">
<string>&amp;Trackers:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="buddy">
<cstring>trackersEdit</cstring>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QPlainTextEdit" name="trackersEdit">
<property name="tabChangesFocus">
<bool>true</bool>
</property>
<property name="lineWrapMode">
<enum>QPlainTextEdit::NoWrap</enum>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="trackersDescriptionLabel">
<property name="text">
<string>To add a backup URL, add it on the line after the primary URL.
<layout class="QGridLayout" name="propertiesSectionLayout" columnstretch="0,1">
<item row="0" column="0">
<widget class="QLabel" name="trackersLabel">
<property name="text">
<string>&amp;Trackers:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="buddy">
<cstring>trackersEdit</cstring>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QPlainTextEdit" name="trackersEdit">
<property name="tabChangesFocus">
<bool>true</bool>
</property>
<property name="lineWrapMode">
<enum>QPlainTextEdit::NoWrap</enum>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="trackersDescriptionLabel">
<property name="text">
<string>To add a backup URL, add it on the line after the primary URL.
To add another primary URL, add it after a blank line.</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="commentCheck">
<property name="text">
<string>Co&amp;mment:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="commentEdit">
<property name="enabled">
<bool>false</bool>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QCheckBox" name="sourceCheck">
<property name="text">
<string>&amp;Source:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="sourceEdit">
<property name="enabled">
<bool>false</bool>
</property>
</widget>
</item>
<item row="4" column="0" colspan="2">
<widget class="QCheckBox" name="privateCheck">
<property name="text">
<string>&amp;Private torrent</string>
</property>
</widget>
</item>
</layout>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="commentCheck">
<property name="text">
<string>Co&amp;mment:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="commentEdit">
<property name="enabled">
<bool>false</bool>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QCheckBox" name="sourceCheck">
<property name="text">
<string>&amp;Source:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="sourceEdit">
<property name="enabled">
<bool>false</bool>
</property>
</widget>
</item>
<item row="4" column="0" colspan="2">
<widget class="QCheckBox" name="privateCheck">
<property name="text">
<string>&amp;Private torrent</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QDialogButtonBox" name="dialogButtons">
@ -234,12 +202,12 @@ To add another primary URL, add it after a blank line.</string>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>76</x>
<y>333</y>
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel">
<x>360</x>
<y>333</y>
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>
@ -250,12 +218,12 @@ To add another primary URL, add it after a blank line.</string>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>72</x>
<y>83</y>
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel">
<x>360</x>
<y>82</y>
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>
@ -266,12 +234,12 @@ To add another primary URL, add it after a blank line.</string>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>72</x>
<y>119</y>
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel">
<x>360</x>
<y>118</y>
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>
@ -282,12 +250,12 @@ To add another primary URL, add it after a blank line.</string>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>75</x>
<y>347</y>
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel">
<x>342</x>
<y>347</y>
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>

File diff suppressed because it is too large Load Diff

View File

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>333</width>
<height>155</height>
<width>275</width>
<height>170</height>
</rect>
</property>
<property name="windowTitle">
@ -18,49 +18,41 @@
<enum>QLayout::SetFixedSize</enum>
</property>
<item>
<widget class="QLabel" name="setLocationSectionLabel">
<property name="styleSheet">
<string notr="true">font-weight:bold</string>
</property>
<property name="text">
<widget class="QGroupBox" name="setLocationSection">
<property name="title">
<string>Set Location</string>
</property>
<layout class="QGridLayout" name="setLocationSectionLayout" columnstretch="0,1">
<item row="0" column="0">
<widget class="QLabel" name="newLocationLabel">
<property name="text">
<string>New &amp;location:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QStackedWidget" name="newLocationStack">
<widget class="PathButton" name="newLocationButton"/>
<widget class="QLineEdit" name="newLocationEdit"/>
</widget>
</item>
<item row="1" column="0" colspan="2">
<widget class="QRadioButton" name="moveDataRadio">
<property name="text">
<string>&amp;Move from the current folder</string>
</property>
</widget>
</item>
<item row="2" column="0" colspan="2">
<widget class="QRadioButton" name="findDataRadio">
<property name="text">
<string>Local data is &amp;already there</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<layout class="QGridLayout" name="setLocationSectionLayout" columnstretch="0,1">
<property name="leftMargin">
<number>18</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="newLocationLabel">
<property name="text">
<string>New &amp;location:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QStackedWidget" name="newLocationStack">
<widget class="PathButton" name="newLocationButton"/>
<widget class="QLineEdit" name="newLocationEdit"/>
</widget>
</item>
<item row="1" column="0" colspan="2">
<widget class="QRadioButton" name="moveDataRadio">
<property name="text">
<string>&amp;Move from the current folder</string>
</property>
</widget>
</item>
<item row="2" column="0" colspan="2">
<widget class="QRadioButton" name="findDataRadio">
<property name="text">
<string>Local data is &amp;already there</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QDialogButtonBox" name="dialogButtons">
<property name="orientation">

View File

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>250</width>
<height>265</height>
<width>248</width>
<height>297</height>
</rect>
</property>
<property name="windowTitle">
@ -18,106 +18,98 @@
<enum>QLayout::SetFixedSize</enum>
</property>
<item>
<widget class="QLabel" name="sourceSectionLabel">
<property name="styleSheet">
<string notr="true">font-weight:bold</string>
</property>
<property name="text">
<widget class="QGroupBox" name="sourceSection">
<property name="title">
<string>Source</string>
</property>
<layout class="QGridLayout" name="sourceSectionLayout" columnstretch="0,1">
<item row="0" column="0" colspan="2">
<widget class="QRadioButton" name="localSessionRadio">
<property name="text">
<string>Start &amp;Local Session</string>
</property>
</widget>
</item>
<item row="1" column="0" colspan="2">
<widget class="QRadioButton" name="remoteSessionRadio">
<property name="text">
<string>Connect to &amp;Remote Session</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="hostLabel">
<property name="text">
<string>&amp;Host:</string>
</property>
<property name="buddy">
<cstring>hostEdit</cstring>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="hostEdit"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="portLabel">
<property name="text">
<string>&amp;Port:</string>
</property>
<property name="buddy">
<cstring>portSpin</cstring>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QSpinBox" name="portSpin">
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>65535</number>
</property>
</widget>
</item>
<item row="4" column="0" colspan="2">
<widget class="QCheckBox" name="authCheck">
<property name="text">
<string>&amp;Authentication required</string>
</property>
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="usernameLabel">
<property name="text">
<string>&amp;Username:</string>
</property>
<property name="buddy">
<cstring>usernameEdit</cstring>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QLineEdit" name="usernameEdit"/>
</item>
<item row="6" column="0">
<widget class="QLabel" name="passwordLabel">
<property name="text">
<string>Pass&amp;word:</string>
</property>
<property name="buddy">
<cstring>passwordEdit</cstring>
</property>
</widget>
</item>
<item row="6" column="1">
<widget class="QLineEdit" name="passwordEdit">
<property name="echoMode">
<enum>QLineEdit::Password</enum>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<layout class="QGridLayout" name="sourceSectionLayout" columnstretch="0,1">
<property name="leftMargin">
<number>18</number>
</property>
<item row="0" column="0" colspan="2">
<widget class="QRadioButton" name="localSessionRadio">
<property name="text">
<string>Start &amp;Local Session</string>
</property>
</widget>
</item>
<item row="1" column="0" colspan="2">
<widget class="QRadioButton" name="remoteSessionRadio">
<property name="text">
<string>Connect to &amp;Remote Session</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="hostLabel">
<property name="text">
<string>&amp;Host:</string>
</property>
<property name="buddy">
<cstring>hostEdit</cstring>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="hostEdit"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="portLabel">
<property name="text">
<string>&amp;Port:</string>
</property>
<property name="buddy">
<cstring>portSpin</cstring>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QSpinBox" name="portSpin">
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>65535</number>
</property>
</widget>
</item>
<item row="4" column="0" colspan="2">
<widget class="QCheckBox" name="authCheck">
<property name="text">
<string>&amp;Authentication required</string>
</property>
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="usernameLabel">
<property name="text">
<string>&amp;Username:</string>
</property>
<property name="buddy">
<cstring>usernameEdit</cstring>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QLineEdit" name="usernameEdit"/>
</item>
<item row="6" column="0">
<widget class="QLabel" name="passwordLabel">
<property name="text">
<string>Pass&amp;word:</string>
</property>
<property name="buddy">
<cstring>passwordEdit</cstring>
</property>
</widget>
</item>
<item row="6" column="1">
<widget class="QLineEdit" name="passwordEdit">
<property name="echoMode">
<enum>QLineEdit::Password</enum>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QDialogButtonBox" name="dialogButtons">
<property name="orientation">
@ -139,12 +131,12 @@
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>124</x>
<y>244</y>
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel">
<x>124</x>
<y>132</y>
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>
@ -155,12 +147,12 @@
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>124</x>
<y>244</y>
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel">
<x>124</x>
<y>132</y>
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>

View File

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>138</width>
<height>315</height>
<width>139</width>
<height>316</height>
</rect>
</property>
<property name="windowTitle">
@ -18,174 +18,247 @@
<enum>QLayout::SetFixedSize</enum>
</property>
<item>
<widget class="QLabel" name="currentSessionSectionLabel">
<property name="styleSheet">
<string notr="true">font-weight:bold</string>
</property>
<property name="text">
<widget class="QGroupBox" name="currentSessionSection">
<property name="title">
<string>Current Session</string>
</property>
<layout class="QGridLayout" name="currentSessionSectionLayout" columnstretch="0,1">
<item row="0" column="0">
<widget class="QLabel" name="currentUploadedLabel">
<property name="text">
<string>Uploaded:</string>
</property>
<property name="buddy">
<cstring>currentUploadedValueLabel</cstring>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="currentUploadedValueLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="currentDownloadedLabel">
<property name="text">
<string>Downloaded:</string>
</property>
<property name="buddy">
<cstring>currentDownloadedValueLabel</cstring>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="currentDownloadedValueLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="currentRatioLabel">
<property name="text">
<string>Ratio:</string>
</property>
<property name="buddy">
<cstring>currentRatioValueLabel</cstring>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="currentRatioValueLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="currentDurationLabel">
<property name="text">
<string>Duration:</string>
</property>
<property name="buddy">
<cstring>currentDurationValueLabel</cstring>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="currentDurationValueLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<layout class="QGridLayout" name="currentSessionSectionLayout" columnstretch="0,1">
<property name="leftMargin">
<number>18</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="currentUploadedLabel">
<property name="text">
<string>Uploaded:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="currentUploadedValueLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="currentDownloadedLabel">
<property name="text">
<string>Downloaded:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="currentDownloadedValueLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="currentRatioLabel">
<property name="text">
<string>Ratio:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="currentRatioValueLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="currentDurationLabel">
<property name="text">
<string>Duration:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="currentDurationValueLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="totalSectionSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>1</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="totalSectionLabel">
<property name="styleSheet">
<string notr="true">font-weight:bold</string>
</property>
<property name="text">
<widget class="QGroupBox" name="totalSection">
<property name="title">
<string>Total</string>
</property>
<layout class="QGridLayout" name="totalSectionLayout" columnstretch="0,1">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="startCountLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="totalUploadedLabel">
<property name="text">
<string>Uploaded:</string>
</property>
<property name="buddy">
<cstring>totalUploadedValueLabel</cstring>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="totalUploadedValueLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="totalDownloadedLabel">
<property name="text">
<string>Downloaded:</string>
</property>
<property name="buddy">
<cstring>totalDownloadedValueLabel</cstring>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="totalDownloadedValueLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="totalRatioLabel">
<property name="text">
<string>Ratio:</string>
</property>
<property name="buddy">
<cstring>totalRatioValueLabel</cstring>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="totalRatioValueLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="totalDurationLabel">
<property name="text">
<string>Duration:</string>
</property>
<property name="buddy">
<cstring>totalDurationValueLabel</cstring>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="totalDurationValueLabel">
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="text">
<string notr="true">...</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<layout class="QGridLayout" name="totalSectionLayout" columnstretch="0,1">
<property name="leftMargin">
<number>18</number>
</property>
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="startCountLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="totalUploadedLabel">
<property name="text">
<string>Uploaded:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="totalUploadedValueLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="totalDownloadedLabel">
<property name="text">
<string>Downloaded:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="totalDownloadedValueLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="totalRatioLabel">
<property name="text">
<string>Ratio:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="totalRatioValueLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="totalDurationLabel">
<property name="text">
<string>Duration:</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="totalDurationValueLabel">
<property name="text">
<string notr="true">...</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QDialogButtonBox" name="dialogButtons">
<property name="orientation">
@ -207,12 +280,12 @@
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>71</x>
<y>282</y>
<x>20</x>
<y>20</y>
</hint>
<hint type="destinationlabel">
<x>71</x>
<y>151</y>
<x>20</x>
<y>20</y>
</hint>
</hints>
</connection>

View File

@ -18,50 +18,42 @@
</property>
<layout class="QVBoxLayout" name="dialogLayout">
<item>
<widget class="QLabel" name="filesSectionLabel">
<property name="styleSheet">
<string notr="true">font-weight:bold</string>
</property>
<property name="text">
<widget class="QGroupBox" name="filesSection">
<property name="title">
<string>Tracker Announce URLs</string>
</property>
<layout class="QGridLayout" name="filesSectionLayout">
<item row="0" column="0">
<widget class="QLabel" name="backupLabel">
<property name="text">
<string>To add a backup URL, add it on the next line after a primary URL.</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="primaryLabel">
<property name="text">
<string>To add a new primary URL, add it after a blank line.</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QPlainTextEdit" name="trackerList">
<property name="tabChangesFocus">
<bool>true</bool>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="defaultsLabel">
<property name="text">
<string>Also see Default Public Trackers in Edit &gt; Preferences &gt; Network</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<layout class="QGridLayout" name="filesSectionLayout" columnstretch="0">
<property name="leftMargin">
<number>18</number>
</property>
<item row="1" column="0">
<widget class="QLabel" name="primaryLabel">
<property name="text">
<string>To add a new primary URL, add it after a blank line.</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QPlainTextEdit" name="trackerList">
<property name="tabChangesFocus">
<bool>true</bool>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="backupLabel">
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;To add a backup URL, add it on the next line after a primary URL.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="defaultsLabel">
<property name="text">
<string>Also see Default Public Trackers in Edit &gt; Preferences &gt; Network</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QDialogButtonBox" name="dialogButtons">
<property name="orientation">