def initializePage(self): title_I18N(self, "datasource.page.title", "Datasource chooser") #self.setSubTitle('Setup frame specific data') pageLayout = QVBoxLayout() self.setLayout(pageLayout) self.__createFilesGroupBox(pageLayout) #to force call of isComplete(self) method by the Wizard framework #which causes state next button to be updated self.emit(WIZARD_COMPLETE_CHANGED_SIGNAL) self.rootDir = None
def prepareWidget(**params): """ method to create a widget based o information contained in a parameter params dictionary, it is a factory method """ params = Params(**params) parent_layout = params.parent.layout() \ if not params.parent == None and \ not params.parent.layout() == 0 else None widget = params.widget __set_widget_size(widget, params.size, params.width, params.height) if not params.enabled == None: widget.setEnabled(params.enabled) if not params.selectionBehavior == None: widget.setSelectionBehavior(params.selectionBehavior) if not params.selectionMode == None: widget.setSelectionMode(params.selectionMode) if not params.sizePolicy == None: widget.setSizePolicy(params.sizePolicy) if not params.layout == None: widget.setLayout(params.layout) if not params.readonly == None: widget.setReadOnly(params.readonly) if not params.orientation == None: widget.setOrientation(params.orientation) if params.maxLength: widget.setMaxLength(params.maxLength) if not params.checked == None: widget.setChecked(params.checked) added = None if not params.alignment == None: added = __create_inner_alignment_layout(parent_layout, widget, params.alignment) if not added and not params.layout == None: params.layout.setAlignment(params.alignment) if not added and not parent_layout == None: if not params.not_add_widget_to_parent_layout == True and \ isinstance(widget, QWidget): parent_layout.addWidget(widget) if not params.stretch_after_widget == None: if not parent_layout == None: parent_layout.addStretch(params.stretch_after_widget) if params.titleable and (params.i18n or params.i18n_def): title_I18N(widget, params.i18n, params.i18n_def) if params.textable and (params.i18n or params.i18n_def): text_I18N(widget, params.i18n, params.i18n_def) if not params.text == None: widget.setText(params.text) if not params.hidden == None: widget.setHidden(params.hidden) if Globals.DEBUG == True: #very important parameter inspect.stack() #which set up properly caller's stack of a created widget widget.installEventFilter(LoggingEventFilter(inspect.stack())) if not params.object_name == None: widget.setObjectName(params.object_name) if not params.clicked_handler == None: widget.connect(widget, SIGNAL("clicked()"), params.clicked_handler) if not params.enabled_precheck_handler == None: widget.setEnabledPrecheckHandler(params.enabled_precheck_handler) if not params.close_handler == None: widget.connect(widget, SIGNAL("closeEvent()"), params.close_handler) if not params.list_item_clicked_handler == None: widget.connect(widget, LIST_ITEM_CLICKED_SIGNAL, params.list_item_clicked_handler) if params.parent and params.add_widget_to_parent == True: params.parent.addWidget(widget) return widget