From 9c001ff74e4a15ab0d3f622a9088267ba3f7bd5e Mon Sep 17 00:00:00 2001
From: "Anders H. Rebner" <anderhre@stud.ntnu.no>
Date: Fri, 24 Apr 2020 19:16:03 +0200
Subject: [PATCH] #95 SOITableView instantierer SOIWorkspaceWidget med database

---
 soitool/modules/module_predefined_codes.py |  2 +-
 soitool/soi_model_view.py                  | 13 +++++++++----
 2 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/soitool/modules/module_predefined_codes.py b/soitool/modules/module_predefined_codes.py
index e796454..6eb63d6 100644
--- a/soitool/modules/module_predefined_codes.py
+++ b/soitool/modules/module_predefined_codes.py
@@ -478,9 +478,9 @@ class PredefinedCodesTable(QTableWidget):
         """
         # Create QTableWidgetItem
         item_headline = QTableWidgetItem(text)
+        item_headline.setFont(HEADLINE_FONT)
         item_headline.setFlags(item_headline.flags() ^ Qt.ItemIsEditable)
         item_headline.setTextAlignment(Qt.AlignCenter)
-        item_headline.setFont(HEADLINE_FONT)
 
         # Insert row, item and make it span all columns
         self.insertRow(0)
diff --git a/soitool/soi_model_view.py b/soitool/soi_model_view.py
index 680d275..9f77f8b 100644
--- a/soitool/soi_model_view.py
+++ b/soitool/soi_model_view.py
@@ -26,7 +26,8 @@ class SOITableView(QTableView):
     Parameters
     ----------
     database : soitool.database.Database
-        Is used to create a QSqlDatabase from the database-file.
+        Is used to create a QSqlDatabase from the database-file,
+        and to instantiate SOIWorkspaceWidget.
     tab_widget : QTabWidget
         Is used to open a new tab.
 
@@ -38,8 +39,10 @@ class SOITableView(QTableView):
 
     def __init__(self, database, tab_widget):
         super().__init__()
+        self.database = database
+
         db = QSqlDatabase.addDatabase(DBTYPE, CONNAME)
-        db.setDatabaseName(database.db_path)
+        db.setDatabaseName(self.database.db_path)
         self.tab_widget = tab_widget
 
         if not db.open():
@@ -91,8 +94,10 @@ class SOITableView(QTableView):
         compressed_soi = self.model().index(row, 2).data()
 
         # Construct SOI and create SOIWorkspaceWidget
-        soi = construct_soi_from_serialized(compressed_soi, compressed=True)
-        tab = SOIWorkspaceWidget(soi)
+        soi = construct_soi_from_serialized(
+            compressed_soi, self.database, compressed=True
+        )
+        tab = SOIWorkspaceWidget(self.database, soi)
 
         # Add and select tab
         self.tab_widget.addTab(tab, soi.title)
-- 
GitLab