Preferences.py 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import inspect
  2. import re
  3. from PySide2 import QtWidgets
  4. from PySide2 import QtWidgets, QtGui
  5. from PySide2.QtWidgets import *
  6. from PySide2.QtCore import *
  7. from PySide2.QtGui import *
  8. from ui.ui_Preferences import Ui_Preferences
  9. from ui.ui_MainWindows import Ui_MainWindow
  10. from ui.myui import set_font_size, get_font_size
  11. class PreferencesWindows(Ui_Preferences, QDialog):
  12. def __init__(self, mainWindow:Ui_MainWindow) -> None:
  13. super().__init__()
  14. self.setupUi(self)
  15. self.listWidget.itemActivated.connect(self.change_list_widget)
  16. self.move(mainWindow.x()+(mainWindow.width()-self.width())/2,mainWindow.y()+(mainWindow.height()-self.height())/2)
  17. self.mainWindow = mainWindow
  18. self.btn_ok.clicked.connect(self.ok)
  19. self.btn_apply.clicked.connect(self.apply)
  20. self.btn_reset.clicked.connect(self.reset)
  21. self.btn_save.clicked.connect(self.view_save)
  22. self.font_family.addItems(QFontDatabase().families())
  23. self.sys_font_family.addItems(QFontDatabase().families())
  24. text_font_size, text_font_family, sys_font_size, sys_font_family = get_font_size(mainWindow)
  25. self.set_font_widget_info(text_font_size, text_font_family, sys_font_size, sys_font_family)
  26. def set_font_widget_info(self, text_font_size, text_font_family, sys_font_size, sys_font_family):
  27. self.font_size.setValue(text_font_size)
  28. self.font_family.setCurrentText(text_font_family)
  29. self.sys_font_size.setValue(sys_font_size)
  30. self.sys_font_family.setCurrentText(sys_font_family)
  31. def change_list_widget(self, item:QListWidgetItem):
  32. index = self.listWidget.currentIndex()
  33. self.stackedWidget.setCurrentIndex(index)
  34. def view_set(self):
  35. text_font_size = self.font_size.value()
  36. text_font_family = self.font_family.currentText()
  37. sys_font_size = self.sys_font_size.value()
  38. sys_font_family = self.sys_font_family.currentText()
  39. set_font_size(self.mainWindow, text_font_size, text_font_family,sys_font_size,sys_font_family)
  40. self.mainWindow.GUI.ViewSet(text_font_size, text_font_family,sys_font_size,sys_font_family)
  41. def view_save(self):
  42. text_font_size = self.font_size.value()
  43. text_font_family = self.font_family.currentText()
  44. sys_font_size = self.sys_font_size.value()
  45. sys_font_family = self.sys_font_family.currentText()
  46. self.mainWindow.GUI.ViewSetDefault(text_font_size, text_font_family,sys_font_size,sys_font_family)
  47. def reset(self):
  48. self.mainWindow.GUI.ViewGetDefault()
  49. self.set_font_widget_info(
  50. self.mainWindow.GUI.TextFontSize,
  51. self.mainWindow.GUI.TextFont,
  52. self.mainWindow.GUI.SysFontSize,
  53. self.mainWindow.GUI.SysFont)
  54. def apply(self):
  55. self.view_set()
  56. def ok(self):
  57. self.view_set()
  58. self.close()