;; | ---------------------------------------------------------------------------- ;; | MI_GetOsnapModes ;; | ---------------------------------------------------------------------------- ;; | Function : Returns a comma delimited string which contains all the currently ;; | OSNAP modes ;; | Arguments: 'OsnapMode' - if (nil), current OSMODE setting is used ;; | Returns : as explained above ;; | Updated : January 11, 2007 ;; | e-mail : rakesh.rao@4d-technologies.com ;; | Web : www.4d-technologies.com ;; | ---------------------------------------------------------------------------- (defun MI_GetOsnapModes ( OsMode / OsnapStr len ) (if (not OsMode) (setq OsMode (getvar "OSMODE")) ) (setq OsnapStr "") (if (not (zerop (logand OsMode 1))) (setq OsnapStr (strcat OsnapStr "_end,")) ) (if (not (zerop (logand OsMode 2))) (setq OsnapStr (strcat OsnapStr "_mid,")) ) (if (not (zerop (logand OsMode 4))) (setq OsnapStr (strcat OsnapStr "_cen,")) ) (if (not (zerop (logand OsMode 8))) (setq OsnapStr (strcat OsnapStr "_nod,")) ) (if (not (zerop (logand OsMode 16))) (setq OsnapStr (strcat OsnapStr "_quad,")) ) (if (not (zerop (logand OsMode 32))) (setq OsnapStr (strcat OsnapStr "_int,")) ) (if (not (zerop (logand OsMode 64))) (setq OsnapStr (strcat OsnapStr "_ins,")) ) (if (not (zerop (logand OsMode 128))) (setq OsnapStr (strcat OsnapStr "_per,")) ) (if (not (zerop (logand OsMode 256))) (setq OsnapStr (strcat OsnapStr "_tan,")) ) (if (not (zerop (logand OsMode 512))) (setq OsnapStr (strcat OsnapStr "_nea,")) ) (if (not (zerop (logand OsMode 1024))) (setq OsnapStr (strcat OsnapStr "_qui,")) ) (if (not (zerop (logand OsMode 2048))) (setq OsnapStr (strcat OsnapStr "_app,")) ) (if (not (zerop (logand OsMode 4096))) (setq OsnapStr (strcat OsnapStr "_ext,")) ) (if (not (zerop (logand OsMode 8192))) (setq OsnapStr (strcat OsnapStr "_par,")) ) (if (/= OsnapStr "") (progn (setq len (strlen OsnapStr)) (if (= (substr OsnapStr len 1) ",") (setq OsnapStr (substr OsnapStr 1 (1- len))) ) ) (setq OsnapStr "_none") ) OsnapStr )