def _init_ui(self): # 工具 item_list = [ {'text': u'文件', 'svg': 'folder_line.svg', 'clicked': self.openFile}, {'text': u'编辑', 'svg': 'edit_line.svg', 'clicked': self.editFile}, {'text': u'关于', 'svg': 'warning_line.svg', 'clicked': self.showAbout}, ] tool_bar = MMenuTabWidget() tool_bar.tool_bar_insert_widget(MLabel('Zeus').h4().secondary().strong()) self.user_toolButton = MToolButton().large() pixmap = QPixmap(file_path + "\\res\\headPortrial\\user_default.png") self.user_toolButton.setIcon(pixmap) tool_bar.tool_bar_append_widget( MBadge.dot(show=False, widget=self.user_toolButton)) self.label = MLabel(u"未登录") tool_bar.tool_bar_append_widget( MBadge.dot(show=False, widget=self.label)) for index, data_dict in enumerate(item_list): tool_bar.add_menu(data_dict, index) main_lay = QHBoxLayout() main_lay.setContentsMargins(0, 0, 0, 0) main_lay.addWidget(tool_bar) self.setLayout(main_lay) self.layout().setSpacing(0) self.layout().setContentsMargins(0, 0, 0, 0) self.user_toolButton.clicked.connect(self.setUser)
def test_badge_count(qtbot, num, text, visible): """Test MBadge init.""" label = QLabel('test') badge_1 = MBadge.count(count=num, widget=label) badge_2 = MBadge.count(num) main_widget = QWidget() main_lay = QVBoxLayout() main_widget.setLayout(main_lay) main_lay.addWidget(badge_1) main_lay.addWidget(badge_2) qtbot.addWidget(main_widget) main_widget.show() assert badge_1._badge_button.text() == text assert badge_1._badge_button.isVisible() == visible assert badge_2._badge_button.text() == text assert badge_2._badge_button.isVisible() == visible assert badge_1.get_dayu_dot() is None assert badge_2.get_dayu_dot() is None assert badge_1.get_dayu_text() is None assert badge_2.get_dayu_text() is None assert badge_1.get_dayu_count() == num assert badge_2.get_dayu_count() == num assert badge_1.get_dayu_overflow() == 99 assert badge_2.get_dayu_overflow() == 99
def _init_ui(self): standalone_lay = QHBoxLayout() standalone_lay.addWidget(MBadge.count(0)) standalone_lay.addWidget(MBadge.count(20)) standalone_lay.addWidget(MBadge.count(100)) standalone_lay.addWidget(MBadge.dot(True)) standalone_lay.addWidget(MBadge.text('new')) standalone_lay.addStretch() button = MToolButton().svg('trash_line.svg') avatar = MAvatar.large(MPixmap('avatar.png')) button_alert = MToolButton().svg('alert_fill.svg').large() badge_1 = MBadge.dot(True, widget=button) badge_2 = MBadge.dot(True, widget=avatar) badge_3 = MBadge.dot(True, widget=button_alert) button.clicked.connect(lambda: badge_1.set_dayu_dot(False)) spin_box = MSpinBox() spin_box.setRange(0, 9999) spin_box.valueChanged.connect(badge_3.set_dayu_count) spin_box.setValue(1) self.register_field('button1_selected', u'北京') menu1 = MMenu() menu1.set_data([u'北京', u'上海', u'广州', u'深圳']) select1 = MComboBox() select1.set_menu(menu1) self.bind('button1_selected', select1, 'value', signal='sig_value_changed') badge_hot = MBadge.text('hot', widget=MLabel(u'你的理想城市 ')) sub_lay1 = QHBoxLayout() sub_lay1.addWidget(badge_1) sub_lay1.addWidget(badge_2) sub_lay1.addWidget(badge_3) sub_lay1.addStretch() sub_lay2 = QHBoxLayout() sub_lay2.addWidget(badge_hot) sub_lay2.addWidget(select1) sub_lay2.addStretch() main_lay = QVBoxLayout() main_lay.addWidget(MDivider('use standalone')) main_lay.addLayout(standalone_lay) main_lay.addWidget(MDivider('different type')) main_lay.addLayout(sub_lay1) main_lay.addWidget(spin_box) main_lay.addWidget(MDivider('different type')) main_lay.addLayout(sub_lay2) main_lay.addStretch() self.setLayout(main_lay)
def _init_ui(self): item_list = [ { "text": "Overview", "svg": "home_line.svg", "clicked": functools.partial(MMessage.info, "首页", parent=self), }, { "text": "我的", "svg": "user_line.svg", "clicked": functools.partial(MMessage.info, "编辑账户", parent=self), }, { "text": "Notice", "svg": "alert_line.svg", "clicked": functools.partial(MMessage.info, "查看通知", parent=self), }, ] tool_bar = MMenuTabWidget() tool_bar_huge = MMenuTabWidget() tool_bar_huge.set_dayu_size(dayu_theme.huge) tool_bar_huge_v = MMenuTabWidget(orientation=QtCore.Qt.Vertical) tool_bar_huge_v.set_dayu_size(dayu_theme.huge) tool_bar.tool_bar_insert_widget( MLabel("DaYu").h4().secondary().strong()) tool_bar_huge.tool_bar_insert_widget( MLabel("DaYu").h4().secondary().strong()) dayu_icon = MLabel("DaYu").h4().secondary().strong() dayu_icon.setContentsMargins(10, 10, 10, 10) tool_bar_huge_v.tool_bar_insert_widget(dayu_icon) tool_bar.tool_bar_append_widget( MBadge.dot( show=True, widget=MToolButton().icon_only().svg("user_fill.svg").large())) for index, data_dict in enumerate(item_list): tool_bar.add_menu(data_dict, index) tool_bar_huge.add_menu(data_dict, index) tool_bar_huge_v.add_menu(data_dict, index) tool_bar.tool_button_group.set_dayu_checked(0) tool_bar_huge.tool_button_group.set_dayu_checked(0) tool_bar_huge_v.tool_button_group.set_dayu_checked(0) main_lay = QtWidgets.QVBoxLayout() main_lay.setContentsMargins(0, 0, 0, 0) main_lay.addWidget(MLabel("Menu Tab Widget (Large)")) main_lay.addWidget(tool_bar) main_lay.addWidget(MLabel("Menu Tab Widget (Huge)")) main_lay.addWidget(tool_bar_huge) main_lay.addWidget(MLabel("Menu Vertical Tab Widget (Huge)")) main_lay.addWidget(tool_bar_huge_v) self.setLayout(main_lay)
def _init_ui(self): standalone_lay = QtWidgets.QHBoxLayout() standalone_lay.addWidget(MBadge.count(0)) standalone_lay.addWidget(MBadge.count(20)) standalone_lay.addWidget(MBadge.count(100)) standalone_lay.addWidget(MBadge.dot(True)) standalone_lay.addWidget(MBadge.text("new")) standalone_lay.addStretch() button = MToolButton().svg("trash_line.svg") avatar = MAvatar.large(MPixmap("avatar.png")) button_alert = MToolButton().svg("alert_fill.svg").large() badge_1 = MBadge.dot(True, widget=button) badge_2 = MBadge.dot(True, widget=avatar) badge_3 = MBadge.dot(True, widget=button_alert) button.clicked.connect(lambda: badge_1.set_dayu_dot(False)) spin_box = MSpinBox() spin_box.setRange(0, 9999) spin_box.valueChanged.connect(badge_3.set_dayu_count) spin_box.setValue(1) self.register_field("button1_selected", "北京") menu1 = MMenu(parent=self) menu1.set_data(["北京", "上海", "广州", "深圳"]) select1 = MComboBox() select1.set_menu(menu1) self.bind("button1_selected", select1, "value", signal="sig_value_changed") badge_hot = MBadge.text("hot", widget=MLabel("你的理想城市 ")) sub_lay1 = QtWidgets.QHBoxLayout() sub_lay1.addWidget(badge_1) sub_lay1.addWidget(badge_2) sub_lay1.addWidget(badge_3) sub_lay1.addStretch() sub_lay2 = QtWidgets.QHBoxLayout() sub_lay2.addWidget(badge_hot) sub_lay2.addWidget(select1) sub_lay2.addStretch() main_lay = QtWidgets.QVBoxLayout() main_lay.addWidget(MDivider("use standalone")) main_lay.addLayout(standalone_lay) main_lay.addWidget(MDivider("different type")) main_lay.addLayout(sub_lay1) main_lay.addWidget(spin_box) main_lay.addWidget(MDivider("different type")) main_lay.addLayout(sub_lay2) main_lay.addStretch() self.setLayout(main_lay)
def test_badge_dot(qtbot, show, visible): """Test MBadge init.""" label = QLabel('test') badge_1 = MBadge.dot(show=show, widget=label) badge_2 = MBadge.dot(show) main_widget = QWidget() main_lay = QVBoxLayout() main_widget.setLayout(main_lay) main_lay.addWidget(badge_1) main_lay.addWidget(badge_2) qtbot.addWidget(main_widget) main_widget.show() assert badge_1._badge_button.isVisible() == visible assert badge_2._badge_button.isVisible() == visible assert badge_1.get_dayu_dot() == show assert badge_2.get_dayu_dot() == show assert badge_1.get_dayu_text() is None assert badge_2.get_dayu_text() is None assert badge_1.get_dayu_count() is None assert badge_2.get_dayu_count() is None
def test_badge_text(qtbot, content, text, visible): """Test MBadge init.""" label = QtWidgets.QLabel("test") badge_1 = MBadge.text(text=content, widget=label) badge_2 = MBadge.text(text=content) main_widget = QtWidgets.QWidget() main_lay = QtWidgets.QVBoxLayout() main_widget.setLayout(main_lay) main_lay.addWidget(badge_1) main_lay.addWidget(badge_2) qtbot.addWidget(main_widget) main_widget.show() assert badge_1._badge_button.text() == text assert badge_1._badge_button.isVisible() == visible assert badge_2._badge_button.text() == text assert badge_2._badge_button.isVisible() == visible assert badge_1.get_dayu_dot() is False assert badge_2.get_dayu_dot() is False assert badge_1.get_dayu_text() == text assert badge_2.get_dayu_text() == text assert badge_1.get_dayu_count() is None assert badge_2.get_dayu_count() is None
def test_badge_overflow(qtbot, num, text, overflow): """Test MBadge init.""" badge = MBadge.count(num) badge.set_dayu_overflow(overflow) main_widget = QWidget() main_lay = QVBoxLayout() main_widget.setLayout(main_lay) main_lay.addWidget(badge) qtbot.addWidget(main_widget) main_widget.show() assert badge._badge_button.text() == text assert badge.get_dayu_dot() is None assert badge.get_dayu_text() is None assert badge.get_dayu_count() == num assert badge.get_dayu_overflow() == overflow
def _init_ui(self): item_list = [ { 'text': 'Overview', 'svg': 'home_line.svg', 'clicked': functools.partial(MMessage.info, u'首页', parent=self) }, { 'text': u'我的', 'svg': 'user_line.svg', 'clicked': functools.partial(MMessage.info, u'编辑账户', parent=self) }, { 'text': u'Notice', 'svg': 'alert_line.svg', 'clicked': functools.partial(MMessage.info, u'查看通知', parent=self) }, ] tool_bar = MMenuTabWidget() tool_bar.tool_bar_insert_widget( MLabel('DaYu').h4().secondary().strong()) tool_bar.tool_bar_append_widget( MBadge.dot( show=True, widget=MToolButton().icon_only().svg('user_fill.svg').large())) self.content_widget = MLabel() for index, data_dict in enumerate(item_list): tool_bar.add_menu(data_dict, index) tool_bar.tool_button_group.set_dayu_checked(0) main_lay = QVBoxLayout() main_lay.setContentsMargins(0, 0, 0, 0) main_lay.addWidget(tool_bar) main_lay.addWidget(self.content_widget) self.setLayout(main_lay)