Skip to content

Commit 927ce8d

Browse files
authored
Merge branch 'master' into dialog-reorg-updated
2 parents 459d207 + 9832bd6 commit 927ce8d

2 files changed

Lines changed: 46 additions & 1 deletion

File tree

src/vorta/assets/UI/networks_page.ui

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,37 @@
4242
</property>
4343
</widget>
4444
</item>
45+
<item>
46+
<layout class="QHBoxLayout" name="wifiButtonsLayout">
47+
<item>
48+
<widget class="QPushButton" name="selectAllButton">
49+
<property name="text">
50+
<string>Select All</string>
51+
</property>
52+
</widget>
53+
</item>
54+
<item>
55+
<widget class="QPushButton" name="selectNoneButton">
56+
<property name="text">
57+
<string>Select None</string>
58+
</property>
59+
</widget>
60+
</item>
61+
<item>
62+
<spacer name="wifiButtonsSpacer">
63+
<property name="orientation">
64+
<enum>Qt::Horizontal</enum>
65+
</property>
66+
<property name="sizeHint" stdset="0">
67+
<size>
68+
<width>40</width>
69+
<height>20</height>
70+
</size>
71+
</property>
72+
</spacer>
73+
</item>
74+
</layout>
75+
</item>
4576
</layout>
4677
</item>
4778
<item row="0" column="0">

src/vorta/views/networks_page.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from PyQt6 import uic
22
from PyQt6.QtCore import Qt
3-
from PyQt6.QtWidgets import QCheckBox, QLabel, QListWidget, QListWidgetItem
3+
from PyQt6.QtWidgets import QCheckBox, QLabel, QListWidget, QListWidgetItem, QPushButton
44

55
from vorta.store.models import WifiSettingModel
66
from vorta.utils import get_asset, get_sorted_wifis
@@ -18,10 +18,14 @@ def __init__(self, parent=None, profile_provider=None):
1818
self.wifiListLabel: QLabel = self.findChild(QLabel, 'wifiListLabel')
1919
self.meteredNetworksCheckBox: QCheckBox = self.findChild(QCheckBox, 'meteredNetworksCheckBox')
2020
self.wifiListWidget: QListWidget = self.findChild(QListWidget, 'wifiListWidget')
21+
self.selectAllButton: QPushButton = self.findChild(QPushButton, 'selectAllButton')
22+
self.selectNoneButton: QPushButton = self.findChild(QPushButton, 'selectNoneButton')
2123

2224
# Connect signals
2325
self.meteredNetworksCheckBox.stateChanged.connect(self.on_metered_networks_state_changed)
2426
self.wifiListWidget.itemChanged.connect(self.save_wifi_item)
27+
self.selectAllButton.clicked.connect(self.select_all_wifi)
28+
self.selectNoneButton.clicked.connect(self.select_none_wifi)
2529
self.track_profile_change(self.populate_wifi, call_now=True)
2630

2731
def on_metered_networks_state_changed(self, state):
@@ -45,6 +49,16 @@ def populate_wifi(self):
4549
item.setCheckState(Qt.CheckState.Unchecked)
4650
self.wifiListWidget.addItem(item)
4751

52+
def select_all_wifi(self):
53+
self._set_all_wifi_check_state(Qt.CheckState.Checked)
54+
55+
def select_none_wifi(self):
56+
self._set_all_wifi_check_state(Qt.CheckState.Unchecked)
57+
58+
def _set_all_wifi_check_state(self, state):
59+
for i in range(self.wifiListWidget.count()):
60+
self.wifiListWidget.item(i).setCheckState(state)
61+
4862
def save_wifi_item(self, item):
4963
profile = self.profile()
5064
if profile:

0 commit comments

Comments
 (0)