M3: component properties keep their order on rename; Make slot asks for the name (#1536, #1537) (#1565)

Properties were listed by name, so a rename moved one. Components now keep prop_order (the names as they were made; a rename keeps the place) and every listing follows it. Make slot opens a name field under the frame's Slot row; Enter makes the slot, Escape cancels, a taken name keeps the field open.
This commit is contained in:
BFlat
2026-10-30 04:49:00 +07:00
committed by GitHub
parent 3c1718bf86
commit 7d76b0c673
56 changed files with 589 additions and 135 deletions
+11 -1
View File
@@ -19,7 +19,17 @@ fn png() -> Vec<u8> {
fn published() -> (Document, figcraft_doc::NodeId, String) {
let mut d = Document::new("Kit");
let p = d.first_page().unwrap();
let tile = d.create(p, NodeKind::Component { description: String::new(), props: Default::default() }, "Tile", 0.0, 0.0, 10.0, 10.0).unwrap();
let tile = d
.create(
p,
NodeKind::Component { description: String::new(), props: Default::default(), prop_order: Vec::new() },
"Tile",
0.0,
0.0,
10.0,
10.0,
)
.unwrap();
let (hash, _, _) = add_image(&mut d, png()).unwrap();
d.get_mut(tile).unwrap().fills = vec![Paint::image(hash.clone(), ImageScaleMode::Fill)];
let snap = d.clone();