59 lines
2.2 KiB
Python
59 lines
2.2 KiB
Python
"""Configuración centralizada de estilos, temas y fuentes para la GUI."""
|
|
import customtkinter as ctk
|
|
|
|
|
|
class AppStyles:
|
|
"""Clase con configuración de estilos y fuentes de la aplicación."""
|
|
|
|
@staticmethod
|
|
def configure_theme():
|
|
"""Configura el tema y apariencia general de la aplicación."""
|
|
ctk.set_appearance_mode("System")
|
|
ctk.set_default_color_theme("blue")
|
|
|
|
@staticmethod
|
|
def get_fonts():
|
|
"""Devuelve un diccionario con las fuentes personalizadas."""
|
|
return {
|
|
"title": ctk.CTkFont(family="Roboto", size=22, weight="bold"),
|
|
"section": ctk.CTkFont(family="Roboto", size=16, weight="bold"),
|
|
"ui": ctk.CTkFont(family="Roboto", size=13),
|
|
"mono": ctk.CTkFont(family="Consolas", size=12),
|
|
"mono_small": ctk.CTkFont(family="Consolas", size=10),
|
|
"italic_small": ctk.CTkFont(size=12, slant="italic"),
|
|
"bold_large": ctk.CTkFont(size=16, weight="bold"),
|
|
"button_large": ctk.CTkFont(size=14, weight="bold"),
|
|
}
|
|
|
|
@staticmethod
|
|
def get_colors():
|
|
"""Devuelve un diccionario con los colores personalizados."""
|
|
return {
|
|
"primary_button": ("#106BA3", "#106BA3"),
|
|
"primary_hover": ("#0D5582", "#0D5582"),
|
|
"secondary_button": ("#2E86C1", "#2E86C1"),
|
|
"secondary_hover": ("#21618C", "#21618C"),
|
|
"success": ("#27AE60", "#27AE60"),
|
|
"success_hover": ("#1E8449", "#1E8449"),
|
|
"warning": ("#D35400", "#D35400"),
|
|
"warning_hover": ("#A04000", "#A04000"),
|
|
"danger": ("#C0392B", "#C0392B"),
|
|
"danger_hover": ("#A93226", "#A93226"),
|
|
"gray_light": "gray60",
|
|
"gray_dark": "gray70",
|
|
"text_muted": ("gray50", "gray70"),
|
|
}
|
|
|
|
@staticmethod
|
|
def get_spacing():
|
|
"""Devuelve un diccionario con espaciados y padding estándar."""
|
|
return {
|
|
"padding_small": 2,
|
|
"padding_medium": 5,
|
|
"padding_large": 10,
|
|
"padding_section": 15,
|
|
"margin_small": (0, 2),
|
|
"margin_medium": (5, 5),
|
|
"margin_large": (10, 15),
|
|
}
|