adding a delete option for year tabs, excluding the Pre-2010 tab

This commit is contained in:
Bernd 2025-07-20 00:11:42 +05:00
parent 5b40e57a25
commit fa99b176c1
2 changed files with 21 additions and 1 deletions

View File

@ -112,4 +112,9 @@ class AnimeBackend:
with open(file_name, 'w', newline='') as f:
writer = csv.writer(f)
writer.writerow(['id', 'name', 'year', 'season', 'status', 'type', 'comment', 'url'])
writer.writerows(rows)
writer.writerows(rows)
def delete_year(self, year):
cursor = self.db.cursor()
cursor.execute("DELETE FROM anime WHERE year = ?", (year,))
self.db.commit()

View File

@ -131,6 +131,9 @@ class AnimeTracker(QMainWindow):
add_year_act = QAction('Add New Year', self)
add_year_act.triggered.connect(self.add_new_year)
edit_menu.addAction(add_year_act)
del_year_act = QAction('Delete Year', self)
del_year_act.triggered.connect(self.delete_year)
edit_menu.addAction(del_year_act)
tools_menu = menubar.addMenu('Tools')
random_act = QAction('Random Pick', self)
random_act.triggered.connect(self.random_pick)
@ -372,6 +375,18 @@ class AnimeTracker(QMainWindow):
self.backend.add_placeholders_for_year(year)
self.load_tabs()
def delete_year(self):
current_year = datetime.now().year
year, ok = QInputDialog.getInt(self, "Delete Year", "Enter the year to delete:", 2010, 2010, current_year + 10)
if ok:
years = self.backend.get_years()
if year not in years:
QMessageBox.warning(self, "Error", f"Year {year} does not exist.")
return
if QMessageBox.question(self, "Confirm Delete", f"Are you sure you want to delete all entries for {year}?") == QMessageBox.Yes:
self.backend.delete_year(year)
self.load_tabs()
def random_pick(self):
if self.tab_widget.currentIndex() == -1:
QMessageBox.information(self, "Random Pick", "No tab selected.")