WrapperSettings: Use Ui through membership instead of inheritance.
This commit is contained in:
parent
536078748b
commit
7b308d7c90
|
@ -1,7 +1,7 @@
|
||||||
import re
|
import re
|
||||||
import shutil
|
import shutil
|
||||||
from logging import getLogger
|
from logging import getLogger
|
||||||
from typing import Dict
|
from typing import Dict, Optional
|
||||||
|
|
||||||
from PyQt5.QtCore import pyqtSignal, QSettings, QSize, Qt, QMimeData, pyqtSlot, QCoreApplication
|
from PyQt5.QtCore import pyqtSignal, QSettings, QSize, Qt, QMimeData, pyqtSlot, QCoreApplication
|
||||||
from PyQt5.QtGui import QDrag, QDropEvent, QDragEnterEvent, QDragMoveEvent, QFont, QMouseEvent
|
from PyQt5.QtGui import QDrag, QDropEvent, QDragEnterEvent, QDragMoveEvent, QFont, QMouseEvent
|
||||||
|
@ -113,15 +113,16 @@ class WrapperWidget(QFrame):
|
||||||
drag.exec_(Qt.MoveAction)
|
drag.exec_(Qt.MoveAction)
|
||||||
|
|
||||||
|
|
||||||
class WrapperSettings(QWidget, Ui_WrapperSettings):
|
class WrapperSettings(QWidget):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super(WrapperSettings, self).__init__()
|
super(WrapperSettings, self).__init__()
|
||||||
self.setupUi(self)
|
self.ui = Ui_WrapperSettings()
|
||||||
|
self.ui.setupUi(self)
|
||||||
|
|
||||||
self.wrappers: Dict[str, WrapperWidget] = {}
|
self.wrappers: Dict[str, WrapperWidget] = {}
|
||||||
self.app_name: str
|
self.app_name: str = "default"
|
||||||
|
|
||||||
self.wrapper_scroll = QScrollArea(self.widget_stack)
|
self.wrapper_scroll = QScrollArea(self.ui.widget_stack)
|
||||||
self.wrapper_scroll.setWidgetResizable(True)
|
self.wrapper_scroll.setWidgetResizable(True)
|
||||||
self.wrapper_scroll.setSizeAdjustPolicy(QScrollArea.AdjustToContents)
|
self.wrapper_scroll.setSizeAdjustPolicy(QScrollArea.AdjustToContents)
|
||||||
self.wrapper_scroll.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
|
self.wrapper_scroll.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
|
||||||
|
@ -130,18 +131,18 @@ class WrapperSettings(QWidget, Ui_WrapperSettings):
|
||||||
save_cb=self.save, parent=self.wrapper_scroll
|
save_cb=self.save, parent=self.wrapper_scroll
|
||||||
)
|
)
|
||||||
self.wrapper_scroll.setWidget(self.scroll_content)
|
self.wrapper_scroll.setWidget(self.scroll_content)
|
||||||
self.widget_stack.insertWidget(0, self.wrapper_scroll)
|
self.ui.widget_stack.insertWidget(0, self.wrapper_scroll)
|
||||||
|
|
||||||
self.core = RareCore.instance().core()
|
self.core = RareCore.instance().core()
|
||||||
|
|
||||||
self.add_button.clicked.connect(self.add_button_pressed)
|
self.ui.add_button.clicked.connect(self.add_button_pressed)
|
||||||
self.settings = QSettings()
|
self.settings = QSettings()
|
||||||
|
|
||||||
self.wrapper_scroll.horizontalScrollBar().rangeChanged.connect(self.adjust_scrollarea)
|
self.wrapper_scroll.horizontalScrollBar().rangeChanged.connect(self.adjust_scrollarea)
|
||||||
|
|
||||||
# lk: set object names for the stylesheet
|
# lk: set object names for the stylesheet
|
||||||
self.setObjectName(type(self).__name__)
|
self.setObjectName(type(self).__name__)
|
||||||
self.no_wrapper_label.setObjectName(f"{self.objectName()}Label")
|
self.ui.no_wrapper_label.setObjectName(f"{self.objectName()}Label")
|
||||||
self.wrapper_scroll.setObjectName(f"{self.objectName()}Scroll")
|
self.wrapper_scroll.setObjectName(f"{self.objectName()}Scroll")
|
||||||
self.wrapper_scroll.horizontalScrollBar().setObjectName(
|
self.wrapper_scroll.horizontalScrollBar().setObjectName(
|
||||||
f"{self.wrapper_scroll.objectName()}Bar")
|
f"{self.wrapper_scroll.objectName()}Bar")
|
||||||
|
@ -220,7 +221,7 @@ class WrapperSettings(QWidget, Ui_WrapperSettings):
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
self.widget_stack.setCurrentIndex(0)
|
self.ui.widget_stack.setCurrentIndex(0)
|
||||||
|
|
||||||
if widget := self.wrappers.get(show_text, None):
|
if widget := self.wrappers.get(show_text, None):
|
||||||
widget.deleteLater()
|
widget.deleteLater()
|
||||||
|
@ -251,8 +252,8 @@ class WrapperSettings(QWidget, Ui_WrapperSettings):
|
||||||
widget.deleteLater()
|
widget.deleteLater()
|
||||||
|
|
||||||
if not self.wrappers:
|
if not self.wrappers:
|
||||||
self.wrapper_scroll.setMaximumHeight(self.label_page.sizeHint().height())
|
self.wrapper_scroll.setMaximumHeight(self.ui.label_page.sizeHint().height())
|
||||||
self.widget_stack.setCurrentIndex(1)
|
self.ui.widget_stack.setCurrentIndex(1)
|
||||||
|
|
||||||
self.save()
|
self.save()
|
||||||
|
|
||||||
|
@ -290,16 +291,15 @@ class WrapperSettings(QWidget, Ui_WrapperSettings):
|
||||||
self.add_wrapper(wrapper, from_load=True)
|
self.add_wrapper(wrapper, from_load=True)
|
||||||
|
|
||||||
if not self.wrappers:
|
if not self.wrappers:
|
||||||
self.wrapper_scroll.setMaximumHeight(self.label_page.sizeHint().height())
|
self.wrapper_scroll.setMaximumHeight(self.ui.label_page.sizeHint().height())
|
||||||
self.widget_stack.setCurrentIndex(1)
|
self.ui.widget_stack.setCurrentIndex(1)
|
||||||
else:
|
else:
|
||||||
self.widget_stack.setCurrentIndex(0)
|
self.ui.widget_stack.setCurrentIndex(0)
|
||||||
|
|
||||||
self.save()
|
self.save()
|
||||||
|
|
||||||
|
|
||||||
class WrapperContainer(QWidget):
|
class WrapperContainer(QWidget):
|
||||||
drag_widget: QWidget
|
|
||||||
|
|
||||||
def __init__(self, save_cb, parent=None):
|
def __init__(self, save_cb, parent=None):
|
||||||
super(WrapperContainer, self).__init__(parent=parent)
|
super(WrapperContainer, self).__init__(parent=parent)
|
||||||
|
@ -310,6 +310,8 @@ class WrapperContainer(QWidget):
|
||||||
layout.setAlignment(Qt.AlignLeft | Qt.AlignTop)
|
layout.setAlignment(Qt.AlignLeft | Qt.AlignTop)
|
||||||
self.setLayout(layout)
|
self.setLayout(layout)
|
||||||
|
|
||||||
|
self.drag_widget: Optional[QWidget] = None
|
||||||
|
|
||||||
# lk: set object names for the stylesheet
|
# lk: set object names for the stylesheet
|
||||||
self.setObjectName(type(self).__name__)
|
self.setObjectName(type(self).__name__)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue