gui: added value WIDGET_VALUE_STYLE

This commit is contained in:
Martin Preuss
2026-05-08 10:03:51 +02:00
parent c4af86c4f2
commit c746abcc0f

View File

@@ -105,10 +105,11 @@
; values for signals WIDGET_SIGNAL_SETVALUE and WIDGET_SIGNAL_GETVALUE ; values for signals WIDGET_SIGNAL_SETVALUE and WIDGET_SIGNAL_GETVALUE
.equ WIDGET_VALUE_DEFAULT_WIDTH = 1 .equ WIDGET_VALUE_DEFAULT_WIDTH = 1
.equ WIDGET_VALUE_DEFAULT_HEIGHT = 2 .equ WIDGET_VALUE_DEFAULT_HEIGHT = 2
.equ WIDGET_VALUE_CURRENTVALUE = 3 .equ WIDGET_VALUE_STYLE = 3
.equ WIDGET_VALUE_MINVALUE = 4 .equ WIDGET_VALUE_CURRENTVALUE = 4
.equ WIDGET_VALUE_MAXVALUE = 5 .equ WIDGET_VALUE_MINVALUE = 5
.equ WIDGET_VALUE_NEXTFREE = 6 .equ WIDGET_VALUE_MAXVALUE = 6
.equ WIDGET_VALUE_NEXTFREE = 7
@@ -467,6 +468,22 @@ Widget_GetMaxValue:
; ---------------------------------------------------------------------------
; @routine Widget_SetStyle @global
;
; @param Y address of widget
; @param X value to set
; @return CFLAG set if value set, cleared on error
; @clobbers any, !Y
Widget_SetStyle:
ldi r16, WIDGET_SIGNAL_SETVALUE
ldi r17, WIDGET_VALUE_STYLE
bigjmp OBJ_HandleSignal
; @end
; --------------------------------------------------------------------------- ; ---------------------------------------------------------------------------
; @routine widgetGetValueOrZero @global ; @routine widgetGetValueOrZero @global
; ;
@@ -808,6 +825,24 @@ Widget_OnGetValue_ret:
; ---------------------------------------------------------------------------
; @routine Widget_OnSetValueStyle @global
;
; @param Y address of widget
; @param r17 value requested
; @param X style
; @return CFLAG set if signal handled
; @clobbers any, !Y
Widget_OnSetValueStyle:
std Y+WIDGET_OFFS_STYLE_LO, xl
std Y+WIDGET_OFFS_STYLE_HI, xh
sec
ret
; @end
; --------------------------------------------------------------------------- ; ---------------------------------------------------------------------------
; @routine Widget_OnTouch @global ; @routine Widget_OnTouch @global
; ;
@@ -1763,11 +1798,12 @@ Widget_DefaultSignalmap:
; header ; header
.dw Object_DefaultSignalmap*2 ; next table to use .dw Object_DefaultSignalmap*2 ; next table to use
; entries ; entries
.db 0, WIDGET_SIGNAL_DRAW, LOW(Widget_OnDraw), HIGH(Widget_OnDraw) .db 0, WIDGET_SIGNAL_DRAW, LOW(Widget_OnDraw), HIGH(Widget_OnDraw)
.db 0, WIDGET_SIGNAL_LAYOUT, LOW(Widget_OnLayout), HIGH(Widget_OnLayout) .db 0, WIDGET_SIGNAL_LAYOUT, LOW(Widget_OnLayout), HIGH(Widget_OnLayout)
.db 0, WIDGET_SIGNAL_GETVALUE, LOW(Widget_OnGetValue), HIGH(Widget_OnGetValue) ; handle any value here .db 0, WIDGET_SIGNAL_GETVALUE, LOW(Widget_OnGetValue), HIGH(Widget_OnGetValue) ; handle any value here
.db 0, WIDGET_SIGNAL_SHOW, LOW(Widget_OnShow), HIGH(Widget_OnShow) .db WIDGET_VALUE_STYLE, WIDGET_SIGNAL_SETVALUE, LOW(Widget_OnSetValueStyle), HIGH(Widget_OnSetValueStyle)
.db 0, WIDGET_SIGNAL_HIDE, LOW(Widget_OnHide), HIGH(Widget_OnHide) .db 0, WIDGET_SIGNAL_SHOW, LOW(Widget_OnShow), HIGH(Widget_OnShow)
.db 0, WIDGET_SIGNAL_HIDE, LOW(Widget_OnHide), HIGH(Widget_OnHide)
.db 0, 0, 0, 0 ; end of table .db 0, 0, 0, 0 ; end of table