labels stay on screen.

This commit is contained in:
Bryce Covert
2016-12-12 08:34:29 -08:00
parent f87c14abf1
commit ca6cb94c54

View File

@@ -25,11 +25,11 @@
maximum-x (- 1280 margin-width) maximum-x (- 1280 margin-width)
label-width (label! talk :get-width) label-width (label! talk :get-width)
label-right (+ (:x talk) label-width) label-right (+ (:x talk) label-width)
y (min (- 900 (label! talk :get-height)) (:y talk)) y (max 30 (min (- 900 (label! talk :get-height)) (:y talk)))
talk (assoc (cond (> label-right maximum-x) (assoc talk :x (- maximum-x label-width)) talk (cond-> talk
(< (:x talk) minimum-x) (assoc talk :x minimum-x) (> label-right maximum-x) (assoc :x (- maximum-x label-width))
:else talk) (< (:x talk) minimum-x) (assoc :x minimum-x)
:y y)] true (assoc :y y))]
(doto talk (doto talk
(label! :set-x (:x talk)) (label! :set-x (:x talk))
(label! :set-y (:y talk))))) (label! :set-y (:y talk)))))