adds inc and dec sort for table header

This commit is contained in:
2025-04-18 12:13:51 +02:00
parent 5f568d3850
commit 62e8bb728b

View File

@@ -143,8 +143,10 @@ class Application:
self.config = Config() self.config = Config()
self.config_good = False self.config_good = False
# variables
self.address_list = [] self.address_list = []
self.current_record: int | None = None self.current_record: int | None = None
self.sort_order = False
# init paths to json and csv file # init paths to json and csv file
self.json_file_name = "brovski-adress-etiketten-verwaltung.json" self.json_file_name = "brovski-adress-etiketten-verwaltung.json"
@@ -203,6 +205,7 @@ class Application:
show="headings") show="headings")
scrollbar.config(command=self.table.yview) scrollbar.config(command=self.table.yview)
self.table.heading('0', text="Aktiv") self.table.heading('0', text="Aktiv")
self.table.column('0', anchor=tk.CENTER, width=0)
self.table.heading('1', text="Firma") self.table.heading('1', text="Firma")
self.table.heading('2', text="Name") self.table.heading('2', text="Name")
self.table.heading('3', text="Strasse") self.table.heading('3', text="Strasse")
@@ -280,22 +283,23 @@ class Application:
column = self.table.identify_column(event.x) column = self.table.identify_column(event.x)
match column: match column:
case "#1": case "#1":
self.address_list.sort(key=lambda x: x[int(column[-1]) - 1]) self.address_list.sort(key=lambda x: x[int(column[-1]) - 1], reverse=self.sort_order)
self.populate_table() self.populate_table()
case "#2": case "#2":
self.address_list.sort(key=lambda x: x[int(column[-1]) - 1]) self.address_list.sort(key=lambda x: x[int(column[-1]) - 1], reverse=self.sort_order)
self.populate_table() self.populate_table()
case "#3": case "#3":
self.address_list.sort(key=lambda x: x[int(column[-1]) - 1]) self.address_list.sort(key=lambda x: x[int(column[-1]) - 1], reverse=self.sort_order)
self.populate_table() self.populate_table()
case "#4": case "#4":
self.address_list.sort(key=lambda x: x[int(column[-1]) - 1]) self.address_list.sort(key=lambda x: x[int(column[-1]) - 1], reverse=self.sort_order)
self.populate_table() self.populate_table()
case "#5": case "#5":
self.address_list.sort(key=lambda x: x[int(column[-1]) - 1]) self.address_list.sort(key=lambda x: x[int(column[-1]) - 1], reverse=self.sort_order)
self.populate_table() self.populate_table()
case _: case _:
print(column) print(column)
self.sort_order = not self.sort_order
if region == "cell": if region == "cell":
self.current_record = self.table.focus() self.current_record = self.table.focus()