home *** CD-ROM | disk | FTP | other *** search
- /* Allow commands to return results */
-
- options results
-
- /* On error, goto ERROR:. Comment out this line if you wish to */
- /* perform your own error checking. */
-
- signal on error
-
- 'PROJECT_LOCK'
-
- /* BEGIN PROGRAM *************************************************/
-
- /*
- PROGRAM: ShadowHard.dsdr
- DESCRIPTION: Draws a hard shadow for the selected object(s).
- The shadow is offset by some amount, which may
- be re-positioned later. Change the "Offset"
- value below to change the default shadow offset.
- DATE: 02/11/96
- AUTHOR: Andy Dean
- */
-
- Offset = '0.25in'
- Opacity = 50
-
- REDRAW_OFF
-
- /* Get info on the selected object(s) */
-
- OBJECT_SPECS_GET stem 'srcobj.'
-
- /* If there's more than 1 object, group them */
- /* and store their name */
-
- if srcobj.numselected > 1 then do
- OBJECT_GROUP stem 'srcgrp.'
-
- srcname = srcgrp.name
- end
- else do
- srcname = srcobj.name
- end
-
- /* Clone the object, offsetting 0.25in */
-
- OBJECT_CLONE Offset Offset
-
- /* Fill the object to transparent black */
-
- ATTRS_FILLCOLOUR_SET 0 0 0 Opacity
- ATTRS_PENFILL_SET None None
-
- /* Bring original object to front */
-
- OBJECT_DESELECT
- OBJECT_SELECT '"'srcname'"'
-
- OBJECT_TOFRONT
-
- /* If it was grouped, ungroup */
-
- if srcobj.numselected > 1 then
- OBJECT_UNGROUP
-
- REDRAW_ON
-
- /* END PROGRAM ***************************************************/
-
- 'PROJECT_UNLOCK'
-
- exit
-
- /* On ERROR */
-
- ERROR:
-
- 'PROJECT_UNLOCK'
-
- /* If we get here, either an error occurred with the command's */
- /* execution or there was an error with the command itself. */
- /* In the former case, rc2 contains the error message and in */
- /* the latter, rc2 contains an error number. SIGL contains */
- /* the line number of the command which caused the jump */
- /* to ERROR: */
-
- if datatype(rc2,'NUMERIC') == 1 then do
- /* See if we can describe the error with a string */
-
- select
- when rc2 == 103 then
- err_string = "ERROR 103, "||,
- "out of memory at line "||SIGL
- when rc2 == 114 then
- err_string = "ERROR 114, "||,
- "bad command template at line "||SIGL
- when rc2 == 115 then
- err_string = "ERROR 115, "||,
- "bad number for /N argument at line "||SIGL
- when rc2 == 116 then
- err_string = "ERROR 116, "||,
- "required argument missing at line "||SIGL
- when rc2 == 117 then
- err_string = "ERROR 117, "||,
- "value after keywork missing at line "||SIGL
- when rc2 == 118 then
- err_string = "ERROR 118, "||,
- "wrong number of arguments at line "||SIGL
- when rc2 == 119 then
- err_string = "ERROR 119, "||,
- "unmatched quotes at line "||SIGL
- when rc2 == 120 then
- err_string = "ERROR 120, "||,
- "line too long at line "||SIGL
- when rc2 == 236 then
- err_string = "ERROR 236, "||,
- "unknown command at line "||SIGL
- otherwise
- err_string = "ERROR "||rc2||", at line "||SIGL
- end
- end
- else if rc2 == 'RC2' then do
- err_string = "ERROR in command at line "||SIGL
- end
- else do
- err_string = rc2||", line "||SIGL
- end
-
- req_message TEXT '"'err_string'"'
-
- exit
-