@@ -166,8 +166,8 @@ def init_ui(self, root):
166
166
self .ipv_type_label .pack (side = tk .LEFT , padx = 4 , pady = 8 )
167
167
self .ipv_type_combo = ttk .Combobox (frame_default_channel_column2 )
168
168
self .ipv_type_combo .pack (side = tk .LEFT , padx = 4 , pady = 8 )
169
- self .ipv_type_combo ["values" ] = ("ipv4 " , "ipv6 " , "全部" )
170
- ipv_type = config .get ("Settings" , "ipv_type" , fallback = "全部" )
169
+ self .ipv_type_combo ["values" ] = ("IPv4 " , "IPv6 " , "全部" )
170
+ ipv_type = config .get ("Settings" , "ipv_type" , fallback = "全部" ). lower ()
171
171
if ipv_type == "ipv4" :
172
172
self .ipv_type_combo .current (0 )
173
173
elif ipv_type == "ipv6" :
@@ -181,7 +181,9 @@ def init_ui(self, root):
181
181
frame_default_sort_column1 = tk .Frame (frame_default_sort )
182
182
frame_default_sort_column1 .pack (side = tk .LEFT , fill = tk .Y )
183
183
frame_default_sort_column2 = tk .Frame (frame_default_sort )
184
- frame_default_sort_column2 .pack (side = tk .RIGHT , fill = tk .Y )
184
+ frame_default_sort_column2 .pack (side = tk .LEFT , fill = tk .Y )
185
+ frame_default_sort_column3 = tk .Frame (frame_default_sort )
186
+ frame_default_sort_column3 .pack (side = tk .RIGHT , fill = tk .Y )
185
187
186
188
self .open_keep_all_label = tk .Label (
187
189
frame_default_sort_column1 , text = "保留模式:" , width = 12
@@ -196,12 +198,12 @@ def init_ui(self, root):
196
198
onvalue = True ,
197
199
offvalue = False ,
198
200
command = self .update_open_keep_all ,
199
- text = "(保留所有检索结果,建议手动维护时开启 )" ,
201
+ text = "(非严格匹配 )" ,
200
202
)
201
203
self .open_keep_all_checkbutton .pack (side = tk .LEFT , padx = 4 , pady = 8 )
202
204
203
205
self .open_sort_label = tk .Label (
204
- frame_default_sort_column2 , text = "开启测速排序 :" , width = 12
206
+ frame_default_sort_column2 , text = "测速排序 :" , width = 12
205
207
)
206
208
self .open_sort_label .pack (side = tk .LEFT , padx = 4 , pady = 8 )
207
209
self .open_sort_var = tk .BooleanVar (
@@ -216,6 +218,17 @@ def init_ui(self, root):
216
218
)
217
219
self .open_sort_checkbutton .pack (side = tk .LEFT , padx = 4 , pady = 8 )
218
220
221
+ self .sort_timeout_label = tk .Label (
222
+ frame_default_sort_column3 , text = "测速超时:" , width = 12
223
+ )
224
+ self .sort_timeout_label .pack (side = tk .LEFT , padx = 4 , pady = 8 )
225
+ self .sort_timeout_entry = tk .Entry (frame_default_sort_column3 )
226
+ self .sort_timeout_entry .pack (side = tk .LEFT , padx = 4 , pady = 8 )
227
+ self .sort_timeout_entry .insert (
228
+ 0 , config .getint ("Settings" , "sort_timeout" , fallback = 5 )
229
+ )
230
+ self .sort_timeout_entry .bind ("<KeyRelease>" , self .update_sort_timeout )
231
+
219
232
frame_default_sort_mode = tk .Frame (root )
220
233
frame_default_sort_mode .pack (fill = tk .X )
221
234
frame_default_sort_mode_column1 = tk .Frame (frame_default_sort_mode )
@@ -337,25 +350,51 @@ def init_ui(self, root):
337
350
config .getfloat ("Settings" , "resolution_weight" , fallback = 0.5 )
338
351
)
339
352
340
- frame_default_open_update_time = tk .Frame (root )
341
- frame_default_open_update_time .pack (fill = tk .X )
353
+ frame_default_open_update_info = tk .Frame (root )
354
+ frame_default_open_update_info .pack (fill = tk .X )
355
+ frame_default_open_update_info_column1 = tk .Frame (
356
+ frame_default_open_update_info
357
+ )
358
+ frame_default_open_update_info_column1 .pack (side = tk .LEFT , fill = tk .Y )
359
+ frame_default_open_update_info_column2 = tk .Frame (
360
+ frame_default_open_update_info
361
+ )
362
+ frame_default_open_update_info_column2 .pack (side = tk .RIGHT , fill = tk .Y )
363
+
342
364
self .open_update_time_label = tk .Label (
343
- frame_default_open_update_time , text = "显示更新时间:" , width = 12
365
+ frame_default_open_update_info_column1 , text = "显示更新时间:" , width = 12
344
366
)
345
367
self .open_update_time_label .pack (side = tk .LEFT , padx = 4 , pady = 8 )
346
368
self .open_update_time_var = tk .BooleanVar (
347
369
value = config .getboolean ("Settings" , "open_update_time" , fallback = True )
348
370
)
349
371
self .open_update_time_checkbutton = ttk .Checkbutton (
350
- frame_default_open_update_time ,
372
+ frame_default_open_update_info_column1 ,
351
373
variable = self .open_update_time_var ,
352
374
onvalue = True ,
353
375
offvalue = False ,
354
376
command = self .update_open_update_time ,
355
- text = "(显示于结果文件首行, 作为首个频道分类显示 )" ,
377
+ text = "(结果顶部显示 )" ,
356
378
)
357
379
self .open_update_time_checkbutton .pack (side = tk .LEFT , padx = 4 , pady = 8 )
358
380
381
+ self .open_url_info_label = tk .Label (
382
+ frame_default_open_update_info_column2 , text = "显示接口信息:" , width = 12
383
+ )
384
+ self .open_url_info_label .pack (side = tk .LEFT , padx = 4 , pady = 8 )
385
+ self .open_url_info_var = tk .BooleanVar (
386
+ value = config .getboolean ("Settings" , "open_url_info" , fallback = True )
387
+ )
388
+ self .open_url_info_checkbutton = ttk .Checkbutton (
389
+ frame_default_open_update_info_column2 ,
390
+ variable = self .open_url_info_var ,
391
+ onvalue = True ,
392
+ offvalue = False ,
393
+ command = self .update_open_url_info ,
394
+ text = "(需要播放器支持)" ,
395
+ )
396
+ self .open_url_info_checkbutton .pack (side = tk .LEFT , padx = 4 , pady = 8 )
397
+
359
398
frame_default_domain_blacklist = tk .Frame (root )
360
399
frame_default_domain_blacklist .pack (fill = tk .X )
361
400
@@ -432,6 +471,9 @@ def update_open_keep_all(self):
432
471
def update_open_sort (self ):
433
472
config .set ("Settings" , "open_sort" , str (self .open_sort_var .get ()))
434
473
474
+ def update_sort_timeout (self ):
475
+ config .set ("Settings" , "sort_timeout" , self .sort_timeout_entry .get ())
476
+
435
477
def update_open_ffmpeg (self ):
436
478
config .set ("Settings" , "open_ffmpeg" , str (self .open_ffmpeg_var .get ()))
437
479
@@ -468,6 +510,9 @@ def update_resolution_weight(self, event):
468
510
def update_open_update_time (self ):
469
511
config .set ("Settings" , "open_update_time" , str (self .open_update_time_var .get ()))
470
512
513
+ def update_open_url_info (self ):
514
+ config .set ("Settings" , "open_url_info" , str (self .open_url_info_var .get ()))
515
+
471
516
def update_ipv_type (self , event ):
472
517
config .set ("Settings" , "ipv_type" , self .ipv_type_combo .get ())
473
518
@@ -504,6 +549,7 @@ def change_entry_state(self, state):
504
549
"final_file_button" ,
505
550
"open_keep_all_checkbutton" ,
506
551
"open_sort_checkbutton" ,
552
+ "sort_timeout_entry" ,
507
553
"open_ffmpeg_checkbutton" ,
508
554
"open_m3u_result_checkbutton" ,
509
555
"open_filter_resolution_checkbutton" ,
@@ -512,6 +558,7 @@ def change_entry_state(self, state):
512
558
"response_time_weight_scale" ,
513
559
"resolution_weight_scale" ,
514
560
"open_update_time_checkbutton" ,
561
+ "open_url_info_checkbutton" ,
515
562
"ipv_type_combo" ,
516
563
"domain_blacklist_text" ,
517
564
"url_keywords_blacklist_text" ,
0 commit comments