git.lucas.co / cce-designer
graphic design tool
git clone https://git.lucas.co/cce-designer.git

commit588d5ccbf2f27617ee28ffe57dec53d1297bbbf3
parent6cbfc0ec43
authorLucas Galante <[email protected]>
date2026-07-12 19:29
refactor: base() Option handling dropped (cce-ui flip part 1)

Element::base is guaranteed now — the map/map_or/if-let wrappers around a
base that always exists collapse to direct reads. Behavior-preserving.

Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_018u7qTwzX95dd5ysAkaSCLk

 src/app.rs    | 8 +++-----
 src/render.rs | 4 +---
 2 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/src/app.rs b/src/app.rs
index c089338..0b67b87 100644
--- a/src/app.rs
+++ b/src/app.rs
@@ -3221,11 +3221,9 @@ pub(crate) fn geometry_to_spreadsheet_data(geom: &Geometry) -> (Vec<String>, Vec
         state.sync_parameters_pane();
         for i in 0..WIDGET_COUNT {
             let w = state.slots.get_dyn_mut(i);
-            if let Some(b) = w.base() {
-                let id = b.id();
-                let ptr = w.as_ptr_mut();
-                state.ui_context.register_widget(id, ptr);
-            }
+            let id = w.base().id();
+            let ptr = w.as_ptr_mut();
+            state.ui_context.register_widget(id, ptr);
         }
         state
     }
diff --git a/src/render.rs b/src/render.rs
index f0c04f0..46d67ad 100644
--- a/src/render.rs
+++ b/src/render.rs
@@ -111,9 +111,7 @@ impl State {
         for &i in &draw_order {
             let w = self.slots.get_dyn(i);
             if w.visible() {
-                if let Some(b) = w.base() {
-                    self.ui_context.register_widget(b.id(), w.as_ptr());
-                }
+                self.ui_context.register_widget(w.base().id(), w.as_ptr());
             }
         }