def setupUi(self): """layout the window""" self.setContentsMargins(0, 0, 0, 0) vlayout = QVBoxLayout(self) vlayout.setContentsMargins(0, 0, 0, 0) sliderLayout = QHBoxLayout() self.kcfg_showShadows = QCheckBox(m18n('Show tile shadows'), self) self.kcfg_showShadows.setObjectName('kcfg_showShadows') self.kcfg_rearrangeMelds = QCheckBox( m18n('Rearrange undisclosed tiles to melds'), self) self.kcfg_rearrangeMelds.setObjectName('kcfg_rearrangeMelds') self.kcfg_showOnlyPossibleActions = QCheckBox(m18n( 'Show only possible actions')) self.kcfg_showOnlyPossibleActions.setObjectName( 'kcfg_showOnlyPossibleActions') self.kcfg_propose = QCheckBox(m18n('Propose what to do')) self.kcfg_propose.setObjectName('kcfg_propose') self.kcfg_animationSpeed = QSlider(self) self.kcfg_animationSpeed.setObjectName('kcfg_animationSpeed') self.kcfg_animationSpeed.setOrientation(Qt.Horizontal) self.kcfg_animationSpeed.setSingleStep(1) lblSpeed = QLabel(m18n('Animation speed:')) lblSpeed.setBuddy(self.kcfg_animationSpeed) sliderLayout.addWidget(lblSpeed) sliderLayout.addWidget(self.kcfg_animationSpeed) self.kcfg_useSounds = QCheckBox(m18n('Use sounds if available'), self) self.kcfg_useSounds.setObjectName('kcfg_useSounds') self.kcfg_uploadVoice = QCheckBox(m18n( 'Let others hear my voice'), self) self.kcfg_uploadVoice.setObjectName('kcfg_uploadVoice') pol = QSizePolicy() pol.setHorizontalPolicy(QSizePolicy.Expanding) pol.setVerticalPolicy(QSizePolicy.Expanding) spacerItem = QSpacerItem( 20, 20, QSizePolicy.Minimum, QSizePolicy.Expanding) vlayout.addWidget(self.kcfg_showShadows) vlayout.addWidget(self.kcfg_rearrangeMelds) vlayout.addWidget(self.kcfg_showOnlyPossibleActions) vlayout.addWidget(self.kcfg_propose) vlayout.addWidget(self.kcfg_useSounds) vlayout.addWidget(self.kcfg_uploadVoice) vlayout.addLayout(sliderLayout) vlayout.addItem(spacerItem) self.setSizePolicy(pol) self.retranslateUi()
def setupUi(self): """layout the window""" self.setContentsMargins(0, 0, 0, 0) vlayout = QVBoxLayout(self) vlayout.setContentsMargins(0, 0, 0, 0) sliderLayout = QHBoxLayout() self.kcfg_showShadows = QCheckBox(i18n('Show tile shadows'), self) self.kcfg_showShadows.setObjectName('kcfg_showShadows') self.kcfg_rearrangeMelds = QCheckBox( i18n('Rearrange undisclosed tiles to melds'), self) self.kcfg_rearrangeMelds.setObjectName('kcfg_rearrangeMelds') self.kcfg_showOnlyPossibleActions = QCheckBox( i18n('Show only possible actions')) self.kcfg_showOnlyPossibleActions.setObjectName( 'kcfg_showOnlyPossibleActions') self.kcfg_propose = QCheckBox(i18n('Propose what to do')) self.kcfg_propose.setObjectName('kcfg_propose') self.kcfg_animationSpeed = QSlider(self) self.kcfg_animationSpeed.setObjectName('kcfg_animationSpeed') self.kcfg_animationSpeed.setOrientation(Qt.Horizontal) self.kcfg_animationSpeed.setSingleStep(1) lblSpeed = QLabel(i18n('Animation speed:')) lblSpeed.setBuddy(self.kcfg_animationSpeed) sliderLayout.addWidget(lblSpeed) sliderLayout.addWidget(self.kcfg_animationSpeed) self.kcfg_useSounds = QCheckBox(i18n('Use sounds if available'), self) self.kcfg_useSounds.setObjectName('kcfg_useSounds') self.kcfg_uploadVoice = QCheckBox(i18n('Let others hear my voice'), self) self.kcfg_uploadVoice.setObjectName('kcfg_uploadVoice') pol = QSizePolicy() pol.setHorizontalPolicy(QSizePolicy.Expanding) pol.setVerticalPolicy(QSizePolicy.Expanding) spacerItem = QSpacerItem(20, 20, QSizePolicy.Minimum, QSizePolicy.Expanding) vlayout.addWidget(self.kcfg_showShadows) vlayout.addWidget(self.kcfg_rearrangeMelds) vlayout.addWidget(self.kcfg_showOnlyPossibleActions) vlayout.addWidget(self.kcfg_propose) vlayout.addWidget(self.kcfg_useSounds) vlayout.addWidget(self.kcfg_uploadVoice) vlayout.addLayout(sliderLayout) vlayout.addItem(spacerItem) self.setSizePolicy(pol) self.retranslateUi()
def __init__(self, parent=None): super(ControlWidget, self).__init__() top_box = QVBoxLayout() # top_box.setMargin(0) top_box.setContentsMargins(0, 0, 0, 0) self.step_param_widg = QStackedWidget() self.step_param_widg.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.param_widgets = {} self.btn_lst = [] # We only show action buttons for a subset of possible actions button_actions = [ "import", # Leave in for now - currently pages must be precreated "find_spots", "index", "refine_bravais_settings", "refine", "integrate", "symmetry", "scale", "export", ] for x in button_actions: action = ACTIONS[x] new_btn = MyActionButton(action, parent=self) new_btn.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) # Don't add import to our button list for now - but other code # currently assumes the order of this list so we can't not add and # create the parameter pages here if action.id == "import": new_btn.hide() else: new_btn.clicked.connect(self._action_button_clicked) top_box.addWidget(new_btn) param_widg = ParamWidget(action.id) new_btn.pr_widg = param_widg self.step_param_widg.addWidget(param_widg) self.param_widgets[action.id] = param_widg param_widg.update_command_lst_medium_level.connect(self.update_parent_lst) self.btn_lst.append(new_btn) param_widg.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.mask_page = MaskPage() self.mask_page.update_command_lst_medium_level.connect( self.singular_step_new_command ) self.mask_page.mask_done.connect(self.done_masking) self.mask_page.mask_set.connect(self.set_mask) self.step_param_widg.addWidget(self.mask_page) self.b_centr_page = BeamCentrPage() self.b_centr_page.update_command_lst_medium_level.connect( self.singular_step_new_command ) self.b_centr_page.b_centr_done.connect(self.done_b_centr) self.b_centr_page.b_centr_set.connect(self.set_b_centr) self.step_param_widg.addWidget(self.b_centr_page) self.setLayout(top_box) self.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)