git.lucas.co / cce-graph
node-based graph editor
git clone https://git.lucas.co/cce-graph.git

commit61216df3e5df0d9f7de0d6ee209ae143eb87b795
parentebd7b369d1
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/main.rs | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/main.rs b/src/main.rs
index 7c9038b..32a9672 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -1076,11 +1076,11 @@ impl Application for GraphApp {
                 let self_ptr = self as *mut Self;
 
                 self.ui_context.register_widget(self.menu_bar.id(), (*self_ptr).menu_bar.as_ptr_mut());
-                self.ui_context.register_widget(self.dropdown_file.base().unwrap().id(), (*self_ptr).dropdown_file.as_ptr_mut());
-                self.ui_context.register_widget(self.dropdown_edit.base().unwrap().id(), (*self_ptr).dropdown_edit.as_ptr_mut());
-                self.ui_context.register_widget(self.dropdown_view.base().unwrap().id(), (*self_ptr).dropdown_view.as_ptr_mut());
+                self.ui_context.register_widget(self.dropdown_file.base().id(), (*self_ptr).dropdown_file.as_ptr_mut());
+                self.ui_context.register_widget(self.dropdown_edit.base().id(), (*self_ptr).dropdown_edit.as_ptr_mut());
+                self.ui_context.register_widget(self.dropdown_view.base().id(), (*self_ptr).dropdown_view.as_ptr_mut());
                 self.ui_context.register_widget(self.graph_id, (*self_ptr).graph.as_ptr_mut());
-                self.ui_context.register_widget(self.control_panel_label.base().unwrap().id(), (*self_ptr).control_panel_label.as_ptr_mut());
+                self.ui_context.register_widget(self.control_panel_label.base().id(), (*self_ptr).control_panel_label.as_ptr_mut());
             }
             self.widgets_registered = true;
         }
@@ -1123,7 +1123,7 @@ impl Application for GraphApp {
         };
 
         let text_changed = {
-            let current_text = self.control_panel_label.base().and_then(|b| b.label.as_ref());
+            let current_text = self.control_panel_label.base().label.as_ref();
             current_text != Some(&label_text)
         };
         if text_changed {