paint: node button init fixes

This commit is contained in:
luboslenco
2026-04-08 12:14:08 +02:00
parent 1d7d25ee48
commit d2956db4ac
4 changed files with 11 additions and 34 deletions
@@ -202,10 +202,8 @@ void nodes_material_color_ramp_button(i32 node_id) {
array_pop(vals);
ihandle->f -= 1;
}
ui_handle_t *h = ui_nest(ui_nest(nhandle, 0), 1);
if (h->init) {
h->i = but->data->buffer[0];
}
ui_handle_t *h = ui_nest(ui_nest(nhandle, 0), 1);
h->i = but->data->buffer[0];
string_array_t *interpolate_combo = any_array_create_from_raw(
(void *[]){
tr("Linear"),
@@ -90,20 +90,13 @@ void nodes_material_float_curve_button(i32 node_id) {
val->buffer[32] = (f32)num;
}
ui_handle_t *ihandle = ui_nest(ui_nest(nhandle, 0), 2);
if (ihandle->init) {
ihandle->i = 0;
}
i32 i = math_floor(ui_slider(ihandle, "Index", 0, num - 1, false, 1, true, UI_ALIGN_LEFT, true));
i32 i = math_floor(ui_slider(ihandle, "Index", 0, num - 1, false, 1, true, UI_ALIGN_LEFT, true));
if (i >= num || i < 0) {
ihandle->f = i = num - 1;
}
ui_row2();
ui_handle_t *h1 = ui_nest(ui_nest(nhandle, 0), 3);
ui_handle_t *h2 = ui_nest(ui_nest(nhandle, 0), 4);
if (h1->init)
h1->f = val->buffer[i * 2 + 0];
if (h2->init)
h2->f = val->buffer[i * 2 + 1];
ui_handle_t *h1 = ui_nest(ui_nest(nhandle, 0), 3);
ui_handle_t *h2 = ui_nest(ui_nest(nhandle, 0), 4);
h1->f = val->buffer[i * 2 + 0];
h2->f = val->buffer[i * 2 + 1];
val->buffer[i * 2 + 0] = ui_slider(h1, "X", 0, 1, true, 100, true, UI_ALIGN_LEFT, true);
+3 -10
View File
@@ -118,20 +118,13 @@ void nodes_material_rgb_curves_button(i32 node_id) {
val->buffer[128 + ch] = (f32)num;
}
ui_handle_t *ihandle = ui_nest(ui_nest(ui_nest(nhandle, 0), 2), ch);
if (ihandle->init) {
ihandle->i = 0;
}
i32 i = math_floor(ui_slider(ihandle, "Index", 0, num - 1, false, 1, true, UI_ALIGN_LEFT, true));
i32 i = math_floor(ui_slider(ihandle, "Index", 0, num - 1, false, 1, true, UI_ALIGN_LEFT, true));
if (i >= num || i < 0) {
ihandle->f = i = num - 1;
}
ui_row2();
ui_handle_t *h1 = ui_nest(ui_nest(nhandle, 0), 3);
ui_handle_t *h2 = ui_nest(ui_nest(nhandle, 0), 4);
if (h1->init)
h1->f = val->buffer[ch * 32 + i * 2 + 0];
if (h2->init)
h2->f = val->buffer[ch * 32 + i * 2 + 1];
ui_handle_t *h1 = ui_nest(ui_nest(nhandle, 0), 3);
ui_handle_t *h2 = ui_nest(ui_nest(nhandle, 0), 4);
h1->f = val->buffer[ch * 32 + i * 2 + 0];
h2->f = val->buffer[ch * 32 + i * 2 + 1];
val->buffer[ch * 32 + i * 2 + 0] = ui_slider(h1, "X", 0, 1, true, 100, true, UI_ALIGN_LEFT, true);
@@ -200,20 +200,13 @@ void nodes_material_vector_curves_button(i32 node_id) {
val->buffer[96 + axis] = (f32)num;
}
ui_handle_t *ihandle = ui_nest(ui_nest(ui_nest(nhandle, 0), 2), axis);
if (ihandle->init) {
ihandle->i = 0;
}
i32 i = math_floor(ui_slider(ihandle, "Index", 0, num - 1, false, 1, true, UI_ALIGN_LEFT, true));
i32 i = math_floor(ui_slider(ihandle, "Index", 0, num - 1, false, 1, true, UI_ALIGN_LEFT, true));
if (i >= num || i < 0) {
ihandle->f = i = num - 1;
}
ui_row2();
ui_handle_t *h1 = ui_nest(ui_nest(nhandle, 0), 3);
ui_handle_t *h2 = ui_nest(ui_nest(nhandle, 0), 4);
if (h1->init)
h1->f = val->buffer[axis * 32 + i * 2 + 0];
if (h2->init)
h2->f = val->buffer[axis * 32 + i * 2 + 1];
ui_handle_t *h1 = ui_nest(ui_nest(nhandle, 0), 3);
ui_handle_t *h2 = ui_nest(ui_nest(nhandle, 0), 4);
h1->f = val->buffer[axis * 32 + i * 2 + 0];
h2->f = val->buffer[axis * 32 + i * 2 + 1];
val->buffer[axis * 32 + i * 2 + 0] = ui_slider(h1, "X", 0, 1, true, 100, true, UI_ALIGN_LEFT, true);