From: Agnibho Mondal Date: Sun, 5 Nov 2023 20:48:51 +0000 (+0530) Subject: Configuration and prescriber editor as modal dialog X-Git-Tag: v0.5~58 X-Git-Url: https://code.agnibho.com/repo?a=commitdiff_plain;h=3b4567cfe3bb8b3acfe4b223fc796175e9cc430b;p=medscript.git Configuration and prescriber editor as modal dialog --- 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)