diff --git a/b_asic/GUI/gui_interface.py b/b_asic/GUI/gui_interface.py
index 760e46449c8e074a1e91f4e3bf73edd5cccd4501..9265a48d28e866edd6946182f39da94f297672b3 100644
--- a/b_asic/GUI/gui_interface.py
+++ b/b_asic/GUI/gui_interface.py
@@ -1,7 +1,7 @@
 # -*- coding: utf-8 -*-
 # Originally generated from QT designer, but now manually maintained
 
-from qtpy import QtCore, QtWidgets
+from qtpy import QtCore, QtGui, QtWidgets
 
 
 class Ui_main_window(object):
@@ -9,10 +9,44 @@ class Ui_main_window(object):
         main_window.setObjectName("main_window")
         main_window.setEnabled(True)
         main_window.resize(897, 633)
+        sizePolicy = QtWidgets.QSizePolicy(
+            QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred
+        )
+        sizePolicy.setHorizontalStretch(0)
+        sizePolicy.setVerticalStretch(0)
+        sizePolicy.setHeightForWidth(main_window.sizePolicy().hasHeightForWidth())
+        main_window.setSizePolicy(sizePolicy)
         self.centralwidget = QtWidgets.QWidget(main_window)
+        sizePolicy = QtWidgets.QSizePolicy(
+            QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred
+        )
+        sizePolicy.setHorizontalStretch(0)
+        sizePolicy.setVerticalStretch(0)
+        sizePolicy.setHeightForWidth(
+            self.centralwidget.sizePolicy().hasHeightForWidth()
+        )
+        self.centralwidget.setSizePolicy(sizePolicy)
         self.centralwidget.setObjectName("centralwidget")
-        self.operation_box = QtWidgets.QGroupBox(self.centralwidget)
-        self.operation_box.setGeometry(QtCore.QRect(10, 10, 201, 531))
+        self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget)
+        self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
+        self.horizontalLayout.setSpacing(0)
+        self.horizontalLayout.setObjectName("horizontalLayout")
+        self.splitter = QtWidgets.QSplitter(self.centralwidget)
+        self.splitter.setOrientation(QtCore.Qt.Horizontal)
+        self.splitter.setHandleWidth(0)
+        self.splitter.setObjectName("splitter")
+        # self.view = QtWidgets.QGraphicsView(self.splitter)
+        # self.view.setAlignment(
+        #     QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop
+        # )
+        # self.view.setRenderHints(
+        #     QtGui.QPainter.Antialiasing | QtGui.QPainter.TextAntialiasing
+        # )
+        # self.view.setViewportUpdateMode(QtWidgets.QGraphicsView.FullViewportUpdate)
+        # self.view.setObjectName("view")
+        self.horizontalLayout.addWidget(self.splitter)
+        self.operation_box = QtWidgets.QGroupBox(self.splitter)
+        # self.operation_box.setGeometry(QtCore.QRect(10, 10, 201, 531))
         self.operation_box.setLayoutDirection(QtCore.Qt.LeftToRight)
         self.operation_box.setAutoFillBackground(False)
         self.operation_box.setStyleSheet(
@@ -34,10 +68,28 @@ class Ui_main_window(object):
         self.operation_box.setFlat(False)
         self.operation_box.setCheckable(False)
         self.operation_box.setObjectName("operation_box")
+        sizePolicy = QtWidgets.QSizePolicy(
+            QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred
+        )
+        sizePolicy.setHorizontalStretch(0)
+        sizePolicy.setVerticalStretch(0)
+        sizePolicy.setHeightForWidth(
+            self.operation_box.sizePolicy().hasHeightForWidth()
+        )
+        self.operation_box.setSizePolicy(sizePolicy)
         self.operation_list = QtWidgets.QToolBox(self.operation_box)
         self.operation_list.setGeometry(QtCore.QRect(10, 20, 171, 271))
         self.operation_list.setAutoFillBackground(False)
         self.operation_list.setObjectName("operation_list")
+        sizePolicy = QtWidgets.QSizePolicy(
+            QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred
+        )
+        sizePolicy.setHorizontalStretch(0)
+        sizePolicy.setVerticalStretch(0)
+        sizePolicy.setHeightForWidth(
+            self.operation_list.sizePolicy().hasHeightForWidth()
+        )
+        self.operation_list.setSizePolicy(sizePolicy)
         self.core_operations_page = QtWidgets.QWidget()
         self.core_operations_page.setGeometry(QtCore.QRect(0, 0, 171, 217))
         self.core_operations_page.setObjectName("core_operations_page")
diff --git a/b_asic/GUI/main_window.py b/b_asic/GUI/main_window.py
index d0aad22fe4aea807e8c1a2dbb08626bce31ff2f4..e6c5e19258f3cff5cf7053db241d4f43c5c7863f 100644
--- a/b_asic/GUI/main_window.py
+++ b/b_asic/GUI/main_window.py
@@ -78,7 +78,7 @@ class SFGMainWindow(QMainWindow):
         self._ui = Ui_main_window()
         self._ui.setupUi(self)
         self.setWindowIcon(QIcon("small_logo.png"))
-        self._scene = QGraphicsScene(self)
+        self._scene = QGraphicsScene(self._ui.splitter)
         self._operations_from_name: Dict[str, Operation] = {}
         self._zoom = 1
         self._drag_operation_scenes: Dict[DragButton, "QGraphicsProxyWidget"] = {}
@@ -95,7 +95,7 @@ class SFGMainWindow(QMainWindow):
         self._ports: Dict[DragButton, List[PortButton]] = {}
 
         # Create Graphics View
-        self._graphics_view = QGraphicsView(self._scene, self)
+        self._graphics_view = QGraphicsView(self._scene, self._ui.splitter)
         self._graphics_view.setRenderHint(QPainter.Antialiasing)
         self._graphics_view.setGeometry(
             self._ui.operation_box.width(), 20, self.width(), self.height()