明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 471|回复: 0

[源码] 100% Pure Full Screen Tool for AutoCAD for mac

[复制链接]
发表于 2020-4-26 16:30 | 显示全部楼层 |阅读模式
本帖最后由 e2002 于 2020-4-26 16:32 编辑

此 AutoLISP 源代码由 kedora编写,软件许可授权为 GPL v2。

  1. ;; 100% Pure Full Screen Tool for AutoCAD for mac
  2. ;; Coder: kedora
  3. ;; License and Copyright: GPL v2
  4. ;; Rev:
  5. ;;         R0.0.1:      2020/04/23:     First version
  6. ;;         R0.0.2:      2020/04/26:     Optimized internal routine.

  7. (defun C:lkpt_ui_FullScreenSwitcher (/
  8.                                      _lkpt_ui_FullScreenExit
  9.                                      _lkpt_ui_fullscreen
  10.                                     
  11.                                      sRegLocation lKeys)

  12.   (defun _lkpt_ui_FullScreenExit (sRegLocation lKeys / oldvar sKey)
  13.     (setq oldvar (getvar "CMDECHO"))
  14.     (setvar "CMDECHO" 0)
  15.     (vl-cmdf "_.undo" "_be")
  16.     (foreach sKey lKeys
  17.       (if (= sKey "DYNMODE")
  18.         (setvar "DYNMODE" (vl-registry-read sRegLocation sKey))
  19.         (vl-cmdf (vl-registry-read sRegLocation sKey))
  20.       );_fi
  21.       (vl-registry-delete sRegLocation sKey)
  22.     );_for
  23.     (vl-cmdf "_.fullscreen")
  24.     (vl-cmdf "_.undo" "_e")
  25.     (setvar "CMDECHO" oldvar)
  26.     (princ)
  27.   )

  28.   (defun _lkpt_ui_FullScreen (sRegLocation / lOpeningUiParts lUiParts oldvar1 oldvar2 i sItem)
  29.     (setq lOpeningUiParts '()
  30.           lUiParts '( ("TOOLBARSTATE" "_.toolbar" "_.toolbarclose")
  31.                       ("FILETABSTATE" "_.filetab" "_.filetabclose")
  32.                       ("STATUSBARSTATE" "_.statusbar" "_.statusbarclose")
  33.                       ("COMMANDWINDOWSTATE" "_.commandline" "_.commandlinehide")
  34.                     )
  35.           oldvar1 (getvar "CMDECHO")
  36.           oldvar2 (getvar "DYNMODE")
  37.     )
  38.     (vl-registry-write sRegLocation "DYNMODE" oldvar2)
  39.     (setvar "CMDECHO" 0)
  40.     (vl-cmdf "_.undo" "_be")
  41.     (cond
  42.       ( (= oldvar2 0) (setvar "DYNMODE" 3) )
  43.       ( (< oldvar2 0) (setvar "DYNMODE" (abs oldvar2)) )
  44.     );_cond
  45.     (vl-cmdf "_.fullscreen")
  46.     (mapcar (function (lambda (x) (if (= (getvar (car x)) 1)
  47.                                     (progn
  48.                                       (setq lOpeningUiParts (cons (cadr x) lOpeningUiParts))
  49.                                       (vl-cmdf (caddr x))
  50.                                     )
  51.                                   );_fi
  52.                       )
  53.             )
  54.             lUiParts
  55.     );_map
  56.     (setq lOpeningUiParts (cons "_.showpalettes" lOpeningUiParts))
  57.     (vl-cmdf "_.hidepalettes")
  58.     (setq i -1)
  59.     (foreach sItem lOpeningUiParts
  60.       (vl-registry-write sRegLocation
  61.                          (strcat "UI_Status_" (itoa (setq i (1+ i))))
  62.                          sItem
  63.       )
  64.     );_for
  65.     (vl-cmdf "_.undo" "_e")
  66.     (setvar "CMDECHO" oldvar1)
  67.     (princ)
  68.   );_defun

  69.   ;;==========   main   ==========
  70.   (setq sRegLocation "HKEY_CURRENT_USER\\Software\\Lkcadway\\LKPT")
  71.   (if (setq lKeys (vl-registry-descendents sRegLocation "*"))
  72.     (_lkpt_ui_FullScreenExit sRegLocation lKeys)
  73.     (_lkpt_ui_Fullscreen sRegLocation)
  74.   );_fi
  75.   (princ)
  76. );_defun






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
"觉得好,就打赏"
还没有人打赏,支持一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-7 01:48 , Processed in 0.158992 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表