Semaine 4, jour 4, soir
This commit is contained in:
57
Semaine_04/Bibliotheque/gui/ui_library.py
Normal file
57
Semaine_04/Bibliotheque/gui/ui_library.py
Normal file
@@ -0,0 +1,57 @@
|
||||
from Semaine_04.Bibliotheque.gui.signal_mgt import SignalManagement
|
||||
from logic import actions
|
||||
from gui.ui_init import Ui_Initialization
|
||||
from gui.ui_base import Ui_MainWindow
|
||||
from PyQt6.QtWidgets import QMessageBox
|
||||
from PyQt6.QtGui import QStandardItemModel, QStandardItem
|
||||
|
||||
class Ui_Library(Ui_MainWindow):
|
||||
##### Méthode de mise à jour de la liste des titres avec QTSignal
|
||||
|
||||
def setupUi(self, MainWindow):
|
||||
super().setupUi(MainWindow)
|
||||
ui_init = Ui_Initialization(self)
|
||||
ui_init.connect_button()
|
||||
ui_init.fulfill_list()
|
||||
|
||||
self.signal_mgt = SignalManagement(self)
|
||||
self.signal_mgt.connect_signals()
|
||||
|
||||
def record_book(self):
|
||||
title = self.title_input.text()
|
||||
author = self.author_input.text()
|
||||
message = actions.register_book(title, author)
|
||||
QMessageBox.information(None, "Nouvel enregistrement", message)
|
||||
# self.refresh_title_list()
|
||||
self.signal_mgt.change_list_signal.emit()
|
||||
|
||||
def delete_book(self):
|
||||
title = self.title_list.currentText()
|
||||
message = actions.delete_book(title)
|
||||
QMessageBox.information(None, "Suppression confirmée", message)
|
||||
# self.refresh_title_list()
|
||||
self.signal_mgt.change_list_signal.emit()
|
||||
|
||||
def refresh_title_list(self):
|
||||
self.title_list.clear()
|
||||
self.title_list.addItems(actions.list_titles())
|
||||
|
||||
def search_book(self):
|
||||
word = self.search_input.text()
|
||||
if len(word) == 1:
|
||||
results = actions.search_by_letter(word)
|
||||
self.display_list_view(results)
|
||||
return
|
||||
if len(word) > 1:
|
||||
results = actions.search_by_word(word)
|
||||
self.display_list_view(results)
|
||||
return
|
||||
|
||||
def display_list_view(self, results):
|
||||
self.model = QStandardItemModel()
|
||||
self.results_view.setModel(self.model)
|
||||
if isinstance(results, str):
|
||||
self.model.appendRow(QStandardItem(results))
|
||||
else:
|
||||
for book in results:
|
||||
self.model.appendRow(QStandardItem(str(book)))
|
||||
Reference in New Issue
Block a user