chiark / gitweb /
make dasharray return Html
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 13 Feb 2021 20:27:43 +0000 (20:27 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 13 Feb 2021 20:27:43 +0000 (20:27 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
src/bin/otterlib.rs
src/ui.rs
src/updates.rs

index 2d3d33615da806dc1cb31f7c76e3842cc129273b..f727c189b4fabe7b1117fdf21c4f61c334a79a73 100644 (file)
@@ -172,7 +172,7 @@ fn preview(items: Vec<ItemForOutput>) {
           let dasharray = player_num_dasharray(1.try_into().unwrap());
           print!(r#"<path d="{}" stroke-dasharray="{}"
                           fill="none" stroke="{}" />"#,
-                 &surround.0, &dasharray, HELD_SURROUND_COLOUR);
+                 &surround.0, &dasharray.0, HELD_SURROUND_COLOUR);
         }
         let mut html = Html("".into());
         pc.svg_piece(&mut html, &pri)?;
index 8d9ed358d5cc7bf91970850056afbf90cb1844ab..570d054cdbad0eabd021bf695d6b1c30525bcd8b 100644 (file)
--- a/src/ui.rs
+++ b/src/ui.rs
@@ -16,7 +16,7 @@ pub enum PresentationLayout {
 
 type PL = PresentationLayout;
 
-pub fn player_num_dasharray(player_num: NonZeroUsize) -> String {
+pub fn player_num_dasharray(player_num: NonZeroUsize) -> Html {
   let n: usize = player_num.into();
   let mut dasharray = String::with_capacity(n*3 + 4);
   for dash in iter::once("3").chain(
@@ -26,10 +26,10 @@ pub fn player_num_dasharray(player_num: NonZeroUsize) -> String {
   }
   let spc = dasharray.pop();
   assert_eq!(spc,Some(' '));
-  dasharray
+  Html(dasharray)
 }
 
-pub fn player_dasharray(gplayers: &GPlayers, player: PlayerId) -> String {
+pub fn player_dasharray(gplayers: &GPlayers, player: PlayerId) -> Html {
   let kd: slotmap::KeyData = player.into();
   let n: usize = kd.get_idx_version().0.try_into().unwrap();
   let n: NonZeroUsize = n.try_into()
index 43235bfe31056a4aa080955db7d8ce7bbfba3e2f..3c990022a73d47cfc3c1a75e4bfc58bb2e0281ee 100644 (file)
@@ -87,7 +87,7 @@ pub struct PreparedPieceState {
 
 #[derive(Serialize,Debug)]
 pub struct DataLoadPlayer {
-  dasharray: String,
+  dasharray: Html,
 }
 
 // ---------- piece updates ----------
@@ -271,7 +271,7 @@ impl PreparedUpdateEntry {
         data: DataLoadPlayer { dasharray },
         new_info_pane,
       } => {
-        dasharray.as_bytes().len() + 100
+        dasharray.0.as_bytes().len() + 100
           + new_info_pane.0.len()
       }
       RemovePlayer { player:_, new_info_pane } => {