@@ -1477,25 +1477,6 @@ def ver_number(var):
1477
1477
1478
1478
##############
1479
1479
1480
- self .find_size_min_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1481
- self .find_size_max_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1482
-
1483
- self .find_modtime_min_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1484
- self .find_modtime_max_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1485
-
1486
- self .find_name_regexp_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1487
- self .find_name_glob_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1488
- self .find_name_fuzz_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1489
- self .find_name_case_sens_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1490
-
1491
- self .find_cd_regexp_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1492
- self .find_cd_glob_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1493
- self .find_cd_fuzz_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1494
- self .find_cd_case_sens_var .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1495
-
1496
- self .find_name_fuzzy_threshold .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1497
- self .find_cd_fuzzy_threshold .trace_add ("write" , lambda i ,j ,k : self .find_mod ())
1498
-
1499
1480
sfdma = self .find_dialog .area_main
1500
1481
1501
1482
(find_filename_frame := LabelFrame (sfdma ,text = 'Search range' ,bd = 2 ,bg = self .bg_color ,takefocus = False )).grid (row = 0 ,column = 0 ,sticky = 'news' ,padx = 4 ,pady = 4 )
@@ -1527,9 +1508,9 @@ def ver_number(var):
1527
1508
self .find_filename_glob_entry = Entry (find_filename_frame ,textvariable = self .find_name_glob_var ,validate = "key" )
1528
1509
self .find_filename_fuzz_entry = Entry (find_filename_frame ,textvariable = self .find_name_fuzz_var ,validate = "key" )
1529
1510
1530
- self .find_filename_regexp_entry .bind ("<KeyPress>" , lambda event : self .find_mod )
1531
- self .find_filename_glob_entry .bind ("<KeyPress>" , lambda event : self .find_mod )
1532
- self .find_filename_fuzz_entry .bind ("<KeyPress>" , lambda event : self .find_mod )
1511
+ self .find_filename_regexp_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1512
+ self .find_filename_glob_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1513
+ self .find_filename_fuzz_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1533
1514
1534
1515
self .find_filename_regexp_entry .grid (row = 2 , column = 1 , sticky = 'we' ,padx = 4 ,pady = 4 )
1535
1516
self .find_filename_glob_entry .grid (row = 3 , column = 1 , sticky = 'we' ,padx = 4 ,pady = 4 )
@@ -1543,6 +1524,8 @@ def ver_number(var):
1543
1524
self .find_filename_fuzzy_threshold_lab .grid (row = 4 , column = 2 , sticky = 'wens' ,padx = 4 ,pady = 4 )
1544
1525
self .find_filename_fuzzy_threshold_entry .grid (row = 4 , column = 3 , sticky = 'wens' ,padx = 4 ,pady = 4 )
1545
1526
1527
+ self .find_filename_fuzzy_threshold_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1528
+
1546
1529
self .widget_tooltip (regexp_radio_name ,regexp_tooltip + regexp_tooltip_name )
1547
1530
self .widget_tooltip (self .find_filename_regexp_entry ,regexp_tooltip + regexp_tooltip_name )
1548
1531
self .widget_tooltip (glob_radio_name ,glob_tooltip + glob_tooltip_name )
@@ -1568,9 +1551,9 @@ def ver_number(var):
1568
1551
self .find_cd_glob_entry = Entry (find_cd_frame ,textvariable = self .find_cd_glob_var ,validate = "key" )
1569
1552
self .find_cd_fuzz_entry = Entry (find_cd_frame ,textvariable = self .find_cd_fuzz_var ,validate = "key" )
1570
1553
1571
- self .find_cd_regexp_entry .bind ("<KeyPress>" , lambda event : self .find_mod )
1572
- self .find_cd_glob_entry .bind ("<KeyPress>" , lambda event : self .find_mod )
1573
- self .find_cd_fuzz_entry .bind ("<KeyPress>" , lambda event : self .find_mod )
1554
+ self .find_cd_regexp_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1555
+ self .find_cd_glob_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1556
+ self .find_cd_fuzz_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1574
1557
1575
1558
self .find_cd_regexp_entry .grid (row = 4 , column = 1 , sticky = 'we' ,padx = 4 ,pady = 4 )
1576
1559
self .find_cd_glob_entry .grid (row = 5 , column = 1 , sticky = 'we' ,padx = 4 ,pady = 4 )
@@ -1584,6 +1567,8 @@ def ver_number(var):
1584
1567
self .find_cd_fuzzy_threshold_lab .grid (row = 6 , column = 2 , sticky = 'wens' ,padx = 4 ,pady = 4 )
1585
1568
self .find_cd_fuzzy_threshold_entry .grid (row = 6 , column = 3 , sticky = 'wens' ,padx = 4 ,pady = 4 )
1586
1569
1570
+ self .find_cd_fuzzy_threshold_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1571
+
1587
1572
self .widget_tooltip (regexp_radio_cd ,regexp_tooltip + regexp_tooltip_cd )
1588
1573
self .widget_tooltip (self .find_cd_regexp_entry ,regexp_tooltip + regexp_tooltip_cd )
1589
1574
self .widget_tooltip (glob_radio_cd ,glob_tooltip + glob_tooltip_cd )
@@ -1611,6 +1596,9 @@ def validate_size_str(val):
1611
1596
find_size_max_entry = Entry (find_size_frame ,textvariable = self .find_size_max_var )
1612
1597
find_size_max_entry .grid (row = 0 , column = 3 , sticky = 'we' ,padx = 4 ,pady = 4 )
1613
1598
1599
+ find_size_min_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1600
+ find_size_max_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1601
+
1614
1602
size_tooltip = 'Integer value [in bytes] or integer with unit.\n Leave the value blank to ignore this criterion.\n \n examples:\n 399\n 100B\n 125kB\n 10MB'
1615
1603
self .widget_tooltip (find_size_min_entry ,size_tooltip )
1616
1604
self .widget_tooltip (find_size_min_label ,size_tooltip )
@@ -1628,6 +1616,9 @@ def validate_size_str(val):
1628
1616
find_modtime_max_entry = Entry (find_modtime_frame ,textvariable = self .find_modtime_max_var )
1629
1617
find_modtime_max_entry .grid (row = 0 , column = 3 , sticky = 'we' ,padx = 4 ,pady = 4 )
1630
1618
1619
+ find_modtime_min_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1620
+ find_modtime_max_entry .bind ("<KeyPress>" , self .find_mod_keypress )
1621
+
1631
1622
time_toltip = 'Date and time in the format below.\n Leave the value blank to ignore this criterion.\n \n examples:\n 2023-12-14 22:21:20\n 2023-12-14 22:21\n 2023-12-14\n 2023-12'
1632
1623
self .widget_tooltip (find_modtime_min_entry ,time_toltip )
1633
1624
self .widget_tooltip (find_modtime_min_label ,time_toltip )
@@ -2136,6 +2127,14 @@ def find_show_results(self):
2136
2127
2137
2128
find_dialog_shown = False
2138
2129
2130
+ def find_mod_keypress (self ,event ):
2131
+ key = event .keysym
2132
+
2133
+ if key == 'Return' :
2134
+ self .find_items ()
2135
+ else :
2136
+ return self .find_mod ()
2137
+
2139
2138
def find_mod (self ):
2140
2139
try :
2141
2140
if self .cfg .get (CFG_KEY_find_cd_search_kind ) != self .find_cd_search_kind_var .get ():
@@ -2228,6 +2227,9 @@ def find_mod(self):
2228
2227
2229
2228
self .search_show_butt .configure (state = 'disabled' )
2230
2229
self .search_save_butt .configure (state = 'disabled' )
2230
+ else :
2231
+ self .search_show_butt .configure (state = 'normal' )
2232
+ self .search_save_butt .configure (state = 'normal' )
2231
2233
2232
2234
except Exception as e :
2233
2235
self .find_result_record_index = 0
0 commit comments