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
For example, if you want to override the standard HATCH command by adding
a message and then switching to the BHATCH command, use an acaddoc.lsp
file that contains the following:
(defun C:HATCH ( )
(alert "Using the BHATCH command!")
(princ "\nEnter OLDHATCH to get to real HATCH command.\n")
(command "BHATCH")
(princ)
)
(defun C:OLDHATCH ( )
(command ".HATCH")
(princ)
)
(defun-q S::STARTUP ( )
(command "undefine" "hatch")
(princ "\nRedefined HATCH to BHATCH!\n")
)
Before the drawing is initialized, new definitions for HATCH and OLDHATCH
are defined with the defun function. After the drawing is initialized, the
S::STARTUP function is called and the standard definition of HATCH is
undefined.
NOTE To be appended, the S::STARTUP function must have been defined with
the defun-q function rather than defun.
Because an S::STARTUP function can be defined in many places (an acad.lsp,
acaddoc.lsp, or MNL file or any other AutoLISP file loaded from any of these),
it's possible to overwrite a previously defined S::STARTUP function.
The following example shows one method of ensuring that your startup
function works with other functions.
(defun-q MYSTARTUP ( )
... your startup function ...
)
(setq S::STARTUP (append S::STARTUP MYSTARTUP))
The previous code appends your startup function to that of an existing
S::STARTUP function and then redefines the S::STARTUP function to include
your startup code. This works properly regardless of the prior existence of an
S::STARTUP function.
Automatically Load and Run AutoLISP Routines | 443