bouquet name gen refactoring

This commit is contained in:
DYefremov
2024-02-11 16:30:40 +03:00
parent 388e748673
commit abed7bf9cb
2 changed files with 15 additions and 9 deletions

View File

@@ -1543,14 +1543,7 @@ class Application(Gtk.Application):
return
bq_type = model.get_value(itr, Column.BQ_TYPE)
bq_name = "bouquet"
count = 0
key = f"{bq_name}:{bq_type}"
# Generating name of new bouquet.
while key in self._bouquets:
count += 1
bq_name = f"bouquet{count}"
key = f"{bq_name}:{bq_type}"
bq_name = gen_bouquet_name(self._bouquets, "bouquet", bq_type)
response = show_dialog(DialogType.INPUT, self._main_window, bq_name)
if response == Gtk.ResponseType.CANCEL:

View File

@@ -34,7 +34,7 @@ __all__ = ("insert_marker", "move_items", "rename", "ViewTarget", "set_flags", "
"get_model_data", "remove_all_unused_picons", "get_picon_pixbuf", "get_base_itrs", "get_iptv_url",
"get_iptv_data", "update_entry_data", "append_text_to_tview", "on_popup_menu", "get_picon_file_name",
"update_toggle_model", "update_popup_filter_model", "update_filter_sat_positions", "get_pos_num",
"show_info_bar_message")
"show_info_bar_message", "gen_bouquet_name")
import os
import re
@@ -686,6 +686,19 @@ def get_bouquets_names(model):
return bouquets_names
def gen_bouquet_name(bouquets, base_name, bq_type):
""" Generates a name for new bouquets. """
count = 0
key = f"{base_name}:{bq_type}"
bq_name = base_name
while key in bouquets:
count += 1
bq_name = f"{base_name}{count}"
key = f"{bq_name}:{bq_type}"
return bq_name
def get_services_type_groups(services):
""" Returns services grouped by main types [TV, Radio, Data]. -> dict """