Skip to content

Commit 9ce9c60

Browse files
authored
fullscreen button (#66)
1 parent 2c913c3 commit 9ce9c60

File tree

6 files changed

+24
-20
lines changed

6 files changed

+24
-20
lines changed

README.md

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Add `rando-planner` as a dependency in your project. For example:
3333

3434
```
3535
{:paths ["src"]
36-
:deps {org.clojure/clojure {:mvn/version "1.10.3"}
36+
:deps {org.clojure/clojure {:mvn/version "1.12.0"}
3737
rando-planner/rando-planner {:git/url "https://github.com/larsen/rando-planner.git"
3838
:git/tag "tagname"
3939
:git/sha "xxxxxxxx"}}}
@@ -57,27 +57,29 @@ provided by rando-planner.
5757
### Defining a plan
5858

5959
```clojure
60-
(def plan-start-19
61-
{:description "Starting on April 19th"
62-
:gpx "gpx/route.gpx"
63-
:average-speed 20
64-
:daily-plans [{:label "Day 1"
65-
:date "2024-04-19"
66-
:activities [{:start "15:00" :length 6 :type :ride}]}
67-
{:label "Day 2"
68-
:date "2024-04-20"
69-
:activities [{:start "07:00" :length 5 :type :ride}
70-
{:start "17:00" :length 3 :type :ride}]}
71-
{:label "Day 3"
72-
:date "2024-04-21"
73-
:activities [{:start "08:00" :length 6 :type :ride}]}]})
74-
```
60+
(def example-plan
61+
{:gpx "gpx/be-rostock.gpx"
62+
:daily-plans [{:date "2024-04-01"
63+
:label "First day"
64+
:average-speed 20
65+
:color "red"
66+
:activities [{:start "10:00" :type :ride :length 3}
67+
{:start "17:00" :type :ride :length 2}
68+
{:start "20:00" :type :ride :length 3}]}
69+
{:date "2024-04-02"
70+
:label "Second day"
71+
:average-speed 18
72+
:activities [{:start "10:00" :type :ride :length 4}
73+
{:start "16:00" :type :ride :length 2.5}]}]})
74+
```
7575

7676
### Usage examples
7777

7878
The screenshots below were automatically generated using
79-
`plan-start-19`, as defined above.
79+
`example-plan`, as defined above.
8080

8181
![Example: plan diagram](rando-planner-example.png)
8282

8383
![Example: route with markers on a map](rando-planner-example-gpx.png)
84+
85+
![Example: elevation diagram](rando-planner-example-elevation.png)
116 KB
Loading

rando-planner-example-gpx.png

1.43 MB
Loading

rando-planner-example.png

57.8 KB
Loading

src/rando_planner/diagram.clj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
(fn [include-fn]
1111
(fn [state]
1212
(concat (include-fn state)
13-
(list (hiccup.page/include-css "https://unpkg.com/[email protected]/dist/leaflet.css"))))))
13+
(list (hiccup.page/include-css "https://unpkg.com/[email protected]/dist/leaflet.css")
14+
(hiccup.page/include-css "https://unpkg.com/[email protected]/Control.FullScreen.css"))))))
1415

1516
(defn points->path
1617
"Turn a sequence of points into an SVG path string."

src/rando_planner/leaflet.clj

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,8 @@
7373
:render-fn '(fn [value]
7474
(when value
7575
[nextjournal.clerk.render/with-d3-require
76-
{:package ["[email protected]/dist/leaflet.min.js"]}
76+
{:package ["[email protected]/dist/leaflet.min.js"
77+
"[email protected]/Control.FullScreen.min.js"]}
7778
(fn [leaflet]
7879
(let [map-div-id (str (gensym))
7980
m (atom nil)
@@ -95,7 +96,7 @@
9596
:iconAnchor [16, 45]}))
9697
tile-layer (.tileLayer js/L "https://tile.openstreetmap.org/{z}/{x}/{y}.png"
9798
(clj->js {:attribution attribution}))]
98-
(reset! m (.map js/L map-div-id))
99+
(reset! m (.map js/L map-div-id (clj->js {:fullscreenControl true}) ))
99100
(if (:bounds value)
100101
(.fitBounds @m (clj->js (:bounds value)))
101102
(.setView @m (clj->js (:center value)) (:zoom value)))

0 commit comments

Comments
 (0)