;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Filename: sd_am_elem_in_group.lsp ;; Project: privat ;; Description: inquire if given text or dimension is part of an Annoatation Group ;; Version: 90.0x ;; ;; Customer: --cadde-- ;; Author: der_Wolfgang@forum@cad.de ;; Created: Mon Sep 22 11:29:42 CEST 2025 ;; Modified: Mon Sep 22 12:12:30 CEST 2025 der_Wolfgang@forum@cad.de ;; SD-Version: developed with PE90, ;; should work in older versions as well as in big Modeling ;; reference: https://ww3.cad.de/foren/ubb/Forum29/HTML/004989.shtml ;; ;; Language: Lisp + Macro ;; Package: :cadde ;; ;; (C) Copyright 2025 der_Wolfgang@forum@cad.de, all rights reserved. ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (in-package :cadde-wt) (use-package :oli) (sd-defdialog 'am_sel_dim :module "ANNOTATION" :toolbox-button :force :dialog-control :sequential-loop :variables'((dim :selection *sd-anno-dimension-seltype* :after-input(pprint(sd-am-dim-in-group-p dim)))))(sd-show-console-window) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; works for dimensions and texts, not for symbols (but easy to extend) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun sd-am-dim-in-group-p (sel-item) "inquire if given text or dimension is part of an Annoatation Group, returns T/NIL" (sd-execute-annotator-function :fnc (format nil "INQ_SELECTED_ELEM SELECT GLOBAL POINTER '~A' CONFIRM Docu_stream_set_logical (STR(INQ 316)=('GROUP'))" (sd-get-annotator-reference :object sel-item))) ) ;; just a function name wrapper: (defun sd-am-text-in-group-p (ti) (sd-am-dim-in-group-p ti))