}
}
};
- let spec = shapelib::ItemSpec {
- lib: it.lib.libname.clone(),
- item: it.itemname.as_str().to_owned(),
- };
+ let spec = ItemSpec::from(it);
let spec = PiecesSpec {
pos: Some(pos),
posd: None, count: Some(1), face: None, pinned: Some(false),
}
let mut pieces: Vec<Prep> = items.into_iter().map(|it| {
- let spec = ItemSpec {
- lib: it.lib.libname.into(),
- item: it.itemname.into(),
- };
+ let spec = ItemSpec::from(&it);
let sortkey = it.sortkey;
(||{
let (p, _occultable) = spec.clone()
pub f0bbox: Rect,
}
+impl From<&ItemEnquiryData> for ItemSpec {
+ fn from(it: &ItemEnquiryData) -> ItemSpec {
+ ItemSpec {
+ lib: it.lib.libname.clone(),
+ item: it.itemname.as_str().to_owned(),
+ }
+ }
+}
+
impl Display for ItemEnquiryData {
#[throws(fmt::Error)]
fn fmt(&self, f: &mut Formatter) {