From 4b6ad74f6bdcae08738ccb6e81a961e95b27afaa Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Fri, 22 Jan 2016 19:36:23 +0200 Subject: [PATCH] Add toggle shape locking event. --- src/uxbox/data/workspace.cljs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/uxbox/data/workspace.cljs b/src/uxbox/data/workspace.cljs index d3db930932..b71c2afeec 100644 --- a/src/uxbox/data/workspace.cljs +++ b/src/uxbox/data/workspace.cljs @@ -282,6 +282,17 @@ (assoc-in state [:shapes-by-id sid] (assoc shape :blocked false)) (assoc-in state [:shapes-by-id sid] (assoc shape :blocked true))))))) +(defn toggle-shape-locking + [sid] + (reify + rs/UpdateEvent + (-apply-update [_ state] + (let [shape (get-in state [:shapes-by-id sid]) + locked? (:locked shape false)] + (if locked? + (assoc-in state [:shapes-by-id sid] (assoc shape :locked false)) + (assoc-in state [:shapes-by-id sid] (assoc shape :locked true))))))) + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Events (for selected) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;