124 Zeilen
3.6 KiB
Python
124 Zeilen
3.6 KiB
Python
"""
|
|
Style Configuration for GUI
|
|
Modern design with dark/light theme support
|
|
"""
|
|
|
|
# Dark Mode color definitions (only mode)
|
|
COLORS = {
|
|
# Background colors
|
|
'bg_primary': '#000000', # Schwarz
|
|
'bg_secondary': '#1A1F3A', # Dunkleres Blau
|
|
'bg_tile': '#232D53', # Dunkelblau
|
|
'bg_tile_hover': '#2A3560', # Helleres Dunkelblau
|
|
'bg_vps': '#1A2347', # VPS tile etwas dunkler
|
|
'bg_gitea_tile': '#2A3560', # Gitea tiles - deutlich heller für bessere Lesbarkeit
|
|
'bg_gitea_hover': '#364170', # Gitea hover - noch heller
|
|
'bg_selected': '#364170', # Selected - dunkleres Blau ohne Alpha
|
|
|
|
# Text colors
|
|
'text_primary': '#FFFFFF', # Weiß
|
|
'text_secondary': '#B0B0B0', # Grau
|
|
'text_dim': '#707070', # Dunkles Grau
|
|
|
|
# Accent colors
|
|
'accent_primary': '#00D4FF', # Cyan/Hellblau
|
|
'accent_hover': '#00E5FF', # Helleres Cyan
|
|
'accent_secondary': '#6B7AA1', # Sekundäres Blau-Grau
|
|
'accent_selected': '#00D4FF', # Auswahl-Farbe
|
|
'accent_success': '#4CAF50', # Success green
|
|
'accent_warning': '#FF9800', # Warning orange
|
|
'accent_error': '#F44336', # Error red
|
|
'accent_vps': '#00D4FF', # VPS auch Cyan
|
|
|
|
# Border colors
|
|
'border_primary': '#232D53', # Dunkelblau
|
|
'border_secondary': '#2A3560', # Helleres Dunkelblau
|
|
}
|
|
|
|
# Get current colors (always dark mode)
|
|
def get_colors():
|
|
"""Get colors (always returns dark mode colors)"""
|
|
return COLORS
|
|
|
|
# Font Configuration
|
|
FONTS = {
|
|
'heading': ('Segoe UI', 28, 'bold'),
|
|
'subheading': ('Segoe UI', 22, 'bold'),
|
|
'title': ('Segoe UI', 20, 'bold'), # Added for gitea UI
|
|
'subtitle': ('Segoe UI', 16, 'bold'), # Added for gitea UI
|
|
'tile_title': ('Segoe UI', 18, 'bold'),
|
|
'tile_text': ('Segoe UI', 14),
|
|
'body': ('Segoe UI', 14), # Added for gitea UI
|
|
'button': ('Segoe UI', 13, 'bold'),
|
|
'small': ('Segoe UI', 12),
|
|
'code': ('Consolas', 12), # Added for gitea UI code display
|
|
}
|
|
|
|
# Tile Dimensions
|
|
TILE_SIZE = {
|
|
'width': 280,
|
|
'height': 180,
|
|
'padding': 15,
|
|
'margin': 10,
|
|
}
|
|
|
|
# Button Styles
|
|
BUTTON_STYLES = {
|
|
'primary': {
|
|
'fg_color': COLORS['accent_primary'],
|
|
'hover_color': COLORS['accent_hover'],
|
|
'text_color': '#FFFFFF',
|
|
'corner_radius': 6,
|
|
'height': 32,
|
|
},
|
|
'secondary': {
|
|
'fg_color': COLORS['bg_secondary'],
|
|
'hover_color': COLORS['bg_tile'],
|
|
'text_color': COLORS['text_primary'],
|
|
'corner_radius': 6,
|
|
'height': 32,
|
|
'border_width': 1,
|
|
'border_color': COLORS['border_primary'],
|
|
},
|
|
'danger': {
|
|
'fg_color': COLORS['accent_error'],
|
|
'hover_color': '#FF5252',
|
|
'text_color': '#FFFFFF',
|
|
'corner_radius': 6,
|
|
'height': 32,
|
|
},
|
|
'vps': {
|
|
'fg_color': COLORS['accent_vps'],
|
|
'hover_color': COLORS['accent_hover'],
|
|
'text_color': '#FFFFFF',
|
|
'corner_radius': 6,
|
|
'height': 32,
|
|
}
|
|
}
|
|
|
|
def get_button_styles():
|
|
"""Get button styles (for compatibility)"""
|
|
return BUTTON_STYLES
|
|
|
|
|
|
# Window Configuration
|
|
WINDOW_CONFIG = {
|
|
'title': 'Claude Project Manager',
|
|
'width': 1200,
|
|
'height': 800,
|
|
'min_width': 800,
|
|
'min_height': 600,
|
|
}
|
|
|
|
# Theme functions (kept for compatibility but always return dark)
|
|
def set_theme(theme_name):
|
|
"""Kept for compatibility - does nothing as only dark mode exists"""
|
|
return True
|
|
|
|
def get_theme():
|
|
"""Always returns 'dark'"""
|
|
return 'dark'
|
|
|
|
def toggle_theme():
|
|
"""Kept for compatibility - always returns 'dark'"""
|
|
return 'dark' |