-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain.py
98 lines (77 loc) · 2.81 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# -*- coding: utf-8 -*-
# cython: language_level = 3
__author__ = "C418____11 <553515788@qq.com>"
__version__ = "MSS-0.0.8Dev"
import sys
import traceback
import colorama
from C41811.Config import DefaultConfigPool
from C41811.Config import requireConfig
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWidgets import QMainWindow
from tqdm import tqdm
import FeatureLoader
from GlobalConfigs import init as init_configs
from Lib.StdColor import ColorWrite
from UI import RegisterUI
from UI.Main import UiMain
from UI.tools import getDefaultImage
_load_other_futures = requireConfig(
'', "FuturesLoad.yaml",
{
"Load": False,
}
).checkConfig()
def main():
QApplication.setAttribute(Qt.AA_EnableHighDpiScaling)
QApplication.setAttribute(Qt.AA_UseHighDpiPixmaps)
QApplication.setHighDpiScaleFactorRoundingPolicy(Qt.HighDpiScaleFactorRoundingPolicy.RoundPreferFloor)
app = QApplication(sys.argv)
init_configs()
FeatureLoader.load_default_features()
if _load_other_futures.get("Load", False) is True:
try:
FeatureLoader.load_other_features()
except Exception as e:
print("An error occurred while loading another futures:", file=sys.stderr)
traceback.print_exception(e)
window = QMainWindow()
# noinspection SpellCheckingInspection
default_data = "Qk1GAAAAAAAAADYAAAAoAAAAAgAAAAIAAAABABgAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAA/wD/AAAAAAAAAAD/AP8AAA=="
window.setWindowIcon(
QIcon(
getDefaultImage(
"./Textures/icon.png",
default_data
).scaled(
16, 16,
Qt.KeepAspectRatio
)
)
)
ui = UiMain(window)
ui.setupUi()
RegisterUI.menu.sort(key=lambda x: x.priority())
RegisterUI.widgets.sort(key=lambda x: x.priority())
_write = ColorWrite(sys.stdout, colorama.Fore.LIGHTCYAN_EX)
for Menu in tqdm(RegisterUI.menu, leave=True, file=_write, desc="Registering menus", unit="Menu"):
menu = Menu(ui.MenuBar, window)
menu.setupUi()
ui.MenuBar.addMenu(menu.getMenuWidget())
for w in tqdm(RegisterUI.widgets, leave=True, file=_write, desc="Registering pages", unit="Page"):
ui.append(w)
# noinspection PyUnresolvedReferences
window.setWindowFlags(Qt.CustomizeWindowHint)
window.show()
sys.exit(app.exec_())
if __name__ == "__main__":
_green_write = ColorWrite(sys.stdout, colorama.Fore.LIGHTGREEN_EX)
print(f"Core Version: {__version__}", file=_green_write)
print(f"Core Author: {__author__}", file=_green_write)
print(f"内核版本号: {__version__}", file=_green_write)
print(f"内核作者: {__author__}", file=_green_write)
DefaultConfigPool.saveAll()
main()
__all__ = ("main",)