def confirm(self): dist = self.dist_edit.text() date = self.date_edit.text() config.read(f"{mainpath}settings.ini") filename = config["current"]["filename"] with open(f"{filepath}{filename}") as data_file: data = json.load(data_file) goal_dist, goal_date = data["goals"]["distance"], data["goals"]["date"] if goal_dist != "" or goal_date != "": msgbox = QMessageBox(self) msgbox.setIcon(QMessageBox.Warning) msgbox.setWindowTitle("Varmista tavoitteen tallennus") msgbox.setGeometry(600, 300, 100, 100) msgbox.setText( f"Sinulla on jo tavoite.\n\n" f"Matka: {goal_dist} km\nPäivämäärä: {goal_date}\n\n" f"Haluatko nollata sen ja lisätä uuden tavoitteen?") msgbox.setStandardButtons(QMessageBox.Ok) cancel_btn = msgbox.addButton("Peruuta", QMessageBox.ActionRole) signal = msgbox.exec_() if signal == QMessageBox.Ok: goal_to_file(dist, date, filename) self.goalform.close() self.update_goalinfo() elif msgbox.clickedButton() == cancel_btn: QCloseEvent() else: goal_to_file(dist, date, filename) self.goalform.close() self.update_goalinfo()
def test_closeEvent(init_paths): """Test :class:~_clockalarm.UI.MainWindow.closeEvent method.""" global mw mw.show() event = QCloseEvent() mw.closeEvent(event) assert not mw.isVisible()
def test_closeEvent_1(qtbot): app = DevicePopup(geometry=geometry, data=data, framework=framework, driver='telescope', deviceType='telescope') qtbot.addWidget(app) with mock.patch.object(MWidget, 'closeEvent', return_value=True): app.closeEvent(QCloseEvent())
def make_file(): new_file_name = self.name_edit.text() default_extensions = [] if new_file_name == "": trip_files = os.listdir(filepath) for file in trip_files: if file.startswith("cycling_trips") and len( file) <= 20 and file.endswith(".json"): file_stripped = file.replace(".json", "") if file_stripped[-1].isdigit(): default_extensions.append(int(file_stripped[-1])) if len(default_extensions) == 0: new_file_name = "cycling_trips2" else: new_file_name = f"cycling_trips{max(default_extensions) + 1}" new_file_path = f"{filepath}{new_file_name}.json" file_exists = os.path.isfile(f"{new_file_path}") if file_exists: msgbox = QMessageBox(self) msgbox.setIcon(QMessageBox.Warning) msgbox.setWindowTitle("Tiedosto on jo olemassa") msgbox.setGeometry(600, 300, 100, 100) msgbox.setText( "Samalla nimellä on jo olemassa tiedosto. Haluatko korvata sen uudella?" ) msgbox.setStandardButtons(QMessageBox.Ok) cancel_btn2 = msgbox.addButton("Peruuta", QMessageBox.ActionRole) signal = msgbox.exec_() if signal == QMessageBox.Ok: pass elif msgbox.clickedButton() == cancel_btn2: QCloseEvent() return with open(new_file_path, "w") as data_file: data = { "_comment": "All trips are stored in this file. They must be in format dd.mm.yyyy: " "[float, float, ...]", "goals": { "distance": "", "date": "" } } json.dump(data, data_file, indent=4) QMessageBox.information( self, "Uusi matkatiedosto", f"Tehtiin uusi tiedosto nimellä {new_file_name}", QMessageBox.Ok) self.file_window.close()
def keyPressEvent(self, key): if (key.key() == Qt.Key_Right or (key.key() == Qt.Key_Return and QApplication.focusWidget() == self.next_solution_btm)) and \ self.next_solution_btm.isEnabled(): self.next_solution_btm.clicked.emit() elif (key.key() == Qt.Key_Left or (key.key() == Qt.Key_Return and QApplication.focusWidget() == self.previous_solution_btm)) and \ self.previous_solution_btm.isEnabled(): self.previous_solution_btm.clicked.emit() elif key.key() == Qt.Key_Escape: self.closeEvent(QCloseEvent()) elif (key.key() == Qt.Key_Return and not isinstance(self, Window) and QApplication.focusWidget() == self.exit_button): self.exit_button.clicked.emit()
def keyPressEvent(self, event): key = event.key() if key == Qt.Key_Escape: self.closeEvent(QCloseEvent()) elif key == Qt.Key_R: self.logic_model.field.clear_field() self.logic_model.next_figure = None self.logic_model.next_color = None self.logic_model.current_figure = None self.logic_model.current_color = None self.logic_model.falling_figure = falling_figure.FallingFigure( self.logic_model) self.logic_model.fell_flag = False self.color_mode_button.setEnabled(True) self.current_rating_position = -1 self.current_scores = 0 self._record_panel_update() self.timer.start() elif key == Qt.Key_P: if self.timer.isActive(): self.status_bar.showMessage('Pause') self.timer.stop() elif not self.logic_model.end_of_the_game(): self.timer.start() elif self.timer.isActive(): if key == Qt.Key_Left: self.logic_model.falling_figure.try_move(Direction.LEFT) elif key == Qt.Key_Right: self.logic_model.falling_figure.try_move(Direction.RIGHT) elif key == Qt.Key_Down: self.logic_model.falling_figure.try_move(Direction.DOWN) elif key == Qt.Key_Up: self.logic_model.falling_figure.try_rotate_left() elif key == Qt.Key_Space: self.logic_model.falling_figure.drop_figure() self.logic_model.falling_figure = \ falling_figure.FallingFigure(self.logic_model) self.logic_model.field.remove_completed_rectangle( self.logic_model.falling_figure) self.logic_model.fell_flag = True self._grid_update()
def test_closeEvent_1(qtbot): app = SatelliteWindow(app=Test()) qtbot.addWidget(app) app.closeEvent(QCloseEvent())
def closeEvent(self, event): logging.debug('closeEvent() called topMenuBar') self.close_signal.emit(QCloseEvent())
def close_busy_dlg(*args): QApplication.postEvent(busy_dlg, QCloseEvent())
def __init__(self, parent=None): super(MyWindow, self).__init__(parent) #uic.loadUi('gui_template.ui',self) try: self.path_home = os.path.expanduser("~\\Desktop\\") except Exception: self.path_home = "" for curren_dir in ["interim_image"]: if os.path.exists(curren_dir): if os.path.isdir(curren_dir): print(curren_dir + " is here") else: try: os.mkdir(curren_dir) except OSError: print("Error generate dir " + curren_dir) else: try: os.mkdir(curren_dir) except OSError: print("Error generate dir " + curren_dir) # Load last path for files try: with open('last_path.json', "r") as f: path_dict = {i: j for i, j in json.load(f).items()} self.path_image = path_dict["path_image"] self.path_dir_images = path_dict["path_dir_images"] self.path_dir_dirs = path_dict["path_dir_dirs"] self.path_excel = path_dict["path_excel"] self.path_excels = path_dict["path_excels"] self.path_vez_excel = path_dict["path_vez_excel"] self.path_ro_excel = path_dict["path_ro_excel"] self.path_ro_word = path_dict["path_ro_word"] except Exception: self.path_image = self.path_home self.path_dir_images = self.path_home self.path_dir_dirs = self.path_home self.path_excel = self.path_home self.path_excels = self.path_home self.path_vez_excel = self.path_home self.path_ro_excel = self.path_home self.path_ro_word = self.path_home self.lv_c = 5 self.t_c = 0.5 self.imnam = "слои" desktop = QApplication.desktop() wd = desktop.width() hg = desktop.height() ww = 1000 wh = 500 if ww > wd: ww = int(0.7 * wd) if wh > hg: wh = int(0.7 * hg) x = (wd - ww) // 2 y = (hg - wh) // 2 self.setGeometry(x, y, ww, wh) topVBoxLayout = QVBoxLayout(self) topVBoxLayout.setContentsMargins(0, 0, 0, 0) SPFrame = QFrame() SPFrame.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) SPFrame.setMinimumSize(QSize(150, 100)) self.ImFrame = QFrame() self.ImFrame.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) #self.ImFrame.setMinimumSize(QSize(300, 100)) TbFrame = QFrame() TbFrame.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) TbFrame.setMinimumSize(QSize(0, 100)) RFrame = QFrame() RFrame.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Expanding) RFrame.setMinimumSize(QSize(0, 100)) self.listView = CustomList() #QListView() self.listView.clicked.connect(self.OpenPict) self.select_able = True self.listView.setcloseEditorSignal(self.Rename) #self.listView.editingFinished.connect(self.Rename) #self.listView.edit.connect(self.Rename) BoxLayout1 = QVBoxLayout() self.progress_bar = QProgressBar() self.progress_bar.setAlignment(Qt.AlignHCenter) BoxLayout1.addWidget(self.progress_bar) BoxLayout1.addWidget(self.listView) SPFrame.setLayout(BoxLayout1) self.Table = CustomTable() #QTableWidget() self.Table.setcloseEditorSignal( lambda: self.WriteTable(who_edited="table")) #self.Table.itemChanged(lambda:print("change2")) self.Table.cellClicked[int, int].connect(self.PosChangedCell) self.Table.setColumnCount(3) self.Table.setHorizontalHeaderLabels(["p", "h", "d"]) self.Table.setRowCount(30) self.Table.setColumnWidth(0, 50) self.Table.setColumnWidth(1, 50) self.Table.setColumnWidth(2, 50) self.Table.setItemDelegate(DownloadDelegate(self)) BoxLayout2 = QHBoxLayout() BoxLayout2.addWidget(self.Table) TbFrame.setLayout(BoxLayout2) self.pe1 = QLabel("Рэ1=") self.pe2 = QLabel("Рэ2=") self.pe = QLabel("Рэ=") lb1 = QLabel("Длинна вертикального") lb2 = QLabel("заземлителя lв, м") lb3 = QLabel("Глубина заложения") lb4 = QLabel("вертикального заземлителя t, м") lb5 = QLabel("Эквивалентное сопротивление") lb6 = QLabel("Двухслойная модель") lb7 = QLabel("Однослойная модель") lb8 = QLabel("Шаблон искомого изображения") lb9 = QLabel("Название проекта") lb10 = QLabel("Название ВЛ") self.vl = QDoubleSpinBox() self.vl.setValue(self.lv_c) self.vl.valueChanged.connect(self.WriteTable) self.t = QDoubleSpinBox() self.t.setValue(self.t_c) self.t.valueChanged.connect(self.WriteTable) self.pe1_le = QLineEdit() self.pe2_le = QLineEdit() self.pe_le = QLineEdit() self.ImageName = QLineEdit() self.ImageName.setText(self.imnam) self.NPrj = QLineEdit() self.NVL = QLineEdit() self.ImageName.editingFinished.connect(self.ReadImName) spacerItem = QSpacerItem(2, 20, QSizePolicy.Minimum, QSizePolicy.Expanding) BoxLayout3 = QVBoxLayout() BoxLayout4 = QHBoxLayout() BoxLayout5 = QHBoxLayout() BoxLayout6 = QHBoxLayout() BoxLayout3.addWidget(lb8) BoxLayout3.addWidget(self.ImageName) BoxLayout3.addWidget(lb9) BoxLayout3.addWidget(self.NPrj) BoxLayout3.addWidget(lb10) BoxLayout3.addWidget(self.NVL) BoxLayout3.addWidget(lb1) BoxLayout3.addWidget(lb2) BoxLayout3.addWidget(self.vl) BoxLayout3.addWidget(lb3) BoxLayout3.addWidget(lb4) BoxLayout3.addWidget(self.t) BoxLayout3.addWidget(lb5) BoxLayout3.addWidget(lb6) BoxLayout4.addWidget(self.pe1) BoxLayout4.addWidget(self.pe1_le) BoxLayout3.addLayout(BoxLayout4) BoxLayout5.addWidget(self.pe2) BoxLayout5.addWidget(self.pe2_le) BoxLayout3.addLayout(BoxLayout5) BoxLayout3.addWidget(lb7) BoxLayout6.addWidget(self.pe) BoxLayout6.addWidget(self.pe_le) BoxLayout3.addLayout(BoxLayout6) BoxLayout3.addItem(spacerItem) RFrame.setLayout(BoxLayout3) Splitter1 = QSplitter(Qt.Horizontal) Splitter1.addWidget(SPFrame) Splitter1.addWidget(self.ImFrame) Splitter1.addWidget(TbFrame) Splitter1.addWidget(RFrame) Splitter1.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) Splitter1.setStretchFactor(1, 4) Splitter1.setStretchFactor(1, 1) topVBoxLayout.addWidget(Splitter1) self.central_widget = QWidget() self.central_widget.setLayout(topVBoxLayout) self.setCentralWidget(self.central_widget) #self.resize() #self.central_widget.show() self.PaintForm = MyFrame(False, parent=self.ImFrame) self.statusBar() menubar = self.menuBar() exitAction = QAction('&Выход', self) #QIcon('exit.png'), exitAction.setShortcut('Ctrl+Q') exitAction.setStatusTip('Выход и программы') exitAction.triggered.connect(lambda: self.closeEvent(QCloseEvent())) Open0Action = QAction('&Открыть изображение', self) #QIcon('exit.png'), Open0Action.setShortcut('Ctrl+1') Open0Action.setStatusTip( 'Результаты ВЭЗ предоставлены одиночными изображениями') Open0Action.triggered.connect(self.Op0) Open1Action = QAction('&Открыть папку изображений', self) #QIcon('exit.png'), Open1Action.setShortcut('Ctrl+2') Open1Action.setStatusTip( 'Результаты ВЭЗ предоставлены одиночными изображениями') Open1Action.triggered.connect(lambda: self.Op12(0)) Open2Action = QAction('&Открыть папку каталогов', self) #QIcon('exit.png'), Open2Action.setShortcut('Ctrl+3') Open2Action.setStatusTip('Результаты ВЭЗ предоставлены набором файлов') Open2Action.triggered.connect(lambda: self.Op12(1)) Open3Action = QAction('&Открыть файл Ecxel', self) #QIcon('exit.png'), Open3Action.setShortcut('Ctrl+4') Open3Action.setStatusTip('Результаты ВЭЗ файле Ecxel') Open3Action.triggered.connect(self.Op3) Open4Action = QAction('&Открыть файлы Ecxel', self) #QIcon('exit.png'), Open4Action.setShortcut('Ctrl+5') Open4Action.setStatusTip('Результаты ВЭЗ в нескольких файлах Ecxel') Open4Action.triggered.connect(self.Op4) NewPick = QAction("Добавить точку", self) NewPick.setShortcut('Ctrl+A') NewPick.setStatusTip('Добавить новую точку') NewPick.triggered.connect(self.NewPick) DelPick = QAction("Удалить точку", self) DelPick.setShortcut('Ctrl+D') DelPick.setStatusTip('Удалить точку из списка') DelPick.triggered.connect(self.DelPick) ReRead = QAction("Прочитать изображение", self) ReRead.setShortcut('Ctrl+R') ReRead.setStatusTip('Принудительно считывает информацию с изображения') ReRead.triggered.connect(self.ReReadImage) Select = QAction("Выбрать все точки", self) Select.setShortcut('Ctrl+W') Select.setStatusTip('Выбираем все точки из списка') Select.triggered.connect(self.select) ClearTable = QAction("Очистить таблицу", self) ClearTable.setShortcut('Ctrl+Shift+D') ClearTable.setStatusTip('Очищает текущую таблицу') ClearTable.triggered.connect(self.ClearTable) SetLvCheck = QAction("Установить lв выбранным точкам", self) SetLvCheck.setShortcut('Ctrl+E') SetLvCheck.setStatusTip('Изменяет lв выбраных точек на текущее') SetLvCheck.triggered.connect(self.SetLvCheck) SetTCheck = QAction("Установить t выбранным точкам", self) SetTCheck.setShortcut('Ctrl+T') SetTCheck.setStatusTip('Изменяет t выбраных точек на текущее') SetTCheck.triggered.connect(self.SetTCheck) Save1VEZExcel = QAction("Сохранить ВЭЗ в Excel", self) Save1VEZExcel.setShortcut('Ctrl+6') Save1VEZExcel.setStatusTip('Сохраняет выбраные ВЭЗ в Excel файл') Save1VEZExcel.triggered.connect(lambda: self.Save1VEZExcel(1)) Save2VEZExcel = QAction("Сохранить Pэ в Excel", self) Save2VEZExcel.setShortcut('Ctrl+7') Save2VEZExcel.setStatusTip('Сохраняет выбраные Рэ в Excel файл') Save2VEZExcel.triggered.connect(lambda: self.Save1VEZExcel(2)) Save3VEZExcel = QAction("Сохранить Pэ в Word", self) Save3VEZExcel.setShortcut('Ctrl+8') Save3VEZExcel.setStatusTip('Сохраняет выбраные Рэ в Word файл') Save3VEZExcel.triggered.connect(lambda: self.Save1VEZExcel(3)) EditWord = QAction("Редактировать шаблон Word", self) EditWord.setShortcut('Ctrl+G') EditWord.setStatusTip('Запускает окно для редактирования шаблона Word') EditWord.triggered.connect(self.EditWord) zoomIn = QAction("Увеличить изображение", self) zoomIn.setShortcut('Ctrl++') zoomIn.setStatusTip('Увеличивает открытое изображение') zoomIn.triggered.connect(self.PaintForm.zoomIn) zoomOut = QAction("Уменьшить изображение", self) zoomOut.setShortcut('Ctrl+-') zoomOut.setStatusTip('Уменьшает открытое изображение') zoomOut.triggered.connect(self.PaintForm.zoomOut) Rotate1 = QAction("Повернуть изображение по ч.с", self) Rotate1.setShortcut('Ctrl+Shift++') Rotate1.setStatusTip('Поворачивает изображение по часовой стрелке') Rotate1.triggered.connect(lambda: self.PaintForm.Rotate(1)) Rotate2 = QAction("Повернуть изображение против ч.с", self) Rotate2.setShortcut('Ctrl+Shift+-') Rotate2.setStatusTip( 'Поворачивает изображение ппротив часовой стрелке') Rotate2.triggered.connect(lambda: self.PaintForm.Rotate(-1)) NormalSize = QAction("Вернуть исходный размер", self) NormalSize.setShortcut('Ctrl+F') NormalSize.setStatusTip('Вернуть исходный размер изображения') NormalSize.triggered.connect(self.PaintForm.normalSize) fileMenu = menubar.addMenu('&Файл') fileMenu.addAction(Open0Action) fileMenu.addAction(Open1Action) fileMenu.addAction(Open2Action) fileMenu.addAction(Open3Action) fileMenu.addAction(Open4Action) fileMenu.addAction(exitAction) editMenu = menubar.addMenu('&Правка') editMenu.addAction(NewPick) editMenu.addAction(DelPick) editMenu.addAction(ReRead) editMenu.addAction(Select) editMenu.addAction(SetLvCheck) editMenu.addAction(SetTCheck) editMenu.addAction(ClearTable) imageMenu = menubar.addMenu('&Изображение') imageMenu.addAction(zoomIn) imageMenu.addAction(zoomOut) imageMenu.addAction(Rotate1) imageMenu.addAction(Rotate2) imageMenu.addAction(NormalSize) reportMenu = menubar.addMenu('&Отчёт') reportMenu.addAction(Save1VEZExcel) reportMenu.addAction(Save2VEZExcel) reportMenu.addAction(Save3VEZExcel) reportMenu.addAction(EditWord) self.setWindowTitle('VEZRead') self.setWindowIcon(QIcon('images\\op1.png')) self.d = {} self.sp_m = [] self.file_path = [] self.file_name = [] self.arr = [] self.stst = [] self.arr_lv = [] self.arr_t = [] self.adres = None self.ski = QStandardItemModel() self.listView.setModel(self.ski) self.listView.pressed.connect(self.presseditem) self.sel = True self.block = True self.back_colors = ((255, 255, 255, 255), (255, 0, 0, 50), (255, 255, 0, 50), (0, 255, 0, 50)) self.pos_changed_cell = (0, 0)
def closeEvent(self, closeEvent=QCloseEvent()): # window close event self.hide() self.tray.showMessage("작동 중", "StockAdvisorSystem을 종료해도 트레이아이콘으로 남아있게 됩니다.\n완전한 종료를 원하신다면 아이콘 우클릭 > 종료 버튼을 눌러주세요.", 1, 50) closeEvent.ignore()
def test_closeEvent_1(qtbot): app = KeypadWindow(app=Test()) qtbot.addWidget(app) with mock.patch.object(MWidget, 'closeEvent', return_value=True): app.closeEvent(QCloseEvent())
def test_closeEvent_1(qtbot): app = MessageWindow(app=Test()) qtbot.addWidget(app) app.closeEvent(QCloseEvent())
def on_exit_triggered(self): self.app_service.app_model.main_window.closeEvent(QCloseEvent())