def goto_label(self): idx_dialog = Qt.QInputDialog() idx_dialog.setInputMode(Qt.QInputDialog.TextInput) if idx_dialog.exec_() and idx_dialog.textValue( ) in self.worm_info.index: self.load_next_worm( self.worm_info.index.get_loc(idx_dialog.textValue()), 0)
def ask_for_name(self, title='Enter Name', label='Name: ', text=''): dialog = Qt.QInputDialog(self) dialog.setInputMode(Qt.QInputDialog.InputMode.TextInput) dialog.setWindowTitle(title) dialog.setLabelText(label) dialog.setTextValue(text) # https://forum.qt.io/topic/9171/solved-how-can-a-lineedit-accept-only-ascii-alphanumeric-character-required-a-z-a-z-0-9/4 lineEdit = dialog.findChild(Qt.QLineEdit) lineEdit.setValidator( Qt.QRegExpValidator(Qt.QRegExp("[A-Za-z0-9_]+"), dialog)) if dialog.exec_(): return dialog.textValue() return None
def goto_index(self): idx_dialog = Qt.QInputDialog() idx_dialog.setInputMode(Qt.QInputDialog.IntInput) if idx_dialog.exec_() and idx_dialog.intValue() in range( len(self.worm_positions)): self.load_next_worm(idx_dialog.intValue(), 0)