2012
Table Of Contents
- Contents
- Basic Customization
- Overview of Customization
- Organize Program and Support Files
- Customize a Publish to Web Template
- Define Custom Commands
- Record and Modify Action Macros
- Custom Linetypes
- Custom Hatch Patterns
- User Interface Customization
- Understand User Interface Customization
- Work with the Customize User Interface (CUI) Editor
- Create and Manage Customization Files
- Customize Commands
- Overview of Commands
- Create, Edit, and Reuse Commands
- Create Macros
- Overview of Macros
- Use Special Control Characters in Macros
- Pause for User Input in Macros
- Provide International Support in Macros
- Use Built-in Commands in Macros
- Repeat Commands in Macros
- Use Single Object Selection Mode in Macros
- Use Macros to Swap User Interface Elements
- Use Conditional Expressions in Macros
- Use AutoLISP in Macros
- Control the Display of Command Items
- Assign Search Tags
- Create Tooltips and Extended Help for Commands
- Create Status Line Help Messages
- Create and Manage Images for Commands
- Customize User Interface Elements
- Load an AutoLISP File
- Customize Workspaces
- Transfer and Migrate Customization
- Customize User Interface (CUI) Editor FAQs
- DIESEL
- Slides and Command Scripts
- Introduction to Programming Interfaces
- Shapes and Shape Fonts
- Overview of Shape Files
- Create Shape Definition Files
- Shape Descriptions
- Vector Length and Direction Code
- Special Codes
- Use Special Codes
- Codes 0, 1, and 2: End of Shape and Draw Mode Control
- Codes 3 and 4: Size Control
- Codes 5 and 6: Location Save/Restore
- Code 7: Subshape
- Codes 8 and 9: X-Y Displacements
- Code 00A: Octant Arc
- Code 00B: Fractional Arc
- Codes 00C and 00D: Bulge-Specified Arcs
- Code 00E: Flag Vertical Text Command
- Text Font Descriptions
- Sample Files
- Big Font Descriptions
- Unicode Font Descriptions
- Superscripts and Subscripts in SHX Files
- Migrate and Transfer Custom Settings and Files
- Index
DIESEL expressions can also return string values to pull-down menu item
labels, so that you can make menus unavailable or otherwise alter the way
they are displayed. To use a DIESEL expression in a pull-down menu label,
make sure that the first character is the $ character.
In the next example, the current layer is set to BASE and the following DIESEL
expression is used as the label.
$(eval,"Current layer: " $(getvar,clayer))
The result is that the appropriate pull-down menu is displayed and updated
whenever the current layer changes.
Current Layer: BASE
You can also use this method to interactively change the text displayed in a
pull-down menu. You use an AutoLISP routine that sets the USERS1-5 system
variables to the selected text, which can be retrieved by a DIESEL macro in a
menu label.
NOTE The width of pull-down and shortcut menus is determined when the
customization file is being loaded. Menu labels generated or changed by DIESEL
expressions after a menu is loaded are truncated to fit within the existing menu
width.
If you anticipate that a DIESEL-generated menu label will be too wide, you
can use the following example to ensure that the menu width will
accommodate your labels. This example displays the first 10 characters of the
current value of the USERS3 (USERS1-5) system variable.
$(eval,"Current value: " $(getvar,users3))+
$(if, $(eq,$(getvar,users3),""), 10 spaces )^C^Cusers3
You cannot use trailing spaces in a menu label to increase the menu width,
because trailing spaces are ignored while the menu is being loaded. Any spaces
you use to increase the width of a menu label must be within a DIESEL
expression.
The next example uses the same DIESEL expression as the label and a portion
of the menu item. It provides a practical way to enter the current day and
date into a drawing.
$(edtime,$(getvar,date),DDD", "D MON YYYY)^C^Ctext +
\\\ $M=$(edtime,$(getvar,date),DDD", "D MON YYYY);
Also, you can use a DIESEL macro to mark pull-down menu labels or make
them unavailable. The following pull-down menu label displays an unavailable
DIESEL Expressions in Macros | 395