; 用户可自行修改面板数据，文件在AUTOLOAD文件夹下【用户做法说明索引文件[MINI_ZFSY].lsp】
; 文字用逗号分隔
(if (> (atof (getvar "ACADVER")) 17.1)  ;代码在AutoCAD2008以下版本不加载，AutoCAD2008以下版本不支持多重索引
	(progn

(defun c:mini_zfsy (  / txt a b )
	(mai_last_com "mini_zfsy")
	(setq
		txt
			(mai_get_text_panel
				(list
					"用户可自行修改，文件在AUTOLOAD文件夹下" ;对话框标题
					(list
						"设置"
						"编辑此面板数据"
						"刷新此面板"
					)
					(list
						"屋面"
						"SJ.A,屋面出入口,2,38"
						"SJ.A,出墙雨水口(余同),2,34"
						"SJ.A,雨水口(余同),1,35"
						"88ZJ201,%%C75PVC雨水管,3,18"
						"88ZJ501,铁爬梯,2,29"
						"88ZJ501,670x820x120消火栓底距地1000,1.5,28"
					)
					(list
						"其它"
						"88ZJ901,花池(余同),10,6"
						"88ZJ901,踏步(余同),1,5"
						"88ZJ901,雨蓬,6,17"
						"88ZJ411,砖砌阳台拦板,1,4"
						"88ZJ401,楼梯栏杆,1-4,6"
						"88ZJ401,楼梯扶手,6,19"
					)
				)
			)
	)

	(or mai_zfsy_ang mai_mleaser_line_angle)

	(cond
		(	(= "编辑此面板数据" txt)
			(mai_shell_ascii_edit (findfile "用户做法说明索引文件[mini_zfsy].lsp") nil)
			; (load (findfile "用户做法说明索引文件[mini_zfsy].lsp"))
			(c:mini_zfsy)
		)

		(	(= "刷新此面板" txt)
			(load (findfile "用户做法说明索引文件[mini_zfsy].lsp"))
			(c:mini_zfsy)
		)

		(	(not (= "" txt))
			(setq
				a (entlast)
				mai_zfsy_ang
					(cadr
						(mai_user_mleader
							(list (car mai_zxindex_layer) (cadr mai_zxindex_layer))        ; 多重索引层名和层颜色组成的表
							mai_mleader_arrow_block                           ; "箭头块名，必须有，迷你提供三个块，"MN-DOT"、"MN-ARROW1"、"MN-ARROW2"，用户也可用自己的块
							0                                  ; 0 为块，1为文字在线上，2为文字在线外
							(list "INDEX_M5" 1 (nth 3 mai_zxindex_layer))                ; 前一个参数为 0 时，此参数为索引块名字和块比例表，1 2时为文字形名字和字高度，用户也可用自己的块
							txt                                ; 文字或块属性，逗号分隔，本命令由上面面板获得
							nil                                ; 两点表或索引实体名，空为输入
							mai_zfsy_ang                       ; 引线倾斜角度（0-90），nil 为由标注点确定角度，负数为智能角度
						)
					)
				b (entlast)
			)
			(or (= a b)
				(progn
					(setq a (apply 'max (mapcar 'mai_strlen_utf (mai_str2lst txt ","))))
					(entmod (mai_mleader_DoglegLength (entget b) 0 (* mai_scale2 (fix (max 1 (/ a 1.75))) 5)))
				)
			)
		)
	)
)

	)
)

