Skip to content

Commit 2f34f5d

Browse files
committed
remove element argument from methods
1 parent 4ab114e commit 2f34f5d

File tree

8 files changed

+61
-65
lines changed

8 files changed

+61
-65
lines changed

src/renderer/events.cljs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -112,13 +112,13 @@
112112
pointer-offset)
113113

114114
(not drag?)
115-
(-> (tool/drag-start e element)
115+
(-> (tool/drag-start e)
116116
(assoc :drag? true))
117117

118118
:always
119-
(tool/drag e element))
119+
(tool/drag e))
120120
db)
121-
(tool/pointer-move db e element))
121+
(tool/pointer-move db e))
122122
(assoc :pointer-pos pointer-pos
123123
:adjusted-pointer-pos adjusted-pointer-pos)))
124124

@@ -129,17 +129,17 @@
129129
(h/set-tool :pan))
130130

131131
(and (= button :right) (not= (:key element) :bounding-box))
132-
(tool/pointer-up e element)
132+
(tool/pointer-up e)
133133

134134
:always
135-
(-> (tool/pointer-down e element)
135+
(-> (tool/pointer-down e)
136136
(assoc :pointer-offset pointer-pos
137137
:adjusted-pointer-offset adjusted-pointer-pos)))
138138

139139
:pointerup
140140
(cond-> (if drag?
141-
(tool/drag-end db e element)
142-
(cond-> db (not= button :right) (tool/pointer-up e element)))
141+
(tool/drag-end db e)
142+
(cond-> db (not= button :right) (tool/pointer-up e)))
143143
(and primary-tool (= button :middle))
144144
(-> (h/set-tool primary-tool)
145145
(dissoc :primary-tool))
@@ -149,7 +149,7 @@
149149
(update :snap dissoc :nearest-neighbor)))
150150

151151
:dblclick
152-
(tool/double-click db e element)
152+
(tool/double-click db e)
153153

154154
:wheel
155155
(if (some modifiers [:ctrl :alt])

src/renderer/tool/base.cljs

Lines changed: 26 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -14,45 +14,43 @@
1414
(derive :metadata ::descriptive)
1515
(derive :title ::descriptive)
1616

17-
(defmulti attrs keyword)
18-
(defmulti properties keyword)
19-
20-
(defmulti pointer-down #(:tool %))
21-
(defmulti pointer-move #(:tool %))
22-
(defmulti pointer-up #(:tool %))
23-
(defmulti double-click #(:tool %))
24-
(defmulti drag #(:tool %))
25-
(defmulti drag-start #(:tool %))
26-
(defmulti drag-end #(:tool %))
27-
(defmulti key-up #(:tool %))
28-
(defmulti key-down #(:tool %))
17+
(defmulti pointer-down (fn [db _e] (:tool db)))
18+
(defmulti pointer-move (fn [db _e] (:tool db)))
19+
(defmulti pointer-up (fn [db _e] (:tool db)))
20+
(defmulti double-click (fn [db _e] (:tool db)))
21+
(defmulti drag (fn [db _e] (:tool db)))
22+
(defmulti drag-start (fn [db _e] (:tool db)))
23+
(defmulti drag-end (fn [db _e] (:tool db)))
24+
(defmulti key-up (fn [db _e] (:tool db)))
25+
(defmulti key-down (fn [db _e] (:tool db)))
2926
(defmulti activate :tool)
3027
(defmulti deactivate :tool)
28+
(defmulti properties keyword)
3129

3230
(defmulti render :tag)
3331
(defmulti render-to-string :tag)
3432
(defmulti path :tag)
3533
(defmulti area :tag)
3634
(defmulti centroid :tag)
3735
(defmulti snapping-points :tag)
38-
(defmulti render-edit #(:tag %))
39-
(defmulti bounds #(:tag %))
40-
(defmulti translate #(:tag %))
41-
(defmulti position #(:tag %))
42-
(defmulti scale #(:tag %))
43-
(defmulti edit #(:tag %))
36+
(defmulti render-edit :tag)
37+
(defmulti bounds (fn [el _elements] (:tag el))) ; REVIEW
38+
(defmulti translate (fn [el _offset] (:tag el)))
39+
(defmulti position (fn [el _position] (:tag el)))
40+
(defmulti scale (fn [el _ration _pivot-point] (:tag el)))
41+
(defmulti edit (fn [el _offset _handle] (:tag el)))
4442

45-
(defmethod pointer-down :default [db] db)
46-
(defmethod pointer-up :default [db] db)
47-
(defmethod pointer-move :default [db] db)
48-
(defmethod drag-start :default [db] db)
49-
(defmethod double-click :default [db] db)
50-
(defmethod key-up :default [db] db)
51-
(defmethod key-down :default [db] db)
43+
(defmethod pointer-down :default [db _e] db)
44+
(defmethod pointer-up :default [db _e] db)
45+
(defmethod pointer-move :default [db _e] db)
46+
(defmethod drag-start :default [db _e] db)
47+
(defmethod double-click :default [db _e] db)
48+
(defmethod key-up :default [db _e] db)
49+
(defmethod key-down :default [db _e] db)
50+
(defmethod drag :default [db e] (pointer-move db e))
51+
(defmethod drag-end :default [db e] (pointer-up db e))
5252
(defmethod activate :default [db] (assoc db :cursor "default"))
5353
(defmethod deactivate :default [db] (assoc db :cursor "default"))
54-
(defmethod drag :default [db event element] (pointer-move db event element))
55-
(defmethod drag-end :default [db event element] (pointer-up db event element))
5654
(defmethod properties :default [])
5755

5856
(defmethod render :default [])
@@ -62,8 +60,8 @@
6260
(defmethod area :default [])
6361
(defmethod centroid :default [])
6462
(defmethod snapping-points :default [])
65-
(defmethod attrs :default [])
6663
(defmethod path :default [element] element)
6764
(defmethod scale :default [element] element)
6865
(defmethod translate :default [element] element)
6966
(defmethod position :default [element] element)
67+
(defmethod edit :default [element] element)

src/renderer/tool/container/group.cljs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,10 @@
2020
el) ; TODO
2121

2222
(defmethod tool/render :g
23-
[{:keys [attrs children] :as element}]
23+
[{:keys [attrs children bounds] :as element}]
2424
(let [child-elements @(rf/subscribe [:element/filter-visible children])
25-
elements @(rf/subscribe [:document/elements])
2625
ignored-keys @(rf/subscribe [:document/ignored-keys])
2726
ignored? (contains? ignored-keys (:key element))
28-
bounds (tool/bounds element elements)
2927
[x1 y1 _x2 _y2] bounds
3028
[width height] (bounds/->dimensions bounds)
3129
pointer-handler #(pointer/event-handler % element)]

src/renderer/tool/misc/fill.cljs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@
2020
(defmethod tool/translate :fill [])
2121

2222
(defmethod tool/pointer-up :fill
23-
[{active-document :active-document :as db} _e el]
23+
[{active-document :active-document :as db} {:keys [element]}]
2424
(let [color (get-in db [:documents active-document :fill])]
2525
(-> db
26-
(element.h/set-attr (:key el) :fill color)
26+
(element.h/set-attr (:key element) :fill color)
2727
(history/finalize "Fill " color))))
2828

2929
(defmethod tool/drag-end :fill
30-
[db e el]
31-
(tool/pointer-up db e el))
30+
[db e]
31+
(tool/pointer-up db e))

src/renderer/tool/shape/text.cljs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@
5454
(h/set-state :edit)))) ; FIXME: Merge create and edit history action.
5555

5656
(defmethod tool/drag-end :text
57-
[db]
58-
(tool/pointer-up db))
57+
[db e]
58+
(tool/pointer-up db e))
5959

6060
(defmethod tool/translate :text
6161
[el [x y]]

src/renderer/tool/transform/edit.cljs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,25 +26,25 @@
2626
[:div "Hold " [:strong "Ctrl"] " to restrict direction."]])))
2727

2828
(defmethod tool/pointer-down :edit
29-
[db _ el]
30-
(assoc db :clicked-element el))
29+
[db {:keys [element]}]
30+
(assoc db :clicked-element element))
3131

3232
(defmethod tool/pointer-up :edit
33-
[db e el]
33+
[db {:keys [element] :as e}]
3434
(if-not (and (= (:button e) :right)
35-
(:selected? el))
35+
(:selected? element))
3636
(-> db
3737
element.h/clear-ignored
3838
(dissoc :clicked-element)
39-
(element.h/select (:key el) (pointer/shift? e))
39+
(element.h/select (:key element) (pointer/shift? e))
4040
(history.h/finalize "Select element"))
4141
(dissoc db :clicked-element)))
4242

4343
(defmethod tool/pointer-move :edit
44-
[db _ el]
44+
[db {:keys [element]}]
4545
(-> db
4646
element.h/clear-hovered
47-
(element.h/hover (:key el))))
47+
(element.h/hover (:key element))))
4848

4949
(defmethod tool/drag-start :edit
5050
[db]

src/renderer/tool/transform/pan.cljs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
(assoc db :cursor "grabbing"))
3434

3535
(defmethod tool/drag :pan
36-
[db e _]
36+
[db e]
3737
(frame/pan db (mat/sub (:pointer-pos db) (:pointer-pos e))))
3838

3939
(defmethod tool/drag-end :pan

src/renderer/tool/transform/select.cljs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -85,15 +85,15 @@
8585
(f (:key el)))) db (filter :visible? (vals (element.h/elements db)))))
8686

8787
(defmethod tool/pointer-move :select
88-
[db e el]
88+
[db {:keys [element] :as e}]
8989
(cond-> db
9090
(not (pointer/shift? e))
9191
element.h/clear-ignored
9292

9393
:always
9494
(-> element.h/clear-hovered
95-
(element.h/hover (:key el))
96-
(assoc :cursor (if el "move" "default")))))
95+
(element.h/hover (:key element))
96+
(assoc :cursor (if element "move" "default")))))
9797

9898
(defmethod tool/key-down :select
9999
[db e]
@@ -109,28 +109,28 @@
109109
element.h/clear-ignored))
110110

111111
(defmethod tool/pointer-down :select
112-
[db _e el]
112+
[db {:keys [element]}]
113113
(-> db
114-
(assoc :clicked-element el)
114+
(assoc :clicked-element element)
115115
(element.h/ignore :bounding-box)))
116116

117117
(defmethod tool/pointer-up :select
118-
[db e el]
118+
[db {:keys [element] :as e}]
119119
(if-not (and (= (:button e) :right)
120-
(:selected? el))
120+
(:selected? element))
121121
(-> db
122122
element.h/clear-ignored
123123
(dissoc :clicked-element)
124-
(element.h/select (:key el) (pointer/shift? e))
124+
(element.h/select (:key element) (pointer/shift? e))
125125
(history.h/finalize "Select element"))
126126
(dissoc db :clicked-element)))
127127

128128
(defmethod tool/double-click :select
129-
[db _e el]
130-
(if (= (:tag el) :g)
129+
[db {:keys [element]}]
130+
(if (= (:tag element) :g)
131131
(-> db
132-
(element.h/ignore (:key el))
133-
(element.h/deselect (:key el)))
132+
(element.h/ignore (:key element))
133+
(element.h/deselect (:key element)))
134134
(h/set-tool db :edit)))
135135

136136
(defmethod tool/activate :select

0 commit comments

Comments
 (0)