|
|
@@ -23,6 +23,7 @@ class InstanceModel(QAbstractTableModel): |
|
|
|
def __init__(self, instances=[]): |
|
|
|
super().__init__() |
|
|
|
self.instances = instances |
|
|
|
self.instances.sort(key=lambda e: e[1]) |
|
|
|
|
|
|
|
def data(self, index, role): |
|
|
|
if role == Qt.DisplayRole: |
|
|
@@ -36,8 +37,13 @@ class InstanceModel(QAbstractTableModel): |
|
|
|
# we don't show id's, so -1 |
|
|
|
if len(self.instances): |
|
|
|
return len(self.instances[0]) - 1 |
|
|
|
return 0 |
|
|
|
|
|
|
|
return 0 |
|
|
|
|
|
|
|
def headerData(self, section, orientation, role): |
|
|
|
headers = ['Nom', 'Adresse', 'Région', 'Statut'] |
|
|
|
if role == Qt.DisplayRole and orientation == Qt.Horizontal: |
|
|
|
return headers[section] |
|
|
|
|
|
|
|
# UI Classes |
|
|
|
class UserDialog(QDialog, Ui_userDialog): |
|
|
|
""" A dialog to add and edit users""" |
|
|
@@ -86,6 +92,7 @@ class MainWindow(QMainWindow, Ui_MainWindow): |
|
|
|
self.instance_model = InstanceModel(instances=instances) |
|
|
|
self.instanceView.setModel(self.instance_model) |
|
|
|
self.instanceView.selectionModel().selectionChanged.connect(self.change_instance_selection) |
|
|
|
self.instanceView.setSelectionBehavior(self.instanceView.SelectRows) |
|
|
|
self.destroyButton.pressed.connect(self.destroy_instance) |
|
|
|
self.refreshButton.pressed.connect(self.refresh_instances) |
|
|
|
|
|
|
@@ -127,6 +134,8 @@ class MainWindow(QMainWindow, Ui_MainWindow): |
|
|
|
def refresh_instances(self): |
|
|
|
QApplication.setOverrideCursor(Qt.WaitCursor) |
|
|
|
self.instance_model.instances = ovh_api.get_instances() |
|
|
|
# sorting by name |
|
|
|
self.instance_model.instances.sort(key=lambda e: e[1]) |
|
|
|
self.instance_model.layoutChanged.emit() |
|
|
|
QApplication.restoreOverrideCursor() |
|
|
|
|
|
|
|