chiark / gitweb /
shapelib: Put LibraryEnquiryData in ItemEnquiryData
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 15 May 2021 22:58:51 +0000 (23:58 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 15 May 2021 23:32:13 +0000 (00:32 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
src/bin/otter.rs
src/bin/otterlib.rs
src/shapelib.rs

index 514b3de3a21026bbe0856ce1735bd1ce04e0f63d..b30913264594a50ad5c43fbdd452a5777bb72949 100644 (file)
@@ -1288,7 +1288,7 @@ mod library_add {
         }
       };
       let spec = shapelib::ItemSpec {
-        lib: it.libname.clone(),
+        lib: it.lib.libname.clone(),
         item: it.itemname.as_str().to_owned(),
       };
       let spec = PiecesSpec {
index 73f0bd1f2978ebaba8114639efbdea14957dde56..d2769acf31b1ea2e1cf6fa677572abc956b02dce 100644 (file)
@@ -93,7 +93,10 @@ fn preview(items: Vec<ItemForOutput>) {
   }
 
   let mut pieces: Vec<Prep> = items.into_iter().map(|it| {
-    let spec = ItemSpec { lib: it.libname.into(), item: it.itemname.into() };
+    let spec = ItemSpec {
+      lib: it.lib.libname.into(),
+      item: it.itemname.into(),
+    };
     let sortkey = it.sortkey;
     (||{
       let (p, _occultable) = spec.clone()
index c68cee13a5850d250c835c939c937c233a1f72af..73ad43e8eabe9f733a79a1caa1c05e67506a0fa1 100644 (file)
@@ -221,7 +221,7 @@ impl OccultedPieceTrait for ItemOccultable {
 
 #[derive(Debug,Clone,Serialize,Deserialize,Eq,PartialEq,Ord,PartialOrd)]
 pub struct ItemEnquiryData {
-  pub libname: String,
+  pub lib: LibraryEnquiryData,
   pub itemname: GoodItemName,
   pub sortkey: Option<String>,
   pub f0desc: Html,
@@ -231,7 +231,7 @@ pub struct ItemEnquiryData {
 impl Display for ItemEnquiryData {
   #[throws(fmt::Error)]
   fn fmt(&self, f: &mut Formatter) {
-    write!(f, "{:<10} {:20}  {}", &self.libname, &self.itemname,
+    write!(f, "{:<10} {:20}  {}", &self.lib, &self.itemname,
            self.f0desc.as_html_str())?;
   }
 }
@@ -600,7 +600,7 @@ impl Contents {
       };
       let f0bbox = loaded.bbox_approx()?;
       let ier = ItemEnquiryData {
-        libname: self.libname.clone(),
+        lib: self.enquiry(),
         itemname: (**k).to_owned(),
         sortkey: v.sort.to_owned(),
         f0bbox,