gui: improved style handling.

This commit is contained in:
Martin Preuss
2026-05-08 10:02:34 +02:00
parent cc65fb8f0b
commit f154146b14
4 changed files with 171 additions and 55 deletions

View File

@@ -239,9 +239,9 @@ mainWindowCreateContentWidget:
bigcall VLayout_new
brcc mainWindowCreateContentWidget_done
; set style for title widget
ldi r16, LOW(MainWindow_ContentStyle*2)
ldi r16, LOW(DefaultStyle_Window*2)
std Y+WIDGET_OFFS_STYLE_LO, r16
ldi r16, HIGH(MainWindow_ContentStyle*2)
ldi r16, HIGH(DefaultStyle_Window*2)
std Y+WIDGET_OFFS_STYLE_HI, r16
mainWindowCreateContentWidget_done:
pop yh
@@ -269,57 +269,38 @@ MainWindow_DefaultSignalmap:
MainWindow_DefaultStyle:
.dw DISPLAY_COLOR_BLACK ; frontCol_norm
.dw DISPLAY_COLOR_LIGHTGREY ; backCol_norm
.dw DISPLAY_COLOR_BLACK ; borderCol_norm
.dw DISPLAY_COLOR_WHITE ; shadowCol_norm
.dw STYLE_WIN_FGCOL_NORM ; frontCol_norm
.dw STYLE_WIN_BGCOL_NORM ; backCol_norm
.dw STYLE_WIN_BORDERCOL_NORM ; borderCol_norm
.dw STYLE_WIN_SHADOWCOL_NORM ; shadowCol_norm
.dw DISPLAY_COLOR_WHITE ; frontCol_activated
.dw DISPLAY_COLOR_NAVY ; backCol_activated
.dw DISPLAY_COLOR_BLACK ; borderCol_activated
.dw DISPLAY_COLOR_WHITE ; shadowCol_activated
.db 0, 0 ; outerBorderSize, innerBorderSize
.dw ili9341Font12x16_1*2 ; font
.db 12, 16 ; charWidth, charHeight
.dw STYLE_WIN_FGCOL_ACTIVATED ; frontCol_activated
.dw STYLE_WIN_BGCOL_ACTIVATED ; backCol_activated
.dw STYLE_WIN_BORDERCOL_ACTIVATED ; borderCol_activated
.dw STYLE_WIN_SHADOWCOL_ACTIVATED ; shadowCol_activated
.db 0, 0 ; outerBorderSize, innerBorderSize
.dw (STYLE_WIN_FONT*2) ; font
.db STYLE_WIN_FONT_WIDTH, \
STYLE_WIN_FONT_HEIGHT ; charWidth, charHeight
MainWindow_TitleStyle:
.dw STYLE_WIN_TITLE_FOREGROUND ; frontCol_norm
.dw STYLE_WIN_TITLE_BACKGROUND ; backCol_norm
.dw DISPLAY_COLOR_BLACK ; borderCol_norm
.dw DISPLAY_COLOR_WHITE ; shadowCol_norm
.dw STYLE_TITLE_FGCOL ; frontCol_norm
.dw STYLE_TITLE_BGCOL ; backCol_norm
.dw STYLE_TITLE_BORDERCOL ; borderCol_norm
.dw STYLE_TITLE_SHADOWCOL ; shadowCol_norm
.dw DISPLAY_COLOR_WHITE ; frontCol_activated
.dw DISPLAY_COLOR_NAVY ; backCol_activated
.dw DISPLAY_COLOR_BLACK ; borderCol_activated
.dw DISPLAY_COLOR_WHITE ; shadowCol_activated
.dw STYLE_TITLE_FGCOL ; frontCol_activated
.dw STYLE_TITLE_BGCOL ; backCol_activated
.dw STYLE_TITLE_BORDERCOL ; borderCol_activated
.dw STYLE_TITLE_SHADOWCOL ; shadowCol_activated
.db 2, 1 ; outerBorderSize, innerBorderSize
.dw ili9341Font12x16_1*2 ; font
.db 12, 16 ; charWidth, charHeight
; this is the defining style for most windows because normally
; the style of the parent will be propagated to newly created child widgets.
MainWindow_ContentStyle:
.dw DISPLAY_COLOR_BLACK ; frontCol_norm
.dw DISPLAY_COLOR_LIGHTGREY ; backCol_norm
.dw DISPLAY_COLOR_BLACK ; borderCol_norm
.dw DISPLAY_COLOR_WHITE ; shadowCol_norm
.dw DISPLAY_COLOR_WHITE ; frontCol_activated
.dw DISPLAY_COLOR_NAVY ; backCol_activated
.dw DISPLAY_COLOR_BLACK ; borderCol_activated
.dw DISPLAY_COLOR_WHITE ; shadowCol_activated
.db 2, 1 ; outerBorderSize, innerBorderSize
.dw ili9341Font12x16_1*2 ; font
.db 12, 16 ; charWidth, charHeight
.dw (STYLE_TITLE_FONT*2) ; font
.db STYLE_TITLE_FONT_WIDTH, \
STYLE_TITLE_FONT_HEIGHT ; charWidth, charHeight