emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/osm 7fbf3affb7 1/6: Simplify pin list format


From: ELPA Syncer
Subject: [elpa] externals/osm 7fbf3affb7 1/6: Simplify pin list format
Date: Sat, 23 Dec 2023 12:58:41 -0500 (EST)

branch: externals/osm
commit 7fbf3affb78edd5c7f6b1fcbba547269880e521f
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>

    Simplify pin list format
---
 osm.el | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/osm.el b/osm.el
index e77308e8bc..8c622669c5 100644
--- a/osm.el
+++ b/osm.el
@@ -718,7 +718,7 @@ Local per buffer since the overlays depend on the zoom 
level.")
          (min most-positive-fixnum)
          found)
     (dolist (pin (car (osm--get-overlays (/ x 256) (/ y 256))))
-      (pcase-let ((`(,p ,q ,_lat ,_lon ,id . ,_) pin))
+      (pcase-let ((`(,p ,q ,_lat ,_lon ,id ,_name) pin))
         (when (or (not type) (eq type id))
           (let ((d (+ (* (- p x) (- p x)) (* (- q y) (- q y)))))
             (when (and (>= q y) (< q (+ y 50)) (>= p (- x 20)) (< p (+ x 20)) 
(< d min))
@@ -734,11 +734,11 @@ Local per buffer since the overlays depend on the zoom 
level.")
 (defun osm-mouse-select (event)
   "Select pin at position of click EVENT."
   (interactive "@e")
-  (when-let ((pin (osm--pin-at event)))
-    (let ((track (eq (caddr pin) 'osm-track)))
-      (osm--set-pin (caddr pin) (car pin) (cadr pin) (cdddr pin) track)
-      (when track (osm--track-length)))
-    (osm--update)))
+  (pcase (osm--pin-at event)
+    (`(,lat ,lon ,id ,name)
+     (osm--set-pin id lat lon name (eq id 'osm-track))
+     (when (eq id 'osm-track) (osm--track-length))
+     (osm--update))))
 
 (defun osm-zoom-in (&optional n)
   "Zoom N times into the map."
@@ -902,7 +902,7 @@ Local per buffer since the overlays depend on the zoom 
level.")
          (y (osm--lat-to-y lat osm--zoom))
          (x0 (/ x 256))
          (y0 (/ y 256))
-         (pin `(,x ,y ,lat ,lon ,id . ,name)))
+         (pin (list x y lat lon id name)))
     (push pin (gethash (cons x0 y0) pins))
     (cl-loop
      for i from -1 to 1 do
@@ -1007,7 +1007,7 @@ TPIN is an optional pin."
                  (y0 (* 256 y))
                  (svg-pin
                   (lambda (pin)
-                    (pcase-let* ((`(,p ,q ,_lat ,_lon ,id . ,name) pin)
+                    (pcase-let* ((`(,p ,q ,_lat ,_lon ,id ,name) pin)
                                  (bg (cdr (assq id osm-pin-colors))))
                       (setq p (- p x0) q (- q y0))
                       (push `((poly . [,p ,q ,(- p 20) ,(- q 40) ,p ,(- q 50) 
,(+ p 20) ,(- q 40) ])
@@ -1069,9 +1069,9 @@ xmlns='http://www.w3.org/2000/svg' 
xmlns:xlink='http://www.w3.org/1999/xlink'>
   (pcase osm--pin
     ((and `(,lat ,lon ,_ . ,name)
           (guard (osm--pin-inside-p x y lat lon)))
-     (osm--draw-tile x y `(,(osm--lon-to-x lon osm--zoom)
-                           ,(osm--lat-to-y lat osm--zoom)
-                           ,lat ,lon osm-selected . ,name)))
+     (osm--draw-tile x y (list (osm--lon-to-x lon osm--zoom)
+                               (osm--lat-to-y lat osm--zoom)
+                               lat lon 'osm-selected name)))
     (_
      (let* ((key `(,osm-server ,osm--zoom ,x . ,y))
             (tile (and osm--tile-cache (gethash key osm--tile-cache))))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]