![](source/plugin/imc_colorcode/images/loading.gif) - ;;================================================================================;
- ;; 变量说明 ;
- ;;================================================================================;
- ;;**XDTBMenuDataStru** 菜单总数据 ;
- ;;**XDTBTabMenuDataStru** 标签数据 ;
- ;;**XDTBCurrentMainMenuDataStru** 当前Tab的主菜单数据 ;
- ;; ;
- ;;注意: 变量名称不可更改 ;
- ;;--------------------------------------------------------------------------------;
- ;; 菜单数据初始化 ;
- ;;--------------------------------------------------------------------------------;
- ;;获取当前菜单数据
- (defun Menu_CurrentMenu_DataStru (n)
- (if (eq (type n) 'INT)
- (cdr
- (assoc (strcat "TAB" (itoa n)) (cdddr **XDTBMenuDataStru**))
- )
- (cdr (assoc n (cdddr **XDTBMenuDataStru**)))
- )
- )
- ;;初始化菜单数据
- (defun Menu_DataStru_OnInitialize ()
- (setq **XDTBMenuDataStru**
- (ea_mainmenu_datastru) ;_主数据
- **XDTBTabMenuDataStru**
- (caddr **XDTBMenuDataStru**) ;_标签数据
- **XDTBCurrentMainMenuDataStru**
- (Menu_CurrentMenu_DataStru
- (car **XDTBTabMenuDataStru**)
- ) ;_当前Tab的主菜单数据
- )
- (vl-propagate '**XDTBMenuDataStru**)
- (vl-propagate '**XDTBTabMenuDataStru**)
- (vl-propagate '**XDTBCurrentMainMenuDataStru**)
- )
- (defun ODCL_MainMenu_Tab_IsOnly ()
- (if (= (length **XDTBTabMenuDataStru**) 1)
- (setq **XDTBTabMenuIsEnabled** nil)
- (setq **XDTBTabMenuIsEnabled** t)
- )
- t
- )
- (defun ODCL_MainMenu_Button_XPositon ()
- (if **XDTBTabMenuIsEnabled**
- (setq **XDTBMainMenuButtonXPosition** 24)
- (setq **XDTBMainMenuButtonXPosition** 0)
- )
- )
- ;;Main Program
- (defun C:XDTB_Menutool ()
- ;;(if xdrx_document_getversionex
- (if dcl_getversion
- (if (and (findfile "xdcad.odcl") ;_ODCL文件
- (findfile "xdtb_menu.lsp") ;_菜单文件
- (findfile "xdtb_menucontrol.vlx") ;_控制文件
- )
- (progn
- (vl-load-all "xdtb_menu.lsp")
- ;;(vl-load-all "xdtb_autoload.lsp");_自动加载Lsp文件
- (Menu_DataStru_OnInitialize) ;_初始化主菜单数据
- (ODCL_MainMenu_Button_XPositon)
- (ODCL_MainMenu_Tab_IsOnly)
- (dcl_project_load "xdcad.odcl")
- (and (not **XDTBTabMenuIsEnabled**)
- (/= (dcl_control_getwidth xdcad_mainmenu) 76)
- (dcl_control_setwidth xdcad_mainmenu 76)
- )
- (and **XDTBTabMenuIsEnabled**
- (/= (dcl_control_getwidth xdcad_mainmenu) 96)
- (dcl_control_setwidth xdcad_mainmenu 96)
- )
- (if (dcl_form_isactive xdcad_mainmenu)
- (dcl_form_close xdcad_mainmenu)
- )
- (dcl_form_show xdcad_mainmenu)
- (vl-load-all "xdtb_menucontrol.vlx")
- )
- (princ "\n未找到菜单支持文件!")
- )
- (princ "\n需要加载OpenDCL!")
- )
- ;;(princ "\n需要XDRXAPI支持!")
- ;;)
- (princ)
- )
- (C:XDTB_Menutool)
- (princ)
|