From 3b4567cfe3bb8b3acfe4b223fc796175e9cc430b Mon Sep 17 00:00:00 2001 From: Agnibho Mondal Date: Mon, 6 Nov 2023 02:18:51 +0530 Subject: [PATCH] Configuration and prescriber editor as modal dialog --- setting.py | 30 +++++++----------------------- window.py | 4 ++-- 2 files changed, 9 insertions(+), 25 deletions(-) diff --git a/setting.py b/setting.py index bff51ff..7092248 100644 --- a/setting.py +++ b/setting.py @@ -5,13 +5,13 @@ # MedScript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. # You should have received a copy of the GNU General Public License along with MedScript. If not, see . -from PyQt6.QtWidgets import QWidget, QMainWindow, QFormLayout, QHBoxLayout, QPushButton, QLabel, QLineEdit, QTextEdit, QComboBox, QCheckBox, QStatusBar, QMessageBox, QFileDialog +from PyQt6.QtWidgets import QDialog, QFormLayout, QHBoxLayout, QPushButton, QLabel, QLineEdit, QTextEdit, QComboBox, QCheckBox, QStatusBar, QMessageBox, QFileDialog from PyQt6.QtGui import QIcon from PyQt6.QtCore import Qt, pyqtSignal import os, json from config import config, config_file -class EditConfiguration(QMainWindow): +class EditConfiguration(QDialog): def select_directory(self): d=QFileDialog.getExistingDirectory(self, "Select Directory", config["data_directory"]) @@ -36,7 +36,6 @@ class EditConfiguration(QMainWindow): def load(self): try: - self.statusbar.showMessage(config_file) self.input_directory.setText(self.config["data_directory"]) self.input_prescriber.setText(self.config["prescriber"]) self.input_newline.setChecked(bool(self.config["preset_newline"])) @@ -84,11 +83,9 @@ class EditConfiguration(QMainWindow): print(e) self.config=config - self.setWindowTitle("MedScript") - self.setGeometry(200, 200, 300, 200) + self.setWindowTitle("Configuration") - widget=QWidget(self) - layout=QFormLayout(widget) + layout=QFormLayout(self) self.input_directory=QLineEdit(self) btn_directory=QPushButton("Select Directory", self) btn_directory.clicked.connect(self.select_directory) @@ -146,16 +143,11 @@ class EditConfiguration(QMainWindow): layout_btn.addWidget(button_reset) layout.addRow("", layout_btn) - self.statusbar=QStatusBar() - self.setStatusBar(self.statusbar) - - self.setCentralWidget(widget) self.setWindowIcon(QIcon(os.path.join("resource", "icon_medscript.ico"))) - self.setWindowFlag(Qt.WindowType.WindowStaysOnTopHint) self.load() -class EditPrescriber(QMainWindow): +class EditPrescriber(QDialog): signal_save=pyqtSignal(str) @@ -165,7 +157,6 @@ class EditPrescriber(QMainWindow): def load(self): try: self.file=config["prescriber"] - self.statusbar.showMessage(self.file) with open(self.file) as data: self.prescriber=json.loads(data.read()) self.input_name.setText(self.prescriber["name"]) @@ -208,11 +199,9 @@ class EditPrescriber(QMainWindow): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) - self.setWindowTitle("MedScript") - self.setGeometry(200, 200, 300, 200) + self.setWindowTitle("Prescriber") - widget=QWidget(self) - layout=QFormLayout(widget) + layout=QFormLayout(self) self.input_name=QLineEdit(self) layout.addRow("Name", self.input_name) self.input_qualification=QLineEdit(self) @@ -237,11 +226,6 @@ class EditPrescriber(QMainWindow): layout_btn.addWidget(button_reset) layout.addRow("", layout_btn) - self.statusbar=QStatusBar() - self.setStatusBar(self.statusbar) - - self.setCentralWidget(widget) self.setWindowIcon(QIcon(os.path.join("resource", "icon_medscript.ico"))) - self.setWindowFlag(Qt.WindowType.WindowStaysOnTopHint) self.load() diff --git a/window.py b/window.py index 9c14cc7..692af25 100644 --- a/window.py +++ b/window.py @@ -204,10 +204,10 @@ class MainWindow(QMainWindow): self.index.show() def cmd_configuration(self): - self.edit_configuration.show() + self.edit_configuration.exec() def cmd_prescriber(self): - self.edit_prescriber.show() + self.edit_prescriber.exec() def cmd_prescriber_reload(self, file=None): self.prescription.reload_prescriber(file=None) -- 2.39.5