├── README.md
├── blue.qbtheme
├── build.bat
├── src
├── config.json
├── icons
│ ├── arrow_down.svg
│ ├── arrow_down_disabled.svg
│ ├── branch_closed.svg
│ ├── branch_open.svg
│ ├── check.svg
│ ├── checkbox_checked.svg
│ ├── checkbox_indeterminate.svg
│ ├── checkbox_unchecked.svg
│ ├── chevron_down.svg
│ ├── chevron_down_disabled.svg
│ ├── chevron_up.svg
│ └── chevron_up_disabled.svg
├── resources.qrc
└── stylesheet.qss
└── tools
└── rcc.exe
/README.md:
--------------------------------------------------------------------------------
1 | # qBittorrent Theme
2 |
3 |

4 |
5 | A dark blue theme for [qBittorrent](https://www.qbittorrent.org/), based on the [Nord](https://www.nordtheme.com/) colour scheme.
6 |
7 | ## Installation
8 |
9 | 1. Download the theme file `blue.qbtheme`.
10 | 2. Open qBittorrent and go to Tools > Options and then enable "Use custom UI theme"
11 | 3. Browse for the `blue.qbtheme` file, select it and apply.
12 | 4. Restart qBittorrent for the changes to take effect
13 |
14 | ## Create your own
15 |
16 | To generate your own .qbtheme file:
17 |
18 | 1. Run `./build.bat` to generate the `blue.qbtheme` file.
19 |
20 | Look through `stylesheet.qss`, it contains all the style changes and refer to [QT Style Sheets Examples](https://doc.qt.io/qt-6/stylesheet-examples.html) if you wish.
21 |
--------------------------------------------------------------------------------
/blue.qbtheme:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zabooby/qbittorrent-config/b19a0b9277444b25ab3e1237c11ee30ca66a7592/blue.qbtheme
--------------------------------------------------------------------------------
/build.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | set SCRIPT_DIR=src
4 |
5 | set "themePath=blue.qbtheme"
6 |
7 | if exist "./tools/rcc.exe" (
8 | if exist "./src/resources.qrc" (
9 | "./tools/rcc.exe" ./src/resources.qrc -o %themePath% -binary
10 | @echo Compiled %themePath% binary.
11 | ) else (
12 | @echo resources.qrc file is missing.
13 | )
14 | ) else (
15 | @echo rcc.exe file is missing.
16 | )
17 |
--------------------------------------------------------------------------------
/src/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors": {
3 | "Palette.Window": "#434c5e",
4 | "Palette.WindowText": "#eceff4",
5 | "Palette.Base": "#2e3440",
6 | "Palette.AlternateBase": "#3b4252",
7 | "Palette.Text": "#eceff4",
8 | "Palette.ToolTipBase": "#4c566a",
9 | "Palette.ToolTipText": "#eceff4",
10 | "Palette.BrightText": "#b48ead",
11 | "Palette.Highlight": "#5e81ac",
12 | "Palette.HighlightedText": "#2e3440",
13 | "Palette.Button": "#4c566a",
14 | "Palette.ButtonText": "#eceff4",
15 | "Palette.Link": "#5e81ac",
16 | "Palette.LinkVisited": "#8fbcbb",
17 | "Palette.Light": "#4c566a",
18 | "Palette.Midlight": "#4c566a",
19 | "Palette.Mid": "#434c5e",
20 | "Palette.Dark": "#3b4252",
21 | "Palette.Shadow": "#2e3440",
22 | "Palette.PlaceholderText": "#81a1c1",
23 | "Palette.WindowTextDisabled": "#4c566a",
24 | "Palette.TextDisabled": "#4c566a",
25 | "Palette.ToolTipTextDisabled": "#4c566a",
26 | "Palette.BrightTextDisabled": "#4c566a",
27 | "Palette.HighlightedTextDisabled": "#4c566a",
28 | "Palette.ButtonTextDisabled": "#4c566a",
29 |
30 | "RSS.ReadArticle": "#81a1c1",
31 | "RSS.UnreadArticle": "#5e81ac",
32 |
33 | "Log.TimeStamp": "#e5e9f0",
34 | "Log.Normal": "#eceff4",
35 | "Log.Info": "#5e81ac",
36 | "Log.Warning": "#d08770",
37 | "Log.Critical": "#bf616a",
38 | "Log.BannedPeer": "#bf616a",
39 |
40 | "TransferList.Downloading": "#a3be8c",
41 | "TransferList.StalledDownloading": "#81a1c1",
42 | "TransferList.DownloadingMetadata": "#a3be8c",
43 | "TransferList.ForcedDownloadingMetadata": "#88c0d0",
44 | "TransferList.ForcedDownloading": "#a3be8c",
45 | "TransferList.Uploading": "#5e81ac",
46 | "TransferList.StalledUploading": "#5e81ac",
47 | "TransferList.ForcedUploading": "#5e81ac",
48 | "TransferList.QueuedDownloading": "#8fbcbb",
49 | "TransferList.QueuedUploading": "#8fbcbb",
50 | "TransferList.CheckingDownloading": "#8fbcbb",
51 | "TransferList.CheckingUploading": "#8fbcbb",
52 | "TransferList.CheckingResumeData": "#8fbcbb",
53 | "TransferList.PausedDownloading": "#d08770",
54 | "TransferList.PausedUploading": "#d08770",
55 | "TransferList.Moving": "#8fbcbb",
56 | "TransferList.MissingFiles": "#bf616a",
57 | "TransferList.Error": "#bf616a"
58 | }
59 | }
--------------------------------------------------------------------------------
/src/icons/arrow_down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/arrow_down_disabled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/branch_closed.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/branch_open.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/check.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/checkbox_checked.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/checkbox_indeterminate.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/checkbox_unchecked.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/chevron_down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/chevron_down_disabled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/chevron_up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/icons/chevron_up_disabled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/resources.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 | stylesheet.qss
4 | config.json
5 | icons/checkbox_checked.svg
6 | icons/checkbox_unchecked.svg
7 | icons/checkbox_indeterminate.svg
8 | icons/check.svg
9 | icons/arrow_down.svg
10 | icons/arrow_down_disabled.svg
11 | icons/chevron_up.svg
12 | icons/chevron_up_disabled.svg
13 | icons/chevron_down.svg
14 | icons/chevron_down_disabled.svg
15 | icons/branch_open.svg
16 | icons/branch_closed.svg
17 |
18 |
--------------------------------------------------------------------------------
/src/stylesheet.qss:
--------------------------------------------------------------------------------
1 | /* Global styles */
2 | QWidget {
3 | background-color: #3b4252;
4 | color: #eceff4;
5 | selection-background-color: #81a1c1;
6 | selection-color: #eceff4;
7 | }
8 |
9 | /* Tabs */
10 | QTabWidget::pane {
11 | margin: 0;
12 | padding: 0;
13 | }
14 |
15 | QTabBar::tab {
16 | background-color: #3b4252;
17 | padding: 6px 16px;
18 | }
19 |
20 | QTabBar::tab:selected {
21 | background-color: #434c5e;
22 | border-bottom: 1px solid #5e81ac;
23 | }
24 |
25 | QMenuBar {
26 | background-color: #2e3440;
27 | }
28 |
29 | /* QMenuBar */
30 | QMenuBar::item {
31 | padding: 4px 8px;
32 | }
33 |
34 | QMenuBar::item:selected {
35 | background-color: #4c566a;
36 | }
37 |
38 | QMenuBar::item:pressed {
39 | background-color: #4c566a;
40 | }
41 |
42 | /* QMenu */
43 | QMenu {
44 | border: 1px solid #4c566a;
45 | border-radius: 2px;
46 | padding: 4px;
47 | }
48 |
49 | /* The items inside the menu dropdown of things like "File", "Edit", "View", etc */
50 | QMenu::item {
51 | padding: 4px 22px 4px 8px;
52 | border-radius: 4px;
53 | }
54 |
55 | QMenu::item:selected {
56 | background-color: #4c566a;
57 | }
58 |
59 | QMenu::separator {
60 | background-color: #4c566a;
61 | height: 1px;
62 | margin: 4px;
63 | }
64 |
65 | QMenu::icon {
66 | padding: 0 5px;
67 | }
68 |
69 | QMenu::indicator {
70 | height: 16px;
71 | width: 16px;
72 | left: 5px;
73 | }
74 |
75 | QMenu::right-arrow {
76 | width: 18px;
77 | height: 18px;
78 | padding-right: 5px;
79 | image: url(':/uitheme/icons/branch_closed.svg');
80 | }
81 |
82 | QMenu::indicator:checked {
83 | image: url(':/uitheme/icons/check.svg');
84 | }
85 |
86 | QStatusBar {
87 | background-color: #2e3440;
88 | }
89 |
90 | QStatusBar::item {
91 | border: none;
92 | padding: 4px;
93 | }
94 |
95 | QStatusBar QLabel, QStatusBar QWidget, QStatusBar QPushButton, QStatusBar QPushButton:active {
96 | background-color: #2e3440;
97 | }
98 |
99 | /* ToolBar */
100 | QToolBar {
101 | border: none;
102 | spacing: 2px;
103 | padding: 0px 4px;
104 | }
105 |
106 | QToolBar QToolButton {
107 | background-color: #3b4252;
108 | padding: 6px;
109 | border-radius: 4px;
110 | }
111 |
112 | QToolBar QToolButton:hover {
113 | background-color: #4c566a;
114 | }
115 |
116 | QToolBar QToolButton:checked {
117 | background-color: #85c1dc;
118 | }
119 |
120 | QToolBar::separator {
121 | width: 2px;
122 | margin: 4px 0;
123 | }
124 |
125 | /* QToolTip */
126 | QToolTip {
127 | background-color: #434c5e;
128 | border: 1px solid #4c566a;
129 | color: #eceff4;
130 | padding: 3px;
131 | }
132 |
133 | /* Button in LineEdit */
134 | QLineEdit QToolButton, QLineEdit QToolButton:hover {
135 | background-color: transparent;
136 | border-radius: 4px;
137 | border: none;
138 | margin-right: 2px;
139 | }
140 |
141 | /* Text fields */
142 | QLineEdit, QTextEdit, QPlainTextEdit {
143 | background-color: #434c5e;
144 | border: 2px solid #3b4252;
145 | border-radius: 4px;
146 | padding: 4px 8px;
147 | color: #eceff4;
148 | }
149 |
150 | QLineEdit:hover, QTextEdit:hover, QPlainTextEdit:hover {
151 | border: 1px solid #5e81ac;
152 | }
153 |
154 | QLineEdit:focus, QTextEdit:focus, QPlainTextEdit:focus {
155 | background-color: #4c566a;
156 | border: 1px solid #5e81ac;
157 | }
158 |
159 | QLineEdit:disabled, QTextEdit:disabled, QPlainTextEdit:disabled {
160 | background-color: #2e3440;
161 | border: 1px solid #4c566a;
162 | color: #4c566a;
163 | }
164 |
165 | /* Group boxes */
166 | QGroupBox {
167 | background-color: #3b4252;
168 | border: none;
169 | border-radius: 4px;
170 | font-weight: bold;
171 | padding-top: 20px;
172 | }
173 |
174 | QGroupBox:title {
175 | left: 10px;
176 | top: 8px;
177 | }
178 |
179 | QGroupBox QLabel, QGroupBox QCheckBox, QGroupBox QTextBrowser {
180 | background-color: #3b4252;
181 | }
182 |
183 | /* Frame */
184 | QFrame {
185 | border: none;
186 | }
187 |
188 | /* List view */
189 | /* The side panel on the left */
190 | QListView {
191 | background-color: #3b4252;
192 | border-radius: 4px;
193 | outline: none;
194 | }
195 |
196 | QListView::item {
197 | border-radius: 4px;
198 | padding: 4px;
199 | }
200 |
201 | QListView::item:hover {
202 | background-color: #4c566a;
203 | }
204 |
205 | QListView::item:selected:active {
206 | background-color: #4c566a;
207 | }
208 |
209 | /* Abstract item view */
210 | QAbstractItemView {
211 | alternate-background-color: #3b4252;
212 | }
213 |
214 | /* Header view */
215 | /* Table Heading */
216 | QHeaderView {
217 | background-color: #434c5e;
218 | }
219 |
220 | QHeaderView::up-arrow {
221 | width: 18px;
222 | height: 18px;
223 | image: url(':/uitheme/icons/chevron_up.svg');
224 | }
225 |
226 | QHeaderView::down-arrow {
227 | width: 18px;
228 | height: 18px;
229 | image: url(':/uitheme/icons/chevron_down.svg');
230 | }
231 |
232 | /* Table Heading */
233 | QHeaderView::section {
234 | background-color: #434c5e;
235 | border: none;
236 | border-left: 1px solid #3b4252;
237 | border-right: 1px solid #3b4252;
238 | padding: 2px 4px;
239 | }
240 |
241 | QHeaderView::section:first {
242 | border-left: none;
243 | }
244 |
245 | QHeaderView::section:last {
246 | border-right: none;
247 | }
248 |
249 | QHeaderView::section:hover {
250 | background-color: #4c566a;
251 | }
252 |
253 | /* TreeView */
254 | /* Weirdly seems to be the main area where you can see your transfers */
255 | QTreeView {
256 | background-color: #3b4252;
257 | }
258 |
259 | QTreeView::item {
260 | background-color: #3b4252;
261 | }
262 |
263 | QTreeView::item:hover, QTreeView::item:selected {
264 | background-color: #4c566a;
265 | }
266 |
267 | QTreeView QScrollBar:horizontal, QTreeView QScrollBar:vertical {
268 | background-color: #3b4252;
269 | }
270 |
271 | QTreeView::branch:has-children:open {
272 | image: url(':/uitheme/icons/branch_open.svg');
273 | }
274 |
275 | QTreeView::branch:has-children:closed {
276 | image: url(':/uitheme/icons/branch_closed.svg');
277 | }
278 |
279 | /* ScrollBars */
280 | ::corner {
281 | border: none;
282 | }
283 |
284 | QScrollBar:vertical {
285 | background-color: transparent;
286 | width: 14px;
287 | margin: 0px;
288 | }
289 |
290 | QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical {
291 | border: none;
292 | background-color: none;
293 | height: 0px;
294 | }
295 |
296 | QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical, QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {
297 | border: none;
298 | background-color: none;
299 | color: none;
300 | }
301 |
302 | QScrollBar:horizontal {
303 | background-color: transparent;
304 | height: 14px;
305 | margin: 0px;
306 | }
307 |
308 | QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal {
309 | border: none;
310 | background-color: none;
311 | width: 0px;
312 | }
313 |
314 | QScrollBar::left-arrow:horizontal, QScrollBar::right-arrow:horizontal, QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal {
315 | border: none;
316 | background-color: none;
317 | color: none;
318 | }
319 |
320 | QScrollBar::handle {
321 | background-color: #4c566a;
322 | border: 1px solid #4c566a;
323 | margin: 2px;
324 | }
325 |
326 | QScrollBar::handle:hover {
327 | background-color: #4c566a;
328 | border-color: #4c566a;
329 | }
330 |
331 | QScrollBar::handle:pressed {
332 | background-color: #4c566a;
333 | border-color: #4c566a;
334 | }
335 |
336 | QScrollBar::handle:vertical {
337 | min-height: 20px;
338 | }
339 |
340 | QScrollBar::handle:horizontal {
341 | min-width: 20px;
342 | }
343 |
344 | /* Buttons */
345 | /* The buttons like "Select All", "General", "Trackers", "Peers", etc */
346 | QPushButton {
347 | background-color: #3b4252;
348 | border: none;
349 | padding: 4px 12px;
350 | border-radius: 3px;
351 | }
352 |
353 | QPushButton:hover {
354 | background-color: #4c566a;
355 | }
356 |
357 | QPushButton:pressed {
358 | background-color: #4c566a;
359 | }
360 |
361 | QPushButton:disabled {
362 | background-color: #2e3440;
363 | }
364 |
365 | /* ToolButton */
366 | QToolButton {
367 | background-color: #4c566a;
368 | border-radius: 4px;
369 | border: none;
370 | padding: 6px;
371 | }
372 |
373 | QToolButton:hover {
374 | background-color: #4c566a;
375 | }
376 |
377 | QToolButton:pressed {
378 | background-color: #2e3440;
379 | }
380 |
381 | QToolButton:checked {
382 | background-color: #4c566a;
383 | }
384 |
385 | QToolButton:disabled {
386 | background-color: #2e3440;
387 | }
388 |
389 | /* QTableView */
390 | QTableView QLabel, QTableView QCheckBox {
391 | background-color: #434c5e;
392 | padding: 0 5px;
393 | }
394 |
395 | QTableView QSpinBox {
396 | background-color: #4c566a;
397 | border: none;
398 | }
399 |
400 | QTableView QComboBox, QTableView QLineEdit, QTableView QAbstractSpinBox {
401 | background-color: #434c5e;
402 | border-radius: 0;
403 | }
404 |
405 | /* QLabel */
406 | QLabel {
407 | background-color: transparent;
408 | }
409 |
410 | /* QDialog */
411 | QDialog QTabWidget QTextEdit, QDialog QTabWidget QWidget {
412 | background-color: #3b4252;
413 | border-radius: 0;
414 | }
415 |
416 | QDialog QScrollBar:horizontal, QDialog QScrollBar:vertical {
417 | background-color: #434c5e;
418 | }
419 |
420 | /* QProgressBar */
421 | QProgressBar {
422 | text-align: center;
423 | background-color: #4c566a;
424 | border-radius: 2px;
425 | color: #e5e9f0;
426 | margin: 2px 4px;
427 | }
428 |
429 | QProgressBar::chunk {
430 | background-color: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 0,
431 | stop: 0 #5e81ac, stop: 1 #81a1c1);
432 | border-radius: 2px;
433 | margin: 0px;
434 | }
435 |
436 | /* Combo Box */
437 | /* Basically normal dropdown lists (like github custom properties) */
438 | QComboBox {
439 | background-color: #434c5e;
440 | padding: 4px 8px;
441 | border-radius: 4px;
442 | }
443 |
444 | QComboBox:hover {
445 | border-color: #4c566a;
446 | }
447 |
448 | QComboBox:disabled {
449 | background-color: #2e3440;
450 | color: #4c566a;
451 | }
452 |
453 | QComboBox::drop-down {
454 | background-color: #3b4252;
455 | width: 20px;
456 | border: none;
457 | border-top-right-radius: 4px;
458 | border-bottom-right-radius: 4px;
459 | }
460 |
461 | QComboBox::down-arrow {
462 | image: url(':/uitheme/icons/arrow_down.svg');
463 | width: 20px;
464 | height: 20px;
465 | }
466 |
467 | QComboBox::down-arrow:disabled {
468 | image: url(':/uitheme/icons/arrow_down_disabled.svg');
469 | }
470 |
471 | QComboBox QAbstractItemView {
472 | background-color: #434c5e;
473 | padding: 3px 0;
474 | border: 1px solid #4c566a;
475 | border-radius: 0;
476 | }
477 |
478 | /* Spin Box */
479 | QAbstractSpinBox {
480 | background-color: #434c5e;
481 | border: 1px solid #4c566a;
482 | border-radius: 4px;
483 | padding: 4px 8px;
484 | }
485 |
486 | QAbstractSpinBox:hover {
487 | border: 1px solid #4c566a;
488 | }
489 |
490 | QAbstractSpinBox:focus {
491 | background-color: #4c566a;
492 | border: 1px solid #5e81ac;
493 | }
494 |
495 | QAbstractSpinBox:disabled {
496 | background-color: #2e3440;
497 | border: 1px solid #4c566a;
498 | color: #4c566a;
499 | }
500 |
501 | QAbstractSpinBox::up-button {
502 | border-radius: 4px;
503 | border-bottom-left-radius: 0;
504 | border-bottom-right-radius: 0;
505 | image: url(':/uitheme/icons/chevron_up.svg');
506 | }
507 |
508 | QAbstractSpinBox::up-button:disabled {
509 | image: url(':/uitheme/icons/chevron_up_disabled.svg');
510 | }
511 |
512 | QAbstractSpinBox::up-button:hover {
513 | background-color: #4c566a;
514 | }
515 |
516 | QAbstractSpinBox::up-button:pressed {
517 | background-color: #2e3440;
518 | }
519 |
520 | QAbstractSpinBox::down-button {
521 | border-radius: 4px;
522 | border-top-left-radius: 0;
523 | border-top-right-radius: 0;
524 | image: url(':/uitheme/icons/chevron_down.svg');
525 | }
526 | QAbstractSpinBox::down-button:disabled {
527 | image: url(':/uitheme/icons/chevron_down_disabled.svg');
528 | }
529 |
530 | QAbstractSpinBox::down-button:hover {
531 | background-color: #4c566a;
532 | }
533 |
534 | QAbstractSpinBox::down-button:pressed {
535 | background-color: #2e3440;
536 | }
537 |
538 | /* CheckBox */
539 | QCheckBox::indicator, QGroupBox::indicator, QTreeView::indicator {
540 | width: 17px;
541 | height: 17px;
542 | }
543 |
544 | QCheckBox::indicator:checked, QGroupBox::indicator:checked, QTreeView::indicator:checked {
545 | image: url(':/uitheme/icons/checkbox_checked.svg');
546 | }
547 |
548 | QCheckBox::indicator:unchecked, QGroupBox::indicator:unchecked, QTreeView::indicator:unchecked {
549 | image: url(':/uitheme/icons/checkbox_unchecked.svg');
550 | }
551 |
552 | QCheckBox::indicator:indeterminate, QGroupBox::indicator:indeterminate, QTreeView::indicator:indeterminate {
553 | image: url(':/uitheme/icons/checkbox_indeterminate.svg');
554 | }
555 |
556 | QCheckBox::branch:has-children:open {
557 | image: url(':/uitheme/icons/branch_open.svg');
558 | }
559 |
560 | QCheckBox::branch:has-children:closed {
561 | image: url(':/uitheme/icons/branch_closed.svg');
562 | }
563 |
564 | /* Sliders */
565 | QSlider {
566 | background-color: #3b4252;
567 | }
568 |
569 | QSlider::groove:horizontal {
570 | background-color: #2e3440;
571 | border-radius: 2px;
572 | border: none;
573 | height: 4px;
574 | }
575 |
576 | QSlider::handle:horizontal {
577 | background-color: #5e81ac;
578 | border-radius: 5px;
579 | border: none;
580 | height: 10px;
581 | width: 10px;
582 | margin: -3px 0;
583 | }
584 |
585 | QSlider::handle:horizontal:hover {
586 | background-color: #81a1c1;
587 | }
588 |
589 | QSlider::sub-page:horizontal {
590 | background-color: #5e81ac;
591 | border-radius: 2px;
592 | }
593 |
594 | QSlider::groove:vertical {
595 | background-color: #2e3440;
596 | border-radius: 2px;
597 | border: none;
598 | width: 4px;
599 | }
600 |
601 | QSlider::handle:vertical {
602 | background-color: #5e81ac;
603 | border-radius: 5px;
604 | border: none;
605 | height: 10px;
606 | width: 10px;
607 | margin: 0 -3px;
608 | }
609 |
610 | QSlider::handle:vertical:hover {
611 | background-color: #81a1c1;
612 | }
613 |
614 | QSlider::add-page:vertical {
615 | background-color: #5e81ac;
616 | border-radius: 2px;
617 | }
618 |
619 | QSplitter {
620 | background-color: #3b4252;
621 | }
622 |
623 | QRadioButton::indicator {
624 | border-radius: 5px;
625 | height: 10px;
626 | width: 10px;
627 | }
628 |
629 | QRadioButton::indicator::unchecked {
630 | border: 1px solid #4c566a;
631 | }
632 |
633 | QRadioButton::indicator::checked {
634 | border: none;
635 | background-color: #5e81ac;
636 | }
637 |
--------------------------------------------------------------------------------
/tools/rcc.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zabooby/qbittorrent-config/b19a0b9277444b25ab3e1237c11ee30ca66a7592/tools/rcc.exe
--------------------------------------------------------------------------------