;;--------------------------------------------------------------------------* ;; Copyright 2016 IWG * ;; * ;;--------------------------------------------------------------------------* (in-package :custom) (use-package :OLI) ;;--------------------------------------------------------------------------* (sd-defdialog 'iwg-anno-text-spiegeln-dialog :dialog-title "Text spiegeln" :toolbox-button t :variables '( (tpnt :value-type :docupntcnp :prompt-text "Text zum Spiegeln angeben" :title "Text" ) (m2p :value-type :grouped-boolean :title "2 P." :size :third :initial-value t :after-input (after-m2p-action) ) (mh :value-type :grouped-boolean :title "waagr." :size :third :after-input (after-mhv-action) ) (mv :value-type :grouped-boolean :title "senkr." :size :third :after-input (after-mhv-action) ) (pnt1 :value-type :docupntcnp :prompt-text "Erster Punkt fuer Spiegelachse angeben" :title "Punkt 1" :after-input (when m2p (sd-execute-annotator-command :cmd (format nil "LEADER_LINE ~A,~A" (oli::gpntdocu_x pnt1) (oli::gpntdocu_y pnt1)))) ) (pnt2 :value-type :docupntcnp :prompt-text "Zweiter Punkt fuer Spiegelachse angeben" :title "Punkt 2" :initial-enable t :after-input (progn (sd-execute-annotator-command :cmd (format nil "CANCEL")) );;progn ) ) :mutual-exclusion '((m2p mh mv)) :local-functions '( (after-m2p-action () (sd-set-variable-status 'pnt2 :enable t) ) (after-mhv-action () (sd-set-variable-status 'pnt2 :enable nil) ) (next-action () (let (tpkt mep1 mep2 dold comstring) (setf tpkt (format nil "~a,~a" (oli::gpntdocu_x tpnt) (oli::gpntdocu_y tpnt))) (setf mep1 (format nil "~a,~a" (oli::gpntdocu_x pnt1) (oli::gpntdocu_y pnt1))) (cond (mv (setf mep2 (format nil "~a,~a" (oli::gpntdocu_x pnt1) (+ 1 (oli::gpntdocu_y pnt1))))) (mh (setf mep2 (format nil "~a,~a" (+ 1 (oli::gpntdocu_x pnt1)) (oli::gpntdocu_y pnt1)))) (m2p (setf mep2 (format nil "~a,~a" (oli::gpntdocu_x pnt2) (oli::gpntdocu_y pnt2)))) );;cond (setf comstring (format nil "~a~%~a~%~a ~a~%~a ~a ~a ~a ~a~%~a" "INQ_ENV 7" "LET Cname ('~'+(INQ 302))" "EDIT_PART" tpkt "MODIFY MIRROR DEL_OLD TWO_PTS" mep1 mep2 tpkt "END" "EDIT_PART Cname" )) ;;(display comstring) (sd-execute-annotator-command :cmd comstring) ) ) (clean-action () (let () (sd-execute-annotator-command :cmd "CANCEL") ) ) ) :cancel-action '(clean-action) :ok-action '(progn (clean-action) (next-action)) :help-action '() )