struct SessionRenderContext {
clientid : u64,
defs : Vec<String>,
+ uses : Vec<String>,
}
#[derive(Deserialize)]
let client = Client { };
let clientid : slotmap::KeyData = user.clients.insert(client).into();
+ let mut uses = vec![];
let mut defs = vec![];
for (gpid, pr) in &g.gs.pieces {
let id : slotmap::KeyData = gpid.into();
pri.id_piece(),
pr.p.svg_select(&pri)));
defs.push(pr.p.svg_x_defs(&pri));
+
+ uses.push(format!(r##"<use href="#{}" data-p="{}" x="{}" y="{}"/>"##,
+ pri.id_piece(),
+ pri.id,
+ pr.pos[0], pr.pos[1]));
}
SessionRenderContext {
clientid : clientid.as_ffi(),
defs,
+ uses,
}
};
Ok(Template::render("test",&c))
onmousedown="drag_mousedown(event)"
>
<rect fill="green" x="20" y="20" width="200" height="100"/>
+{% for piece in uses %}{{piece}}{% endfor %}
<use href="#piece42" data-p="42" x="50" y="80" />
<use href="#piece43" data-p="43" x="50" y="60" />
<use href="#select43" x="50" y="60" />