31 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
from PySide6.QtCore import QObject, Signal
 | 
						|
 | 
						|
 | 
						|
class SignalBus(QObject):
 | 
						|
    instance = None
 | 
						|
 | 
						|
    def __new__(cls):
 | 
						|
        if cls.instance is None:
 | 
						|
            cls.instance = super(SignalBus, cls).__new__(cls)
 | 
						|
        return cls.instance
 | 
						|
 | 
						|
    def __init__(self):
 | 
						|
        super().__init__()
 | 
						|
 | 
						|
    current_stacked_page = Signal(str)         # 获取当前页面的page_id
 | 
						|
    init_stacked_page = Signal(str)            # 设置打开侧边栏后的初始页面
 | 
						|
    stacked_page_switch = Signal(str)          # 切换stacked widget的页面
 | 
						|
    stacked_page_switch_setting = Signal()     # 切换stacked widget的设置页面后的触发信号
 | 
						|
    stacked_page_switch_log = Signal()         # 切换stacked widget的日志页面后的触发信号
 | 
						|
    stacked_page_switch_about = Signal()       # 切换stacked widget的关于页面后的触发信号
 | 
						|
    qa_switch_change = Signal(bool)            # 切换折叠侧边栏的状态
 | 
						|
    home_overlay_trigger = Signal()            # 触发软件锁屏
 | 
						|
    home_overlay_auth = Signal()               # 触发密码框的显示与隐藏
 | 
						|
    home_overlay_close = Signal()              # 退出锁屏后的收尾信号
 | 
						|
    list_widget_click = Signal(str)            # 触发点击list widget信号
 | 
						|
    list_widget_on_off = Signal(bool)          # 主动控制是否显示list widget组件
 | 
						|
 | 
						|
 | 
						|
 | 
						|
signal_bus = SignalBus()
 |