Skip to content

Commit 9c0cfee

Browse files
committed
refactor main window and layout
1 parent 25b174a commit 9c0cfee

3 files changed

Lines changed: 38 additions & 58 deletions

File tree

app/views/calculator/widget.py

Lines changed: 0 additions & 48 deletions
This file was deleted.

app/views/layouts/main_layout.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
from PySide6.QtWidgets import QVBoxLayout, QWidget
2+
from utils.display_utils import DisplayUtils
3+
from views.layouts.display_layout import DisplayLayout
4+
from views.layouts.button_layout import ButtonLayout
5+
6+
class MainLayout(QVBoxLayout):
7+
def __init__(self):
8+
super().__init__()
9+
10+
self.setSpacing(0)
11+
12+
displayLayout = DisplayLayout()
13+
displayUtils = DisplayUtils(displayLayout)
14+
buttonLayout = ButtonLayout(displayUtils)
15+
16+
displayWidget = QWidget()
17+
buttonWidget = QWidget()
18+
19+
displayWidget.setLayout(displayLayout)
20+
buttonWidget.setLayout(buttonLayout)
21+
22+
self.addWidget(displayWidget, 30)
23+
self.addWidget(buttonWidget, 70)

app/views/window.py

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,24 @@
1-
from views.calculator.widget import Widget as CalculatorWidget
21
from PySide6.QtGui import QIcon
3-
from qframelesswindow import FramelessMainWindow, StandardTitleBar
2+
from utils.display_utils import DisplayUtils
3+
from views.calculator.widget import Layout
4+
from views.calculator.widget import Widget as CalculatorWidget
5+
from views.layouts.main_layout import MainLayout
6+
from qframelesswindow.windows import WindowsFramelessWindow
7+
from qframelesswindow.titlebar import StandardTitleBar
48

5-
class Window(FramelessMainWindow):
9+
class Window(WindowsFramelessWindow):
610
def __init__(self):
711
super().__init__()
812

9-
self.setTitleBar(StandardTitleBar(self))
10-
11-
self.setWindowTitle("Calculator")
12-
self.setWindowIcon(QIcon(":/images/logo"))
13-
14-
self.setCentralWidget(CalculatorWidget())
15-
self.centralWidget().setContentsMargins(0,32,0,0)
13+
self.setLayout(MainLayout())
14+
self.layout().setContentsMargins(0,32,0,0)
1615

1716
self.setFixedSize(250, 350)
1817

18+
self._init_titlebar()
19+
20+
def _init_titlebar(self):
21+
self.setTitleBar(StandardTitleBar(self))
22+
self.setWindowIcon(QIcon(":/images/logo"))
23+
self.setWindowTitle("Calculator")
1924
self.titleBar.raise_()

0 commit comments

Comments
 (0)