马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
(defun XD::TEXT:ToClipboard (ss / blk h obj rc x y)
(cond
((= (type ss) 'ENAME)
(setq obj (car (xdrx_object_classname ss)))
(cond
((= "ACAD_TABLE" obj)
(XD::Doc:setClipText (xdrx_string_join (mapcar
'(lambda (x)
(xdrx_string_join
(vl-remove nil x) "\t"
)
)
(xdrx_table_textstring ss)
) "\r\n"
)
)
)
((and
(= "INSERT" obj)
(wcmatch (car (setq blk (xdrx_getpropertyvalue ss "blocktablerecord")))
"*TABLE-*"
)
)
(xd::text:toclipboard (car (xdrx_block_getentities (cadr blk)
(list
(cons 0 "*TABLE")
)
)
)
)
)
((wcmatch obj "*TEXT")
(XD::Doc:setClipText (xdrx_getpropertyvalue obj "textstring"))
)
)
)
((and
(= (type ss) 'PICKSET)
(setq ss (xd::pickset:getsub ss '((0 . "*text"))))
)
(setq h (xdrx_getpropertyvalue (ssname ss 0) "textheight"))
(setq rc (xdrx_document_getprec))
(xdrx_document_setprec (/ h 2.0) 0.01)
(setq ss (xd::pickset:tablesort ss 0 0 '> '<))
(apply
'xdrx_document_setprec
rc
)
(XD::Doc:setClipText (xdrx_string_join (mapcar
'(lambda (x)
(xdrx_string_join
(mapcar
'
(lambda
(y)
(xdrx_getpropertyvalue y "textstring")
)
x
) "\t"
)
)
ss
) "\r\n"
)
)
)
)
)
|