; Test function for (PickedQuadrant) :
; About Handling Image Buttons (assign action depending on the clicked portion of an image)
(defun C:test
( / PutImgVal
*error* dcl des dch
)
(setq PutImgVal
; the tile can be visually splited on: 4x4, 2x4, 4x2, 2x2, 1x2, 2x1 (2/4/8/16 quadrants) (list ; BackGround = 250 ; Empty = -15 b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a a b a a a a a a a a a a b
b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
); list
); lambda
); setq PutImgVal
); defun *error*
(
'("imgtest : dialog"
"{ label = \"Image Test\";"
" : column"
" { : image_button { key = \"img\"; fixed_width = true; fixed_height = true; width = 6.25; aspect_ratio = 1.0; alignment = centered; } " ; 48x48 image
" : edit_box { key = \"eb\"; label = \"Quadrant\"; alignment = centered; edit_width = 12; fixed_width = true; is_enabled = false; value = \"\"; }" ; info
" }"
" spacer; ok_cancel; : text { key = \"error\"; }"
"}"
)
); mapcar
); and
); not
(princ "\nUnable to write or load the DCL file.") )
(T (LM:DisplayBitmap "img" (PutImgVal nil nil))
'
(progn ; the tile can be visually splited on: 4x4, 2x4, 4x2, 2x2, 1x2, 2x1 (2/4/8/16 quadrants) ; (set_tile "eb" (vl-prin1-to-string (PickedQuadrant (list $x $y) $key 2 2))) ; display the info
(LM:DisplayBitmap "img" (PutImgVal (+ $x $y) nil)) ; assign some custom calculated colour for the image
); progn
); vl-prin1-to-string
); action_tile "img"
); T
); cond
); defun
;;--------------------=={ Display Bitmap }==------------------;;
;; ;;
;; Renders the supplied ACI colour list representation of a ;;
;; Bitmap image on the DCL image tile or image_button tile ;;
;; with the given key. ;;
;;------------------------------------------------------------;;
;; Author: Lee Mac, Copyright © 2012 - www.lee-mac.com ;;
;;------------------------------------------------------------;;
;; Arguments: ;;
;; key - key of DCL image tile or image_button tile ;;
;; lst - ACI colour list ;;
;;------------------------------------------------------------;;
;; Returns: nil ;;
;;------------------------------------------------------------;;
(defun LM:DisplayBitmap
( key lst
/ i j s x y
) )
)
)
)