Skip to content

Commit 4f2cdc8

Browse files
committed
added tasbih in new dialog.
1 parent 0adb3b8 commit 4f2cdc8

File tree

1 file changed

+11
-13
lines changed

1 file changed

+11
-13
lines changed

ui/dialogs/tasbih_dialog.py

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from PyQt6.QtWidgets import (
2-
QDialog, QVBoxLayout, QListWidget, QPushButton,
2+
QDialog, QVBoxLayout, QListWidget, QPushButton, QInputDialog,
33
QLineEdit, QLabel, QMessageBox, QListWidgetItem
44
)
55
from PyQt6.QtCore import Qt
@@ -19,10 +19,7 @@ def __init__(self, parent) -> None:
1919

2020
# Create UI elements.
2121
self.listWidget = QListWidget()
22-
self.entryLineEdit = QLineEdit()
23-
self.entryLineEdit.setPlaceholderText("أدخل تسبيح جديد")
2422
self.addButton = QPushButton("إضافة تسبيح")
25-
self.addButton.setEnabled(False)
2623
self.delete_button = QPushButton("حذف تسبيح")
2724
self.delete_button.setEnabled(False)
2825
self.incrementButton = QPushButton("زيادة العداد")
@@ -34,8 +31,6 @@ def __init__(self, parent) -> None:
3431
layout = QVBoxLayout()
3532
layout.addWidget(QLabel("التسابيح"))
3633
layout.addWidget(self.listWidget)
37-
layout.addWidget(QLabel("تسبيح جديد"))
38-
layout.addWidget(self.entryLineEdit)
3934
layout.addWidget(self.addButton)
4035
layout.addWidget(self.delete_button)
4136
layout.addWidget(self.incrementButton)
@@ -47,13 +42,11 @@ def __init__(self, parent) -> None:
4742
self.delete_button.clicked.connect(self.handle_delete_entry)
4843
self.incrementButton.clicked.connect(self.handle_increment)
4944
self.resetButton.clicked.connect(self.handle_reset)
50-
self.entryLineEdit.textChanged.connect(self.OnLineEdit)
5145
self.listWidget.itemSelectionChanged.connect(self.OnItemSelectionChanged)
5246

5347
# Connect controller signals to dialog slots.
5448
self.controller.entrieAdded.connect(self.handle_entry_added)
5549
self.controller.entrieUpdated.connect(self.handle_entry_updated)
56-
5750
# Populate the list with existing entries.
5851
self.populate_list()
5952
self.set_shortcuts()
@@ -92,19 +85,24 @@ def add_list_item(self, entry):
9285
self.listWidget.addItem(item)
9386

9487
def handle_add_entry(self):
95-
"""Called when the Add button is clicked."""
96-
new_name = self.entryLineEdit.text().strip()
97-
self.controller.add_entry(new_name)
98-
self.entryLineEdit.clear()
99-
self.listWidget.setFocus()
88+
"""Called when the Add button is clicked.
10089
90+
Opens a QInputDialog to obtain the name for the new tasbih entry.
91+
If a valid name is entered, it is added to the list and the list is focused.
92+
"""
93+
new_name, ok = QInputDialog.getText(self, "إضافة تسبيح", "أدخل اسم التسبيح:")
94+
if ok and new_name.strip():
95+
self.controller.add_entry(new_name.strip())
96+
self.listWidget.setFocus()
97+
10198
def handle_entry_added(self, entry: TasbihEntry):
10299
"""
103100
Slot called when a new entry is added.
104101
Retrieves the full entry info and adds it to the list.
105102
"""
106103
self.add_list_item(entry)
107104
self.listWidget.setCurrentRow(self.listWidget.count() - 1)
105+
108106

109107
def handle_entry_updated(self, entry: TasbihEntry):
110108
"""

0 commit comments

Comments
 (0)