tksheet 7.4.22__tar.gz → 7.4.24__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tksheet-7.4.22/tksheet.egg-info → tksheet-7.4.24}/PKG-INFO +1 -1
- {tksheet-7.4.22 → tksheet-7.4.24}/pyproject.toml +1 -1
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/__init__.py +1 -1
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/main_table.py +57 -26
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/sheet.py +14 -21
- {tksheet-7.4.22 → tksheet-7.4.24/tksheet.egg-info}/PKG-INFO +1 -1
- {tksheet-7.4.22 → tksheet-7.4.24}/LICENSE.txt +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/README.md +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/setup.cfg +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/colors.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/column_headers.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/constants.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/find_window.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/formatters.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/functions.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/other_classes.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/row_index.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/sheet_options.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/sorting.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/text_editor.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/themes.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/tksheet_types.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet/top_left_rectangle.py +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet.egg-info/SOURCES.txt +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet.egg-info/dependency_links.txt +0 -0
- {tksheet-7.4.22 → tksheet-7.4.24}/tksheet.egg-info/top_level.txt +0 -0
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
|
|
6
6
|
name = "tksheet"
|
7
7
|
description = "Tkinter table / sheet and treeview widget"
|
8
8
|
readme = "README.md"
|
9
|
-
version = "7.4.
|
9
|
+
version = "7.4.24"
|
10
10
|
authors = [{ name = "ragardner", email = "github@ragardner.simplelogin.com" }]
|
11
11
|
requires-python = ">=3.8"
|
12
12
|
license = {file = "LICENSE.txt"}
|
@@ -1324,7 +1324,7 @@ class MainTable(tk.Canvas):
|
|
1324
1324
|
and self.input_valid_for_cell(r, datacn, val, ignore_empty=True)
|
1325
1325
|
)
|
1326
1326
|
):
|
1327
|
-
rows[r][datacn] = self.format_value(
|
1327
|
+
rows[r][datacn] = self.format_value(r, datacn, val)
|
1328
1328
|
ctr += 1
|
1329
1329
|
if ctr:
|
1330
1330
|
event_data = self.add_rows(
|
@@ -1374,7 +1374,7 @@ class MainTable(tk.Canvas):
|
|
1374
1374
|
and self.input_valid_for_cell(datarn, c, val, ignore_empty=True)
|
1375
1375
|
)
|
1376
1376
|
):
|
1377
|
-
columns[c][datarn] = self.format_value(datarn,
|
1377
|
+
columns[c][datarn] = self.format_value(datarn, c, val)
|
1378
1378
|
ctr += 1
|
1379
1379
|
if ctr:
|
1380
1380
|
event_data = self.add_columns(
|
@@ -1796,6 +1796,9 @@ class MainTable(tk.Canvas):
|
|
1796
1796
|
disp_new_idxs=disp_new_idxs,
|
1797
1797
|
maxidx=maxidx,
|
1798
1798
|
event_data=event_data,
|
1799
|
+
# undo_modification is the old saved stuff
|
1800
|
+
# event_data is the new event
|
1801
|
+
# node change only comes from Sheet.move()
|
1799
1802
|
undo_modification=undo_modification,
|
1800
1803
|
node_change=node_change,
|
1801
1804
|
)
|
@@ -2020,8 +2023,9 @@ class MainTable(tk.Canvas):
|
|
2020
2023
|
self.PAR.emit_event("<<Redo>>", event_data)
|
2021
2024
|
return event_data
|
2022
2025
|
|
2023
|
-
def sheet_modified(self, event_data: EventDataDict, purge_redo: bool = True) -> None:
|
2024
|
-
|
2026
|
+
def sheet_modified(self, event_data: EventDataDict, purge_redo: bool = True, emit_event: bool = True) -> None:
|
2027
|
+
if emit_event:
|
2028
|
+
self.PAR.emit_event("<<SheetModified>>", event_data)
|
2025
2029
|
if purge_redo:
|
2026
2030
|
self.purge_redo_stack()
|
2027
2031
|
|
@@ -7603,9 +7607,30 @@ class MainTable(tk.Canvas):
|
|
7603
7607
|
return
|
7604
7608
|
if numcols == 1 and numrows == 1:
|
7605
7609
|
if direction == "right":
|
7606
|
-
|
7610
|
+
new_r, new_c = cell_right_within_box(
|
7611
|
+
r,
|
7612
|
+
c,
|
7613
|
+
0,
|
7614
|
+
0,
|
7615
|
+
len(self.row_positions) - 1,
|
7616
|
+
len(self.col_positions) - 1,
|
7617
|
+
len(self.row_positions) - 1,
|
7618
|
+
len(self.col_positions) - 1,
|
7619
|
+
)
|
7607
7620
|
elif direction == "down":
|
7608
|
-
|
7621
|
+
new_r, new_c = cell_down_within_box(
|
7622
|
+
r,
|
7623
|
+
c,
|
7624
|
+
0,
|
7625
|
+
0,
|
7626
|
+
len(self.row_positions) - 1,
|
7627
|
+
len(self.col_positions) - 1,
|
7628
|
+
len(self.row_positions) - 1,
|
7629
|
+
len(self.col_positions) - 1,
|
7630
|
+
)
|
7631
|
+
if direction in ("right", "down"):
|
7632
|
+
self.select_cell(new_r, new_c)
|
7633
|
+
self.see(new_r, new_c)
|
7609
7634
|
else:
|
7610
7635
|
if direction == "right":
|
7611
7636
|
new_r, new_c = cell_right_within_box(r, c, r1, c1, r2, c2, numrows, numcols)
|
@@ -7631,28 +7656,34 @@ class MainTable(tk.Canvas):
|
|
7631
7656
|
value = None
|
7632
7657
|
return value, event_data
|
7633
7658
|
|
7634
|
-
def select_right(self, r: int, c: int) -> None:
|
7635
|
-
self.select_cell(r, c + 1 if c < len(self.col_positions) - 2 else c)
|
7636
|
-
self.see(
|
7637
|
-
r,
|
7638
|
-
c + 1 if c < len(self.col_positions) - 2 else c,
|
7639
|
-
bottom_right_corner=True,
|
7640
|
-
)
|
7641
|
-
|
7642
|
-
def select_down(self, r: int, c: int) -> None:
|
7643
|
-
self.select_cell(r + 1 if r < len(self.row_positions) - 2 else r, c)
|
7644
|
-
self.see(r + 1 if r < len(self.row_positions) - 2 else r, c)
|
7645
|
-
|
7646
7659
|
def tab_key(self, event: Any = None) -> str:
|
7647
|
-
if
|
7648
|
-
|
7649
|
-
|
7650
|
-
|
7651
|
-
|
7652
|
-
|
7660
|
+
if self.selected:
|
7661
|
+
r, c = self.selected.row, self.selected.column
|
7662
|
+
r1, c1, r2, c2 = self.selection_boxes[self.selected.fill_iid].coords
|
7663
|
+
numcols = c2 - c1
|
7664
|
+
numrows = r2 - r1
|
7665
|
+
else:
|
7666
|
+
if (
|
7667
|
+
self.row_positions == [0]
|
7668
|
+
or self.col_positions == [0]
|
7669
|
+
or not self.row_positions
|
7670
|
+
or not self.col_positions
|
7671
|
+
):
|
7672
|
+
return
|
7673
|
+
r, c = len(self.row_positions) - 2, len(self.col_positions) - 2
|
7674
|
+
r1, c1, r2, c2 = 0, 0, len(self.row_positions) - 1, len(self.col_positions) - 1
|
7675
|
+
numcols, numrows = 1, 1
|
7653
7676
|
if numcols == 1 and numrows == 1:
|
7654
|
-
new_r =
|
7655
|
-
|
7677
|
+
new_r, new_c = cell_right_within_box(
|
7678
|
+
r,
|
7679
|
+
c,
|
7680
|
+
0,
|
7681
|
+
0,
|
7682
|
+
len(self.row_positions) - 1,
|
7683
|
+
len(self.col_positions) - 1,
|
7684
|
+
len(self.row_positions) - 1,
|
7685
|
+
len(self.col_positions) - 1,
|
7686
|
+
)
|
7656
7687
|
self.select_cell(new_r, new_c)
|
7657
7688
|
else:
|
7658
7689
|
new_r, new_c = cell_right_within_box(r, c, r1, c1, r2, c2, numrows, numcols)
|
@@ -1565,8 +1565,9 @@ class Sheet(tk.Frame):
|
|
1565
1565
|
):
|
1566
1566
|
if undo is True or (undo is None and span.undo):
|
1567
1567
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
1568
|
-
|
1569
|
-
|
1568
|
+
self.MT.sheet_modified(
|
1569
|
+
event_data, emit_event=emit_event is True or (emit_event is None and span.emit_event)
|
1570
|
+
)
|
1570
1571
|
self.set_refresh_timer(redraw)
|
1571
1572
|
return event_data
|
1572
1573
|
|
@@ -1605,8 +1606,9 @@ class Sheet(tk.Frame):
|
|
1605
1606
|
if event_data["cells"]["table"] or event_data["cells"]["header"] or event_data["cells"]["index"]:
|
1606
1607
|
if undo is True or (undo is None and span.undo):
|
1607
1608
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
1608
|
-
|
1609
|
-
|
1609
|
+
self.MT.sheet_modified(
|
1610
|
+
event_data, emit_event=emit_event is True or (emit_event is None and span.emit_event)
|
1611
|
+
)
|
1610
1612
|
self.set_refresh_timer(redraw)
|
1611
1613
|
return event_data
|
1612
1614
|
|
@@ -1743,8 +1745,7 @@ class Sheet(tk.Frame):
|
|
1743
1745
|
)
|
1744
1746
|
if undo:
|
1745
1747
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
1746
|
-
|
1747
|
-
self.emit_event("<<SheetModified>>", event_data)
|
1748
|
+
self.MT.sheet_modified(event_data, emit_event=emit_event)
|
1748
1749
|
self.set_refresh_timer(redraw)
|
1749
1750
|
return event_data
|
1750
1751
|
|
@@ -1797,8 +1798,7 @@ class Sheet(tk.Frame):
|
|
1797
1798
|
)
|
1798
1799
|
if undo:
|
1799
1800
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
1800
|
-
|
1801
|
-
self.emit_event("<<SheetModified>>", event_data)
|
1801
|
+
self.MT.sheet_modified(event_data, emit_event=emit_event)
|
1802
1802
|
self.set_refresh_timer(redraw)
|
1803
1803
|
return event_data
|
1804
1804
|
|
@@ -1939,8 +1939,7 @@ class Sheet(tk.Frame):
|
|
1939
1939
|
)
|
1940
1940
|
if undo:
|
1941
1941
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
1942
|
-
|
1943
|
-
self.emit_event("<<SheetModified>>", event_data)
|
1942
|
+
self.MT.sheet_modified(event_data, emit_event=emit_event)
|
1944
1943
|
self.set_refresh_timer(redraw)
|
1945
1944
|
return data_idxs, disp_idxs, event_data
|
1946
1945
|
|
@@ -1974,8 +1973,7 @@ class Sheet(tk.Frame):
|
|
1974
1973
|
)
|
1975
1974
|
if undo:
|
1976
1975
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
1977
|
-
|
1978
|
-
self.emit_event("<<SheetModified>>", event_data)
|
1976
|
+
self.MT.sheet_modified(event_data, emit_event=emit_event)
|
1979
1977
|
self.set_refresh_timer(redraw)
|
1980
1978
|
return data_idxs, disp_idxs, event_data
|
1981
1979
|
|
@@ -1999,8 +1997,7 @@ class Sheet(tk.Frame):
|
|
1999
1997
|
)
|
2000
1998
|
if undo:
|
2001
1999
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
2002
|
-
|
2003
|
-
self.emit_event("<<SheetModified>>", event_data)
|
2000
|
+
self.MT.sheet_modified(event_data, emit_event=emit_event)
|
2004
2001
|
self.set_refresh_timer(redraw)
|
2005
2002
|
return data_idxs, disp_idxs, event_data
|
2006
2003
|
|
@@ -2026,8 +2023,7 @@ class Sheet(tk.Frame):
|
|
2026
2023
|
)
|
2027
2024
|
if undo:
|
2028
2025
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
2029
|
-
|
2030
|
-
self.emit_event("<<SheetModified>>", event_data)
|
2026
|
+
self.MT.sheet_modified(event_data, emit_event=emit_event)
|
2031
2027
|
self.set_refresh_timer(redraw)
|
2032
2028
|
return data_idxs, disp_idxs, event_data
|
2033
2029
|
|
@@ -2242,7 +2238,6 @@ class Sheet(tk.Frame):
|
|
2242
2238
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
2243
2239
|
try_binding(self.MT.extra_end_replace_all_func, event_data)
|
2244
2240
|
self.MT.sheet_modified(event_data)
|
2245
|
-
self.emit_event("<<SheetModified>>", event_data)
|
2246
2241
|
return event_data
|
2247
2242
|
|
2248
2243
|
# Highlighting Cells
|
@@ -4872,8 +4867,7 @@ class Sheet(tk.Frame):
|
|
4872
4867
|
if event_data:
|
4873
4868
|
if undo and self.MT.undo_enabled:
|
4874
4869
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
4875
|
-
|
4876
|
-
self.emit_event("<<SheetModified>>", event_data)
|
4870
|
+
self.MT.sheet_modified(event_data, emit_event=emit_event)
|
4877
4871
|
|
4878
4872
|
self.set_refresh_timer(redraw=not get_only and redraw)
|
4879
4873
|
if get_only:
|
@@ -4973,8 +4967,7 @@ class Sheet(tk.Frame):
|
|
4973
4967
|
)
|
4974
4968
|
if undo:
|
4975
4969
|
self.MT.undo_stack.append(stored_event_dict(event_data))
|
4976
|
-
|
4977
|
-
self.emit_event("<<SheetModified>>", event_data)
|
4970
|
+
self.MT.sheet_modified(event_data, emit_event=emit_event)
|
4978
4971
|
self.set_refresh_timer()
|
4979
4972
|
return data_new_idxs, disp_new_idxs, event_data
|
4980
4973
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|