@@ -17,6 +17,7 @@ import type { LVGLCode } from "project-editor/lvgl/to-lvgl-code";
17
17
18
18
export class LVGLColorwheelWidget extends LVGLWidget {
19
19
mode : keyof typeof COLORWHEEL_MODES ;
20
+ knobRecolor : boolean ;
20
21
fixedMode : boolean ;
21
22
22
23
static classInfo = makeDerivedClassInfo ( LVGLWidget . classInfo , {
@@ -43,6 +44,12 @@ export class LVGLColorwheelWidget extends LVGLWidget {
43
44
type : PropertyType . Boolean ,
44
45
checkboxStyleSwitch : true ,
45
46
propertyGridGroup : specificGroup
47
+ } ,
48
+ {
49
+ name : "knobRecolor" ,
50
+ type : PropertyType . Boolean ,
51
+ checkboxStyleSwitch : true ,
52
+ propertyGridGroup : specificGroup
46
53
}
47
54
] ,
48
55
@@ -53,7 +60,14 @@ export class LVGLColorwheelWidget extends LVGLWidget {
53
60
height : 150 ,
54
61
clickableFlag : true ,
55
62
mode : "HUE" ,
56
- fixedMode : false
63
+ fixedMode : false ,
64
+ knobRecolor : false
65
+ } ,
66
+
67
+ beforeLoadHook : ( object : LVGLColorwheelWidget , jsObject : any ) => {
68
+ if ( jsObject . knobRecolor == undefined ) {
69
+ jsObject . knobRecolor = false ;
70
+ }
57
71
} ,
58
72
59
73
icon : (
@@ -94,7 +108,8 @@ export class LVGLColorwheelWidget extends LVGLWidget {
94
108
95
109
makeObservable ( this , {
96
110
mode : observable ,
97
- fixedMode : observable
111
+ fixedMode : observable ,
112
+ knobRecolor : observable
98
113
} ) ;
99
114
}
100
115
@@ -104,7 +119,10 @@ export class LVGLColorwheelWidget extends LVGLWidget {
104
119
return ;
105
120
}
106
121
107
- code . createObject ( "lv_colorwheel_create" , code . constant ( "false" ) ) ;
122
+ code . createObject (
123
+ "lv_colorwheel_create" ,
124
+ code . constant ( this . knobRecolor ? "true" : "false" )
125
+ ) ;
108
126
109
127
if ( this . mode != "HUE" ) {
110
128
code . callObjectFunction (
0 commit comments