def __init__(self, parent=None): super().__init__( parent, QtCore.Qt.WindowSystemMenuHint | QtCore.Qt.WindowCloseButtonHint) self.window_title = "Reset Template Generator" self.setWindowIcon(QtGui.QIcon(resource_utils.base_path(ICON_PATH))) # Layouts self.menu_layout = QtWidgets.QGridLayout() self.button_layout = QtWidgets.QHBoxLayout() # Widgets self.apply_btn = QtWidgets.QPushButton("Apply") self.generate_btn = QtWidgets.QPushButton("Generate") self.cancel_btn = QtWidgets.QPushButton("Cancel") self.help_btn = QtWidgets.QPushButton("Help") self.gen_1_px = QtWidgets.QLabel() self.gen_2_px = QtWidgets.QLabel() self.def_1_px = QtWidgets.QLabel() self.def_2_px = QtWidgets.QLabel() self.gen_1_sb = QtWidgets.QSpinBox() self.gen_2_sb = QtWidgets.QSpinBox() self._reset_generator = None self.help_dialog = ResetGeneratorHelpDialog(self) self.initialize_window()
def __init__(self, parent=None): super().__init__( parent, QtCore.Qt.WindowSystemMenuHint | QtCore.Qt.WindowCloseButtonHint) self.window_title = "About " + TITLE self.setWindowIcon(QtGui.QIcon(resource_utils.base_path(ICON_PATH))) # Layouts self.menu_layout = QtWidgets.QVBoxLayout() self.button_layout = QtWidgets.QHBoxLayout() # Widgets self.icon_lb = QtWidgets.QLabel() self.title_lb = QtWidgets.QLabel(TITLE) self.ver_title_lb = QtWidgets.QLabel("Version:") self.ver_lb = QtWidgets.QLabel(VERSION) self.author_title_lb = QtWidgets.QLabel("Author:") self.author_lb = QtWidgets.QLabel(AUTHOR) self.about_te = QtWidgets.QTextEdit() self.ok_btn = QtWidgets.QPushButton("Ok") # Font self.title_font = QtGui.QFont() self.title_font.setPointSize(16) self.initialize_window()
def __init__(self, parent=None): super().__init__( parent, QtCore.Qt.WindowSystemMenuHint | QtCore.Qt.WindowCloseButtonHint) self.window_title = "Reset Template Generator Help" self.setWindowIcon(QtGui.QIcon(resource_utils.base_path(ICON_PATH))) # Layouts self.menu_layout = QtWidgets.QVBoxLayout() self.button_layout = QtWidgets.QHBoxLayout() # Widgets self.text_edit = QtWidgets.QTextEdit() self.text_edit.append(self.line1) self.text_edit.append("\n") self.text_edit.append(self.line2) self.text_edit.append("\n") self.text_edit.append(self.line3) self.ok_btn = QtWidgets.QPushButton("OK") # Font self.title_font = QtGui.QFont() self.title_font.setPointSize(16) self.initialize_window()
def save_as(self): file_name, _ = QtWidgets.QFileDialog.getSaveFileName( self, "Save Route", resource_utils.base_path() + "/routes", "AS64 Route Files (*.as64)") if file_name != '': self.route_path = file_name else: return self.save()
def __init__(self, parent=None): super().__init__(parent=parent) # Window Properties self.title = constants.TITLE self.setAttribute(QtCore.Qt.WA_DeleteOnClose, True) self.width = 365 self.height = 259 self.setWindowIcon(QtGui.QIcon(base_path(constants.ICON_PATH))) # Dragging self._drag = False self._drag_position = None # Pixmaps self.start_pixmap = QtGui.QPixmap(base_path(constants.START_PATH)) self.stop_pixmap = QtGui.QPixmap(base_path(constants.STOP_PATH)) self.init_pixmap = QtGui.QPixmap(base_path(constants.INIT_PATH)) # Widgets self.central_widget = QtWidgets.QWidget(self) self.star_count = StarCountDisplay(parent=self.central_widget) self.start_btn = StateButton(self.start_pixmap, self.start_pixmap, parent=self.central_widget) self.close_btn = PictureButton(QtGui.QPixmap(base_path(constants.CLOSE_PATH)), parent=self.central_widget) self.minimize_btn = PictureButton(QtGui.QPixmap(base_path(constants.MINIMIZE_PATH)), parent=self.central_widget) self.split_list = SplitListWidget(self.central_widget) # Font self.button_font = QtGui.QFont("Tw Cen MT", 14) self.start_count_font = QtGui.QFont("Tw Cen MT", 20) # Route self.route = None # Dialogs self.dialogs = { "about_dialog": AboutDialog(self), "capture_editor": CaptureEditor(self), "settings_dialog": SettingsDialog(self), "route_editor": RouteEditor(self), "reset_dialog": ResetGeneratorDialog(self) } self._routes = {} self._load_route_dir() self.initialize() self.show()
def double_clicked(self, x, y): if y != 0: return file_name, _ = QtWidgets.QFileDialog.getOpenFileName( self, "Choose Icon", resource_utils.base_path("resources/split_icons")) if not file_name: return # Convert to relative path, if possible file_path = resource_utils.abs_to_rel(file_name) # Create Item item = QtWidgets.QTableWidgetItem() item.setIcon(QIcon(file_path)) item.setToolTip(file_path) item.setFlags(QtCore.Qt.ItemIsEnabled | QtCore.Qt.ItemIsSelectable) self.split_table.setItem(x, 0, item)
def save(self): self.apply_btn.setFocus() splits = [] if self.split_table.rowCount() < 1: self.display_error_message("No Splits", "Route Error") return -1 for row in range(self.split_table.rowCount()): title = self.split_table.item(row, 1).text() if len(title) <= 0: self.display_error_message( "Invalid Title - Row: " + str(row + 1), "Route Error") self.split_table.setCurrentCell(row, 1) return -1 try: star_count = int(self.split_table.item(row, 2).text()) except (ValueError, AttributeError): self.display_error_message( "Invalid Star Count - Row: " + str(row + 1), "Route Error") self.split_table.setCurrentCell(row, 2) return -1 try: fadeouts = int(self.split_table.item(row, 3).text()) except (ValueError, AttributeError): if self.split_table.cellWidget(row, 5).currentText == SPLIT_NORMAL: self.display_error_message( "Invalid Fadeout - Row: " + str(row + 1), "Route Error") self.split_table.setCurrentCell(row, 3) return -1 else: fadeouts = -1 try: fadeins = int(self.split_table.item(row, 4).text()) except (ValueError, AttributeError): if self.split_table.cellWidget(row, 5).currentText == SPLIT_NORMAL: self.display_error_message( "Invalid Fadein - Row: " + str(row + 1), "Route Error") self.split_table.setCurrentCell(row, 4) return -1 else: fadeins = -1 try: icon_path = self.split_table.item(row, 0).toolTip() except (ValueError, AttributeError): icon_path = "" split_type = self.split_table.cellWidget(row, 5).currentText() splits.append( Split(title, star_count, fadeouts, fadeins, split_type, icon_path)) title = self.title_le.text() if len(title) <= 0: self.display_error_message("Invalid Route Title", "Route Error") return -1 try: initial_star = int(self.init_star_le.text()) except (ValueError, AttributeError): self.display_error_message("Invalid Initial Star", "Route Error") return -1 category = self.category_combo.lineEdit().text() route = Route( self.route_path, title, splits, initial_star, self.version_combo.itemText(self.version_combo.currentIndex()), category) route_error = route_loader.validate_route(route) if route_error: self.display_error_message(route_error, "Route Error") return -1 if not self.route_path: file_name, _ = QtWidgets.QFileDialog.getSaveFileName( self, "Save Route", resource_utils.base_path() + "/routes", "AS64 Route Files (*.as64)") if file_name != '': self.route_path = file_name else: return -1 route_loader.save(route, self.route_path) config.set_key("route", "path", self.route_path) config.save_config() self.route_updated.emit()