Skip to content

Commit eb12102

Browse files
committed
refactor select box
1 parent 3579dab commit eb12102

File tree

4 files changed

+21
-21
lines changed

4 files changed

+21
-21
lines changed

.clj-kondo/metosin/malli-types-cljs/config.edn

+2-2
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,7 @@
273273
renderer.app.handlers {set-state {:arities {2 {:args [:any :keyword], :ret :any}}},
274274
set-cursor {:arities {2 {:args [:any :string], :ret :any}}},
275275
set-tool {:arities {2 {:args [:any :any], :ret :any}}},
276+
pointer-delta {:arities {1 {:args [:any], :ret :any}}},
276277
pointer-handler {:arities {3 {:args [:any
277278
{:op :keys,
278279
:req {:buttons :nilable/keyword,
@@ -306,8 +307,7 @@
306307
:key-code :number,
307308
:key :string,
308309
:modifiers :set}}],
309-
:ret :any}}},
310-
pointer-delta {:arities {1 {:args [:any], :ret :any}}}},
310+
:ret :any}}}},
311311
renderer.utils.math {clamp {:arities {3 {:args [:number :number :number],
312312
:ret :number}}},
313313
angle-dx {:arities {2 {:args [:number :number],

src/renderer/tool/impl/transform/select.cljs

+3-4
Original file line numberDiff line numberDiff line change
@@ -141,10 +141,9 @@
141141

142142
(defn select-rect
143143
[db intersecting?]
144-
(let [zoom (get-in db [:documents (:active-document db) :zoom])]
145-
(cond-> (overlay/select-box (:adjusted-pointer-pos db) (:adjusted-pointer-offset db) zoom)
146-
(not intersecting?)
147-
(assoc-in [:attrs :fill] "transparent"))))
144+
(cond-> (overlay/select-box db)
145+
(not intersecting?)
146+
(assoc-in [:attrs :fill] "transparent")))
148147

149148
(defmethod hierarchy/drag-start :select
150149
[db _e]

src/renderer/tool/impl/transform/zoom.cljs

+1-4
Original file line numberDiff line numberDiff line change
@@ -42,10 +42,7 @@
4242

4343
(defmethod hierarchy/drag :zoom
4444
[db]
45-
(element.h/assoc-temp db (overlay/select-box
46-
(:adjusted-pointer-pos db)
47-
(:adjusted-pointer-offset db)
48-
(get-in db [:documents (:active-document db) :zoom]))))
45+
(element.h/assoc-temp db (overlay/select-box db)))
4946

5047
(defmethod hierarchy/drag-end :zoom
5148
[db e]

src/renderer/utils/overlay.cljs

+15-11
Original file line numberDiff line numberDiff line change
@@ -150,17 +150,21 @@
150150
:stroke-dasharray stroke-dasharray})])]))
151151

152152
(defn select-box
153-
[[pos-x pos-y] [offset-x offset-y] zoom]
154-
{:tag :rect :attrs {:x (min pos-x offset-x)
155-
:y (min pos-y offset-y)
156-
:width (abs (- pos-x offset-x))
157-
:height (abs (- pos-y offset-y))
158-
:shape-rendering "crispEdges"
159-
:fill-opacity ".1"
160-
:fill theme.db/accent
161-
:stroke theme.db/accent
162-
:stroke-opacity ".5"
163-
:stroke-width (/ 1 zoom)}})
153+
[db]
154+
(let [zoom (get-in db [:documents (:active-document db) :zoom])
155+
[pos-x pos-y] (:adjusted-pointer-pos db)
156+
[offset-x offset-y] (:adjusted-pointer-offset db)]
157+
{:tag :rect
158+
:attrs {:x (min pos-x offset-x)
159+
:y (min pos-y offset-y)
160+
:width (abs (- pos-x offset-x))
161+
:height (abs (- pos-y offset-y))
162+
:shape-rendering "crispEdges"
163+
:fill-opacity ".1"
164+
:fill theme.db/accent
165+
:stroke theme.db/accent
166+
:stroke-opacity ".5"
167+
:stroke-width (/ 1 zoom)}}))
164168

165169
(defn centroid
166170
[el]

0 commit comments

Comments
 (0)