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
.equ WIDGET_VALUE_DEFAULT_WIDTH = 1
.equ WIDGET_VALUE_DEFAULT_HEIGHT = 2
.equ WIDGET_VALUE_CURRENTVALUE = 3
.equ WIDGET_VALUE_MINVALUE = 4
.equ WIDGET_VALUE_MAXVALUE = 5
.equ WIDGET_VALUE_NEXTFREE = 6
.equ WIDGET_VALUE_STYLE = 3
.equ WIDGET_VALUE_CURRENTVALUE = 4
.equ WIDGET_VALUE_MINVALUE = 5
.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
;
@@ -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
;
@@ -1763,11 +1798,12 @@ Widget_DefaultSignalmap:
; header
.dw Object_DefaultSignalmap*2 ; next table to use
; entries
.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_GETVALUE, LOW(Widget_OnGetValue), HIGH(Widget_OnGetValue) ; handle any value here
.db 0, WIDGET_SIGNAL_SHOW, LOW(Widget_OnShow), HIGH(Widget_OnShow)
.db 0, WIDGET_SIGNAL_HIDE, LOW(Widget_OnHide), HIGH(Widget_OnHide)
.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_GETVALUE, LOW(Widget_OnGetValue), HIGH(Widget_OnGetValue) ; handle any value here
.db WIDGET_VALUE_STYLE, WIDGET_SIGNAL_SETVALUE, LOW(Widget_OnSetValueStyle), HIGH(Widget_OnSetValueStyle)
.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