# ListDCL编缉器使用说明

第一次使用或移动了程序文件夹，请运行一次 setup.vbs , 加载ListDCLedit.vlx即可调用命令: DCL

在编缉器左侧的是"控件区",控件区大体上分成三类

> a.容器控件

> b.独立控件(包括:附加控件,自定义控件)

> c.标准控件

a.容器控件有两种不同的插入方法:

> 1.双击插入.

> > 如果工作区活动控件是一个独立控件,将会插入到独立控件的下方.

> > 如果工作区活动控件是一个伸展开的容器头部,将会插入到容器头部.

> > 如果工作区活动控件是一个伸展开的容器尾部,将会插入到容器下方.

> > 如果工作区活动控件是一个收缩的容器,将会插入到容器下方.

> > 如果工作区没有活动控件将被插入到工作区的最上方.

> > 提示:如想插入到控件上方可插入后再{上移}即可.

> 2.按扭{插入工作区}

> > 当你选择了一个容器控件{插入工作区}会启动一个容器控件插入对话框,

> > 在对话框中你需耍指定新容器控件"内含"的控件起始点,

> > 如果,起始点正确,点确定后新的容器将被插入到工作区且包容你指定的内容.

b.独立控件有两种相同插入方法:

> 1.双击插入 2.按扭{插 入工作区}

> > 如果工作区活动控件是一个独立控件,将会插入到独立控件的下方.

> > 如果工作区活动控件是一个伸展开的容器头部,将会插入到容器头部.

> > 如果工作区活动控件是一个伸展开的容器尾部,将会插入到容器下方.

> > 如果工作区活动控件是一个收缩的容器,将会插入到容器下方.

> > 如果工作区没有活动控件将被插入到工作区的最上方.

> > 提示:如想插入到控件上方可插入后再{上移}即可.

c.标准控件插入方法与独立控件插入方法完全相同.

特别说明:

> "控件区"{插入工作区}按扭下方的文字栏不仅可以插入 各种收录的控件,

> 也可以用形如":myimg" , "myimg;"的格式来插入控件区没有收录的控件.

> 还可以插入不同的文字内容,如你可以用形如 "//这是一行注释" 来插入注释.

工作区:

> 在这里你可以选择控件进行各种编缉操作,

> > 1.当你选中一个控件时,会在"属性编缉区"显示出这个控件的所有属性,

> > 你双击"属性编缉区"中对应的属性即可进行属性编缉操作.

> > 2.当你选中一个控件时可以执行{上移},{下移},{删除},{扔掉}功能,

> > 3.当你选中一个控件时,可以用{局部预览}按扭来实时查看控件在CAD的表现.

> > 4.双击一个"容器控件",来切换"伸展"/"收缩"状态. 在"收缩"时会被显示一个"{+}"标志!

> > 5.双击一个"独立控件",来启动这个控件的局部预览.

> > 6.双击一个由"控件区"的文字栏所插入之文字内容,会启动一个文字编缉对话框.

特别提示:

> 回收站是一个有用的功能,有了它你可以实现不同容器间控件的转移,也可以生成控件的copy,

> 对于多个属性相似的同类控件,你会发观,有了回收站,这些操作将是如此的简单容易.

按扭区:

> 右侧一排按扭,功能不用我多说,大家一看就知道了.以下作简要说明:

> 01.{参数设置}:用来切换工作区,回收站的a代码格式: 1.标准树状结构 2.DCL格式结式 ; b导人DCL注释选项; c方前缀标识

> 02.{交换数据}:用来交换工作区与回收站之间数据,有了这个功能后,你就可以方便的编缉回收站中的数据了.

> 03.{导入}:将ListDCL代码输入到工作区.(自V1.52起可用ListDCL编缉器导入DCL格式文件!)

> 04.{导出}:将工作区数据输出为文件,主要有两种格式: 1.lsp格式 2.dcl格式.(自V1.52起两种格式均可用ListDCL编缉器读写)

> 05.{保存}:与导出功能相似,它只输出为 lsp格式 ,保存对话框出现一次后下次将沿用上次保存路径不再出现对话框.

> 06.{替换控件}:替换功能产生的控件会继承与原有控件共有的属性,删去不能继承的属性.

> 07.{局部代码编缉}实时查看编缉工作区所选对象的DCL代码!保存后工作区数据会同步更新!(自V1.7新增功能)

> 08.{全局代码编缉}实时查看编缉全局的DCL代码!保存后工作区数据会同步更新!(自V1.7新增功能)

> 09.{局部预览}:局部预览只对工作区当前选取的数据产生预览.(对于自定义控件会进行分析)

> 10.{全局预览}:对工作区所有数据产生预览.

> 11.{导入回收站}:与{导入}功能相似只是"目的地"成了回收站.

> 12.{导出回收站}:与{导出}功能相似只是"数据源"成了回收站.

> 13.{博客}:链结到我的博客,随时等候你的反馈,没有你的参与,ListDCL的世界就少了一份精彩!

> 14.{关于}:本程序的一些简介.

> 15.{帮助}:打开这个帮助文件.

如果疑向请到 http://fsxm.bokee.com http://fsxm.ys168.com上给我留言!

# 程序更新历史

## 2007.06.

1.构思出ListDCL的语法格式,这是一种与DCL格式相似但却是一种以表(list)为基础的中问转换对话框控制语言.

并预料到ListDCL在Lisp强大的表处理能力下,会给DCL带来更为灵活整体效果.

2.开始写出第一个初步的ListDCL解释程序,实现将一个"严谨的ListDCL"解释成DCL代码.

3.采用更为智能的ListDCL语法解释方法,

实现将一个带有 "变量符号SYM" 或"非严谨的ListDCL" 或 "属性表达式" 解释成DCL代码.

有了这个解释程序,动态DCL的实现已是手到擒来的东东了.

4.为ListDCL封装调用过程,且自动收集代码中的KEY值,模拟出事件触发机制.

为accept,cancel预设默认事件.

5.提出return函数,用来结束对话框,返回值.做到这里ListDCL的调用过程已简化得让你吃惊!

6.我的第一个动态对话框小程式fst.fas写出来了,

它的开发过程相比用基于字符的DCL来说更直接且安全不易出错.

我更坚信了ListDCL更直观的事件函数所带来的方便性,以及过程的安全性,

它强劲的动态性能.更是DCL所无法比拟的.

## 2007.07.04 ListDCL编缉器V1.0

因为ListDCL的功能特别是动态性能需要一个展示的平台,

打算用一个程序来充分表现它的动态性能,

我第一个想到的是写一个"工具箱"比如autool工具箱也是动态生成对话框的.

工具箱只写了一半突然想到毕竞工具箱的内容太单一,

还不足以说明基于表与变量化的ListDCL所带来的灵活动态性能.

突发奇想:干脆就写一个DCL编缉器得了.

于是,ListDCL编缉器V1.0就写出来了.因为ListDCL它的本质就是一个表

所以容器控件的"伸缩性",以及很好用的"局部预览" "回收站"便得以顺利实现!

## 2007.07.05 ListDCL编缉器V1.1

1.为更方便的使用,为"上移","下移"等等加上了光标跟标.

如果说V1.0的是一个骨架,从V1.1起便开始向实用性靠近.

## 2007.07.07 ListDCL编缉器V1.2

1.事实上V1.0与V1.1对自定义控件是不太友好的.

以至于你不能用ListDCL编缉器去管理自定义控件,因为自定义控件的属性列表将是一片空白!

(虽然很少有人用到自定义控件).

在V1.2得到了较好解决,它会帮你自动查找自定义控件的母体,

为自定义控件生成可用属性列表!(从母体继承属性列表)

2.本来是不打算输出一个特标准格式化的DCL代码的,

因为用过ListDCL的后觉的再回去用DCL是一种技术的倒退!

但是毕竞大多数的CAD程序员还是在与DCL打交道.

所以就优化了输出DCL的程序,你会发现用ListDCL编缉器输出的DCL代码

格式完全按照公认DCL格式标准,缩进优美,用Vlisp编缉器打开你就可以看到整齐的DCL代码!

## 2007.07.11-12 ListDCL编缉器V1.3

1.为自定义控件提供更为强大的技术支持!

在以前的版本中将不能用了自定义控件的代码部分产生"局部预览",

原因是"局部预览"只加载你选中的代码段去产生预览,

没有包含进未选中的定义控件代码部分,所以"局部预览"会被提示出错!

在V1.3中会帮你分折"局部预览"的代码如果里面有"自定义控件"会自动加载定义控件代码部分!

完美解决了自定义控件的"局部预览",帮自定义控件自动添加到"控件区",如果你用到一个未定义的控件也会被提示!

2.为了让工作区代码更有条理更清晰,默认使用标准的树状结构,(当然你也可以换回到标准DCL格式)

3.添加了许多以前被漏掉的属性.

4."另存",与"存为DCL"合并为"导出".

## 2007.07.19 ListDCL编缉器V1.4

到V1.3功能上已写完全了,这个版本只是在细节上做了点改进.

1.对话框界面做了一些调整,V1.3下面一排按扭区在V1.4放到了界面左边

2.容器控件与独立控件合并到一个列表中,另增设了base.dcl中定义的附加控件,

将控件数据作为源码附在程序文件中,方便用户修改.

3.为回收站加人导入,导出功能.

4.增加"交换数据"功能,这个功能可以用来编缉回收站数据.

5.加入"帮助","关于","博客",三个按扭.

注意:第一次使用请运行"setup.vbs"文件初始化程序路径.

## 2007.08.08-09 ListDCL编缉器V1.41-1.42

1.加入"替换控件"功能,替换功能产生的控件会继承与原有控件共有的属性,删去不能继承的属性.

2.为树形设置加入更细致的调节,可设置前缀标识.

## 2007.08.10 ListDCL编缉器V1.5-V1.51

1.合并两个控件区,使用更简洁的仿莹屏菜单模式, 可容纳更多的控件,且占用较少的界面.

2.使用更强大的DCL调试纠错功能.纠错提示信息更完整.

3.发现并修正V1.42中匆忙升级所致的自定义控件模部分的拼写错误.

## 2007.09.26 ListDCL编缉器V1.52-V1.6

1.完整实现DCL代码的输入!从此告别ListDCL编缉器只可写不可读DCL格式的历史!

从此ListDCL编缉器可完全代替Vlisp编缉器为你更好管理维护DCL代码!

## 2007.10.14 ListDCL编缉器V1.7

1.优化了DCL代码的输入模块,DCL读取速度约提高3倍!

2.新增"代码编缉"功能,可实时查看编缉当前工作区对应的DCL代码!保存后工作区数据会同步更新!

## 2007.10.18 ListDCL编缉器V1.71-1.72

1.完全重写了DCL代码输入模块的核心代码 ,不仅DCL读取速度有极大提高,且可自由控制是否输入注释文字!

2.为删除容器控件增加一个新选项:保留容器删除子控件.

## 2007.12.15 ListDCL编缉器V1.73

1.修正导入多行注释时的BUG﹗

2.修正对话框initial_focus属性的对应控件为:radio_button﹐在预朗时立刻触发事件的BUG﹗

3.解决了AutoCAD2004以下版本加载失败的问题﹗