diff options
author | scgilardi <scgilardi@gmail.com> | 2009-03-11 22:16:06 +0000 |
---|---|---|
committer | scgilardi <scgilardi@gmail.com> | 2009-03-11 22:16:06 +0000 |
commit | 2bb3f67f27ed1d647e4b2aac080ebd88eeef21f7 (patch) | |
tree | 4f0dcf489add1a5c6aad94a407e5f9339e51de69 /src/clojure | |
parent | 63fbd72c2c1f20539bb0efa84dd950600ae8bf95 (diff) |
miglayout: correct example and improve conciseness
Diffstat (limited to 'src/clojure')
-rw-r--r-- | src/clojure/contrib/miglayout.clj | 15 | ||||
-rw-r--r-- | src/clojure/contrib/miglayout/internal.clj | 12 |
2 files changed, 12 insertions, 15 deletions
diff --git a/src/clojure/contrib/miglayout.clj b/src/clojure/contrib/miglayout.clj index 6499721e..13ed92ef 100644 --- a/src/clojure/contrib/miglayout.clj +++ b/src/clojure/contrib/miglayout.clj @@ -13,8 +13,8 @@ ;; ;; Example: ;; -;; (require '[clojure.contrib.miglayout.test :as mlt]) -;; (doseq i (range 3) (mlt/run-test i)) +;; (use '[clojure.contrib.miglayout.test :as mlt :only ()]) +;; (doseq [i (range 3)] (mlt/run-test i)) ;; ;; scgilardi (gmail) ;; Created 5 October 2008 @@ -51,13 +51,10 @@ - A map specifies one or more constraints as keys, each mapped to a single argument" [#^Container container & args] - (let [{:keys [keyword-items components]} - (apply parse-item-constraints args)] - (.setLayout container - (MigLayout. - (:layout keyword-items) - (:column keyword-items) - (:row keyword-items))) + (let [item-constraints (apply parse-item-constraints args) + {:keys [keywords components]} item-constraints + {:keys [layout column row]} keywords] + (.setLayout container (MigLayout. layout column row)) (doseq [[#^Component component constraints] components] (.add container component constraints)) container)) diff --git a/src/clojure/contrib/miglayout/internal.clj b/src/clojure/contrib/miglayout/internal.clj index bef89aca..00be8785 100644 --- a/src/clojure/contrib/miglayout/internal.clj +++ b/src/clojure/contrib/miglayout/internal.clj @@ -58,18 +58,18 @@ (#{:layout :column :row} x)))) (defn parse-item-constraints - "Iterates over args and builds a map containing :keywords, a map of from - keyword-item to constraints string and :components, a vector of vectors - each associating a component with its constraints string. :components is - a vector because ordering of components matters." + "Iterates over args and builds a map containing values associated with + :keywords and :components. The value for :keywords is a map from keyword + items to constraints strings. The value for :components is a vector of + vectors each associating a component with its constraints string." [& args] (loop [[item & args] args - item-constraints {:components [] :keyword-items {}}] + item-constraints {:keywords {} :components []}] (if item (let [[constraints args] (split-with constraint? args)] (recur args (update-in item-constraints - [(if (component? item) :components :keyword-items)] + [(if (component? item) :components :keywords)] conj [item (apply format-constraints constraints)]))) item-constraints))) |