mirror of
https://github.com/dw-0/kiauh.git
synced 2025-12-27 01:33:36 +05:00
refactor: overhaul color mechanics
Signed-off-by: Dominik Willner <th33xitus@gmail.com>
This commit is contained in:
@@ -11,13 +11,8 @@ import textwrap
|
||||
from enum import Enum, unique
|
||||
from typing import List
|
||||
|
||||
from core.constants import (
|
||||
COLOR_CYAN,
|
||||
COLOR_GREEN,
|
||||
COLOR_YELLOW,
|
||||
RESET_FORMAT,
|
||||
)
|
||||
from core.menus.base_menu import print_back_footer
|
||||
from core.types.color import Color
|
||||
from utils.instance_type import InstanceType
|
||||
|
||||
|
||||
@@ -42,12 +37,12 @@ def print_instance_overview(
|
||||
if display_type is DisplayType.SERVICE_NAME
|
||||
else "printer directories"
|
||||
)
|
||||
headline = f"{COLOR_GREEN}The following {d_type} were found:{RESET_FORMAT}"
|
||||
headline = Color.apply(f"The following {d_type} were found:", Color.GREEN)
|
||||
dialog += f"║{headline:^64}║\n"
|
||||
dialog += "╟───────────────────────────────────────────────────────╢\n"
|
||||
|
||||
if show_select_all:
|
||||
select_all = f"{COLOR_YELLOW}a) Select all{RESET_FORMAT}"
|
||||
select_all = Color.apply("a) Select all", Color.YELLOW)
|
||||
dialog += f"║ {select_all:<63}║\n"
|
||||
dialog += "║ ║\n"
|
||||
|
||||
@@ -56,7 +51,9 @@ def print_instance_overview(
|
||||
name = s.service_file_path.stem
|
||||
else:
|
||||
name = s.data_dir
|
||||
line = f"{COLOR_CYAN}{f'{i + start_index})' if show_index else '●'} {name}{RESET_FORMAT}"
|
||||
line = Color.apply(
|
||||
f"{f'{i + start_index})' if show_index else '●'} {name}", Color.CYAN
|
||||
)
|
||||
dialog += f"║ {line:<63}║\n"
|
||||
dialog += "╟───────────────────────────────────────────────────────╢\n"
|
||||
|
||||
@@ -65,8 +62,10 @@ def print_instance_overview(
|
||||
|
||||
|
||||
def print_select_instance_count_dialog() -> None:
|
||||
line1 = f"{COLOR_YELLOW}WARNING:{RESET_FORMAT}"
|
||||
line2 = f"{COLOR_YELLOW}Setting up too many instances may crash your system.{RESET_FORMAT}"
|
||||
line1 = Color.apply("WARNING:", Color.YELLOW)
|
||||
line2 = Color.apply(
|
||||
"Setting up too many instances may crash your system.", Color.YELLOW
|
||||
)
|
||||
dialog = textwrap.dedent(
|
||||
f"""
|
||||
╔═══════════════════════════════════════════════════════╗
|
||||
@@ -85,8 +84,8 @@ def print_select_instance_count_dialog() -> None:
|
||||
|
||||
|
||||
def print_select_custom_name_dialog() -> None:
|
||||
line1 = f"{COLOR_YELLOW}INFO:{RESET_FORMAT}"
|
||||
line2 = f"{COLOR_YELLOW}Only alphanumeric characters are allowed!{RESET_FORMAT}"
|
||||
line1 = Color.apply("INFO:", Color.YELLOW)
|
||||
line2 = Color.apply("Only alphanumeric characters are allowed!", Color.YELLOW)
|
||||
dialog = textwrap.dedent(
|
||||
f"""
|
||||
╔═══════════════════════════════════════════════════════╗
|
||||
|
||||
@@ -36,7 +36,7 @@ from core.logger import DialogType, Logger
|
||||
from core.submodules.simple_config_parser.src.simple_config_parser.simple_config_parser import (
|
||||
SimpleConfigParser,
|
||||
)
|
||||
from core.types import ComponentStatus
|
||||
from core.types.component_status import ComponentStatus
|
||||
from utils.common import get_install_status
|
||||
from utils.input_utils import get_confirm, get_number_input, get_string_input
|
||||
from utils.instance_utils import get_instances
|
||||
|
||||
@@ -12,15 +12,17 @@ import textwrap
|
||||
from typing import Type
|
||||
|
||||
from components.klipper import klipper_remove
|
||||
from core.constants import COLOR_CYAN, COLOR_RED, RESET_FORMAT
|
||||
from core.menus import FooterType, Option
|
||||
from core.menus.base_menu import BaseMenu
|
||||
from core.types.color import Color
|
||||
|
||||
|
||||
# noinspection PyUnusedLocal
|
||||
class KlipperRemoveMenu(BaseMenu):
|
||||
def __init__(self, previous_menu: Type[BaseMenu] | None = None):
|
||||
super().__init__()
|
||||
self.title = "Remove Klipper"
|
||||
self.title_color = Color.RED
|
||||
self.previous_menu: Type[BaseMenu] | None = previous_menu
|
||||
self.footer_type = FooterType.BACK
|
||||
self.remove_klipper_service = False
|
||||
@@ -43,18 +45,13 @@ class KlipperRemoveMenu(BaseMenu):
|
||||
}
|
||||
|
||||
def print_menu(self) -> None:
|
||||
header = " [ Remove Klipper ] "
|
||||
color = COLOR_RED
|
||||
count = 62 - len(color) - len(RESET_FORMAT)
|
||||
checked = f"[{COLOR_CYAN}x{RESET_FORMAT}]"
|
||||
checked = f"[{Color.apply('x', Color.CYAN)}]"
|
||||
unchecked = "[ ]"
|
||||
o1 = checked if self.remove_klipper_service else unchecked
|
||||
o2 = checked if self.remove_klipper_dir else unchecked
|
||||
o3 = checked if self.remove_klipper_env else unchecked
|
||||
menu = textwrap.dedent(
|
||||
f"""
|
||||
╔═══════════════════════════════════════════════════════╗
|
||||
║ {color}{header:~^{count}}{RESET_FORMAT} ║
|
||||
╟───────────────────────────────────────────────────────╢
|
||||
║ Enter a number and hit enter to select / deselect ║
|
||||
║ the specific option for removal. ║
|
||||
@@ -92,8 +89,11 @@ class KlipperRemoveMenu(BaseMenu):
|
||||
and not self.remove_klipper_dir
|
||||
and not self.remove_klipper_env
|
||||
):
|
||||
error = f"{COLOR_RED}Nothing selected! Select options to remove first.{RESET_FORMAT}"
|
||||
print(error)
|
||||
print(
|
||||
Color.apply(
|
||||
"Nothing selected! Select options to remove first.", Color.RED
|
||||
)
|
||||
)
|
||||
return
|
||||
|
||||
klipper_remove.run_klipper_removal(
|
||||
|
||||
Reference in New Issue
Block a user