aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJ.D. Smith2004-11-17 05:54:20 +0000
committerJ.D. Smith2004-11-17 05:54:20 +0000
commit52a244ebe2bad252967dc1cb72038b43ecc56278 (patch)
tree33585301172f1e882886565ee667a1dd777d51fa
parent802c6e56829f7d7ac9b6312e5c97066874d0e461 (diff)
downloademacs-52a244ebe2bad252967dc1cb72038b43ecc56278.tar.gz
emacs-52a244ebe2bad252967dc1cb72038b43ecc56278.zip
Updated to IDLWAVE version 5.5. See idlwave.org
-rw-r--r--lisp/progmodes/idlw-rinfo.el3504
-rw-r--r--lisp/progmodes/idlw-shell.el2359
-rw-r--r--lisp/progmodes/idlw-toolbar.el185
-rw-r--r--lisp/progmodes/idlwave.el3193
4 files changed, 5637 insertions, 3604 deletions
diff --git a/lisp/progmodes/idlw-rinfo.el b/lisp/progmodes/idlw-rinfo.el
index fd43391fc57..36a67592e0c 100644
--- a/lisp/progmodes/idlw-rinfo.el
+++ b/lisp/progmodes/idlw-rinfo.el
@@ -1,10 +1,9 @@
1;;; idlw-rinfo.el --- Routine Information for IDLWAVE 1;;; idlw-rinfo.el --- Routine Information for IDLWAVE
2;; Copyright (c) 1999 Carsten Dominik 2;; Copyright (c) 1999 Carsten Dominik
3;; Copyright (c) 1999, 2000, 2001, 2002 Free Software Foundation 3;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation
4 4
5;; Author: Carsten Dominik <dominik@astro.uva.nl> 5;; Author: J.D. Smith <jdsmith@as.arizona.edu>
6;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu> 6;; Version: 5.5
7;; Version: 4.15
8;; Keywords: languages 7;; Keywords: languages
9 8
10;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
@@ -31,1509 +30,2038 @@
31;; information is extracted automatically from the IDL documentation 30;; information is extracted automatically from the IDL documentation
32;; and by talking to IDL. 31;; and by talking to IDL.
33;; 32;;
34;; Created by get_rinfo on Tue Sep 10 09:15:48 2002 33;; Created by get_html_rinfo on Sun Oct 10 16:06:07 2004
35;; IDL version: 5.5 34;; IDL version: 6.1
36;; Number of files scanned: 6 35;; Number of files scanned: 3393
37;; 943 syntax entries in file refguide.txt 36;; Number of routines found: 1850
38;; 327 syntax entries in file sdf.txt 37;; Number of keywords found: 7685
39;; 0 syntax entries in file datamine.txt
40;; 6 syntax entries in file edg.txt
41;; 45 syntax entries in file obsolete.txt
42;; 38 syntax entries in file whatsnew55.txt
43;; Number of routines found: 1324
44;; Number of keywords found: 6129
45;; 38;;
46;; Fixed up documentation with file: help55fixup.txt
47;; 93 total fix matches.
48;
49;; New versions of IDLWAVE, documentation, and more information 39;; New versions of IDLWAVE, documentation, and more information
50;; available from: 40;; available from:
51;; http://idlwave.org 41;; http://idlwave.org
52;; 42;;
53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
54 44
55;;; Code: 45;;; Code:
56(defconst idlwave-system-routines 46(defconst idlwave-system-routines
57 '( 47 '(
58 ("ANNOTATE" pro nil (system) "%s" (("COLOR_INDICES") ("DRAWABLE") ("LOAD_FILE") ("TEK_COLORS") ("WINDOW"))) 48 ("ANNOTATE" pro nil (system) "%s" ("A9.html" ("COLOR_INDICES" . 756628) ("DRAWABLE" . 756633) ("LOAD_FILE" . 756636) ("TEK_COLORS" . 756639) ("WINDOW" . 756642)))
59 ("ARROW" pro nil (system) "%s, X0, Y0, X1, Y1" (("COLOR") ("DATA") ("HSIZE") ("HTHICK") ("NORMALIZED") ("SOLID") ("THICK"))) 49 ("ARROW" pro nil (system) "%s, X0, Y0, X1, Y1" ("A15.html" ("COLOR" . 756673) ("DATA" . 756664) ("HSIZE" . 756670) ("HTHICK" . 756676) ("NORMALIZED" . 756667) ("SOLID" . 756679) ("THICK" . 756682)))
60 ("AXIS" pro nil (system) "%s [, X [, Y [, Z]]]" (("CHARSIZE") ("CHARTHICK") ("COLOR") ("DATA") ("DEVICE") ("FONT") ("NODATA") ("NOERASE") ("NORMAL") ("SAVE") ("SUBTITLE") ("T3D") ("TICKLEN") ("XAXIS") ("XCHARSIZE") ("XGRIDSTYLE") ("XLOG") ("XMARGIN") ("XMINOR") ("XRANGE") ("XSTYLE") ("XTHICK") ("XTICK_GET") ("XTICKFORMAT") ("XTICKINTERVAL") ("XTICKLAYOUT") ("XTICKLEN") ("XTICKNAME") ("XTICKS") ("XTICKUNITS") ("XTICKV") ("XTITLE") ("YAXIS") ("YCHARSIZE") ("YGRIDSTYLE") ("YLOG") ("YMARGIN") ("YMINOR") ("YNOZERO") ("YRANGE") ("YSTYLE") ("YTHICK") ("YTICK_GET") ("YTICKFORMAT") ("YTICKINTERVAL") ("YTICKLAYOUT") ("YTICKLEN") ("YTICKNAME") ("YTICKS") ("YTICKUNITS") ("YTICKV") ("YTITLE") ("ZAXIS") ("ZCHARSIZE") ("ZGRIDSTYLE") ("ZLOG") ("ZMARGIN") ("ZMINOR") ("ZRANGE") ("ZSTYLE") ("ZTHICK") ("ZTICK_GET") ("ZTICKFORMAT") ("ZTICKINTERVAL") ("ZTICKLAYOUT") ("ZTICKLEN") ("ZTICKNAME") ("ZTICKS") ("ZTICKUNITS") ("ZTICKV") ("ZTITLE") ("ZVALUE"))) 50 ("AXIS" pro nil (system) "%s [, X [, Y [, Z]]]" ("A20.html" ("SAVE" . 986499) ("XAXIS" . 983775) ("XLOG" . 983760) ("YAXIS" . 983765) ("YLOG" . 983752) ("YNOZERO" . 158293) ("ZAXIS" . 983724)) ("graphkeyw2.html" ("CHARSIZE" . 266973) ("CHARTHICK" . 331668) ("COLOR" . 315952) ("DATA" . 315961) ("DEVICE" . 315977) ("FONT" . 331795) ("NODATA" . 316018) ("NOERASE" . 316024) ("NORMAL" . 315963) ("SUBTITLE" . 316057) ("T3D" . 315956) ("TICKLEN" . 332207) ("XCHARSIZE" . 331699) ("XGRIDSTYLE" . 332009) ("XMARGIN" . 332038) ("XMINOR" . 332061) ("XRANGE" . 332090) ("XSTYLE" . 332116) ("XTHICK" . 332298) ("XTICK_GET" . 332321) ("XTICKFORMAT" . 332347) ("XTICKINTERVAL" . 332463) ("XTICKLAYOUT" . 332488) ("XTICKLEN" . 332513) ("XTICKNAME" . 332536) ("XTICKS" . 332559) ("XTICKUNITS" . 332586) ("XTICKV" . 332628) ("XTITLE" . 316100) ("YCHARSIZE" . 331699) ("YGRIDSTYLE" . 332009) ("YMARGIN" . 332038) ("YMINOR" . 332061) ("YRANGE" . 332090) ("YSTYLE" . 332116) ("YTHICK" . 332298) ("YTICK_GET" . 332321) ("YTICKFORMAT" . 332347) ("YTICKINTERVAL" . 332463) ("YTICKLAYOUT" . 332488) ("YTICKLEN" . 332513) ("YTICKNAME" . 332536) ("YTICKS" . 332559) ("YTICKUNITS" . 332586) ("YTICKV" . 332628) ("YTITLE" . 316100) ("ZCHARSIZE" . 331699) ("ZGRIDSTYLE" . 332009) ("ZMARGIN" . 332038) ("ZMINOR" . 332061) ("ZRANGE" . 332090) ("ZSTYLE" . 332116) ("ZTHICK" . 332298) ("ZTICK_GET" . 332321) ("ZTICKFORMAT" . 332347) ("ZTICKINTERVAL" . 332463) ("ZTICKLAYOUT" . 332488) ("ZTICKLEN" . 332513) ("ZTICKNAME" . 332536) ("ZTICKS" . 332559) ("ZTICKUNITS" . 332586) ("ZTICKV" . 332628) ("ZTITLE" . 316100) ("ZVALUE" . 316102)))
61 ("BAR_PLOT" pro nil (system) "%s, Values" (("BACKGROUND") ("BARNAMES") ("BAROFFSET") ("BARSPACE") ("BARWIDTH") ("BASELINES") ("BASERANGE") ("COLORS") ("OUTLINE") ("OVERPLOT") ("ROTATE") ("TITLE") ("XTITLE") ("YTITLE"))) 51 ("BAR_PLOT" pro nil (system) "%s, Values" ("B.html" ("BACKGROUND" . 756719) ("BARNAMES" . 756722) ("BAROFFSET" . 756725) ("BARSPACE" . 756728) ("BARWIDTH" . 756731) ("BASELINES" . 756734) ("BASERANGE" . 756737) ("COLORS" . 756740) ("OUTLINE" . 756743) ("OVERPLOT" . 756746) ("ROTATE" . 756749) ("TITLE" . 756752) ("XTITLE" . 756755) ("YTITLE" . 756758)))
62 ("BLAS_AXPY" pro nil (system) "%s, Y, A, X [, D1, Loc1 [, D2, Range]]" nil) 52 ("BLAS_AXPY" pro nil (system) "%s, Y, A, X [, D1, Loc1 [, D2, Range]]" ("B13.html"))
63 ("BOX_CURSOR" pro nil (system) "%s, [ X0, Y0, NX, NY]" (("FIXED_SIZE") ("INIT") ("MESSAGE"))) 53 ("BOX_CURSOR" pro nil (system) "%s, [ X0, Y0, NX, NY]" ("B15.html" ("FIXED_SIZE" . 756816) ("INIT" . 756813) ("MESSAGE" . 756819)))
64 ("BREAKPOINT" pro nil (system) "%s [, File], Index" (("AFTER") ("CLEAR") ("CONDITION") ("DISABLE") ("ENABLE") ("ON_RECOMPILE") ("ONCE") ("SET"))) 54 ("BREAK" pro nil (system) "%s" ("B16.html"))
65 ("BYTEORDER" pro nil (system) "%s, Variable1, ..., Variablen" (("DTOGFLOAT") ("DTOVAX") ("DTOXDR") ("FTOVAX") ("FTOXDR") ("GFLOATTOD") ("HTONL") ("HTONS") ("L64SWAP") ("LSWAP") ("NTOHL") ("NTOHS") ("SSWAP") ("SWAP_IF_BIG_ENDIAN") ("SWAP_IF_LITTLE_ENDIAN") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD") ("VAXTOD") ("VAXTOF") ("XDRTOD") ("XDRTOF"))) 55 ("BREAKPOINT" pro nil (system) "%s [, File], Index" ("B17.html" ("AFTER" . 113854) ("CLEAR" . 675862) ("CONDITION" . 113859) ("DISABLE" . 907385) ("ENABLE" . 984755) ("ON_RECOMPILE" . 984772) ("ONCE" . 990987) ("SET" . 675866)))
66 ("CALDAT" pro nil (system) "%s, Julian, Month [, Day [, Year [, Hour [, Minute [, Second]]]]]" nil) 56 ("BYTEORDER" pro nil (system) "%s, Variable1, ..., Variablen" ("B21.html" ("DTOVAX" . 906658) ("DTOXDR" . 906876) ("FTOVAX" . 675911) ("FTOXDR" . 906884) ("HTONL" . 906665) ("HTONS" . 675913) ("L64SWAP" . 965960) ("LSWAP" . 675915) ("NTOHL" . 675917) ("NTOHS" . 675919) ("SSWAP" . 675921) ("SWAP_IF_BIG_ENDIAN" . 906711) ("SWAP_IF_LITTLE_ENDIAN" . 906720) ("VAXTOD" . 675923) ("VAXTOF" . 906693) ("XDRTOD" . 906679) ("XDRTOF" . 675925)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
67 ("CALENDAR" pro nil (system) "%s [[, Month] , Year]" nil) 57 ("CALDAT" pro nil (system) "%s, Julian, Month [, Day [, Year [, Hour [, Minute [, Second]]]]]" ("C2.html"))
68 ("CALL_METHOD" pro nil (system) "%s, Name, ObjRef, [, P1, ..., Pn]" nil) 58 ("CALENDAR" pro nil (system) "%s [[, Month] , Year]" ("C3.html"))
69 ("CALL_PROCEDURE" pro nil (system) "%s, Name [, P1, ..., Pn]" nil) 59 ("CALL_METHOD" pro nil (system) "%s, Name, ObjRef, [, P1, ..., Pn]" ("C6.html"))
70 ("CATCH" pro nil (system) "%s, Variable" (("CANCEL"))) 60 ("CALL_PROCEDURE" pro nil (system) "%s, Name [, P1, ..., Pn]" ("C7.html"))
71 ("CD" pro nil (system) "%s [, Directory]" (("CURRENT"))) 61 ("CATCH" pro nil (system) "%s, [Variable]" ("C9.html" ("CANCEL" . 716974)))
72 ("CDF_ATTDELETE" pro nil (system) "%s, Id, Attribute [, EntryNum]" (("ZVARIABLE"))) 62 ("CD" pro nil (system) "%s [, Directory]" ("C10.html" ("CURRENT" . 676059)))
73 ("CDF_ATTGET" pro nil (system) "%s, Id, Attribute, EntryNum, Value" (("CDF_TYPE") ("ZVARIABLE"))) 63 ("CDF_ATTDELETE" pro nil (system) "%s, Id, Attribute [, EntryNum]" ("CDF-routines9.html" ("ZVARIABLE" . 1002456)))
74 ("CDF_ATTINQ" pro nil (system) "%s, Id, Attribute, Name, Scope, MaxEntry [, MaxZEntry]" nil) 64 ("CDF_ATTGET" pro nil (system) "%s, Id, Attribute, EntryNum, Value" ("CDF-routines11.html" ("CDF_TYPE" . 1003937) ("ZVARIABLE" . 997078)))
75 ("CDF_ATTPUT" pro nil (system) "%s, Id, Attribute, EntryNum, Value" (("ZVARIABLE"))) 65 ("CDF_ATTINQ" pro nil (system) "%s, Id, Attribute, Name, Scope, MaxEntry [, MaxZEntry]" ("CDF-routines12.html"))
76 ("CDF_ATTRENAME" pro nil (system) "%s, Id, OldAttr, NewName" nil) 66 ("CDF_ATTPUT" pro nil (system) "%s, Id, Attribute, EntryNum, Value" ("CDF-routines14.html" ("ZVARIABLE" . 997143)))
77 ("CDF_CLOSE" pro nil (system) "%s, Id" nil) 67 ("CDF_ATTRENAME" pro nil (system) "%s, Id, OldAttr, NewName" ("CDF-routines15.html"))
78 ("CDF_COMPRESSION" pro nil (system) "%s, Id" (("GET_COMPRESSION") ("GET_GZIP_LEVEL") ("GET_VAR_COMPRESSION") ("GET_VAR_GZIP_LEVEL") ("SET_COMPRESSION") ("SET_GZIP_LEVEL") ("SET_VAR_COMPRESSION") ("SET_VAR_GZIP_LEVEL") ("VARIABLE") ("ZVARIABLE"))) 68 ("CDF_CLOSE" pro nil (system) "%s, Id" ("CDF-routines16.html"))
79 ("CDF_CONTROL" pro nil (system) "%s, Id" (("ATTRIBUTE") ("GET_ATTR_INFO") ("GET_CACHESIZE") ("GET_COPYRIGHT") ("GET_FILENAME") ("GET_FORMAT") ("GET_NEGTOPOSFP0_MODE") ("GET_NUMATTRS") ("GET_READONLY_MODE") ("GET_RVAR_CACHESIZE") ("GET_VAR_INFO") ("GET_ZMODE") ("GET_ZVAR_CACHESIZE") ("SET_CACHESIZE") ("SET_EXTENDRECS") ("SET_INITIALRECS") ("SET_NEGTOPOSFP0_MODE") ("SET_PADVALUE") ("SET_READONLY_MODE") ("SET_RVAR_CACHESIZE") ("SET_RVARS_CACHESIZE") ("SET_ZMODE") ("SET_ZVAR_CACHESIZE") ("SET_ZVARS_CACHESIZE") ("VARIABLE") ("ZVARIABLE"))) 69 ("CDF_COMPRESSION" pro nil (system) "%s, Id" ("CDF-routines17.html" ("GET_COMPRESSION" . 1019949) ("GET_GZIP_LEVEL" . 1019952) ("GET_VAR_COMPRESSION" . 1019955) ("GET_VAR_GZIP_LEVEL" . 1019957) ("SET_COMPRESSION" . 1019965) ("SET_GZIP_LEVEL" . 1020981) ("SET_VAR_COMPRESSION" . 1019968) ("SET_VAR_GZIP_LEVEL" . 1026491) ("VARIABLE" . 1026493) ("ZVARIABLE" . 1019982)))
80 ("CDF_DELETE" pro nil (system) "%s, Id" nil) 70 ("CDF_CONTROL" pro nil (system) "%s, Id" ("CDF-routines18.html" ("ATTRIBUTE" . 997198) ("GET_ATTR_INFO" . 997201) ("GET_CACHESIZE" . 997209) ("GET_COPYRIGHT" . 997212) ("GET_FILENAME" . 997215) ("GET_FORMAT" . 997218) ("GET_NEGTOPOSFP0_MODE" . 997226) ("GET_NUMATTRS" . 997229) ("GET_READONLY_MODE" . 1047427) ("GET_RVAR_CACHESIZE" . 997236) ("GET_VAR_INFO" . 997242) ("GET_ZMODE" . 997259) ("GET_ZVAR_CACHESIZE" . 997266) ("SET_CACHESIZE" . 997269) ("SET_EXTENDRECS" . 997272) ("SET_INITIALRECS" . 997275) ("SET_NEGTOPOSFP0_MODE" . 997278) ("SET_PADVALUE" . 997281) ("SET_READONLY_MODE" . 997284) ("SET_RVAR_CACHESIZE" . 997287) ("SET_RVARS_CACHESIZE" . 997290) ("SET_ZMODE" . 997293) ("SET_ZVAR_CACHESIZE" . 997296) ("SET_ZVARS_CACHESIZE" . 997298) ("VARIABLE" . 997301) ("ZVARIABLE" . 997307)))
81 ("CDF_DOC" pro nil (system) "%s, Id, Version, Release, Copyright" (("INCREMENT"))) 71 ("CDF_DELETE" pro nil (system) "%s, Id" ("CDF-routines20.html"))
82 ("CDF_EPOCH" pro nil (system) "%s, Epoch, Year [, Month, Day, Hour, Minute, Second, Milli]" (("BREAKDOWN_EPOCH") ("COMPUTE_EPOCH"))) 72 ("CDF_DOC" pro nil (system) "%s, Id, Version, Release, Copyright" ("CDF-routines21.html" ("INCREMENT" . 997427)))
83 ("CDF_LIB_INFO" pro nil (system) "%s" (("COPYRIGHT") ("INCREMENT") ("RELEASE") ("SUBINCREMENT") ("VERSION"))) 73 ("CDF_EPOCH" pro nil (system) "%s, Epoch, Year [, Month, Day, Hour, Minute, Second, Milli]" ("CDF-routines23.html" ("BREAKDOWN_EPOCH" . 997509) ("COMPUTE_EPOCH" . 997512)))
84 ("CDF_VARDELETE" pro nil (system) "%s, Id, Variable" (("ZVARIABLE"))) 74 ("CDF_LIB_INFO" pro nil (system) "%s" ("CDF-routines27.html" ("COPYRIGHT" . 997623) ("INCREMENT" . 997626) ("RELEASE" . 997629) ("SUBINCREMENT" . 997632) ("VERSION" . 997635)))
85 ("CDF_VARGET" pro nil (system) "%s, Id, Variable, Value" (("COUNT") ("INTERVAL") ("OFFSET") ("REC_COUNT") ("REC_INTERVAL") ("REC_START") ("STRING") ("ZVARIABLE"))) 75 ("CDF_VARDELETE" pro nil (system) "%s, Id, Variable" ("CDF-routines31.html" ("ZVARIABLE" . 997776)))
86 ("CDF_VARGET1" pro nil (system) "%s, Id, Variable, Value" (("OFFSET") ("REC_START") ("STRING") ("ZVARIABLE"))) 76 ("CDF_VARGET" pro nil (system) "%s, Id, Variable, Value" ("CDF-routines32.html" ("COUNT" . 997847) ("INTERVAL" . 997850) ("OFFSET" . 997853) ("REC_COUNT" . 997856) ("REC_INTERVAL" . 997859) ("REC_START" . 997862) ("STRING" . 997865) ("ZVARIABLE" . 997868)))
87 ("CDF_VARPUT" pro nil (system) "%s, Id, Variable, Value" (("COUNT") ("INTERVAL") ("OFFSET") ("REC_INTERVAL") ("REC_START") ("ZVARIABLE"))) 77 ("CDF_VARGET1" pro nil (system) "%s, Id, Variable, Value" ("CDF-routines33.html" ("OFFSET" . 997909) ("REC_START" . 997912) ("STRING" . 997915) ("ZVARIABLE" . 997918)))
88 ("CDF_VARRENAME" pro nil (system) "%s, Id, OldVariable, NewName" (("ZVARIABLE"))) 78 ("CDF_VARPUT" pro nil (system) "%s, Id, Variable, Value" ("CDF-routines36.html" ("COUNT" . 998005) ("INTERVAL" . 998008) ("OFFSET" . 998011) ("REC_INTERVAL" . 998014) ("REC_START" . 998017) ("ZVARIABLE" . 998020)))
89 ("CHOLDC" pro nil (system) "%s, A, P" (("DOUBLE"))) 79 ("CDF_VARRENAME" pro nil (system) "%s, Id, OldVariable, NewName" ("CDF-routines37.html" ("ZVARIABLE" . 998048)))
90 ("CIR_3PNT" pro nil (system) "%s, X, Y, R, X0, Y0" nil) 80 ("CHOLDC" pro nil (system) "%s, A, P" ("C17.html" ("DOUBLE" . 1108599)))
91 ("CLOSE" pro nil (system) "%s[, Unit1, ..., Unitn]" (("ALL") ("EXIT_STATUS") ("FILE") ("FORCE"))) 81 ("CIR_3PNT" pro nil (system) "%s, X, Y, R, X0, Y0" ("C20.html"))
92 ("COLOR_CONVERT" pro nil (system) "%s, I0, I1, I2, O0, O1, O2" (("HLS_RGB") ("HSV_RGB") ("RGB_HLS") ("RGB_HSV"))) 82 ("CLOSE" pro nil (system) "%s[, Unit1, ..., Unitn]" ("C21.html" ("ALL" . 676122) ("EXIT_STATUS" . 1017312) ("FILE" . 1017618) ("FORCE" . 1017321)))
93 ("COMMON" pro nil (system) "%s VOLUME_DATA, A" (("A"))) 83 ("COLOR_CONVERT" pro nil (system) "%s, I0, I1, I2, O0, O1, O2" ("C25.html" ("HLS_RGB" . 861671) ("HSV_RGB" . 861673) ("RGB_HLS" . 861669) ("RGB_HSV" . 676146)))
94 ("CONSTRAINED_MIN" pro nil (system) "%s, X, Xbnd, Gbnd, Nobj, Gcomp, Inform" (("ESPTOP") ("LIMSER") ("MAXIMIZE") ("NSTOP") ("REPORT") ("TITLE"))) 84 ("CONSTRAINED_MIN" pro nil (system) "%s, X, Xbnd, Gbnd, Nobj, Gcomp, Inform" ("C38.html" ("EPSTOP" . 908210) ("LIMSER" . 927415) ("MAXIMIZE" . 927406) ("NSTOP" . 975889) ("REPORT" . 942066) ("TITLE" . 927408)))
95 ("CONTOUR" pro nil (system) "%s, Z [, X, Y]" (("BACKGROUND") ("C_ANNOTATION") ("C_CHARSIZE") ("C_CHARTHICK") ("C_COLORS") ("C_LABELS") ("C_LINESTYLE") ("C_ORIENTATION") ("C_SPACING") ("C_THICK") ("CELL_FILL") ("CHARSIZE") ("CHARTHICK") ("CLIP") ("CLOSED") ("COLOR") ("DATA") ("DEVICE") ("DOWNHILL") ("FILL") ("FOLLOW") ("FONT") ("IRREGULAR") ("ISOTROPIC") ("LEVELS") ("MAX_VALUE") ("MIN_VALUE") ("NLEVELS") ("NOCLIP") ("NODATA") ("NOERASE") ("NORMAL") ("NSUM") ("OVERPLOT") ("PATH_DATA_COORDS") ("PATH_DOUBLE") ("PATH_FILENAME") ("PATH_INFO") ("PATH_XY") ("POLAR") ("POSITION") ("SUBTITLE") ("T3D") ("THICK") ("TICKLEN") ("TITLE") ("TRIANGULATION") ("XCHARSIZE") ("XGRIDSTYLE") ("XLOG") ("XMARGIN") ("XMINOR") ("XRANGE") ("XSTYLE") ("XTHICK") ("XTICK_GET") ("XTICKFORMAT") ("XTICKINTERVAL") ("XTICKLAYOUT") ("XTICKLEN") ("XTICKNAME") ("XTICKS") ("XTICKUNITS") ("XTICKV") ("XTITLE") ("YCHARSIZE") ("YGRIDSTYLE") ("YLOG") ("YMARGIN") ("YMINOR") ("YNOZERO") ("YRANGE") ("YSTYLE") ("YTHICK") ("YTICK_GET") ("YTICKFORMAT") ("YTICKINTERVAL") ("YTICKLAYOUT") ("YTICKLEN") ("YTICKNAME") ("YTICKS") ("YTICKUNITS") ("YTICKV") ("YTITLE") ("ZAXIS") ("ZCHARSIZE") ("ZGRIDSTYLE") ("ZLOG") ("ZMARGIN") ("ZMINOR") ("ZRANGE") ("ZSTYLE") ("ZTHICK") ("ZTICK_GET") ("ZTICKFORMAT") ("ZTICKINTERVAL") ("ZTICKLAYOUT") ("ZTICKLEN") ("ZTICKNAME") ("ZTICKS") ("ZTICKUNITS") ("ZTICKV") ("ZTITLE") ("ZVALUE"))) 85 ("CONTOUR" pro nil (system) "%s, Z [, X, Y]" ("C40.html" ("C_ANNOTATION" . 1023103) ("C_CHARSIZE" . 676279) ("C_CHARTHICK" . 905138) ("C_COLORS" . 676281) ("C_LABELS" . 676286) ("C_LINESTYLE" . 676292) ("C_ORIENTATION" . 676298) ("C_SPACING" . 676300) ("C_THICK" . 676302) ("CELL_FILL" . 892176) ("CLOSED" . 676304) ("DOWNHILL" . 676306) ("FILL" . 676308) ("FOLLOW" . 676311) ("IRREGULAR" . 879096) ("ISOTROPIC" . 676316) ("LEVELS" . 927695) ("MAX_VALUE" . 676323) ("MIN_VALUE" . 47033) ("NLEVELS" . 676325) ("OVERPLOT" . 861732) ("PATH_DATA_COORDS" . 879089) ("PATH_DOUBLE" . 1015046) ("PATH_FILENAME" . 676329) ("PATH_INFO" . 746342) ("PATH_XY" . 746343) ("TRIANGULATION" . 746344) ("XLOG" . 158329) ("YLOG" . 158344) ("ZAXIS" . 676344)))
96 ("CPU" pro nil (system) "%s" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NTHREADS") ("VECTOR_ENABLE"))) 86 ("COPY_LUN" pro nil (system) "%s, FromUnit, ToUnit [, Num]" ("C44.html" ("EOF" . 1090923) ("LINES" . 1090926) ("TRANSFER_COUNT" . 1090928)))
97 ("CREATE_VIEW" pro nil (system) "%s" (("AX") ("AY") ("AZ") ("PERSP") ("RADIANS") ("WINX") ("WINY") ("XMAX") ("XMIN") ("YMAX") ("YMIN") ("ZFAC") ("ZMAX") ("ZMIN") ("ZOOM"))) 87 ("CPU" pro nil (system) "%s" ("C48.html" ("RESET" . 1178606) ("RESTORE" . 1178609) ("TPOOL_MAX_ELTS" . 1032362) ("TPOOL_MIN_ELTS" . 1032364) ("TPOOL_NTHREADS" . 1032366) ("VECTOR_ENABLE" . 1032368)))
98 ("CURSOR" pro nil (system) "%s, X, Y [, Wait]" (("CHANGE") ("DATA") ("DEVICE") ("DOWN") ("NORMAL") ("NOWAIT") ("UP") ("WAIT"))) 88 ("CREATE_VIEW" pro nil (system) "%s" ("C52.html" ("AX" . 756876) ("AY" . 756879) ("AZ" . 756882) ("PERSP" . 756885) ("RADIANS" . 756888) ("WINX" . 756891) ("WINY" . 756894) ("XMAX" . 756897) ("XMIN" . 756900) ("YMAX" . 756903) ("YMIN" . 756906) ("ZFAC" . 756909) ("ZMAX" . 756912) ("ZMIN" . 756915) ("ZOOM" . 756918)))
99 ("CW_ANIMATE_GETP" pro nil (system) "%s, Widget, Pixmaps" (("KILL_ANYWAY"))) 89 ("CURSOR" pro nil (system) "%s, X, Y [, Wait]" ("C57.html" ("CHANGE" . 676458) ("DATA" . 676460) ("DEVICE" . 676464) ("DOWN" . 676462) ("NORMAL" . 676466) ("NOWAIT" . 676468) ("UP" . 676470) ("WAIT" . 676472)))
100 ("CW_ANIMATE_LOAD" pro nil (system) "%s, Widget" (("CYCLE") ("FRAME") ("IMAGE") ("ORDER") ("WINDOW") ("XOFFSET") ("YOFFSET"))) 90 ("CW_ANIMATE_GETP" pro nil (system) "%s, Widget, Pixmaps" ("C62.html" ("KILL_ANYWAY" . 853956)))
101 ("CW_ANIMATE_RUN" pro nil (system) "%s, Widget [, Rate{0 to 100}]" (("NFRAMES") ("STOP"))) 91 ("CW_ANIMATE_LOAD" pro nil (system) "%s, Widget" ("C63.html" ("CYCLE" . 853989) ("FRAME" . 853992) ("IMAGE" . 853995) ("ORDER" . 853998) ("WINDOW" . 854001) ("XOFFSET" . 854006) ("YOFFSET" . 854009)))
102 ("CW_LIGHT_EDITOR_GET" pro nil (system) "%s, WidgetID" (("DIRECTION_DISABLED") ("DRAG_EVENTS") ("HIDE_DISABLED") ("LIGHT") ("LOCATION_DISABLED") ("TYPE_DISABLED") ("XRANGE") ("XSIZE") ("YRANGE") ("YSIZE") ("ZRANGE"))) 92 ("CW_ANIMATE_RUN" pro nil (system) "%s, Widget [, Rate]" ("C64.html" ("NFRAMES" . 854045) ("STOP" . 854048)))
103 ("CW_LIGHT_EDITOR_SET" pro nil (system) "%s, WidgetID" (("DIRECTION_DISABLED") ("DRAG_EVENTS") ("HIDE_DISABLED") ("LIGHT") ("LOCATION_DISABLED") ("TYPE_DISABLED") ("XRANGE") ("XSIZE") ("YRANGE") ("YSIZE") ("ZRANGE"))) 93 ("CW_LIGHT_EDITOR_GET" pro nil (system) "%s, WidgetID" ("C75.html" ("DIRECTION_DISABLED" . 1001479) ("DRAG_EVENTS" . 1001481) ("HIDE_DISABLED" . 1001485) ("LIGHT" . 1001487) ("LOCATION_DISABLED" . 1001489) ("TYPE_DISABLED" . 1001491) ("XRANGE" . 1001493) ("XSIZE" . 1001495) ("YRANGE" . 1001497) ("YSIZE" . 1001499) ("ZRANGE" . 1001501)))
104 ("CW_PALETTE_EDITOR_GET" pro nil (system) "%s, WidgetID" (("ALPHA") ("HISTOGRAM"))) 94 ("CW_LIGHT_EDITOR_SET" pro nil (system) "%s, WidgetID" ("C76.html" ("DIRECTION_DISABLED" . 1001515) ("DRAG_EVENTS" . 1001517) ("HIDE_DISABLED" . 1001521) ("LIGHT" . 1001523) ("LOCATION_DISABLED" . 1001525) ("TYPE_DISABLED" . 1001527) ("XRANGE" . 1001529) ("XSIZE" . 1001531) ("YRANGE" . 1001533) ("YSIZE" . 1001535) ("ZRANGE" . 1001537)))
105 ("CW_PALETTE_EDITOR_SET" pro nil (system) "%s, WidgetID" (("ALPHA") ("HISTOGRAM"))) 95 ("CW_PALETTE_EDITOR_GET" pro nil (system) "%s, WidgetID" ("C79.html" ("ALPHA" . 1001551) ("HISTOGRAM" . 1001677)))
106 ("DEFINE_KEY" pro nil (system) "%s, Key [, Value]" (("BACK_CHARACTER") ("BACK_WORD") ("CONTROL") ("DELETE_CHARACTER") ("DELETE_CURRENT") ("DELETE_EOL") ("DELETE_LINE") ("DELETE_WORD") ("END_OF_FILE") ("END_OF_LINE") ("ENTER_LINE") ("ESCAPE") ("FORWARD_CHARACTER") ("FORWARD_WORD") ("INSERT_OVERSTRIKE_TOGGLE") ("MATCH_PREVIOUS") ("NEXT_LINE") ("NOECHO") ("PREVIOUS_LINE") ("RECALL") ("REDRAW") ("START_OF_LINE") ("TERMINATE"))) 96 ("CW_PALETTE_EDITOR_SET" pro nil (system) "%s, WidgetID" ("C80.html" ("ALPHA" . 1001567) ("HISTOGRAM" . 1001569)))
107 ("DEFINE_MSGBLK" pro nil (system) "%s, BlockName, ErrorNames, ErrorFormats" (("IGNORE_DUPLICATE") ("PREFIX"))) 97 ("DEFINE_KEY" pro nil (system) "%s, Key [, Value]" ("D5.html" ("BACK_CHARACTER" . 1001954) ("BACK_WORD" . 1001956) ("CONTROL" . 1001958) ("DELETE_CHARACTER" . 1001962) ("DELETE_CURRENT" . 1001964) ("DELETE_EOL" . 1001966) ("DELETE_LINE" . 1001968) ("DELETE_WORD" . 1001970) ("END_OF_FILE" . 1001974) ("END_OF_LINE" . 1001972) ("ENTER_LINE" . 1001976) ("ESCAPE" . 1001978) ("FORWARD_CHARACTER" . 1001984) ("FORWARD_WORD" . 1001986) ("INSERT_OVERSTRIKE_TOGGLE" . 1001988) ("MATCH_PREVIOUS" . 676503) ("NEXT_LINE" . 1002066) ("NOECHO" . 676505) ("PREVIOUS_LINE" . 1002076) ("RECALL" . 1002078) ("REDRAW" . 1002103) ("START_OF_LINE" . 1002105) ("TERMINATE" . 676507)))
108 ("DEFINE_MSGBLK_FROM_FILE" pro nil (system) "%s, Filename" (("BLOCK") ("IGNORE_DUPLICATE") ("PREFIX") ("VERBOSE"))) 98 ("DEFINE_MSGBLK" pro nil (system) "%s, BlockName, ErrorNames, ErrorFormats" ("D6.html" ("IGNORE_DUPLICATE" . 991846) ("PREFIX" . 991848)))
109 ("DEFSYSV" pro nil (system) "%s, Name, Value [, Read_Only]" (("EXISTS"))) 99 ("DEFINE_MSGBLK_FROM_FILE" pro nil (system) "%s, Filename" ("D7.html" ("BLOCK" . 991885) ("IGNORE_DUPLICATE" . 991890) ("PREFIX" . 991892) ("VERBOSE" . 991894)))
110 ("DELETE_SYMBOL" pro nil (system) "%s, Name" (("TYPE"))) 100 ("DEFSYSV" pro nil (system) "%s, Name, Value [, Read_Only]" ("D9.html" ("EXISTS" . 676585)))
111 ("DELLOG" pro nil (system) "%s, Lognam" (("TABLE"))) 101 ("DELVAR" pro nil (system) "%s, V1, ..., Vn" ("D10.html"))
112 ("DELVAR" pro nil (system) "%s, V1, ..., Vn" nil) 102 ("DENDRO_PLOT" pro nil (system) "%s, Clusters, Linkdistance" ("D11.html" ("LABEL_CHARSIZE" . 1033249) ("LABEL_CHARTHICK" . 1032525) ("LABEL_COLOR" . 1032528) ("LABEL_NAMES" . 1032531) ("LABEL_ORIENTATION" . 1032535) ("LINECOLOR" . 1032538) ("ORIENTATION" . 1032541) ("OVERPLOT" . 1032569)) ("graphkeyw2.html" ("BACKGROUND" . 328424) ("CHARSIZE" . 266973) ("CHARTHICK" . 331668) ("CLIP" . 315949) ("COLOR" . 315952) ("DATA" . 315961) ("DEVICE" . 315977) ("FONT" . 331795) ("LINESTYLE" . 331728) ("NOCLIP" . 323508) ("NODATA" . 316018) ("NOERASE" . 316024) ("NORMAL" . 315963) ("POSITION" . 316026) ("PSYM" . 316038) ("SUBTITLE" . 316057) ("SYMSIZE" . 316061) ("T3D" . 315956) ("THICK" . 316006) ("TICKLEN" . 332207) ("TITLE" . 332238) ("XCHARSIZE" . 331699) ("XGRIDSTYLE" . 332009) ("XMARGIN" . 332038) ("XMINOR" . 332061) ("XRANGE" . 332090) ("XSTYLE" . 332116) ("XTHICK" . 332298) ("XTICK_GET" . 332321) ("XTICKFORMAT" . 332347) ("XTICKINTERVAL" . 332463) ("XTICKLAYOUT" . 332488) ("XTICKLEN" . 332513) ("XTICKNAME" . 332536) ("XTICKS" . 332559) ("XTICKUNITS" . 332586) ("XTICKV" . 332628) ("XTITLE" . 316100) ("YCHARSIZE" . 331699) ("YGRIDSTYLE" . 332009) ("YMARGIN" . 332038) ("YMINOR" . 332061) ("YRANGE" . 332090) ("YSTYLE" . 332116) ("YTHICK" . 332298) ("YTICK_GET" . 332321) ("YTICKFORMAT" . 332347) ("YTICKINTERVAL" . 332463) ("YTICKLAYOUT" . 332488) ("YTICKLEN" . 332513) ("YTICKNAME" . 332536) ("YTICKS" . 332559) ("YTICKUNITS" . 332586) ("YTICKV" . 332628) ("YTITLE" . 316100) ("ZCHARSIZE" . 331699) ("ZGRIDSTYLE" . 332009) ("ZMARGIN" . 332038) ("ZMINOR" . 332061) ("ZRANGE" . 332090) ("ZSTYLE" . 332116) ("ZTHICK" . 332298) ("ZTICK_GET" . 332321) ("ZTICKFORMAT" . 332347) ("ZTICKINTERVAL" . 332463) ("ZTICKLAYOUT" . 332488) ("ZTICKLEN" . 332513) ("ZTICKNAME" . 332536) ("ZTICKS" . 332559) ("ZTICKUNITS" . 332586) ("ZTICKV" . 332628) ("ZTITLE" . 316100) ("ZVALUE" . 316102)))
113 ("DEVICE" pro nil (system) "%s" (("AVANTGARDE") ("AVERAGE_LINES") ("BINARY") ("BITS_PER_PIXEL") ("BKMAN") ("BOLD") ("BOOK") ("BYPASS_TRANSLATION") ("CLOSE") ("CLOSE_DOCUMENT") ("CLOSE_FILE") ("COLOR") ("COLORS") ("COPY") ("COURIER") ("CURSOR_CROSSHAIR") ("CURSOR_IMAGE") ("CURSOR_MASK") ("CURSOR_ORIGINAL") ("CURSOR_STANDARD") ("CURSOR_XY") ("DECOMPOSED") ("DEMI") ("DEPTH") ("DIRECT_COLOR") ("EJECT") ("ENCAPSULATED") ("ENCODING") ("FILENAME") ("FLOYD") ("FONT_INDEX") ("FONT_SIZE") ("GET_CURRENT_FONT") ("GET_DECOMPOSED") ("GET_FONTNAMES") ("GET_FONTNUM") ("GET_GRAPHICS_FUNCTION") ("GET_PAGESIZE") ("GET_SCREEN_SIZE") ("GET_VISUAL_DEPTH") ("GET_VISUAL_NAME") ("GET_WINDOW_POSITION") ("GET_WRITE_MASK") ("GIN_CHARS") ("GLYPH_CACHE") ("HELVETICA") ("INCHES") ("INDEX_COLOR") ("ISOLATIN1") ("ITALIC") ("LANDSCAPE") ("LANUAGE_LEVEL") ("LIGHT") ("MEDIUM") ("NARROW") ("NCAR") ("OBLIQUE") ("OPTIMIZE") ("ORDERED") ("OUTPUT") ("PALATINO") ("PIXELS") ("PLOT_TO") ("PLOTTER_ON_OFF") ("POLYFILL") ("PORTRAIT") ("PRE_DEPTH") ("PRE_XSIZE") ("PRE_YSIZE") ("PREVIEW") ("PRINT_FILE") ("PSEUDO_COLOR") ("RESET_STRING") ("RESOLUTION") ("RETAIN") ("SCALE_FACTOR") ("SCHOOLBOOK") ("SET_CHARACTER_SIZE") ("SET_COLORMAP") ("SET_COLORS") ("SET_FONT") ("SET_GRAPHICS_FUNCTION") ("SET_RESOLUTION") ("SET_STRING") ("SET_TRANSLATION") ("SET_WRITE_MASK") ("STATIC_COLOR") ("STATIC_GRAY") ("SYMBOL") ("TEK4014") ("TEK4100") ("TEXT") ("THRESHOLD") ("TIMES") ("TRANSLATION") ("TRUE_COLOR") ("TT_FONT") ("TTY") ("VT240") ("VT241") ("VT340") ("VT341") ("WINDOW_STATE") ("XOFFSET") ("XON_XOFF") ("XSIZE") ("YOFFSET") ("YSIZE") ("Z_BUFFERING") ("ZAPFCHANCERY") ("ZAPFDINGBATS"))) 103 ("DENDROGRAM" pro nil (system) "%s, Clusters, Linkdistance, Outverts, Outconn" ("D12.html" ("LEAFNODES" . 1032898)))
114 ("DFPMIN" pro nil (system) "%s, X, Gtol, Fmin, Func, Dfunc" (("DOUBLE") ("EPS") ("ITER") ("ITMAX") ("STEPMAX") ("TOLX"))) 104 ("DEVICE" pro nil (system) "%s" ("D16.html" ) ("devices4.html" ("AVANTGARDE" . 482989) ("AVERAGE_LINES" . 144491) ("BINARY" . 144309) ("BITS_PER_PIXEL" . 144308) ("BKMAN" . 143940) ("BOLD" . 144497) ("BOOK" . 144499) ("BYPASS_TRANSLATION" . 144256) ("CLOSE" . 144712) ("CLOSE_DOCUMENT" . 451438) ("CLOSE_FILE" . 144158) ("CMYK" . 732196) ("COLOR" . 144479) ("COLORS" . 144313) ("COPY" . 143954) ("COURIER" . 144503) ("CURSOR_CROSSHAIR" . 144502) ("CURSOR_IMAGE" . 143934) ("CURSOR_MASK" . 144824) ("CURSOR_ORIGINAL" . 144828) ("CURSOR_STANDARD" . 144830) ("CURSOR_XY" . 143722) ("DECOMPOSED" . 144834) ("DEMI" . 143930) ("DIRECT_COLOR" . 145006) ("EJECT" . 143752) ("ENCAPSULATED" . 143751) ("ENCODING" . 144315) ("FILENAME" . 143748) ("FLOYD" . 144833) ("FONT_INDEX" . 143943) ("FONT_SIZE" . 144522) ("GET_CURRENT_FONT" . 144518) ("GET_DECOMPOSED" . 554681) ("GET_FONTNAMES" . 554610) ("GET_FONTNUM" . 144326) ("GET_GRAPHICS_FUNCTION" . 145007) ("GET_PAGE_SIZE" . 587045) ("GET_SCREEN_SIZE" . 149759) ("GET_VISUAL_DEPTH" . 452299) ("GET_VISUAL_NAME" . 551382) ("GET_WINDOW_POSITION" . 143947) ("GET_WRITE_MASK" . 143949) ("GIN_CHARS" . 143951) ("GLYPH_CACHE" . 499334) ("HELVETICA" . 144524) ("INCHES" . 144166) ("INDEX_COLOR" . 451483) ("ISOLATIN1" . 144322) ("ITALIC" . 143723) ("LANDSCAPE" . 606950) ("LANGUAGE_LEVEL" . 144167) ("LIGHT" . 618160) ("MEDIUM" . 144529) ("NARROW" . 417784) ("NCAR" . 144157) ("OBLIQUE" . 562813) ("OPTIMIZE" . 144405) ("ORDERED" . 143941) ("OUTPUT" . 144538) ("PALATINO" . 144366) ("PIXELS" . 144468) ("PLOT_TO" . 485584) ("PLOTTER_ON_OFF" . 144371) ("POLYFILL" . 144368) ("PORTRAIT" . 144170) ("PRE_DEPTH" . 144169) ("PRE_XSIZE" . 601831) ("PRE_YSIZE" . 597448) ("PREVIEW" . 601886) ("PRINT_FILE" . 556886) ("PSEUDO_COLOR" . 144688) ("RESET_STRING" . 144455) ("RESOLUTION" . 144473) ("RETAIN" . 144472) ("SCALE_FACTOR" . 144547) ("SCHOOLBOOK" . 144551) ("SET_CHARACTER_SIZE" . 486143) ("SET_COLORMAP" . 161043) ("SET_COLORS" . 486222) ("SET_FONT" . 499045) ("SET_GRAPHICS_FUNCTION" . 499029) ("SET_RESOLUTION" . 144941) ("SET_STRING" . 144466) ("SET_TRANSLATION" . 150093) ("SET_WRITE_MASK" . 143957) ("STATIC_COLOR" . 144842) ("STATIC_GRAY" . 144844) ("SYMBOL" . 144554) ("TEK4014" . 144553) ("TEK4100" . 144475) ("TEXT" . 144841) ("THRESHOLD" . 144376) ("TIMES" . 144557) ("TRANSLATION" . 144556) ("TRUE_COLOR" . 144849) ("TT_FONT" . 542703) ("TTY" . 144477) ("VT240" . 144174) ("VT241" . 144174) ("VT340" . 144532) ("VT341" . 144532) ("WINDOW_STATE" . 144546) ("XOFFSET" . 143719) ("XON_XOFF" . 144379) ("XSIZE" . 144540) ("YOFFSET" . 144175) ("YSIZE" . 144568) ("Z_BUFFERING" . 144512) ("ZAPFCHANCERY" . 144513) ("ZAPFDINGBATS" . 144515)))
115 ("DISSOLVE" pro nil (system) "%s, Image" (("ORDER") ("SIZ") ("WAIT") ("X0") ("Y0"))) 105 ("DFPMIN" pro nil (system) "%s, X, Gtol, Fmin, Func, Dfunc" ("D17.html" ("DOUBLE" . 50547) ("EPS" . 50550) ("ITER" . 50553) ("ITMAX" . 50556) ("STEPMAX" . 50559) ("TOLX" . 50562)))
116 ("DLM_LOAD" pro nil (system) "%s, DLMNameStr1 [, DLMNameStr2,..., DLMNameStrn]" nil) 106 ("DISSOLVE" pro nil (system) "%s, Image" ("D28.html" ("DELAY" . 757174) ("ORDER" . 757177) ("SIZ" . 757180) ("X0" . 757184) ("Y0" . 757184)))
117 ("DLM_REGISTER" pro nil (system) "%s, DLMDefFilePath1 [, DLMDefFilePath2, ..., DLMDefFilePathn]" nil) 107 ("DLM_LOAD" pro nil (system) "%s, DLMNameStr1 [, DLMNameStr2,..., DLMNameStrn]" ("D31.html"))
118 ("DO_APPLE_SCRIPT" pro nil (system) "%s, Script" (("AG_STRING") ("RESULT"))) 108 ("DLM_REGISTER" pro nil (system) "%s, DLMDefFilePath1 [, DLMDefFilePath2, ..., DLMDefFilePathn]" ("D32.html"))
119 ("DOC_LIBRARY" pro nil (system) "%s [, Name]" (("DIRECTORY") ("FILE") ("MULTI") ("OUTPUTS") ("PATH") ("PRINT"))) 109 ("DOC_LIBRARY" pro nil (system) "%s [, Name]" ("D33.html" ("DIRECTORY" . 1003439) ("MULTI" . 1003447) ("PRINT" . 42998)))
120 ("DRAW_ROI" pro nil (system) "%s, oROI" (("CLIP") ("COLOR") ("DATA") ("DEVICE") ("LINE_FILL") ("LINESTYLE") ("NOCLIP") ("NORMAL") ("ORIENTATION") ("PSYM") ("SPACING") ("SYMSIZE") ("T3D") ("THICK"))) 110 ("DRAW_ROI" pro nil (system) "%s, oROI" ("D35.html" ("LINE_FILL" . 986287) ("SPACING" . 986289)) ("graphkeyw2.html" ("CLIP" . 315949) ("COLOR" . 315952) ("DATA" . 315961) ("DEVICE" . 315977) ("LINESTYLE" . 331728) ("NOCLIP" . 323508) ("NORMAL" . 315963) ("ORIENTATION" . 315964) ("PSYM" . 316038) ("SYMSIZE" . 316061) ("T3D" . 315956) ("THICK" . 316006)))
121 ("EFONT" pro nil (system) "%s [, Init_Font]" (("BLOCK") ("GROUP"))) 111 ("EFONT" pro nil (system) "%s [, Init_Font]" ("E.html" ("BLOCK" . 921048) ("GROUP" . 988298)))
122 ("EMPTY" pro nil (system) "%s" nil) 112 ("EMPTY" pro nil (system) "%s" ("E5.html"))
123 ("ENABLE_SYSRTN" pro nil (system) "%s [, Routines]" (("DISABLE") ("EXCLUSIVE") ("FUNCTIONS"))) 113 ("ENABLE_SYSRTN" pro nil (system) "%s [, Routines]" ("E6.html" ("DISABLE" . 986251) ("EXCLUSIVE" . 986253) ("FUNCTIONS" . 986256)))
124 ("ERASE" pro nil (system) "%s [, Background_Color]" (("CHANNEL") ("COLOR"))) 114 ("ERASE" pro nil (system) "%s [, Background_Color]" ("E9.html" ("CHANNEL" . 676712) ("COLOR" . 676714)))
125 ("ERRPLOT" pro nil (system) "%s, [ X, ] Low, High" (("WIDTH"))) 115 ("ERRPLOT" pro nil (system) "%s, [ X, ] Low, High" ("E14.html" ("WIDTH" . 757212)))
126 ("EXIT" pro nil (system) "%s" (("NO_CONFIRM") ("STATUS"))) 116 ("EXIT" pro nil (system) "%s" ("E16.html" ("NO_CONFIRM" . 126978) ("STATUS" . 126983)))
127 ("EXPAND" pro nil (system) "%s, A, Nx, Ny, Result" (("FILLVAL") ("MAXVAL"))) 117 ("EXPAND" pro nil (system) "%s, A, Nx, Ny, Result" ("E18.html" ("FILLVAL" . 986579) ("MAXVAL" . 757253)))
128 ("FILE_CHMOD" pro nil (system) "%s, File [, Mode]" (("A_EXECUTE") ("A_READ") ("A_WRITE") ("G_EXECTUE") ("G_READ") ("G_WRITE") ("NOEXPAND_PATH") ("O_EXECTUE") ("O_READ") ("O_WRITE") ("SETGID") ("SETUID") ("STICKY_BIT") ("U_EXECTUE") ("U_READ") ("U_WRITE"))) 118 ("FILE_CHMOD" pro nil (system) "%s, File [, Mode]" ("F6.html" ("A_EXECUTE" . 882191) ("A_READ" . 882193) ("A_WRITE" . 882195) ("G_EXECUTE" . 882197) ("G_READ" . 882199) ("G_WRITE" . 882201) ("NOEXPAND_PATH" . 882956) ("O_EXECUTE" . 882203) ("O_READ" . 882205) ("O_WRITE" . 882207) ("SETGID" . 900602) ("SETUID" . 900604) ("STICKY_BIT" . 900606) ("U_EXECUTE" . 882209) ("U_READ" . 882211) ("U_WRITE" . 882213)))
129 ("FILE_DELETE" pro nil (system) "%s, File1 [,... FileN]" (("NOEXPAND_PATH") ("QUIET"))) 119 ("FILE_COPY" pro nil (system) "%s, SourcePath, DestPath" ("F7.html" ("ALLOW_SAME" . 906390) ("COPY_NAMED_PIPE" . 906392) ("COPY_SYMLINK" . 906394) ("FORCE" . 906396) ("NOEXPAND_PATH" . 906399) ("OVERWRITE" . 906404) ("RECURSIVE" . 906406) ("REQUIRE_DIRECTORY" . 906412) ("VERBOSE" . 906414)))
130 ("FILE_MKDIR" pro nil (system) "%s, File1 [,... FileN]" (("NOEXPAND_PATH"))) 120 ("FILE_DELETE" pro nil (system) "%s, File1 [,... Filen]" ("F8.html" ("ALLOW_NONEXISTENT" . 882944) ("NOEXPAND_PATH" . 906788) ("QUIET" . 906823) ("RECURSIVE" . 892369) ("VERBOSE" . 906799)))
131 ("FLICK" pro nil (system) "%s, A, B [, Rate]" nil) 121 ("FILE_LINK" pro nil (system) "%s, SourcePath, DestPath" ("F13.html" ("ALLOW_SAME" . 906533) ("HARDLINK" . 906535) ("NOEXPAND_PATH" . 906537) ("VERBOSE" . 906542)))
132 ("FLOW3" pro nil (system) "%s, Vx, Vy, Vz" (("ARROWSIZE") ("BLOB") ("LEN") ("NSTEPS") ("NVECS") ("SX") ("SY") ("SZ"))) 122 ("FILE_MKDIR" pro nil (system) "%s, File1 [,... FileN]" ("F14.html" ("NOEXPAND_PATH" . 882989)))
133 ("FLUSH" pro nil (system) "%s, Unit1, ..., Unitn" nil) 123 ("FILE_MOVE" pro nil (system) "%s, SourcePath, DestPath" ("F15.html" ("ALLOW_SAME" . 906590) ("NOEXPAND_PATH" . 906592) ("OVERWRITE" . 906597) ("REQUIRE_DIRECTORY" . 906599) ("VERBOSE" . 906601)))
134 ("FREE_LUN" pro nil (system) "%s [, Unit1, ..., Unitn]" (("EXIT_STATUS") ("FORCE"))) 124 ("FLICK" pro nil (system) "%s, A, B [, Rate]" ("F25.html"))
135 ("FUNCT" pro nil (system) "%s, X, A, F [, Pder]" nil) 125 ("FLOW3" pro nil (system) "%s, Vx, Vy, Vz" ("F28.html" ("ARROWSIZE" . 757304) ("BLOB" . 757307) ("LEN" . 757310) ("NSTEPS" . 757313) ("NVECS" . 757316) ("SX" . 757321) ("SY" . 757321) ("SZ" . 757321)))
136 ("GAMMA_CT" pro nil (system) "%s, Gamma" (("CURRENT") ("INTENSITY"))) 126 ("FLUSH" pro nil (system) "%s, Unit1, ..., Unitn" ("F30.html"))
137 ("GET_LUN" pro nil (system) "%s, Unit" nil) 127 ("FREE_LUN" pro nil (system) "%s [, Unit1, ..., Unitn]" ("F34.html" ("EXIT_STATUS" . 875865) ("FORCE" . 875880)))
138 ("GRID_INPUT" pro nil (system) "%s, X, Y, F, X1, Y1, F1" (("DEGREES") ("DUPLICATES") ("EPSILON") ("EXCLUDE") ("POLAR") ("SPHERE"))) 128 ("FUNCT" pro nil (system) "%s, X, A, F [, Pder]" ("F37.html"))
139 ("H_EQ_CT" pro nil (system) "%s [, Image]" nil) 129 ("GAMMA_CT" pro nil (system) "%s, Gamma" ("G2.html" ("CURRENT" . 759174) ("INTENSITY" . 759177)))
140 ("H_EQ_INT" pro nil (system) "%s [, Image]" nil) 130 ("GET_LUN" pro nil (system) "%s, Unit" ("G10.html"))
141 ("HANDLE_FREE" pro nil (system) "%s, ID" nil) 131 ("GRID_INPUT" pro nil (system) "%s, X, Y, F, X1, Y1, F1" ("G14.html" ("DEGREES" . 877045) ("DUPLICATES" . 877047) ("EPSILON" . 877086) ("EXCLUDE" . 877088) ("POLAR" . 877090) ("SPHERE" . 877092)))
142 ("HANDLE_MOVE" pro nil (system) "%s, Static_ID, Move_ID" nil) 132 ("H5_CLOSE" pro nil (system) "%s" ("HDF5-routines10.html"))
143 ("HANDLE_VALUE" pro nil (system) "%s, ID, Value" nil) 133 ("H5_OPEN" pro nil (system) "%s" ("HDF5-routines12.html"))
144 ("HDF_AN_END" pro nil (system) "%s, an_id" nil) 134 ("H5A_CLOSE" pro nil (system) "%s, Attribute_id" ("HDF5-routines14.html"))
145 ("HDF_AN_ENDACCESS" pro nil (system) "%s, ann_id" nil) 135 ("H5D_CLOSE" pro nil (system) "%s, Dataset_id" ("HDF5-routines22.html"))
146 ("HDF_CLOSE" pro nil (system) "%s, FileHandle" nil) 136 ("H5F_CLOSE" pro nil (system) "%s, File_id" ("HDF5-routines28.html"))
147 ("HDF_DELDD" pro nil (system) "%s, FileHandle, Tag, Ref" nil) 137 ("H5G_CLOSE" pro nil (system) "%s, Group_id" ("HDF5-routines31.html"))
148 ("HDF_DF24_ADDIMAGE" pro nil (system) "%s, Filename, Image" (("FORCE_BASELINE") ("JPEG") ("QUALITY") ("RLE"))) 138 ("H5S_CLOSE" pro nil (system) "%s, Dataspace_id" ("HDF5-routines41.html"))
149 ("HDF_DF24_GETIMAGE" pro nil (system) "%s, Filename, Image" (("LINE") ("PIXEL") ("PLANE"))) 139 ("H5S_OFFSET_SIMPLE" pro nil (system) "%s, Dataspace_id, Offset" ("HDF5-routines55.html"))
150 ("HDF_DF24_GETINFO" pro nil (system) "%s, Filename, Width, Height, Interlace" nil) 140 ("H5S_SELECT_ALL" pro nil (system) "%s, Dataspace_id" ("HDF5-routines56.html"))
151 ("HDF_DF24_READREF" pro nil (system) "%s, Filename, Refno" nil) 141 ("H5S_SELECT_ELEMENTS" pro nil (system) "%s, Dataspace_id, Coordinates" ("HDF5-routines57.html" ("RESET" . 1149840)))
152 ("HDF_DF24_RESTART" pro nil (system) "%s" nil) 142 ("H5S_SELECT_HYPERSLAB" pro nil (system) "%s, Dataspace_id, Start, Count" ("HDF5-routines58.html" ("BLOCK" . 1149884) ("RESET" . 1149886) ("STRIDE" . 1149888)))
153 ("HDF_DFAN_ADDFDS" pro nil (system) "%s, Filename, Description" nil) 143 ("H5S_SELECT_NONE" pro nil (system) "%s, Dataspace_id" ("HDF5-routines59.html"))
154 ("HDF_DFAN_ADDFID" pro nil (system) "%s, Filename, Label" nil) 144 ("H5T_CLOSE" pro nil (system) "%s, Datatype_id" ("HDF5-routines61.html"))
155 ("HDF_DFAN_GETDESC" pro nil (system) "%s, Filename, Tag, Ref, Description" (("STRING"))) 145 ("H_EQ_CT" pro nil (system) "%s [, Image]" ("H.html"))
156 ("HDF_DFAN_GETFDS" pro nil (system) "%s, Filename, Description" (("FIRST") ("STRING"))) 146 ("H_EQ_INT" pro nil (system) "%s [, Image]" ("H2.html"))
157 ("HDF_DFAN_GETFID" pro nil (system) "%s, Filename, Label" (("FIRST"))) 147 ("HDF_AN_END" pro nil (system) "%s, Annotation_id" ("HDF-routines13.html"))
158 ("HDF_DFAN_GETLABEL" pro nil (system) "%s, Filename, Tag, Ref, Label" nil) 148 ("HDF_AN_ENDACCESS" pro nil (system) "%s, Annotation_id" ("HDF-routines14.html"))
159 ("HDF_DFAN_PUTDESC" pro nil (system) "%s, Filename, Tag, Ref, Description" nil) 149 ("HDF_CLOSE" pro nil (system) "%s, FileHandle" ("HDF-routines25.html"))
160 ("HDF_DFAN_PUTLABEL" pro nil (system) "%s, Filename, Tag, Ref, Label" nil) 150 ("HDF_DELDD" pro nil (system) "%s, FileHandle, Tag, Ref" ("HDF-routines26.html"))
161 ("HDF_DFP_ADDPAL" pro nil (system) "%s, Filename, Palette" nil) 151 ("HDF_DF24_ADDIMAGE" pro nil (system) "%s, Filename, Image" ("HDF-routines27.html" ("FORCE_BASELINE" . 1025840) ("JPEG" . 1025843) ("QUALITY" . 1025857) ("RLE" . 1025860)))
162 ("HDF_DFP_GETPAL" pro nil (system) "%s, Filename, Palette" nil) 152 ("HDF_DF24_GETIMAGE" pro nil (system) "%s, Filename, Image" ("HDF-routines28.html" ("LINE" . 996986) ("PIXEL" . 996989) ("PLANE" . 996992)))
163 ("HDF_DFP_PUTPAL" pro nil (system) "%s, Filename, Palette" (("DELETE") ("OVERWRITE"))) 153 ("HDF_DF24_GETINFO" pro nil (system) "%s, Filename, Width, Height, Interlace" ("HDF-routines29.html"))
164 ("HDF_DFP_READREF" pro nil (system) "%s, Filename, Refno" nil) 154 ("HDF_DF24_READREF" pro nil (system) "%s, Filename, Reference_number" ("HDF-routines32.html"))
165 ("HDF_DFP_RESTART" pro nil (system) "%s" nil) 155 ("HDF_DF24_RESTART" pro nil (system) "%s" ("HDF-routines33.html"))
166 ("HDF_DFP_WRITEREF" pro nil (system) "%s, Filename, Refno" nil) 156 ("HDF_DFAN_ADDFDS" pro nil (system) "%s, Filename, Description" ("HDF-routines34.html"))
167 ("HDF_DFR8_ADDIMAGE" pro nil (system) "%s, Filename, Image" (("FORCE_BASELINE") ("IMCOMP") ("JPEG") ("PALETTE") ("QUALITY") ("RLE"))) 157 ("HDF_DFAN_ADDFID" pro nil (system) "%s, Filename, Label" ("HDF-routines35.html"))
168 ("HDF_DFR8_GETIMAGE" pro nil (system) "%s, Filename, Image [, Palette]" nil) 158 ("HDF_DFAN_GETDESC" pro nil (system) "%s, Filename, Tag, Ref, Description" ("HDF-routines36.html" ("STRING" . 997205)))
169 ("HDF_DFR8_GETINFO" pro nil (system) "%s, Filename, Width, Height, Has_Palette" nil) 159 ("HDF_DFAN_GETFDS" pro nil (system) "%s, Filename, Description" ("HDF-routines37.html" ("FIRST" . 997250) ("STRING" . 997253)))
170 ("HDF_DFR8_PUTIMAGE" pro nil (system) "%s, Filename, Image" (("FORCE_BASELINE") ("IMCOMP") ("JPEG") ("PALETTE") ("QUALITY") ("RLE"))) 160 ("HDF_DFAN_GETFID" pro nil (system) "%s, Filename, Label" ("HDF-routines38.html" ("FIRST" . 997305)))
171 ("HDF_DFR8_READREF" pro nil (system) "%s, Filename, Refno" nil) 161 ("HDF_DFAN_GETLABEL" pro nil (system) "%s, Filename, Tag, Ref, Label" ("HDF-routines39.html"))
172 ("HDF_DFR8_RESTART" pro nil (system) "%s" nil) 162 ("HDF_DFAN_PUTDESC" pro nil (system) "%s, Filename, Tag, Ref, Description" ("HDF-routines42.html"))
173 ("HDF_DFR8_SETPALETTE" pro nil (system) "%s, Palette" nil) 163 ("HDF_DFAN_PUTLABEL" pro nil (system) "%s, Filename, Tag, Ref, Label" ("HDF-routines43.html"))
174 ("HDF_DFSD_ADDDATA" pro nil (system) "%s, Filename, Data" (("OVERWRITE") ("SET_DIM") ("SET_TYPE"))) 164 ("HDF_DFP_ADDPAL" pro nil (system) "%s, Filename, Palette" ("HDF-routines44.html"))
175 ("HDF_DFSD_DIMGET" pro nil (system) "%s, Dimension" (("FORMAT") ("LABEL") ("SCALE") ("UNIT"))) 165 ("HDF_DFP_GETPAL" pro nil (system) "%s, Filename, Palette" ("HDF-routines45.html"))
176 ("HDF_DFSD_DIMSET" pro nil (system) "%s, Dimension" (("FORMAT") ("LABEL") ("SCALE") ("UNIT"))) 166 ("HDF_DFP_PUTPAL" pro nil (system) "%s, Filename, Palette" ("HDF-routines48.html" ("DELETE" . 1016492) ("OVERWRITE" . 997545)))
177 ("HDF_DFSD_ENDSLICE" pro nil (system) "%s" nil) 167 ("HDF_DFP_READREF" pro nil (system) "%s, Filename, Reference_number" ("HDF-routines49.html"))
178 ("HDF_DFSD_GETDATA" pro nil (system) "%s, Filename, Data" (("GET_DIMS") ("GET_TYPE"))) 168 ("HDF_DFP_RESTART" pro nil (system) "%s" ("HDF-routines50.html"))
179 ("HDF_DFSD_GETINFO" pro nil (system) "%s, Filename" (("CALDATA") ("COORDSYS") ("DIMS") ("FORMAT") ("LABEL") ("LASTREF") ("NSDS") ("RANGE") ("TYPE") ("UNIT"))) 169 ("HDF_DFP_WRITEREF" pro nil (system) "%s, Filename, Reference_number" ("HDF-routines51.html"))
180 ("HDF_DFSD_GETSLICE" pro nil (system) "%s, Filename, Data" (("COUNT") ("OFFSET"))) 170 ("HDF_DFR8_ADDIMAGE" pro nil (system) "%s, Filename, Image" ("HDF-routines52.html" ("FORCE_BASELINE" . 997601) ("IMCOMP" . 1025489) ("JPEG" . 1025496) ("PALETTE" . 997604) ("QUALITY" . 997612) ("RLE" . 1025510)))
181 ("HDF_DFSD_PUTSLICE" pro nil (system) "%s, Data" (("COUNT"))) 171 ("HDF_DFR8_GETIMAGE" pro nil (system) "%s, Filename, Image [, Palette]" ("HDF-routines53.html"))
182 ("HDF_DFSD_READREF" pro nil (system) "%s, Filename, Refno" nil) 172 ("HDF_DFR8_GETINFO" pro nil (system) "%s, Filename, Width, Height, Has_Palette" ("HDF-routines54.html"))
183 ("HDF_DFSD_SETINFO" pro nil (system) "%s" (("BYTE") ("CALDATA") ("CLEAR") ("COORDSYS") ("DIMS") ("DOUBLE") ("FLOAT") ("FORMAT") ("INT") ("LABEL") ("LEN_COORDSYS") ("LEN_FORMAT") ("LEN_LABEL") ("LEN_UNIT") ("LONG") ("RANGE") ("RESTART") ("UNIT"))) 173 ("HDF_DFR8_PUTIMAGE" pro nil (system) "%s, Filename, Image" ("HDF-routines57.html" ("FORCE_BASELINE" . 1025782) ("IMCOMP" . 1025788) ("JPEG" . 1025785) ("PALETTE" . 1025813) ("QUALITY" . 1025821) ("RLE" . 1025802)))
184 ("HDF_DFSD_STARTSLICE" pro nil (system) "%s, Filename" nil) 174 ("HDF_DFR8_READREF" pro nil (system) "%s, Filename, Reference_number" ("HDF-routines58.html"))
185 ("HDF_DUPDD" pro nil (system) "%s, FileHandle, NewTag, NewRef, OldTag, OldRef" nil) 175 ("HDF_DFR8_RESTART" pro nil (system) "%s" ("HDF-routines59.html"))
186 ("HDF_GR_END" pro nil (system) "%s, gr_id" nil) 176 ("HDF_DFR8_SETPALETTE" pro nil (system) "%s, Palette" ("HDF-routines60.html"))
187 ("HDF_GR_ENDACCESS" pro nil (system) "%s, ri_id" nil) 177 ("HDF_DUPDD" pro nil (system) "%s, FileHandle, NewTag, NewRef, OldTag, OldRef" ("HDF-routines61.html"))
188 ("HDF_LIB_INFO" pro nil (system) "%s, [FileHandle]" (("MAJOR") ("MINOR") ("RELEASE") ("VERSION"))) 178 ("HDF_GR_END" pro nil (system) "%s, gr_id" ("HDF-routines65.html"))
189 ("HDF_SD_ADDDATA" pro nil (system) "%s, SDS_ID, Data" (("COUNT") ("NOREVERSE") ("START") ("STRIDE"))) 179 ("HDF_GR_ENDACCESS" pro nil (system) "%s, ri_id" ("HDF-routines66.html"))
190 ("HDF_SD_ATTRINFO" pro nil (system) "%s, S_ID, Attr_Index" (("COUNT") ("DATA") ("HDF_TYPE") ("NAME") ("TYPE"))) 180 ("HDF_LIB_INFO" pro nil (system) "%s, [FileHandle]" ("HDF-routines92.html" ("MAJOR" . 1031740) ("MINOR" . 1031746) ("RELEASE" . 1031752) ("VERSION" . 1031973)))
191 ("HDF_SD_ATTRSET" pro nil (system) "%s, S_ID, Attr_Name, Values [, Count]" (("BYTE") ("DFNT_CHAR") ("DFNT_FLOAT32") ("DFNT_FLOAT64") ("DFNT_INT16") ("DFNT_INT32") ("DFNT_INT8") ("DFNT_UINT16") ("DFNT_UINT32") ("DFNT_UINT8") ("DOUBLE") ("FLOAT") ("INT") ("LONG") ("SHORT") ("STRING"))) 181 ("HDF_SD_ADDDATA" pro nil (system) "%s, SDdataset_id, Data" ("HDF-routines97.html" ("COUNT" . 1053602) ("NOREVERSE" . 1053605) ("START" . 1053608) ("STRIDE" . 1053611)))
192 ("HDF_SD_DIMGET" pro nil (system) "%s, Dim_ID" (("COMPATIBILITY") ("COUNT") ("FORMAT") ("LABEL") ("NAME") ("NATTR") ("SCALE") ("TYPE") ("UNIT"))) 182 ("HDF_SD_ATTRINFO" pro nil (system) "%s, SD_id, Attr_Index" ("HDF-routines99.html" ("COUNT" . 1053698) ("DATA" . 1053701) ("HDF_TYPE" . 1053704) ("NAME" . 1053707) ("TYPE" . 1053710)))
193 ("HDF_SD_DIMSET" pro nil (system) "%s, Dim_ID" (("BW_INCOMP") ("FORMAT") ("LABEL") ("NAME") ("SCALE") ("UNIT"))) 183 ("HDF_SD_ATTRSET" pro nil (system) "%s, SD_id, Attr_Name, Values [, Count]" ("HDF-routines100.html" ("BYTE" . 1053770) ("DFNT_CHAR" . 1053773) ("DFNT_FLOAT32" . 1053776) ("DFNT_FLOAT64" . 1053779) ("DFNT_INT16" . 1053785) ("DFNT_INT32" . 1053788) ("DFNT_INT8" . 1053782) ("DFNT_UINT16" . 1053794) ("DFNT_UINT32" . 1053797) ("DFNT_UINT8" . 1053791) ("DOUBLE" . 1053800) ("FLOAT" . 1053803) ("INT" . 1053806) ("LONG" . 1053809) ("SHORT" . 1053812) ("STRING" . 1053815)))
194 ("HDF_SD_END" pro nil (system) "%s, SD_ID" nil) 184 ("HDF_SD_DIMGET" pro nil (system) "%s, Dim_ID" ("HDF-routines102.html" ("COMPATIBILITY" . 1053946) ("COUNT" . 1053944) ("FORMAT" . 1053948) ("LABEL" . 1053950) ("NAME" . 1053952) ("NATTR" . 1053954) ("SCALE" . 1053956) ("TYPE" . 1053958) ("UNIT" . 1053960)))
195 ("HDF_SD_ENDACCESS" pro nil (system) "%s, SD_ID" nil) 185 ("HDF_SD_DIMSET" pro nil (system) "%s, Dim_ID" ("HDF-routines104.html" ("BW_INCOMP" . 1054021) ("FORMAT" . 1054025) ("LABEL" . 1054027) ("NAME" . 1054029) ("SCALE" . 1054031) ("UNIT" . 1054033)))
196 ("HDF_SD_FILEINFO" pro nil (system) "%s, SD_ID, Datasets, Attributes" nil) 186 ("HDF_SD_END" pro nil (system) "%s, SDinterface_id" ("HDF-routines105.html"))
197 ("HDF_SD_GETDATA" pro nil (system) "%s, SDS_ID, Data" (("COUNT") ("NOREVERSE") ("START") ("STRIDE"))) 187 ("HDF_SD_ENDACCESS" pro nil (system) "%s, SDinterface_id" ("HDF-routines106.html"))
198 ("HDF_SD_GETINFO" pro nil (system) "%s, SDS_ID" (("CALDATA") ("COORDSYS") ("DIMS") ("FILL") ("FORMAT") ("HDF_TYPE") ("LABEL") ("NAME") ("NATTS") ("NDIMS") ("NOREVERSE") ("RANGE") ("TYPE") ("UNIT"))) 188 ("HDF_SD_FILEINFO" pro nil (system) "%s, SDinterface_id, Datasets, Attributes" ("HDF-routines107.html"))
199 ("HDF_SD_SETCOMPRESS" pro nil (system) "%s, SDS_ID, comptype" (("EFFORT"))) 189 ("HDF_SD_GETDATA" pro nil (system) "%s, SDdataset_id, Data" ("HDF-routines108.html" ("COUNT" . 1054195) ("NOREVERSE" . 1054198) ("START" . 1054201) ("STRIDE" . 1054204)))
200 ("HDF_SD_SETEXTFILE" pro nil (system) "%s, SDS_ID, Filename" (("OFFSET"))) 190 ("HDF_SD_GETINFO" pro nil (system) "%s, SDdataset_id" ("HDF-routines109.html" ("CALDATA" . 1054234) ("COORDSYS" . 1054238) ("DIMS" . 1054241) ("FILL" . 1054244) ("FORMAT" . 1054247) ("HDF_TYPE" . 1054250) ("LABEL" . 1054253) ("NAME" . 1054256) ("NATTS" . 1054259) ("NDIMS" . 1054262) ("NOREVERSE" . 1054265) ("RANGE" . 1054268) ("TYPE" . 1054271) ("UNIT" . 1054274)))
201 ("HDF_SD_SETINFO" pro nil (system) "%s, SDS_ID" (("CALDATA") ("COORDSYS") ("FILL") ("FORMAT") ("LABEL") ("RANGE") ("UNIT"))) 191 ("HDF_SD_SETCOMPRESS" pro nil (system) "%s, SDdataset_id, comptype" ("HDF-routines115.html" ("EFFORT" . 1074118)))
202 ("HDF_UNPACKDATA" pro nil (system) "%s, packeddata, data1 [, data2 [, data3 [, data4 [, data5 [, data6 [, data7 [, data8]]]]]]]" (("HDF_ORDER") ("HDF_TYPE") ("NREC"))) 192 ("HDF_SD_SETEXTFILE" pro nil (system) "%s, SDdataset_id, Filename" ("HDF-routines116.html" ("OFFSET" . 1054488)))
203 ("HDF_VD_ATTRINFO" pro nil (system) "%s, VData, FieldID, AttrID, Values" (("COUNT") ("DATA") ("HDF_TYPE") ("NAME") ("TYPE"))) 193 ("HDF_SD_SETINFO" pro nil (system) "%s, SDdataset_id" ("HDF-routines117.html" ("CALDATA" . 1205515) ("COORDSYS" . 1205576) ("FILL" . 1054536) ("FORMAT" . 1054539) ("LABEL" . 1054542) ("RANGE" . 1054545) ("UNIT" . 1054548)))
204 ("HDF_VD_ATTRSET" pro nil (system) "%s, VData, FieldID, Attr_Name, Values [, Count]" (("BYTE") ("DFNT_CHAR8") ("DFNT_FLOAT32") ("DFNT_FLOAT64") ("DFNT_INT16") ("DFNT_INT32") ("DFNT_INT8") ("DFNT_UCHAR8") ("DFNT_UINT16") ("DFNT_UINT32") ("DFNT_UINT8") ("DOUBLE") ("FLOAT") ("INT") ("LONG") ("SHORT") ("STRING") ("UINT") ("ULONG"))) 194 ("HDF_UNPACKDATA" pro nil (system) "%s, packeddata, data1 [, data2 [, data3 [, data4 [, data5 [, data6 [, data7 [, data8]]]]]]]" ("HDF-routines119.html" ("HDF_ORDER" . 1042997) ("HDF_TYPE" . 1043000) ("NREC" . 1043003)))
205 ("HDF_VD_DETACH" pro nil (system) "%s, VData" nil) 195 ("HDF_VD_ATTRINFO" pro nil (system) "%s, VData, FieldID, AttrID" ("HDF-routines122.html" ("COUNT" . 1109959) ("DATA" . 1109961) ("HDF_TYPE" . 1109963) ("NAME" . 1109965) ("TYPE" . 1109967)))
206 ("HDF_VD_FDEFINE" pro nil (system) "%s, VData, Fieldname" (("BYTE") ("DLONG") ("DOUBLE") ("DULONG") ("FLOAT") ("INT") ("LONG") ("ORDER") ("UINT") ("ULONG"))) 196 ("HDF_VD_ATTRSET" pro nil (system) "%s, VData, FieldID, Attr_Name, Values [, Count]" ("HDF-routines123.html" ("BYTE" . 1110005) ("DFNT_CHAR88" . 1110007) ("DFNT_FLOAT32" . 1110009) ("DFNT_FLOAT64" . 1110011) ("DFNT_INT16" . 1110015) ("DFNT_INT32" . 1110017) ("DFNT_INT8" . 1110013) ("DFNT_UCHAR88" . 1110019) ("DFNT_UINT16" . 1110023) ("DFNT_UINT32" . 1110025) ("DFNT_UINT8" . 1110021) ("DOUBLE" . 1110027) ("FLOAT" . 1110029) ("INT" . 1110031) ("LONG" . 1110033) ("SHORT" . 1110035) ("STRING" . 1110037) ("UINT" . 1110039) ("ULONG" . 1110041)))
207 ("HDF_VD_GET" pro nil (system) "%s, VData" (("CLASS") ("COUNT") ("FIELDS") ("INTERLACE") ("NAME") ("NFIELDS") ("REF") ("SIZE") ("TAG"))) 197 ("HDF_VD_DETACH" pro nil (system) "%s, VData" ("HDF-routines124.html"))
208 ("HDF_VD_GETINFO" pro nil (system) "%s, VData, Index" (("NAME") ("ORDER") ("SIZE") ("TYPE"))) 198 ("HDF_VD_FDEFINE" pro nil (system) "%s, VData, Fieldname" ("HDF-routines125.html" ("BYTE" . 999536) ("DOUBLE" . 999539) ("FLOAT" . 999542) ("INT" . 999545) ("LONG" . 999548) ("ORDER" . 999551)))
209 ("HDF_VD_INSERT" pro nil (system) "%s, VGroup, VData(or Vgroup)" (("POSITION"))) 199 ("HDF_VD_GET" pro nil (system) "%s, VData" ("HDF-routines128.html" ("CLASS" . 999597) ("COUNT" . 999600) ("FIELDS" . 999603) ("INTERLACE" . 999606) ("NAME" . 999609) ("NFIELDS" . 999612) ("REF" . 999615) ("SIZE" . 999618) ("TAG" . 999621)))
210 ("HDF_VD_SEEK" pro nil (system) "%s, VData, Record" nil) 200 ("HDF_VD_GETINFO" pro nil (system) "%s, VData, Index" ("HDF-routines130.html" ("NAME" . 999666) ("ORDER" . 999669) ("SIZE" . 999672) ("TYPE" . 999675)))
211 ("HDF_VD_SETINFO" pro nil (system) "%s, VData" (("CLASS") ("FULL_INTERLACE") ("NAME") ("NO_INTERLACE"))) 201 ("HDF_VD_INSERT" pro nil (system) "%s, VGroup, VData(or Vgroup)" ("HDF-routines131.html" ("POSITION" . 1141285)))
212 ("HDF_VD_WRITE" pro nil (system) "%s, VData, Fields, Data" (("FULL_INTERLACE") ("NO_INTERLACE") ("NRECORDS"))) 202 ("HDF_VD_SEEK" pro nil (system) "%s, VData, Record" ("HDF-routines138.html"))
213 ("HDF_VG_ADDTR" pro nil (system) "%s, VGroup, Tag, Ref" nil) 203 ("HDF_VD_SETINFO" pro nil (system) "%s, VData" ("HDF-routines139.html" ("CLASS" . 999834) ("FULL_INTERLACE" . 999837) ("NAME" . 999840) ("NO_INTERLACE" . 999843)))
214 ("HDF_VG_DETACH" pro nil (system) "%s, VGroup" nil) 204 ("HDF_VD_WRITE" pro nil (system) "%s, VData, Fields, Data" ("HDF-routines140.html" ("FULL_INTERLACE" . 999876) ("NO_INTERLACE" . 999879) ("NRECORDS" . 999882)))
215 ("HDF_VG_GETINFO" pro nil (system) "%s, VGroup" (("CLASS") ("NAME") ("NENTRIES") ("REF") ("TAG"))) 205 ("HDF_VG_ADDTR" pro nil (system) "%s, VGroup, Tag, Ref" ("HDF-routines141.html"))
216 ("HDF_VG_GETTR" pro nil (system) "%s, VGroup, Index, Tags, Refs" nil) 206 ("HDF_VG_DETACH" pro nil (system) "%s, VGroup" ("HDF-routines143.html"))
217 ("HDF_VG_GETTRS" pro nil (system) "%s, VGroup, Tags, Refs" (("MAXSIZE"))) 207 ("HDF_VG_GETINFO" pro nil (system) "%s, VGroup" ("HDF-routines145.html" ("CLASS" . 1000002) ("NAME" . 1000005) ("NENTRIES" . 1000008) ("REF" . 1109613) ("TAG" . 1109591)))
218 ("HDF_VG_INSERT" pro nil (system) "%s, VGroup, VData(or Vgroup)" (("POSITION"))) 208 ("HDF_VG_GETTR" pro nil (system) "%s, VGroup, Index, Tags, Refs" ("HDF-routines147.html"))
219 ("HDF_VG_SETINFO" pro nil (system) "%s, VGroup" (("CLASS") ("NAME"))) 209 ("HDF_VG_GETTRS" pro nil (system) "%s, VGroup, Tags, Refs" ("HDF-routines148.html" ("MAXSIZE" . 1000064)))
220 ("HEAP_FREE" pro nil (system) "%s, Var" (("OBJ") ("PTR") ("VERBOSE"))) 210 ("HDF_VG_INSERT" pro nil (system) "%s, VGroup, VData(or Vgroup)" ("HDF-routines150.html" ("POSITION" . 1234250)))
221 ("HEAP_GC" pro nil (system) "%s" (("OBJ") ("PTR") ("VERBOSE"))) 211 ("HDF_VG_SETINFO" pro nil (system) "%s, VGroup" ("HDF-routines155.html" ("CLASSNAME" . 1000182) ("NAME" . 1000184)))
222 ("HELP" pro nil (system) "%s, Expression1, ..., Expressionn" (("ALL_KEYS") ("BREAKPOINTS") ("BRIEF") ("CALLS") ("DEVICE") ("DLM") ("FILES") ("FULL") ("FUNCTIONS") ("HEAP_VARIABLES") ("KEYS") ("LAST_MESSAGE") ("MEMORY") ("MESSAGES") ("NAMES") ("OBJECTS") ("OUTPUT") ("PROCEDURES") ("RECALL_COMMANDS") ("ROUTINES") ("SOURCE_FILES") ("STRUCTURES") ("SYSTEM_VARIABLES") ("TRACEBACK"))) 212 ("HEAP_FREE" pro nil (system) "%s, Var" ("H9.html" ("OBJ" . 877472) ("PTR" . 877474) ("VERBOSE" . 877477)))
223 ("HLS" pro nil (system) "%s, Litlo, Lithi, Satlo, Sathi, Hue, Loops [, Colr]" nil) 213 ("HEAP_GC" pro nil (system) "%s" ("H10.html" ("OBJ" . 871683) ("PTR" . 832713) ("VERBOSE" . 832717)))
224 ("HSV" pro nil (system) "%s, Vlo, Vhi, Satlo, Sathi, Hue, Loops [, Colr]" nil) 214 ("HELP" pro nil (system) "%s, Expression1, ..., Expressionn" ("H11.html" ("ALL_KEYS" . 677134) ("BREAKPOINTS" . 677136) ("BRIEF" . 870534) ("CALLS" . 870532) ("DEVICE" . 677140) ("DLM" . 677142) ("FILES" . 843801) ("FULL" . 832176) ("FUNCTIONS" . 870207) ("HEAP_VARIABLES" . 870621) ("KEYS" . 677144) ("LAST_MESSAGE" . 843755) ("LEVEL" . 897567) ("MEMORY" . 677146) ("MESSAGES" . 677148) ("NAMES" . 843817) ("OBJECTS" . 832180) ("OUTPUT" . 832171) ("PATH_CACHE" . 677150) ("PROCEDURES" . 888071) ("RECALL_COMMANDS" . 870903) ("ROUTINES" . 869603) ("SHARED_MEMORY" . 880202) ("SOURCE_FILES" . 168290) ("STRUCTURES" . 677154) ("SYSTEM_VARIABLES" . 677156) ("TRACEBACK" . 677158)))
225 ("IDL_SYSRTN_GENERIC" pro nil (system) "%s IDL_SysRtnGetRealPtr(int is_function, char *name)" nil) 215 ("HLS" pro nil (system) "%s, Litlo, Lithi, Satlo, Sathi, Hue, Loops [, Colr]" ("H16.html"))
226 ("IMAGE_CONT" pro nil (system) "%s, A" (("ASPECT") ("INTERP") ("WINDOW_SCALE"))) 216 ("HSV" pro nil (system) "%s, Vlo, Vhi, Satlo, Sathi, Hue, Loops [, Colr]" ("H19.html"))
227 ("IMAGE_STATISTICS" pro nil (system) "%s, Data" (("COUNT") ("DATA_SUM") ("LABELED") ("LUT") ("MASK") ("MAXIMUM") ("MEAN") ("MINIMUM") ("STDDEV") ("SUM_OF_SQUARES") ("VARIANCE") ("VECTOR") ("WEIGHT_SUM") ("WEIGHTED"))) 217 ("ICONTOUR" pro nil (system) "%s[, Z[, X, Y]]" ("I2.html" ("AM_PM" . 937300) ("ANISOTROPY" . 937305) ("BACKGROUND_COLOR" . 963582) ("C_COLOR" . 963600) ("C_FILL_PATTERN" . 937326) ("C_LABEL_INTERVAL" . 937328) ("C_LABEL_NOGAPS" . 937330) ("C_LABEL_OBJECTS" . 937332) ("C_LABEL_SHOW" . 937341) ("C_LINESTYLE" . 937343) ("C_THICK" . 937356) ("C_USE_LABEL_COLOR" . 937358) ("C_USE_LABEL_ORIENTATION" . 937360) ("C_VALUE" . 937362) ("CLIP_PLANES" . 937364) ("COLOR" . 937367) ("DAYS_OF_WEEK" . 937369) ("DEPTH_OFFSET" . 963869) ("DIMENSIONS" . 937374) ("DOWNHILL" . 937376) ("FILL" . 937378) ("GRID_UNITS" . 964865) ("HIDE" . 937391) ("IDENTIFIER" . 937395) ("LABEL_FONT" . 937397) ("LABEL_FORMAT" . 937399) ("LABEL_FRMTDATA" . 937406) ("LABEL_UNITS" . 937408) ("LOCATION" . 937422) ("MACRO_NAMES" . 964542) ("MAX_VALUE" . 937424) ("MIN_VALUE" . 937431) ("MONTHS" . 937426) ("N_LEVELS" . 937435) ("NAME" . 937433) ("NO_SAVEPROMPT" . 982371) ("OVERPLOT" . 937437) ("PLANAR" . 937440) ("RGB_INDICES" . 937445) ("RGB_TABLE" . 937451) ("SHADE_RANGE" . 937458) ("SHADING" . 937460) ("STYLE_NAME" . 964365) ("TICKINTERVAL" . 937465) ("TICKLEN" . 937467) ("TITLE" . 937469) ("USE_TEXT_ALIGNMENTS" . 937471) ("VIEW_GRID" . 937473) ("VIEW_NEXT" . 937475) ("VIEW_NUMBER" . 937478) ("XGRIDSTYLE" . 937481) ("XMAJOR" . 961791) ("XMINOR" . 937483) ("XRANGE" . 937485) ("XSUBTICKLEN" . 937487) ("XTEXT_COLOR" . 937489) ("XTICKFONT_INDEX" . 937491) ("XTICKFONT_SIZE" . 937499) ("XTICKFONT_STYLE" . 937501) ("XTICKFORMAT" . 937508) ("XTICKINTERVAL" . 937526) ("XTICKLAYOUT" . 937530) ("XTICKLEN" . 937538) ("XTICKNAME" . 937540) ("XTICKUNITS" . 937542) ("XTICKVALUES" . 937558) ("XTITLE" . 937560) ("YGRIDSTYLE" . 937481) ("YMAJOR" . 961791) ("YMINOR" . 937483) ("YRANGE" . 937485) ("YSUBTICKLEN" . 937487) ("YTEXT_COLOR" . 937489) ("YTICKFONT_INDEX" . 937491) ("YTICKFONT_SIZE" . 937499) ("YTICKFONT_STYLE" . 937501) ("YTICKFORMAT" . 937508) ("YTICKINTERVAL" . 937526) ("YTICKLAYOUT" . 937530) ("YTICKLEN" . 937538) ("YTICKNAME" . 937540) ("YTICKUNITS" . 937542) ("YTICKVALUES" . 937558) ("YTITLE" . 937560) ("ZGRIDSTYLE" . 937481) ("ZMAJOR" . 961791) ("ZMINOR" . 937483) ("ZRANGE" . 937485) ("ZSUBTICKLEN" . 937487) ("ZTEXT_COLOR" . 937489) ("ZTICKFONT_INDEX" . 937491) ("ZTICKFONT_SIZE" . 937499) ("ZTICKFONT_STYLE" . 937501) ("ZTICKFORMAT" . 937508) ("ZTICKINTERVAL" . 937526) ("ZTICKLAYOUT" . 937530) ("ZTICKLEN" . 937538) ("ZTICKNAME" . 937540) ("ZTICKUNITS" . 937542) ("ZTICKVALUES" . 937558) ("ZTITLE" . 937560) ("ZVALUE" . 937562)))
228 ("INTERLEAVED" pro nil (system) "%s Result = GRIDDATA( X, F ) Planar Result = GRIDDATA( X, Y, F ) Sphere From Cartesian Coordinates Result = GRIDDATA( X, Y, Z, F)" (("ANISOTROPY") ("DEGREES") ("DELTA") ("DIMENSION") ("EMPTY_SECTORS") ("FAULT_POLYGONS") ("FAULT_XY") ("FUNCTION_TYPE") ("GRID") ("INVERSE_DISTANCE") ("KRIGING") ("LINEAR") ("MAX_PER_SECTOR") ("METHOD") ("MIN_CURVATURE") ("MIN_POINTS") ("MISSING") ("NATURAL_NEIGHBOR") ("NEAREST_NEIGHBOR") ("NEIGHBORHOOD") ("POLYNOMIAL_REGRESSION") ("POWER") ("QUINTIC") ("RADIAL_BASIS_FUNCTION") ("SEARCH_ELLIPSE") ("SECTORS") ("SHEPARDS") ("SMOOTHING") ("SPHERE") ("START") ("TRIANGLES") ("VARIOGRAM") ("XOUT") ("YOUT"))) 218 ("IIMAGE" pro nil (system) "%s[, Image[, X, Y]]" ("I8.html" ("ALPHA_CHANNEL" . 942273) ("BACKGROUND_COLOR" . 963611) ("BLUE_CHANNEL" . 940200) ("CHANNEL" . 940203) ("CLIP_PLANES" . 940205) ("DIMENSIONS" . 940208) ("GREEN_CHANNEL" . 940210) ("GRID_UNITS" . 964788) ("HIDE" . 940212) ("IDENTIFIER" . 940216) ("IMAGE_DIMENSIONS" . 940218) ("IMAGE_LOCATION" . 940220) ("INTERPOLATE" . 940222) ("LOCATION" . 940224) ("MACRO_NAMES" . 964551) ("NAME" . 940226) ("NO_SAVEPROMPT" . 982596) ("ORDER" . 964559) ("OVERPLOT" . 940230) ("RED_CHANNEL" . 940233) ("RGB_TABLE" . 940235) ("STYLE_NAME" . 964392) ("TITLE" . 940237) ("VIEW_GRID" . 940239) ("VIEW_NEXT" . 940241) ("VIEW_NUMBER" . 940244) ("XGRIDSTYLE" . 961815) ("XMAJOR" . 940247) ("XMINOR" . 940249) ("XRANGE" . 940251) ("XSUBTICKLEN" . 940253) ("XTEXT_COLOR" . 940255) ("XTICKFONT_INDEX" . 940257) ("XTICKFONT_SIZE" . 940264) ("XTICKFONT_STYLE" . 940266) ("XTICKFORMAT" . 940272) ("XTICKINTERVAL" . 940289) ("XTICKLAYOUT" . 940292) ("XTICKLEN" . 940299) ("XTICKNAME" . 940301) ("XTICKUNITS" . 940303) ("XTICKVALUES" . 940318) ("XTITLE" . 940320) ("YGRIDSTYLE" . 961815) ("YMAJOR" . 940247) ("YMINOR" . 940249) ("YRANGE" . 940251) ("YSUBTICKLEN" . 940253) ("YTEXT_COLOR" . 940255) ("YTICKFONT_INDEX" . 940257) ("YTICKFONT_SIZE" . 940264) ("YTICKFONT_STYLE" . 940266) ("YTICKFORMAT" . 940272) ("YTICKINTERVAL" . 940289) ("YTICKLAYOUT" . 940292) ("YTICKLEN" . 940299) ("YTICKNAME" . 940301) ("YTICKUNITS" . 940303) ("YTICKVALUES" . 940318) ("YTITLE" . 940320)))
229 ("INTERVAL_VOLUME" pro nil (system) "%s, Data, Value0, Value1, Outverts, Outconn" (("AUXDATA_IN") ("AUXDATA_OUT") ("GEOM_XYZ") ("TETRAHEDRA"))) 219 ("IMAGE_CONT" pro nil (system) "%s, A" ("I9.html" ("ASPECT" . 757356) ("INTERP" . 757359) ("WINDOW_SCALE" . 757362)))
230 ("ISOCONTOUR" pro nil (system) "%s, Values, Outverts, Outconn" (("AUXDATA_IN") ("AUXDATA_OUT") ("C_VALUE") ("DOUBLE") ("FILL") ("GEOMX") ("GEOMY") ("GEOMZ") ("LEVEL_VALUES") ("N_LEVELS") ("OUTCONN_INDICES") ("POLYGONS"))) 220 ("IMAGE_STATISTICS" pro nil (system) "%s, Data" ("I10.html" ("COUNT" . 873572) ("DATA_SUM" . 873574) ("LABELED" . 873576) ("LUT" . 873582) ("MASK" . 873584) ("MAXIMUM" . 873586) ("MEAN" . 873588) ("MINIMUM" . 873590) ("STDDEV" . 873592) ("SUM_OF_SQUARES" . 873594) ("VARIANCE" . 873596) ("VECTOR" . 873598) ("WEIGHT_SUM" . 873600) ("WEIGHTED" . 873603)))
231 ("ISOSURFACE" pro nil (system) "%s, Data, Value, Outverts, Outconn" (("AUXDATA_IN") ("AUXDATA_OUT") ("GEOM_XYZ") ("TETRAHEDRA"))) 221 ("IMAP" pro nil (system) "%s" ("I12.html" ("BACKGROUND_COLOR" . 966654) ("CENTER_LATITUDE" . 966771) ("CENTER_LONGITUDE" . 966773) ("CONTOUR" . 966500) ("DATUM" . 966775) ("DIMENSIONS" . 966656) ("FALSE_EASTING" . 966916) ("FALSE_NORTHING" . 966918) ("GRID_UNITS" . 981023) ("HEIGHT" . 966920) ("HOM_AZIM_ANGLE" . 966924) ("HOM_AZIM_LONGITUDE" . 966922) ("HOM_LATITUDE1" . 966926) ("HOM_LATITUDE2" . 966928) ("HOM_LONGITUDE1" . 966930) ("HOM_LONGITUDE2" . 966932) ("IDENTIFIER" . 966658) ("IS_JUSTIFY" . 966936) ("IS_ZONES" . 966934) ("LIMIT" . 966941) ("LOCATION" . 966660) ("MACRO_NAMES" . 966666) ("MAP_PROJECTION" . 966503) ("MERCATOR_SCALE" . 966943) ("NAME" . 966668) ("NO_SAVEPROMPT" . 982447) ("OEA_ANGLE" . 966945) ("OEA_SHAPEM" . 966947) ("OEA_SHAPEN" . 966950) ("OVERPLOT" . 966670) ("SEMIMAJOR_AXIS" . 966953) ("SEMIMINOR_AXIS" . 966955) ("SOM_FLAG" . 966965) ("SOM_INCLINATION" . 966957) ("SOM_LANDSAT_NUMBER" . 966967) ("SOM_LANDSAT_PATH" . 966969) ("SOM_LONGITUDE" . 966959) ("SOM_PERIOD" . 966961) ("SOM_RATIO" . 966963) ("SPHERE_RADIUS" . 966971) ("STANDARD_PAR1" . 966975) ("STANDARD_PAR2" . 966977) ("STANDARD_PARALLEL" . 966973) ("STYLE_NAME" . 966673) ("TITLE" . 966678) ("TRUE_SCALE_LATITUDE" . 966979) ("VIEW_GRID" . 966680) ("VIEW_NEXT" . 966682) ("VIEW_NUMBER" . 966685) ("XGRIDSTYLE" . 966688) ("XMAJOR" . 966690) ("XMINOR" . 966692) ("XRANGE" . 966694) ("XSUBTICKLEN" . 966696) ("XTEXT_COLOR" . 966698) ("XTICKFONT_INDEX" . 966700) ("XTICKFONT_SIZE" . 966707) ("XTICKFONT_STYLE" . 966709) ("XTICKFORMAT" . 966715) ("XTICKINTERVAL" . 966736) ("XTICKLAYOUT" . 966739) ("XTICKLEN" . 966746) ("XTICKNAME" . 966748) ("XTICKUNITS" . 966750) ("XTICKVALUES" . 966766) ("XTITLE" . 966768) ("YGRIDSTYLE" . 966688) ("YMAJOR" . 966690) ("YMINOR" . 966692) ("YRANGE" . 966694) ("YSUBTICKLEN" . 966696) ("YTEXT_COLOR" . 966698) ("YTICKFONT_INDEX" . 966700) ("YTICKFONT_SIZE" . 966707) ("YTICKFONT_STYLE" . 966709) ("YTICKFORMAT" . 966715) ("YTICKINTERVAL" . 966736) ("YTICKLAYOUT" . 966739) ("YTICKLEN" . 966746) ("YTICKNAME" . 966748) ("YTICKUNITS" . 966750) ("YTICKVALUES" . 966766) ("YTITLE" . 966768) ("ZONE" . 966981)) ("I2.html" ("AM_PM" . 937300) ("ANISOTROPY" . 937305) ("BACKGROUND_COLOR" . 963582) ("C_COLOR" . 963600) ("C_FILL_PATTERN" . 937326) ("C_LABEL_INTERVAL" . 937328) ("C_LABEL_NOGAPS" . 937330) ("C_LABEL_OBJECTS" . 937332) ("C_LABEL_SHOW" . 937341) ("C_LINESTYLE" . 937343) ("C_THICK" . 937356) ("C_USE_LABEL_COLOR" . 937358) ("C_USE_LABEL_ORIENTATION" . 937360) ("C_VALUE" . 937362) ("CLIP_PLANES" . 937364) ("COLOR" . 937367) ("DAYS_OF_WEEK" . 937369) ("DEPTH_OFFSET" . 963869) ("DIMENSIONS" . 937374) ("DOWNHILL" . 937376) ("FILL" . 937378) ("GRID_UNITS" . 964865) ("HIDE" . 937391) ("IDENTIFIER" . 937395) ("LABEL_FONT" . 937397) ("LABEL_FORMAT" . 937399) ("LABEL_FRMTDATA" . 937406) ("LABEL_UNITS" . 937408) ("LOCATION" . 937422) ("MACRO_NAMES" . 964542) ("MAX_VALUE" . 937424) ("MIN_VALUE" . 937431) ("MONTHS" . 937426) ("N_LEVELS" . 937435) ("NAME" . 937433) ("NO_SAVEPROMPT" . 982371) ("OVERPLOT" . 937437) ("PLANAR" . 937440) ("RGB_INDICES" . 937445) ("RGB_TABLE" . 937451) ("SHADE_RANGE" . 937458) ("SHADING" . 937460) ("STYLE_NAME" . 964365) ("TICKINTERVAL" . 937465) ("TICKLEN" . 937467) ("TITLE" . 937469) ("USE_TEXT_ALIGNMENTS" . 937471) ("VIEW_GRID" . 937473) ("VIEW_NEXT" . 937475) ("VIEW_NUMBER" . 937478) ("XGRIDSTYLE" . 937481) ("XMAJOR" . 961791) ("XMINOR" . 937483) ("XRANGE" . 937485) ("XSUBTICKLEN" . 937487) ("XTEXT_COLOR" . 937489) ("XTICKFONT_INDEX" . 937491) ("XTICKFONT_SIZE" . 937499) ("XTICKFONT_STYLE" . 937501) ("XTICKFORMAT" . 937508) ("XTICKINTERVAL" . 937526) ("XTICKLAYOUT" . 937530) ("XTICKLEN" . 937538) ("XTICKNAME" . 937540) ("XTICKUNITS" . 937542) ("XTICKVALUES" . 937558) ("XTITLE" . 937560) ("YGRIDSTYLE" . 937481) ("YMAJOR" . 961791) ("YMINOR" . 937483) ("YRANGE" . 937485) ("YSUBTICKLEN" . 937487) ("YTEXT_COLOR" . 937489) ("YTICKFONT_INDEX" . 937491) ("YTICKFONT_SIZE" . 937499) ("YTICKFONT_STYLE" . 937501) ("YTICKFORMAT" . 937508) ("YTICKINTERVAL" . 937526) ("YTICKLAYOUT" . 937530) ("YTICKLEN" . 937538) ("YTICKNAME" . 937540) ("YTICKUNITS" . 937542) ("YTICKVALUES" . 937558) ("YTITLE" . 937560) ("ZGRIDSTYLE" . 937481) ("ZMAJOR" . 961791) ("ZMINOR" . 937483) ("ZRANGE" . 937485) ("ZSUBTICKLEN" . 937487) ("ZTEXT_COLOR" . 937489) ("ZTICKFONT_INDEX" . 937491) ("ZTICKFONT_SIZE" . 937499) ("ZTICKFONT_STYLE" . 937501) ("ZTICKFORMAT" . 937508) ("ZTICKINTERVAL" . 937526) ("ZTICKLAYOUT" . 937530) ("ZTICKLEN" . 937538) ("ZTICKNAME" . 937540) ("ZTICKUNITS" . 937542) ("ZTICKVALUES" . 937558) ("ZTITLE" . 937560) ("ZVALUE" . 937562)) ("I8.html" ("ALPHA_CHANNEL" . 942273) ("BACKGROUND_COLOR" . 963611) ("BLUE_CHANNEL" . 940200) ("CHANNEL" . 940203) ("CLIP_PLANES" . 940205) ("DIMENSIONS" . 940208) ("GREEN_CHANNEL" . 940210) ("GRID_UNITS" . 964788) ("HIDE" . 940212) ("IDENTIFIER" . 940216) ("IMAGE_DIMENSIONS" . 940218) ("IMAGE_LOCATION" . 940220) ("INTERPOLATE" . 940222) ("LOCATION" . 940224) ("MACRO_NAMES" . 964551) ("NAME" . 940226) ("NO_SAVEPROMPT" . 982596) ("ORDER" . 964559) ("OVERPLOT" . 940230) ("RED_CHANNEL" . 940233) ("RGB_TABLE" . 940235) ("STYLE_NAME" . 964392) ("TITLE" . 940237) ("VIEW_GRID" . 940239) ("VIEW_NEXT" . 940241) ("VIEW_NUMBER" . 940244) ("XGRIDSTYLE" . 961815) ("XMAJOR" . 940247) ("XMINOR" . 940249) ("XRANGE" . 940251) ("XSUBTICKLEN" . 940253) ("XTEXT_COLOR" . 940255) ("XTICKFONT_INDEX" . 940257) ("XTICKFONT_SIZE" . 940264) ("XTICKFONT_STYLE" . 940266) ("XTICKFORMAT" . 940272) ("XTICKINTERVAL" . 940289) ("XTICKLAYOUT" . 940292) ("XTICKLEN" . 940299) ("XTICKNAME" . 940301) ("XTICKUNITS" . 940303) ("XTICKVALUES" . 940318) ("XTITLE" . 940320) ("YGRIDSTYLE" . 961815) ("YMAJOR" . 940247) ("YMINOR" . 940249) ("YRANGE" . 940251) ("YSUBTICKLEN" . 940253) ("YTEXT_COLOR" . 940255) ("YTICKFONT_INDEX" . 940257) ("YTICKFONT_SIZE" . 940264) ("YTICKFONT_STYLE" . 940266) ("YTICKFORMAT" . 940272) ("YTICKINTERVAL" . 940289) ("YTICKLAYOUT" . 940292) ("YTICKLEN" . 940299) ("YTICKNAME" . 940301) ("YTICKUNITS" . 940303) ("YTICKVALUES" . 940318) ("YTITLE" . 940320)))
232 ("JOURNAL" pro nil (system) "%s [, Arg]" nil) 222 ("INTERVAL_VOLUME" pro nil (system) "%s, Data, Value0, Value1, Outverts, Outconn" ("I20.html" ("AUXDATA_IN" . 877934) ("AUXDATA_OUT" . 877937) ("GEOM_XYZ" . 877940) ("PROGRESS_CALLBACK" . 904666) ("PROGRESS_METHOD" . 904664) ("PROGRESS_OBJECT" . 904694) ("PROGRESS_PERCENT" . 904705) ("PROGRESS_USERDATA" . 904717) ("TETRAHEDRA" . 904724)))
233 ("LINKIMAGE" pro nil (system) "%s, Name, Image [, Type [, Entry]]" (("DEFAULT") ("DEVICE") ("FUNCT") ("KEYWORDS") ("MAX_ARGS") ("MIN_ARGS"))) 223 ("IPLOT" pro nil (system) "%s, [X,] Y or %s, X, Y, Z or %s[, R], Theta" ("I23.html" ("BACKGROUND_COLOR" . 940548) ("CLIP_PLANES" . 963636) ("COLOR" . 940551) ("DIMENSIONS" . 984454) ("ERRORBAR_CAPSIZE" . 940557) ("ERRORBAR_COLOR" . 940555) ("FILL_BACKGROUND" . 940559) ("FILL_COLOR" . 940561) ("FILL_LEVEL" . 940563) ("HIDE" . 940565) ("HISTOGRAM" . 940569) ("IDENTIFIER" . 940571) ("LINESTYLE" . 940573) ("LOCATION" . 940586) ("MACRO_NAMES" . 964589) ("MAX_VALUE" . 940588) ("MIN_VALUE" . 940591) ("NAME" . 940594) ("NO_SAVEPROMPT" . 982649) ("NSUM" . 940596) ("OVERPLOT" . 940598) ("POLAR" . 940601) ("RGB_TABLE" . 940603) ("SCATTER" . 940605) ("STYLE_NAME" . 964415) ("SYM_COLOR" . 940607) ("SYM_INCREMENT" . 940610) ("SYM_INDEX" . 940612) ("SYM_SIZE" . 940623) ("SYM_THICK" . 940625) ("THICK" . 940627) ("TITLE" . 940629) ("TRANSPARENCY" . 940631) ("USE_DEFAULT_COLOR" . 940633) ("VERT_COLORS" . 940637) ("VIEW_GRID" . 940639) ("VIEW_NEXT" . 940641) ("VIEW_NUMBER" . 940644) ("X_ERRORBARS" . 940649) ("X_LOG" . 940651) ("XERROR" . 940653) ("XGRIDSTYLE" . 961829) ("XMAJOR" . 940655) ("XMINOR" . 940657) ("XRANGE" . 940659) ("XSUBTICKLEN" . 940661) ("XTEXT_COLOR" . 940663) ("XTICKFONT_INDEX" . 940665) ("XTICKFONT_SIZE" . 940673) ("XTICKFONT_STYLE" . 940675) ("XTICKFORMAT" . 940682) ("XTICKINTERVAL" . 940700) ("XTICKLAYOUT" . 940704) ("XTICKLEN" . 940712) ("XTICKNAME" . 940714) ("XTICKUNITS" . 940716) ("XTICKVALUES" . 940732) ("XTITLE" . 940734) ("XY_SHADOW" . 940647) ("XZ_SHADOW" . 940736) ("Y_ERRORBARS" . 940649) ("Y_LOG" . 940651) ("YERROR" . 940653) ("YGRIDSTYLE" . 961829) ("YMAJOR" . 940655) ("YMINOR" . 940657) ("YRANGE" . 940659) ("YSUBTICKLEN" . 940661) ("YTEXT_COLOR" . 940663) ("YTICKFONT_INDEX" . 940665) ("YTICKFONT_SIZE" . 940673) ("YTICKFONT_STYLE" . 940675) ("YTICKFORMAT" . 940682) ("YTICKINTERVAL" . 940700) ("YTICKLAYOUT" . 940704) ("YTICKLEN" . 940712) ("YTICKNAME" . 940714) ("YTICKUNITS" . 940716) ("YTICKVALUES" . 940732) ("YTITLE" . 940734) ("YZ_SHADOW" . 940738) ("Z_ERRORBARS" . 940649) ("Z_LOG" . 940651) ("ZERROR" . 940653) ("ZGRIDSTYLE" . 961829) ("ZMAJOR" . 940655) ("ZMINOR" . 940657) ("ZRANGE" . 940659) ("ZSUBTICKLEN" . 940661) ("ZTEXT_COLOR" . 940663) ("ZTICKFONT_INDEX" . 940665) ("ZTICKFONT_SIZE" . 940673) ("ZTICKFONT_STYLE" . 940675) ("ZTICKFORMAT" . 940682) ("ZTICKINTERVAL" . 940700) ("ZTICKLAYOUT" . 940704) ("ZTICKLEN" . 940712) ("ZTICKNAME" . 940714) ("ZTICKUNITS" . 940716) ("ZTICKVALUES" . 940732) ("ZTITLE" . 940734)))
234 ("LIVE_CONTOUR" pro nil (system) "%s [, Z1,..., Z25]" (("BUFFER") ("DIMENSIONS") ("DOUBLE") ("DRAW_DIMENSIONS") ("ERROR") ("INDEXED_COLOR") ("INSTANCING") ("LOCATION") ("MANAGE_STYLE") ("NAME") ("NO_DRAW") ("NO_SELECTION") ("NO_STATUS") ("NO_TOOLBAR") ("PARENT_BASE") ("PREFERENCE_FILE") ("REFERENCE_OUT") ("RENDERER") ("REPLACE") ("STYLE") ("TEMPLATE_FILE") ("TITLE") ("TLB_LOCATION") ("WINDOW_IN") ("X") ("XINDEPENDENT") ("XRANGE") ("Y") ("YINDEPENDENT") ("YRANGE"))) 224 ("ISOCONTOUR" pro nil (system) "%s, Values, Outverts, Outconn" ("I25.html" ("AUXDATA_IN" . 873707) ("AUXDATA_OUT" . 873709) ("C_LABEL_INTERVAL" . 873711) ("C_LABEL_SHOW" . 880877) ("C_VALUE" . 880888) ("DOUBLE" . 875352) ("FILL" . 873713) ("GEOMX" . 873715) ("GEOMY" . 873717) ("GEOMZ" . 873719) ("LEVEL_VALUES" . 873723) ("N_LEVELS" . 873725) ("OUT_LABEL_OFFSETS" . 873727) ("OUT_LABEL_POLYLINES" . 880899) ("OUT_LABEL_STRINGS" . 880914) ("OUTCONN_INDICES" . 880934) ("POLYGONS" . 873730)))
235 ("LIVE_CONTROL" pro nil (system) "%s, [Name]" (("DIALOG") ("ERROR") ("NO_DRAW") ("PROPERTIES") ("SELECT") ("UPDATE_DATA") ("WINDOW_IN"))) 225 ("ISOSURFACE" pro nil (system) "%s, Data, Value, Outverts, Outconn" ("I26.html" ("AUXDATA_IN" . 873750) ("AUXDATA_OUT" . 873753) ("GEOM_XYZ" . 873756) ("PROGRESS_CALLBACK" . 873759) ("PROGRESS_METHOD" . 904740) ("PROGRESS_OBJECT" . 904767) ("PROGRESS_PERCENT" . 904780) ("PROGRESS_USERDATA" . 904786) ("TETRAHEDRA" . 904793)))
236 ("LIVE_DESTROY" pro nil (system) "%s, [Name1,..., Name25]" (("ENVIRONMENT") ("ERROR") ("NO_DRAW") ("PURGE") ("WINDOW_IN"))) 226 ("ISURFACE" pro nil (system) "%s[, Z [, X, Y]]" ("I27.html" ("BACKGROUND_COLOR" . 940941) ("BOTTOM" . 963651) ("CLIP_PLANES" . 940943) ("COLOR" . 940946) ("DEPTH_OFFSET" . 940950) ("DIMENSIONS" . 940948) ("EXTENDED_LEGO" . 940960) ("HIDDEN_LINES" . 940962) ("HIDE" . 940964) ("IDENTIFIER" . 940968) ("LINESTYLE" . 940970) ("LOCATION" . 940983) ("MACRO_NAMES" . 964571) ("NAME" . 940985) ("NO_SAVEPROMPT" . 982715) ("OVERPLOT" . 940987) ("RGB_TABLE" . 940990) ("SHADING" . 940992) ("SHOW_SKIRT" . 940997) ("SKIRT" . 940999) ("STYLE" . 941001) ("STYLE_NAME" . 964441) ("TEXTURE_ALPHA" . 941010) ("TEXTURE_BLUE" . 941012) ("TEXTURE_GREEN" . 941014) ("TEXTURE_HIGHRES" . 941016) ("TEXTURE_IMAGE" . 941019) ("TEXTURE_INTERP" . 941021) ("TEXTURE_RED" . 941023) ("THICK" . 941025) ("TITLE" . 941027) ("USE_TRIANGLES" . 941029) ("VERT_COLORS" . 941031) ("VIEW_GRID" . 941033) ("VIEW_NEXT" . 941035) ("VIEW_NUMBER" . 941038) ("XGRIDSTYLE" . 961847) ("XMAJOR" . 941041) ("XMINOR" . 941043) ("XRANGE" . 941045) ("XSUBTICKLEN" . 941047) ("XTEXT_COLOR" . 941049) ("XTICKFONT_INDEX" . 941051) ("XTICKFONT_SIZE" . 941058) ("XTICKFONT_STYLE" . 941060) ("XTICKFORMAT" . 941066) ("XTICKINTERVAL" . 941083) ("XTICKLAYOUT" . 941086) ("XTICKLEN" . 941093) ("XTICKNAME" . 941095) ("XTICKUNITS" . 941097) ("XTICKVALUES" . 941112) ("XTITLE" . 941114) ("YGRIDSTYLE" . 961847) ("YMAJOR" . 941041) ("YMINOR" . 941043) ("YRANGE" . 941045) ("YSUBTICKLEN" . 941047) ("YTEXT_COLOR" . 941049) ("YTICKFONT_INDEX" . 941051) ("YTICKFONT_SIZE" . 941058) ("YTICKFONT_STYLE" . 941060) ("YTICKFORMAT" . 941066) ("YTICKINTERVAL" . 941083) ("YTICKLAYOUT" . 941086) ("YTICKLEN" . 941093) ("YTICKNAME" . 941095) ("YTICKUNITS" . 941097) ("YTICKVALUES" . 941112) ("YTITLE" . 941114) ("ZERO_OPACITY_SKIP" . 941116) ("ZGRIDSTYLE" . 961847) ("ZMAJOR" . 941041) ("ZMINOR" . 941043) ("ZRANGE" . 941045) ("ZSUBTICKLEN" . 941047) ("ZTEXT_COLOR" . 941049) ("ZTICKFONT_INDEX" . 941051) ("ZTICKFONT_SIZE" . 941058) ("ZTICKFONT_STYLE" . 941060) ("ZTICKFORMAT" . 941066) ("ZTICKINTERVAL" . 941083) ("ZTICKLAYOUT" . 941086) ("ZTICKLEN" . 941093) ("ZTICKNAME" . 941095) ("ZTICKUNITS" . 941097) ("ZTICKVALUES" . 941112) ("ZTITLE" . 941114)))
237 ("LIVE_EXPORT" pro nil (system) "%s" (("APPEND") ("COMPRESSION") ("DIALOG") ("DIMENSIONS") ("ERROR") ("FILENAME") ("ORDER") ("PROGRESSIVE") ("QUALITY") ("RESOLUTION") ("TYPE") ("UNITS") ("VISUALIZATION_IN") ("WINDOW_IN"))) 227 ("ITCURRENT" pro nil (system) "%s, iToolID" ("I28.html"))
238 ("LIVE_IMAGE" pro nil (system) "%s, Image" (("BLUE") ("BUFFER") ("DIMENSIONS") ("DRAW_DIMENSIONS") ("ERROR") ("GREEN") ("INDEXED_COLOR") ("INSTANCING") ("LOCATION") ("MANAGE_STYLE") ("NAME") ("NO_DRAW") ("NO_SELECTION") ("NO_STATUS") ("NO_TOOLBAR") ("PARENT_BASE") ("PREFERENCE_FILE") ("RED") ("REFERENCE_OUT") ("RENDERER") ("REPLACE") ("STYLE") ("TEMPLATE_FILE") ("TITLE") ("TLB_LOCATION") ("WINDOW_IN"))) 228 ("ITDELETE" pro nil (system) "%s[, iToolID]" ("I29.html"))
239 ("LIVE_INFO" pro nil (system) "%s, [Name]" (("ERROR") ("PROPERTIES") ("WINDOW_IN"))) 229 ("ITREGISTER" pro nil (system) "%s, Name, ItemName" ("I31.html" ("ANNOTATION" . 961620) ("DEFAULT" . 980906) ("FILE_READER" . 961629) ("FILE_WRITER" . 961635) ("TYPES" . 941578) ("UI_PANEL" . 941581) ("UI_SERVICE" . 941584) ("USER_INTERFACE" . 961874) ("VISUALIZATION" . 941586)))
240 ("LIVE_LINE" pro nil (system) "%s" (("ARROW_ANGLE") ("ARROW_END") ("ARROW_SIZE") ("ARROW_START") ("COLOR") ("DIALOG") ("DIMENSIONS") ("ERROR") ("HIDE") ("LINESTYLE") ("LOCATION") ("NAME") ("NO_DRAW") ("NO_SELECTION") ("REFERENCE_OUT") ("THICK") ("VISUALIZATION_IN") ("WINDOW_IN"))) 230 ("ITRESET" pro nil (system) "%s" ("I32.html" ("NO_PROMPT" . 941670)))
241 ("LIVE_LOAD" pro nil (system) "%s" nil) 231 ("ITRESOLVE" pro nil (system) "%s" ("I33.html" ("PATH" . 969191)))
242 ("LIVE_OPLOT" pro nil (system) "%s, Yvector1 [,... , Yvector25]" (("ERROR") ("INDEPENDENT") ("NAME") ("NEW_AXES") ("NO_DRAW") ("NO_SELECTION") ("REFERENCE_OUT") ("REPLACE") ("SUBTYPE") ("VISUALIZATION_IN") ("WINDOW_IN") ("XAXIS_IN") ("YAXIS_IN"))) 232 ("IVOLUME" pro nil (system) "%s[, Vol0[, Vol1][, Vol2, Vol3]]" ("I34.html" ("AMBIENT" . 941804) ("AUTO_RENDER" . 941806) ("BACKGROUND_COLOR" . 941809) ("BOUNDS" . 963673) ("CLIP_PLANES" . 963690) ("COMPOSITE_FUNCTION" . 941815) ("DEPTH_CUE" . 941828) ("DIMENSIONS" . 941837) ("EXTENTS_TRANSPARENCY" . 964340) ("HIDE" . 941839) ("HINTS" . 941843) ("IDENTIFIER" . 941849) ("INTERPOLATE" . 941851) ("LIGHTING_MODEL" . 941853) ("LOCATION" . 941856) ("MACRO_NAMES" . 964580) ("NAME" . 941858) ("NO_SAVEPROMPT" . 982766) ("OPACITY_TABLE0" . 941860) ("OPACITY_TABLE1" . 941862) ("OVERPLOT" . 941864) ("RENDER_EXTENTS" . 941867) ("RENDER_QUALITY" . 941874) ("RENDER_STEP" . 941872) ("RGB_TABLE0" . 941879) ("RGB_TABLE1" . 941881) ("STYLE_NAME" . 964479) ("SUBVOLUME" . 941883) ("TITLE" . 941885) ("TWO_SIDED" . 941887) ("VIEW_GRID" . 941889) ("VIEW_NEXT" . 941891) ("VIEW_NUMBER" . 941894) ("VOLUME_DIMENSIONS" . 941897) ("VOLUME_LOCATION" . 941899) ("XGRIDSTYLE" . 961859) ("XMAJOR" . 941901) ("XMINOR" . 941903) ("XRANGE" . 941905) ("XSUBTICKLEN" . 941907) ("XTEXT_COLOR" . 941909) ("XTICKFONT_INDEX" . 941911) ("XTICKFONT_SIZE" . 941918) ("XTICKFONT_STYLE" . 941920) ("XTICKFORMAT" . 941926) ("XTICKINTERVAL" . 941943) ("XTICKLAYOUT" . 941946) ("XTICKLEN" . 941953) ("XTICKNAME" . 941955) ("XTICKUNITS" . 941957) ("XTICKVALUES" . 941972) ("XTITLE" . 941974) ("YGRIDSTYLE" . 961859) ("YMAJOR" . 941901) ("YMINOR" . 941903) ("YRANGE" . 941905) ("YSUBTICKLEN" . 941907) ("YTEXT_COLOR" . 941909) ("YTICKFONT_INDEX" . 941911) ("YTICKFONT_SIZE" . 941918) ("YTICKFONT_STYLE" . 941920) ("YTICKFORMAT" . 941926) ("YTICKINTERVAL" . 941943) ("YTICKLAYOUT" . 941946) ("YTICKLEN" . 941953) ("YTICKNAME" . 941955) ("YTICKUNITS" . 941957) ("YTICKVALUES" . 941972) ("YTITLE" . 941974) ("ZBUFFER" . 941976) ("ZERO_OPACITY_SKIP" . 941978) ("ZGRIDSTYLE" . 961859) ("ZMAJOR" . 941901) ("ZMINOR" . 941903) ("ZRANGE" . 941905) ("ZSUBTICKLEN" . 941907) ("ZTEXT_COLOR" . 941909) ("ZTICKFONT_INDEX" . 941911) ("ZTICKFONT_SIZE" . 941918) ("ZTICKFONT_STYLE" . 941920) ("ZTICKFORMAT" . 941926) ("ZTICKINTERVAL" . 941943) ("ZTICKLAYOUT" . 941946) ("ZTICKLEN" . 941953) ("ZTICKNAME" . 941955) ("ZTICKUNITS" . 941957) ("ZTICKVALUES" . 941972) ("ZTITLE" . 941974)))
243 ("LIVE_PLOT" pro nil (system) "%s, Yvector1 [, Yvector2,..., Yvector25]" (("BUFFER") ("DIMENSIONS") ("DOUBLE") ("DRAW_DIMENSIONS") ("ERROR") ("HISTOGRAM") ("INDEPENDENT") ("INDEXED_COLOR") ("INSTANCING") ("LINE") ("LOCATION") ("MANAGE_STYLE") ("NAME") ("NO_DRAW") ("NO_SELECTION") ("NO_STATUS") ("NO_TOOLBAR") ("PARENT_BASE") ("POLAR") ("PREFERENCE_FILE") ("REFERENCE_OUT") ("RENDERER") ("REPLACE") ("SCATTER") ("STYLE") ("TEMPLATE_FILE") ("TITLE") ("TLB_LOCATION") ("WINDOW_IN") ("X") ("XRANGE") ("Y") ("YRANGE"))) 233 ("JOURNAL" pro nil (system) "%s [, Arg]" ("J.html"))
244 ("LIVE_PRINT" pro nil (system) "%s" (("DIALOG") ("ERROR") ("SETUP") ("WINDOW_IN"))) 234 ("LA_CHOLDC" pro nil (system) "%s, Array" ("L2.html" ("DOUBLE" . 969070) ("STATUS" . 969072) ("UPPER" . 969077)))
245 ("LIVE_RECT" pro nil (system) "%s" (("COLOR") ("DIALOG") ("DIMENSIONS") ("ERROR") ("HIDE") ("LINESTYLE") ("LOCATION") ("NAME") ("NO_DRAW") ("NO_SELECTION") ("REFERENCE_OUT") ("THICK") ("VISUALIZATION_IN") ("WINDOW_IN"))) 235 ("LA_LUDC" pro nil (system) "%s, Array, Index" ("L16.html" ("DOUBLE" . 970769) ("STATUS" . 970771)))
246 ("LIVE_SURFACE" pro nil (system) "%s, Data, Data2,..." (("BUFFER") ("DIMENSIONS") ("DOUBLE") ("DRAW_DIMENSIONS") ("ERROR") ("INDEXED_COLOR") ("INSTANCING") ("LOCATION") ("MANAGE_STYLE") ("NAME") ("NO_DRAW") ("NO_SELECTION") ("NO_STATUS") ("NO_TOOLBAR") ("PARENT_BASE") ("PREFERENCE_FILE") ("REFERENCE_OUT") ("RENDERER") ("REPLACE") ("STYLE") ("TEMPLATE_FILE") ("TITLE") ("TLB_LOCATION") ("WINDOW_IN") ("X") ("XINDEPENDENT") ("XRANGE") ("Y") ("YINDEPENDENT") ("YRANGE"))) 236 ("LA_SVD" pro nil (system) "%s, Array, W, U, V" ("L19.html" ("DIVIDE_CONQUER" . 971149) ("DOUBLE" . 971151) ("STATUS" . 971153)))
247 ("LIVE_TEXT" pro nil (system) "%s[, Text]" (("ALIGNMENT") ("COLOR") ("DIALOG") ("ENABLE_FORMATTING") ("ERROR") ("FONTNAME") ("FONTSIZE") ("HIDE") ("LOCATION") ("NAME") ("NO_DRAW") ("NO_SELECTION") ("REFERENCE_OUT") ("TEXTANGLE") ("VERTICAL_ALIGNMENT") ("VISUALIZATION_IN") ("WINDOW_IN"))) 237 ("LA_TRIDC" pro nil (system) "%s, AL, A, AU, U2, Index" ("L20.html" ("DOUBLE" . 971273) ("STATUS" . 971275)))
248 ("LJLCT" pro nil (system) "%s" nil) 238 ("LA_TRIQL" pro nil (system) "%s, D, E [, A]" ("L22.html" ("DOUBLE" . 971540) ("STATUS" . 971542)))
249 ("LOADCT" pro nil (system) "%s [, Table]" (("BOTTOM") ("FILE") ("GET_NAMES") ("NCOLORS") ("SILENT"))) 239 ("LA_TRIRED" pro nil (system) "%s, Array, D, E" ("L23.html" ("DOUBLE" . 971643) ("UPPER" . 971645)))
250 ("LUDC" pro nil (system) "%s, A, Index" (("COLUMN") ("DOUBLE") ("INTERCHANGES"))) 240 ("LINKIMAGE" pro nil (system) "%s, Name, Image [, Type [, Entry]]" ("L34.html" ("DEVICE" . 855619) ("FUNCT" . 855622) ("KEYWORDS" . 855625) ("MAX_ARGS" . 855628) ("MIN_ARGS" . 855632)))
251 ("MAKE_DLL" pro nil (system) "%s, InputFiles [, OutputFile], ExportedRoutineNames" (("CC") ("COMPILE_DIRECTORY") ("DLL_PATH") ("EXPORTED_DATA") ("EXTRA_CFLAGS") ("EXTRA_LFLAGS") ("INPUT_DIRECTORY") ("LD") ("NOCLEANUP") ("OUTPUT_DIRECTORY") ("SHOW_ALL_OUTPUT") ("VAX_FLOAT") ("VERBOSE"))) 241 ("LOADCT" pro nil (system) "%s [, Table]" ("L40.html" ("BOTTOM" . 168327) ("FILE" . 759299) ("GET_NAMES" . 759305) ("NCOLORS" . 759308) ("SILENT" . 759311)))
252 ("MAP_CONTINENTS" pro nil (system) "%s" (("COASTS") ("COLOR") ("CONTINENTS") ("COUNTRIES") ("FILL_CONTINENTS") ("HIRES") ("LIMIT") ("MLINESTYLE") ("MLINETHICK") ("ORIENTATION") ("RIVERS") ("SPACING") ("T3D") ("USA") ("ZVALUE"))) 242 ("LUDC" pro nil (system) "%s, A, Index" ("L51.html" ("COLUMN" . 58718) ("DOUBLE" . 50959) ("INTERCHANGES" . 50962)))
253 ("MAP_GRID" pro nil (system) "%s" (("BOX_AXES") ("CHARSIZE") ("CLIP_TEXT") ("COLOR") ("FILL_HORIZON") ("GLINESTYLE") ("GLINETHICK") ("HORIZON") ("INCREMENT") ("LABEL") ("LATALIGN") ("LATDEL") ("LATLAB") ("LATNAMES") ("LATS") ("LONALIGN") ("LONDEL") ("LONLAB") ("LONNAMES") ("LONS") ("NO_GRID") ("ORIENTATION") ("T3D") ("ZVALUE"))) 243 ("MAKE_DLL" pro nil (system) "%s, InputFiles [, OutputFile], ExportedRoutineNames" ("M4.html" ("CC" . 960457) ("COMPILE_DIRECTORY" . 960459) ("DLL_PATH" . 960461) ("EXPORTED_DATA" . 960463) ("EXTRA_CFLAGS" . 960465) ("EXTRA_LFLAGS" . 960467) ("INPUT_DIRECTORY" . 960469) ("LD" . 960471) ("NOCLEANUP" . 960473) ("OUTPUT_DIRECTORY" . 960502) ("REUSE_EXISTING" . 973081) ("SHOW_ALL_OUTPUT" . 960504) ("VERBOSE" . 960506)))
254 ("MAP_PROJ_INFO" pro nil (system) "%s [, iproj]" (("AZIMUTHAL") ("CIRCLE") ("CURRENT") ("CYLINDRICAL") ("LL_LIMITS") ("NAME") ("PROJ_NAMES") ("UV_LIMITS") ("UV_RANGE"))) 244 ("MAP_CONTINENTS" pro nil (system) "%s" ("M6.html" ("COASTS" . 1048587) ("COLOR" . 887531) ("CONTINENTS" . 957787) ("COUNTRIES" . 887534) ("FILL_CONTINENTS" . 887537) ("HIRES" . 887540) ("LIMIT" . 957885) ("MAP_STRUCTURE" . 1059750) ("MLINESTYLE" . 1059754) ("MLINETHICK" . 887584) ("ORIENTATION" . 887588) ("RIVERS" . 887591) ("SPACING" . 887594) ("USA" . 887597)) ("graphkeyw2.html" ("T3D" . 315956) ("ZVALUE" . 316102)))
255 ("MAP_SET" pro nil (system) "%s [, P0lat, P0lon, Rot]" (("ADVANCE") ("AITOFF") ("ALBERS") ("AZIMUTHAL") ("CENTRAL_AZIMUTH") ("CHARSIZE") ("CLIP") ("COLOR") ("CON_COLOR") ("CONIC") ("CONTINENTS") ("CYLINDRICAL") ("E_CONTINENTS") ("E_GRID") ("E_HORIZON") ("ELLIPSOID") ("GLINESTYLE") ("GLINETHICK") ("GNOMIC") ("GOODESHOMOLOSINE") ("GRID") ("HAMMER") ("HIRES") ("HORIZON") ("ISOTROPIC") ("LABEL") ("LAMBERT") ("LATALIGN") ("LATDEL") ("LATLAB") ("LIMIT") ("LONDEL") ("LONLAB") ("MERCATOR") ("MILLER_CYLINDRICAL") ("MLINESTYLE") ("MLINETHICK") ("MOLLEWIDE") ("NAME") ("NOBORDER") ("NOERASE") ("ORTHOGRAPHIC") ("POSITION") ("REVERSE") ("ROBINSON") ("SAT_P") ("SATELLITE") ("SCALE") ("SINUSOIDAL") ("STANDARD_PARALLELS") ("STEREOGRAPHIC") ("T3D") ("TITLE") ("TRANSVERSE_MERCATOR") ("USA") ("XMARGIN") ("YMARGIN") ("ZVALUE"))) 245 ("MAP_GRID" pro nil (system) "%s" ("M7.html" ("BOX_AXES" . 919039) ("CHARSIZE" . 887636) ("CLIP_TEXT" . 919041) ("COLOR" . 887639) ("FILL_HORIZON" . 958045) ("GLINESTYLE" . 887642) ("GLINETHICK" . 887648) ("HORIZON" . 958090) ("INCREMENT" . 958092) ("LABEL" . 958064) ("LATALIGN" . 887654) ("LATDEL" . 887657) ("LATLAB" . 887660) ("LATNAMES" . 887663) ("LATS" . 887668) ("LONALIGN" . 887673) ("LONDEL" . 887676) ("LONLAB" . 887679) ("LONNAMES" . 887682) ("LONS" . 887687) ("MAP_STRUCTURE" . 1059914) ("NO_GRID" . 958111) ("ORIENTATION" . 887692)) ("graphkeyw2.html" ("T3D" . 315956) ("ZVALUE" . 316102)))
256 ("MESH_OBJ" pro nil (system) "%s, Type, Vertex_List, Polygon_List, Array1 [, Array2]" (("CLOSED") ("DEGREES") ("P1") ("P2") ("P3") ("P4") ("P5"))) 246 ("MAP_PROJ_INFO" pro nil (system) "%s [, iproj]" ("M12.html" ("AZIMUTHAL" . 918995) ("CIRCLE" . 928077) ("CURRENT" . 918999) ("CYLINDRICAL" . 919001) ("LL_LIMITS" . 919003) ("NAME" . 919005) ("PROJ_NAMES" . 919007) ("UV_LIMITS" . 919011) ("UV_RANGE" . 928995)))
257 ("MESSAGE" pro nil (system) "%s, [Text]" (("BLOCK") ("CONTINUE") ("INFORMATIONAL") ("IOERROR") ("NAME") ("NONAME") ("NOPREFIX") ("NOPRINT") ("RESET"))) 247 ("MAP_SET" pro nil (system) "%s [, P0lat, P0lon, Rot]" ("M15.html" ("ADVANCE" . 887984) ("AITOFF" . 957265) ("ALBERS" . 887925) ("AZIMUTHAL" . 887931) ("CENTRAL_AZIMUTH" . 888123) ("CHARSIZE" . 887987) ("CLIP" . 887990) ("COLOR" . 887997) ("CON_COLOR" . 888003) ("CONIC" . 887934) ("CONTINENTS" . 888000) ("CYLINDRICAL" . 887940) ("E_CONTINENTS" . 888006) ("E_GRID" . 888009) ("E_HORIZON" . 888013) ("ELLIPSOID" . 888127) ("GLINESTYLE" . 888019) ("GLINETHICK" . 888025) ("GNOMIC" . 887943) ("GOODESHOMOLOSINE" . 918601) ("GRID" . 949681) ("HAMMER" . 887946) ("HIRES" . 888031) ("HORIZON" . 888034) ("ISOTROPIC" . 888134) ("LABEL" . 918537) ("LAMBERT" . 887950) ("LATALIGN" . 888043) ("LATDEL" . 888049) ("LATLAB" . 888046) ("LIMIT" . 888141) ("LONALIGN" . 888052) ("LONDEL" . 888055) ("LONLAB" . 888058) ("MERCATOR" . 887953) ("MILLER_CYLINDRICAL" . 887956) ("MLINESTYLE" . 888061) ("MLINETHICK" . 888101) ("MOLLWEIDE" . 887959) ("NAME" . 958229) ("NOBORDER" . 958173) ("NOERASE" . 888107) ("ORTHOGRAPHIC" . 887962) ("REVERSE" . 888110) ("ROBINSON" . 919362) ("SAT_P" . 888146) ("SATELLITE" . 887965) ("SCALE" . 958134) ("SINUSOIDAL" . 887971) ("STANDARD_PARALLELS" . 888156) ("STEREOGRAPHIC" . 887974) ("TITLE" . 958298) ("TRANSVERSE_MERCATOR" . 887977) ("USA" . 888113) ("XMARGIN" . 958356) ("YMARGIN" . 888119)) ("graphkeyw2.html" ("POSITION" . 316026) ("T3D" . 315956) ("ZVALUE" . 316102)))
258 ("MK_HTML_HELP" pro nil (system) "%s, Sources, Filename" (("STRICT") ("TITLE") ("VERBOSE"))) 248 ("MESH_OBJ" pro nil (system) "%s, Type, Vertex_List, Polygon_List, Array1 [, Array2]" ("M29.html" ("CLOSED" . 888559) ("DEGREES" . 965212) ("P1" . 888562) ("P5")))
259 ("MODIFYCT" pro nil (system) "%s, Itab, Name, R, G, B" (("FILE"))) 249 ("MESSAGE" pro nil (system) "%s, [Text]" ("M34.html" ("BLOCK" . 888669) ("CONTINUE" . 965245) ("INFORMATIONAL" . 888672) ("IOERROR" . 888676) ("LEVEL" . 965401) ("NAME" . 965353) ("NONAME" . 965554) ("NOPREFIX" . 888682) ("NOPRINT" . 888686) ("REISSUE_LAST" . 1016375) ("RESET" . 1016373) ("TRACEBACK" . 888698)))
260 ("MPEG_CLOSE" pro nil (system) "%s, mpegID" nil) 250 ("MK_HTML_HELP" pro nil (system) "%s, Sources, Filename" ("M37.html" ("STRICT" . 888862) ("TITLE" . 888864) ("VERBOSE" . 888866)))
261 ("MPEG_PUT" pro nil (system) "%s, mpegID" (("COLOR") ("FRAME") ("IMAGE") ("ORDER") ("WINDOW"))) 251 ("MODIFYCT" pro nil (system) "%s, Itab, Name, R, G, B" ("M38.html" ("FILE" . 962516)))
262 ("MPEG_SAVE" pro nil (system) "%s, mpegID" (("FILENAME"))) 252 ("MPEG_CLOSE" pro nil (system) "%s, mpegID" ("M47.html"))
263 ("MSG_CAT_CLOSE" pro nil (system) "%s, object" nil) 253 ("MPEG_PUT" pro nil (system) "%s, mpegID" ("M49.html" ("COLOR" . 889108) ("FRAME" . 915949) ("IMAGE" . 889110) ("ORDER" . 889112) ("WINDOW" . 889114)))
264 ("MSG_CAT_COMPILE" pro nil (system) "%s, input[, output]" (("LOCALE_ALIAS") ("MBCS"))) 254 ("MPEG_SAVE" pro nil (system) "%s, mpegID" ("M50.html" ("FILENAME" . 889150)))
265 ("MULTI" pro nil (system) "%s, N" nil) 255 ("MULTI" pro nil (system) "%s, N" ("M51.html"))
266 ("NCDF_ATTDEL" pro nil (system) "%s, Cdfid [, Varid]" (("GLOBAL"))) 256 ("NCDF_ATTCDEL" pro nil (system) "%s, Cdfid [, Varid]" ("NetCDF-routines12.html" ("GLOBAL" . 996962)))
267 ("NCDF_ATTGET" pro nil (system) "%s, Cdfid [, Varid]" (("GLOBAL"))) 257 ("NCDF_ATTGET" pro nil (system) "%s, Cdfid [, Varid]" ("NetCDF-routines13.html" ("GLOBAL" . 996996)))
268 ("NCDF_ATTPUT" pro nil (system) "%s, Cdfid [, Varid]" (("BYTE") ("CHAR") ("DOUBLE") ("FLOAT") ("GLOBAL") ("LENGTH") ("LONG") ("SHORT"))) 258 ("NCDF_ATTPUT" pro nil (system) "%s, Cdfid [, Varid]" ("NetCDF-routines16.html" ("BYTE" . 997126) ("CHAR" . 997129) ("DOUBLE" . 997132) ("FLOAT" . 997135) ("GLOBAL" . 997116) ("LENGTH" . 997119) ("LONG" . 997138) ("SHORT" . 997141)))
269 ("NCDF_ATTRENAME" pro nil (system) "%s, Cdfid [, Varid]" (("GLOBAL"))) 259 ("NCDF_ATTRENAME" pro nil (system) "%s, Cdfid [, Varid]" ("NetCDF-routines17.html" ("GLOBAL" . 997166)))
270 ("NCDF_CLOSE" pro nil (system) "%s, Cdfid" nil) 260 ("NCDF_CLOSE" pro nil (system) "%s, Cdfid" ("NetCDF-routines18.html"))
271 ("NCDF_CONTROL" pro nil (system) "%s, Cdfid" (("ABORT") ("ENDEF") ("FILL") ("NOFILL") ("NOVERBOSE") ("OLDFILL") ("REDEF") ("SYNC") ("VERBOSE"))) 261 ("NCDF_CONTROL" pro nil (system) "%s, Cdfid" ("NetCDF-routines19.html" ("ABORT" . 997195) ("ENDEF" . 997198) ("FILL" . 997201) ("NOFILL" . 997237) ("NOVERBOSE" . 997240) ("OLDFILL" . 997243) ("REDEF" . 997247) ("SYNC" . 997250) ("VERBOSE" . 997253)))
272 ("NCDF_DIMINQ" pro nil (system) "%s, Cdfid, Dimid, Name, Size" nil) 262 ("NCDF_DIMINQ" pro nil (system) "%s, Cdfid, Dimid, Name, Size" ("NetCDF-routines23.html"))
273 ("NCDF_DIMRENAME" pro nil (system) "%s, Cdfid, Dimid, NewName" nil) 263 ("NCDF_DIMRENAME" pro nil (system) "%s, Cdfid, Dimid, NewName" ("NetCDF-routines24.html"))
274 ("NCDF_VARGET" pro nil (system) "%s, Cdfid, Varid, Value" (("COUNT") ("OFFSET") ("STRIDE"))) 264 ("NCDF_VARGET" pro nil (system) "%s, Cdfid, Varid, Value" ("NetCDF-routines29.html" ("COUNT" . 997494) ("OFFSET" . 997497) ("STRIDE" . 997500)))
275 ("NCDF_VARGET1" pro nil (system) "%s, Cdfid, Varid, Value" (("OFFSET"))) 265 ("NCDF_VARGET1" pro nil (system) "%s, Cdfid, Varid, Value" ("NetCDF-routines30.html" ("OFFSET" . 997545)))
276 ("NCDF_VARPUT" pro nil (system) "%s, Cdfid, Varid, Value" (("COUNT") ("OFFSET") ("STRIDE"))) 266 ("NCDF_VARPUT" pro nil (system) "%s, Cdfid, Varid, Value" ("NetCDF-routines33.html" ("COUNT" . 997627) ("OFFSET" . 997630) ("STRIDE" . 997633)))
277 ("NCDF_VARRENAME" pro nil (system) "%s, Cdfid, Varid, Name" nil) 267 ("NCDF_VARRENAME" pro nil (system) "%s, Cdfid, Varid, Name" ("NetCDF-routines34.html"))
278 ("OBJ_DESTROY" pro nil (system) "%s, ObjRef [, Arg1, ..., Argn]" nil) 268 ("OBJ" pro nil (system) "%s - > [IDLffJPEG2000::]Cleanup" ("objects_ff37.html"))
279 ("ON_ERROR" pro nil (system) "%s, N" nil) 269 ("OBJ_DESTROY" pro nil (system) "%s, Obj" ("objects_ff89.html"))
280 ("ON_IOERROR" pro nil (system) "%s, Label" nil) 270 ("ON_ERROR" pro nil (system) "%s, N" ("O7.html"))
281 ("ONLINE_HELP" pro nil (system) "%s [, Value]" (("BOOK") ("CONTEXT") ("FULL_PATH") ("HTML_HELP") ("QUIT") ("TOPICS"))) 271 ("ON_IOERROR" pro nil (system) "%s, Label" ("O8.html"))
282 ("OPENR" pro nil (system) "%s, Unit, File [, Record_Length]" (("APPEND") ("BLOCK") ("BUFSIZE") ("COMPRESS") ("DEFAULT") ("DELETE") ("ERROR") ("EXTENDSIZE") ("F77_UNFORMATTED") ("FIXED") ("FORTRAN") ("GET_LUN") ("INITIALSIZE") ("KEYED") ("LIST") ("MACCREATOR") ("MACTYPE") ("MORE") ("NOEXPAND_PATH") ("NONE") ("PRINT") ("RAWIO") ("SEGMENTED") ("SHARED") ("STDIO") ("STREAM") ("SUBMIT") ("SUPERSEDE") ("SWAP_ENDIAN") ("SWAP_IF_BIG_ENDIAN") ("SWAP_IF_LITTLE_ENDIAN") ("TRUNCATE_ON_CLOSE") ("UDF_BLOCK") ("VARIABLE") ("VAX_FLOAT") ("WIDTH") ("XDR"))) 272 ("ONLINE_HELP" pro nil (system) "%s [, Value]" ("O9.html" ("BOOK" . 889642) ("CONTEXT" . 934178) ("FOLD_CASE" . 934187) ("FULL_PATH" . 932136) ("PAGE" . 934194) ("QUIT" . 932700) ("SUPPRESS_PLUGIN_ERRORS" . 940902) ("TOPICS" . 931860)))
283 ("OPENU" pro nil (system) "%s, Unit, File [, Record_Length]" (("APPEND") ("BLOCK") ("BUFSIZE") ("COMPRESS") ("DEFAULT") ("DELETE") ("ERROR") ("EXTENDSIZE") ("F77_UNFORMATTED") ("FIXED") ("FORTRAN") ("GET_LUN") ("INITIALSIZE") ("KEYED") ("LIST") ("MACCREATOR") ("MACTYPE") ("MORE") ("NOEXPAND_PATH") ("NONE") ("PRINT") ("RAWIO") ("SEGMENTED") ("SHARED") ("STDIO") ("STREAM") ("SUBMIT") ("SUPERSEDE") ("SWAP_ENDIAN") ("SWAP_IF_BIG_ENDIAN") ("SWAP_IF_LITTLE_ENDIAN") ("TRUNCATE_ON_CLOSE") ("UDF_BLOCK") ("VARIABLE") ("VAX_FLOAT") ("WIDTH") ("XDR"))) 273 ("ONLINE_HELP_PDF_INDEX" pro nil (system) "%s [, SearchTerm]" ("O10.html"))
284 ("OPENW" pro nil (system) "%s, Unit, File [, Record_Length]" (("APPEND") ("BLOCK") ("BUFSIZE") ("COMPRESS") ("DEFAULT") ("DELETE") ("ERROR") ("EXTENDSIZE") ("F77_UNFORMATTED") ("FIXED") ("FORTRAN") ("GET_LUN") ("INITIALSIZE") ("KEYED") ("LIST") ("MACCREATOR") ("MACTYPE") ("MORE") ("NOEXPAND_PATH") ("NONE") ("PRINT") ("RAWIO") ("SEGMENTED") ("SHARED") ("STDIO") ("STREAM") ("SUBMIT") ("SUPERSEDE") ("SWAP_ENDIAN") ("SWAP_IF_BIG_ENDIAN") ("SWAP_IF_LITTLE_ENDIAN") ("TRUNCATE_ON_CLOSE") ("UDF_BLOCK") ("VARIABLE") ("VAX_FLOAT") ("WIDTH") ("XDR"))) 274 ("OPENR" pro nil (system) "%s, Unit, File" ("O11.html" ("APPEND" . 889709) ("BUFSIZE" . 889712) ("COMPRESS" . 928372) ("DELETE" . 928370) ("ERROR" . 889720) ("F77_UNFORMATTED" . 889729) ("GET_LUN" . 889739) ("MORE" . 889747) ("NOEXPAND_PATH" . 929441) ("RAWIO" . 934244) ("STDIO" . 930929) ("SWAP_ENDIAN" . 889764) ("SWAP_IF_BIG_ENDIAN" . 889767) ("SWAP_IF_LITTLE_ENDIAN" . 889770) ("VAX_FLOAT" . 889773) ("WIDTH" . 889787) ("XDR" . 889796)))
285 ("OPLOT" pro nil (system) "%s, [X,] Y" (("CLIP") ("COLOR") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NOCLIP") ("NSUM") ("POLAR") ("PSYM") ("SYMSIZE") ("T3D") ("THICK") ("ZVALUE"))) 275 ("OPENU" pro nil (system) "%s, Unit, File" ("O11.html" ("APPEND" . 889709) ("BUFSIZE" . 889712) ("COMPRESS" . 928372) ("DELETE" . 928370) ("ERROR" . 889720) ("F77_UNFORMATTED" . 889729) ("GET_LUN" . 889739) ("MORE" . 889747) ("NOEXPAND_PATH" . 929441) ("RAWIO" . 934244) ("STDIO" . 930929) ("SWAP_ENDIAN" . 889764) ("SWAP_IF_BIG_ENDIAN" . 889767) ("SWAP_IF_LITTLE_ENDIAN" . 889770) ("VAX_FLOAT" . 889773) ("WIDTH" . 889787) ("XDR" . 889796)))
286 ("OPLOTERR" pro nil (system) "%s, [ X ,] Y , Err [, Psym]" nil) 276 ("OPENW" pro nil (system) "%s, Unit, File" ("O11.html" ("APPEND" . 889709) ("BUFSIZE" . 889712) ("COMPRESS" . 928372) ("DELETE" . 928370) ("ERROR" . 889720) ("F77_UNFORMATTED" . 889729) ("GET_LUN" . 889739) ("MORE" . 889747) ("NOEXPAND_PATH" . 929441) ("RAWIO" . 934244) ("STDIO" . 930929) ("SWAP_ENDIAN" . 889764) ("SWAP_IF_BIG_ENDIAN" . 889767) ("SWAP_IF_LITTLE_ENDIAN" . 889770) ("VAX_FLOAT" . 889773) ("WIDTH" . 889787) ("XDR" . 889796)))
287 ("PARTICLE_TRACE" pro nil (system) "%s, Data, Seeds, Verts, Conn [, Normals]" (("ANISOTROPY") ("INTEGRATION") ("MAX_ITERATIONS") ("MAX_STEPSIZE") ("SEED_NORMAL") ("TOLERANCE") ("UNIFORM"))) 277 ("OPLOT" pro nil (system) "%s, [X,] Y" ("O12.html" ("MAX_VALUE" . 889969) ("MIN_VALUE" . 889976) ("NSUM" . 889983) ("POLAR" . 889990) ("THICK" . 889995)) ("graphkeyw2.html" ("CLIP" . 315949) ("COLOR" . 315952) ("LINESTYLE" . 331728) ("NOCLIP" . 323508) ("PSYM" . 316038) ("SYMSIZE" . 316061) ("T3D" . 315956) ("ZVALUE" . 316102)))
288 ("PLOT" pro nil (system) "%s, [X,] Y" (("BACKGROUND") ("CHARSIZE") ("CHARTHICK") ("CLIP") ("COLOR") ("DATA") ("DEVICE") ("FONT") ("ISOTROPIC") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NOCLIP") ("NODATA") ("NOERASE") ("NORMAL") ("NSUM") ("POLAR") ("POSITION") ("PSYM") ("SUBTITLE") ("SYMSIZE") ("T3D") ("THICK") ("TICKLEN") ("TITLE") ("XCHARSIZE") ("XGRIDSTYLE") ("XLOG") ("XMARGIN") ("XMINOR") ("XRANGE") ("XSTYLE") ("XTHICK") ("XTICK_GET") ("XTICKFORMAT") ("XTICKINTERVAL") ("XTICKLAYOUT") ("XTICKLEN") ("XTICKNAME") ("XTICKS") ("XTICKUNITS") ("XTICKV") ("XTITLE") ("YCHARSIZE") ("YGRIDSTYLE") ("YLOG") ("YMARGIN") ("YMINOR") ("YNOZERO") ("YRANGE") ("YSTYLE") ("YTHICK") ("YTICK_GET") ("YTICKFORMAT") ("YTICKINTERVAL") ("YTICKLAYOUT") ("YTICKLEN") ("YTICKNAME") ("YTICKS") ("YTICKUNITS") ("YTICKV") ("YTITLE") ("ZCHARSIZE") ("ZGRIDSTYLE") ("ZMARGIN") ("ZMINOR") ("ZRANGE") ("ZSTYLE") ("ZTHICK") ("ZTICK_GET") ("ZTICKFORMAT") ("ZTICKINTERVAL") ("ZTICKLAYOUT") ("ZTICKLEN") ("ZTICKNAME") ("ZTICKS") ("ZTICKUNITS") ("ZTICKV") ("ZTITLE") ("ZVALUE"))) 278 ("OPLOTERR" pro nil (system) "%s, [ X ,] Y , Err [, Psym]" ("O13.html"))
289 ("PLOT_3DBOX" pro nil (system) "%s, X, Y, Z" (("AX") ("AZ") ("BACKGROUND") ("CHARSIZE") ("CHARTHICK") ("CLIP") ("COLOR") ("DATA") ("DEVICE") ("GRIDSTYLE") ("ISOTROPIC") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NOCLIP") ("NODATA") ("NOERASE") ("NORMAL") ("NSUM") ("POLAR") ("POSITION") ("PSYM") ("SOLID_WALLS") ("SUBTITLE") ("T3D") ("THICK") ("TICKLEN") ("TITLE") ("XCHARSIZE") ("XGRIDSTYLE") ("XLOG") ("XMARGIN") ("XMINOR") ("XRANGE") ("XSTYLE") ("XTHICK") ("XTICKFORMAT") ("XTICKINTERVAL") ("XTICKLAYOUT") ("XTICKLEN") ("XTICKNAME") ("XTICKS") ("XTICKUNITS") ("XTICKV") ("XTITLE") ("XY_PLANE") ("XYSTYLE") ("XZ_PLANE") ("XZSTYLE") ("YCHARSIZE") ("YGRIDSTYLE") ("YLOG") ("YMARGIN") ("YMINOR") ("YNOZERO") ("YRANGE") ("YSTYLE") ("YTHICK") ("YTICKFORMAT") ("YTICKINTERVAL") ("YTICKLAYOUT") ("YTICKLEN") ("YTICKNAME") ("YTICKS") ("YTICKUNITS") ("YTICKV") ("YTITLE") ("YZ_PLANE") ("YZSTYLE") ("ZAXIS") ("ZCHARSIZE") ("ZGRIDSTYLE") ("ZMARGIN") ("ZMINOR") ("ZRANGE") ("ZSTYLE") ("ZTHICK") ("ZTICKFORMAT") ("ZTICKINTERVAL") ("ZTICKLAYOUT") ("ZTICKLEN") ("ZTICKNAME") ("ZTICKS") ("ZTICKUNITS") ("ZTICKV") ("ZTITLE"))) 279 ("PARTICLE_TRACE" pro nil (system) "%s, Data, Seeds, Verts, Conn [, Normals]" ("P2.html" ("ANISOTROPY" . 1071147) ("INTEGRATION" . 1071149) ("MAX_ITERATIONS" . 1071158) ("MAX_STEPSIZE" . 1071160) ("SEED_NORMAL" . 1071154) ("TOLERANCE" . 1071156) ("UNIFORM" . 1071162)))
290 ("PLOT_FIELD" pro nil (system) "%s, U, V" (("ASPECT") ("LENGTH") ("N") ("TITLE"))) 280 ("PATH_CACHE" pro nil (system) "%s" ("P3.html" ("CLEAR" . 1105531) ("ENABLE" . 1105534) ("REBUILD" . 1105537)))
291 ("PLOTERR" pro nil (system) "%s, [ X ,] Y , Err" (("PSYM") ("TYPE"))) 281 ("PLOT" pro nil (system) "%s, [X,] Y" ("P6.html" ("ISOTROPIC" . 948898) ("MAX_VALUE" . 678098) ("MIN_VALUE" . 47057) ("NSUM" . 678100) ("POLAR" . 678103) ("THICK" . 678106) ("XLOG" . 810411) ("YLOG" . 810463) ("YNOZERO" . 810415)) ("graphkeyw2.html" ("BACKGROUND" . 328424) ("CHARSIZE" . 266973) ("CHARTHICK" . 331668) ("CLIP" . 315949) ("COLOR" . 315952) ("DATA" . 315961) ("DEVICE" . 315977) ("FONT" . 331795) ("LINESTYLE" . 331728) ("NOCLIP" . 323508) ("NODATA" . 316018) ("NOERASE" . 316024) ("NORMAL" . 315963) ("POSITION" . 316026) ("PSYM" . 316038) ("SUBTITLE" . 316057) ("SYMSIZE" . 316061) ("T3D" . 315956) ("TICKLEN" . 332207) ("TITLE" . 332238) ("XCHARSIZE" . 331699) ("XGRIDSTYLE" . 332009) ("XMARGIN" . 332038) ("XMINOR" . 332061) ("XRANGE" . 332090) ("XSTYLE" . 332116) ("XTHICK" . 332298) ("XTICK_GET" . 332321) ("XTICKFORMAT" . 332347) ("XTICKINTERVAL" . 332463) ("XTICKLAYOUT" . 332488) ("XTICKLEN" . 332513) ("XTICKNAME" . 332536) ("XTICKS" . 332559) ("XTICKUNITS" . 332586) ("XTICKV" . 332628) ("XTITLE" . 316100) ("YCHARSIZE" . 331699) ("YGRIDSTYLE" . 332009) ("YMARGIN" . 332038) ("YMINOR" . 332061) ("YRANGE" . 332090) ("YSTYLE" . 332116) ("YTHICK" . 332298) ("YTICK_GET" . 332321) ("YTICKFORMAT" . 332347) ("YTICKINTERVAL" . 332463) ("YTICKLAYOUT" . 332488) ("YTICKLEN" . 332513) ("YTICKNAME" . 332536) ("YTICKS" . 332559) ("YTICKUNITS" . 332586) ("YTICKV" . 332628) ("YTITLE" . 316100) ("ZCHARSIZE" . 331699) ("ZGRIDSTYLE" . 332009) ("ZMARGIN" . 332038) ("ZMINOR" . 332061) ("ZRANGE" . 332090) ("ZSTYLE" . 332116) ("ZTHICK" . 332298) ("ZTICK_GET" . 332321) ("ZTICKFORMAT" . 332347) ("ZTICKINTERVAL" . 332463) ("ZTICKLAYOUT" . 332488) ("ZTICKLEN" . 332513) ("ZTICKNAME" . 332536) ("ZTICKS" . 332559) ("ZTICKUNITS" . 332586) ("ZTICKV" . 332628) ("ZTITLE" . 316100) ("ZVALUE" . 316102)))
292 ("PLOTS" pro nil (system) "%s, X [, Y [, Z]]" (("CLIP") ("COLOR") ("CONTINUE") ("DATA") ("DEVICE") ("LINESTYLE") ("NOCLIP") ("NORMAL") ("PSYM") ("SYMSIZE") ("T3D") ("THICK") ("Z"))) 282 ("PLOT_3DBOX" pro nil (system) "%s, X, Y, Z" ("P7.html" ("GRIDSTYLE" . 137555) ("PSYM" . 137608) ("SOLID_WALLS" . 835291) ("XY_PLANE" . 137639) ("XYSTYLE" . 137642) ("XZ_PLANE" . 137637) ("XZSTYLE" . 137638) ("YZ_PLANE" . 137640) ("YZSTYLE" . 137643)) ("S75.html" ("AX" . 679220) ("AZ" . 679225) ("ZAXIS" . 679256)))
293 ("POINT_LUN" pro nil (system) "%s, Unit, Position" nil) 283 ("PLOT_FIELD" pro nil (system) "%s, U, V" ("P8.html" ("ASPECT" . 757604) ("LENGTH" . 757607) ("N" . 757610) ("TITLE" . 757613)))
294 ("POLAR_CONTOUR" pro nil (system) "%s, Z, Theta, R" (("C_ANNOTATION") ("C_CHARSIZE") ("C_CHARTHICK") ("C_COLORS") ("C_LINESTYLE") ("C_ORIENTATION") ("C_SPACING") ("C_THICK") ("CLOSED") ("FILL") ("IRREGULAR") ("LEVELS") ("MAX_VALUE") ("MIN_VALUE") ("NLEVELS") ("OVERPLOT") ("PATH_DATA_COORDS") ("SHOW_TRIANGULATION") ("TRIANGULATION") ("XLOG") ("YLOG") ("ZAXIS"))) 284 ("PLOTERR" pro nil (system) "%s, [ X ,] Y , Err" ("P9.html" ("PSYM" . 757654) ("TYPE" . 757647)))
295 ("POLYFILL" pro nil (system) "%s, X [, Y [, Z]]" (("CLIP") ("COLOR") ("DATA") ("DEVICE") ("IMAGE_COORD") ("IMAGE_INTERP") ("LINE_FILL") ("LINESTYLE") ("NOCLIP") ("NORMAL") ("ORIENTATION") ("PATTERN") ("SPACING") ("T3D") ("THICK") ("TRANSPARENT") ("Z"))) 285 ("PLOTS" pro nil (system) "%s, X [, Y [, Z]]" ("P10.html" ("CONTINUE" . 678168)) ("graphkeyw2.html" ("CLIP" . 315949) ("COLOR" . 315952) ("DATA" . 315961) ("DEVICE" . 315977) ("LINESTYLE" . 331728) ("NOCLIP" . 323508) ("NORMAL" . 315963) ("PSYM" . 316038) ("SYMSIZE" . 316061) ("T3D" . 315956) ("THICK" . 316006) ("Z" . 332658)))
296 ("POLYWARP" pro nil (system) "%s, Xi, Yi, Xo, Yo, Degree, Kx, Ky" (("DOUBLE") ("STATUS"))) 286 ("POINT_LUN" pro nil (system) "%s, Unit, Position" ("P12.html"))
297 ("POPD" pro nil (system) "%s" nil) 287 ("POLAR_CONTOUR" pro nil (system) "%s, Z, Theta, R" ("P13.html" ("SHOW_TRIANGULATION" . 128404)) ("C40.html" ("C_ANNOTATION" . 1023103) ("C_CHARSIZE" . 676279) ("C_CHARTHICK" . 905138) ("C_COLORS" . 676281) ("C_LINESTYLE" . 676292) ("C_ORIENTATION" . 676298) ("C_SPACING" . 676300) ("C_THICK" . 676302) ("CLOSED" . 676304) ("FILL" . 676308) ("IRREGULAR" . 879096) ("LEVELS" . 927695) ("MAX_VALUE" . 676323) ("MIN_VALUE" . 47033) ("NLEVELS" . 676325) ("OVERPLOT" . 861732) ("PATH_DATA_COORDS" . 879089) ("TRIANGULATION" . 746344) ("XLOG" . 158329) ("YLOG" . 158344) ("ZAXIS" . 676344)))
298 ("POWELL" pro nil (system) "%s, P, Xi, Ftol, Fmin, Func" (("DOUBLE") ("ITER") ("ITMAX"))) 288 ("POLYFILL" pro nil (system) "%s, X [, Y [, Z]]" ("P19.html" ("IMAGE_COORD" . 678254) ("IMAGE_INTERP" . 678256) ("LINE_FILL" . 678258) ("PATTERN" . 678260) ("SPACING" . 678269) ("TRANSPARENT" . 678271)) ("graphkeyw2.html" ("CLIP" . 315949) ("COLOR" . 315952) ("DATA" . 315961) ("DEVICE" . 315977) ("LINESTYLE" . 331728) ("NOCLIP" . 323508) ("NORMAL" . 315963) ("ORIENTATION" . 315964) ("T3D" . 315956) ("THICK" . 316006) ("Z" . 332658)))
299 ("PRINT" pro nil (system) "%s [, Expr1, ..., Exprn]" (("AM_PM") ("DAYS_OF_WEEK") ("FORMAT") ("MONTHS") ("REWRITE") ("STDIO_NON_FINITE"))) 289 ("POLYWARP" pro nil (system) "%s, Xi, Yi, Xo, Yo, Degree, Kx, Ky" ("P22.html" ("DOUBLE" . 1075034) ("STATUS" . 1075060)))
300 ("PRINTD" pro nil (system) "%s" nil) 290 ("POPD" pro nil (system) "%s" ("P23.html"))
301 ("PRINTF" pro nil (system) "%s [, Unit, Expr1, ..., Exprn]" (("AM_PM") ("DAYS_OF_WEEK") ("FORMAT") ("MONTHS") ("REWRITE") ("STDIO_NON_FINITE"))) 291 ("POWELL" pro nil (system) "%s, P, Xi, Ftol, Fmin, Func" ("P24.html" ("DOUBLE" . 51467) ("ITER" . 51470) ("ITMAX" . 51473)))
302 ("PROFILER" pro nil (system) "%s [, Module]" (("CLEAR") ("DATA") ("OUTPUT") ("REPORT") ("RESET") ("SYSTEM"))) 292 ("PRINT" pro nil (system) "%s [, Expr1, ..., Exprn]" ("P26.html" ("AM_PM" . 678362) ("DAYS_OF_WEEK" . 1015582) ("FORMAT" . 1015576) ("MONTHS" . 1015619) ("STDIO_NON_FINITE" . 1015513)))
303 ("PROFILES" pro nil (system) "%s, Image" (("ORDER") ("SX") ("SY") ("WSIZE"))) 293 ("PRINTD" pro nil (system) "%s" ("P27.html"))
304 ("PS_SHOW_FONTS" pro nil (system) "%s" (("NOLATIN"))) 294 ("PRINTF" pro nil (system) "%s [, Unit, Expr1, ..., Exprn]" ("P26.html" ("AM_PM" . 678362) ("DAYS_OF_WEEK" . 1015582) ("FORMAT" . 1015576) ("MONTHS" . 1015619) ("STDIO_NON_FINITE" . 1015513)))
305 ("PSAFM" pro nil (system) "%s, Input_Filename, Output_Filename" nil) 295 ("PROFILER" pro nil (system) "%s [, Module]" ("P31.html" ("CLEAR" . 900205) ("DATA" . 1088814) ("OUTPUT" . 900155) ("REPORT" . 900194) ("RESET" . 900195) ("SYSTEM" . 900159)))
306 ("PSEUDO" pro nil (system) "%s, Litlo, Lithi, Satlo, Sathi, Hue, Loops [, Colr]" nil) 296 ("PROFILES" pro nil (system) "%s, Image" ("P32.html" ("ORDER" . 757719) ("SX" . 757722) ("SY" . 757725) ("WSIZE" . 757728)))
307 ("PTR_FREE" pro nil (system) "%s, P1, ... ..., Pn" nil) 297 ("PS_SHOW_FONTS" pro nil (system) "%s" ("P34.html" ("NOLATIN" . 762026)))
308 ("PUSHD" pro nil (system) "%s, Dir" nil) 298 ("PSAFM" pro nil (system) "%s, Input_Filename, Output_Filename" ("P35.html"))
309 ("QHULL" pro nil (system) "%s, V, Tr or, QHULL, V0 , V1, [, V2 ... [, V6] ] , Tr" (("BOUNDS") ("CONNECTIVITY") ("DELAUNAY") ("SPHERE") ("VDIAGRAM") ("VNORMALS") ("VVERTICES"))) 299 ("PSEUDO" pro nil (system) "%s, Litlo, Lithi, Satlo, Sathi, Hue, Loops [, Colr]" ("P36.html"))
310 ("RDPIX" pro nil (system) "%s, Image [, X0, Y0]" nil) 300 ("PTR_FREE" pro nil (system) "%s, P1, ... ..., Pn" ("P37.html"))
311 ("READ" pro nil (system) "%s, [Prompt,] Var1, ..., Varn" (("AM_PM") ("DAYS_OF_WEEK") ("FORMAT") ("KEY_ID") ("KEY_MATCH") ("KEY_VALUE") ("MONTHS") ("PROMPT"))) 301 ("PUSHD" pro nil (system) "%s, Dir" ("P41.html"))
312 ("READ_INTERFILE" pro nil (system) "%s, File, Data" nil) 302 ("QHULL" pro nil (system) "%s, V, Tr or, %s, V0 , V1, [, V2 ... [, V6] ] , Tr" ("Q2.html" ("BOUNDS" . 1073465) ("CONNECTIVITY" . 1073467) ("DELAUNAY" . 1073473) ("SPHERE" . 1073475) ("VDIAGRAM" . 1073477) ("VNORMALS" . 1073481) ("VVERTICES" . 1073483)))
313 ("READ_JPEG" pro nil (system) "%s [, Filename]" (("BUFFER") ("COLORS") ("DITHER") ("GRAYSCALE") ("ORDER") ("TRUE") ("TWO_PASS_QUANTIZE") ("UNIT"))) 303 ("RDPIX" pro nil (system) "%s, Image [, X0, Y0]" ("R7.html"))
314 ("READ_PICT" pro nil (system) "%s, Filename, Image [, R, G, B]" nil) 304 ("READ" pro nil (system) "%s, [Prompt,] Var1, ..., Varn" ("R8.html" ("AM_PM" . 1015647) ("DAYS_OF_WEEK" . 1015649) ("FORMAT" . 1015645) ("MONTHS" . 1015670) ("PROMPT" . 863855)))
315 ("READ_PPM" pro nil (system) "%s, Filename, Image" (("MAXVAL"))) 305 ("READ_GIF" pro nil (system) "%s, Filename, Image [, R, G, B]" ("R13.html" ("CLOSE" . 1165757) ("MULTIPLE" . 1165763)))
316 ("READ_SRF" pro nil (system) "%s, Filename, Image [, R, G, B]" nil) 306 ("READ_INTERFILE" pro nil (system) "%s, File, Data" ("R15.html"))
317 ("READ_WAVE" pro nil (system) "%s, File, Variables, Names, Dimensions" (("MESHNAMES"))) 307 ("READ_JPEG" pro nil (system) "%s [, Filename] , Image [, Colortable]" ("R16.html" ("BUFFER" . 279694) ("COLORS" . 279696) ("DITHER" . 279697) ("GRAYSCALE" . 1064444) ("ORDER" . 868283) ("TRUE" . 279699) ("TWO_PASS_QUANTIZE" . 279700) ("UNIT" . 279701)))
318 ("READ_X11_BITMAP" pro nil (system) "%s, File, Bitmap [, X, Y]" (("EXPAND_TO_BYTES"))) 308 ("READ_PICT" pro nil (system) "%s, Filename, Image [, R, G, B]" ("R19.html"))
319 ("READF" pro nil (system) "%s, [Prompt,] Var1, ..., Varn" (("AM_PM") ("DAYS_OF_WEEK") ("FORMAT") ("KEY_ID") ("KEY_MATCH") ("KEY_VALUE") ("MONTHS") ("PROMPT"))) 309 ("READ_PPM" pro nil (system) "%s, Filename, Image" ("R21.html" ("MAXVAL" . 67809)))
320 ("READS" pro nil (system) "%s, Input, Var1, ..., Varn" (("AM_PM") ("DAYS_OF_WEEK") ("FORMAT") ("MONTHS"))) 310 ("READ_SRF" pro nil (system) "%s, Filename, Image [, R, G, B]" ("R23.html"))
321 ("READU" pro nil (system) "%s, Unit, Var1, ..., Varn" (("KEY_ID") ("KEY_MATCH") ("KEY_VALUE") ("TRANSFER_COUNT"))) 311 ("READ_WAVE" pro nil (system) "%s, File, Variables, Names, Dimensions" ("R27.html" ("MESHNAMES" . 756240)))
322 ("REDUCE_COLORS" pro nil (system) "%s, Image, Values" nil) 312 ("READ_X11_BITMAP" pro nil (system) "%s, File, Bitmap [, X, Y]" ("R28.html" ("EXPAND_TO_BYTES" . 756264)))
323 ("REPLICATE_INPLACE" pro nil (system) "%s, X, Value [, D1, Loc1 [, D2, Range]]" nil) 313 ("READF" pro nil (system) "%s, [Prompt,] Unit, Var1, ..., Varn" ("R8.html" ("AM_PM" . 1015647) ("DAYS_OF_WEEK" . 1015649) ("FORMAT" . 1015645) ("MONTHS" . 1015670) ("PROMPT" . 863855)))
324 ("RESOLVE_ALL" pro nil (system) "%s" (("CONTINUE_ON_ERROR") ("QUIET"))) 314 ("READS" pro nil (system) "%s, Input, Var1, ..., Varn" ("R30.html" ("AM_PM" . 1015707) ("DAYS_OF_WEEK" . 1015709) ("FORMAT" . 678457) ("MONTHS" . 1015728)))
325 ("RESOLVE_ROUTINE" pro nil (system) "%s, Name" (("COMPILE_FULL_FILE") ("EITHER") ("IS_FUNCTION") ("NO_RECOMPILE"))) 315 ("READU" pro nil (system) "%s, Unit, Var1, ..., Varn" ("R31.html" ("TRANSFER_COUNT" . 678471)))
326 ("RESTORE" pro nil (system) "%s [, Filename]" (("FILENAME") ("RELAXED_STRUCTURE_ASSIGNMENT") ("RESTORED_OBJECTS") ("VERBOSE"))) 316 ("REDUCE_COLORS" pro nil (system) "%s, Image, Values" ("R36.html"))
327 ("RETALL" pro nil (system) "%s" nil) 317 ("REGISTER_CURSOR" pro nil (system) "%s, Name, Image" ("R39.html" ("HOTSPOT" . 1108842) ("MASK" . 1108840) ("OVERWRITE" . 1108844)))
328 ("RETURN" pro nil (system) "%s [, Return_value]" nil) 318 ("REPLICATE_INPLACE" pro nil (system) "%s, X, Value [, D1, Loc1 [, D2, Range]]" ("R43.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
329 ("REWIND" pro nil (system) "%s, Unit" nil) 319 ("RESOLVE_ALL" pro nil (system) "%s" ("R44.html" ("CLASS" . 1114080) ("CONTINUE_ON_ERROR" . 1114078) ("QUIET" . 1014991) ("RESOLVE_EITHER" . 1166218) ("RESOLVE_FUNCTION" . 1166223) ("RESOLVE_PROCEDURE" . 1166248) ("SKIP_ROUTINES" . 1166262) ("UNRESOLVED" . 1166255)))
330 ("RIEMANN" pro nil (system) "%s, P, A, Theta" (("BACKPROJECT") ("BILINEAR") ("CENTER") ("COR") ("CUBIC") ("D") ("ROW"))) 320 ("RESOLVE_ROUTINE" pro nil (system) "%s, Name" ("R45.html" ("COMPILE_FULL_FILE" . 1069898) ("EITHER" . 1073138) ("IS_FUNCTION" . 1069896) ("NO_RECOMPILE" . 1069991)))
331 ("SAVE" pro nil (system) "%s [, Var1, ..., Varn]" (("ALL") ("COMM") ("COMPRESS") ("FILENAME") ("ROUTINES") ("SYSTEM_VARIABLES") ("VARIABLES") ("VERBOSE"))) 321 ("RESTORE" pro nil (system) "%s [[, Filename]]" ("R46.html" ("DESCRIPTION" . 1135778) ("FILENAME" . 678568) ("RELAXED_STRUCTURE_ASSIGNMENT" . 900571) ("RESTORED_OBJECTS" . 900564) ("VERBOSE" . 678570)))
332 ("SCALE3" pro nil (system) "%s" (("AX") ("AZ") ("XRANGE") ("YRANGE") ("ZRANGE"))) 322 ("RETALL" pro nil (system) "%s" ("R47.html"))
333 ("SCALE3D" pro nil (system) "%s" nil) 323 ("SAVE" pro nil (system) "%s [, Var1, ..., Varn]" ("S2.html" ("ALL" . 678631) ("COMM" . 678633) ("COMPRESS" . 1074405) ("DESCRIPTION" . 678635) ("FILENAME" . 1199210) ("ROUTINES" . 678637) ("SYSTEM_VARIABLES" . 678639) ("VARIABLES" . 678642) ("VERBOSE" . 678644)))
334 ("SET_PLOT" pro nil (system) "%s, Device" (("COPY") ("INTERPOLATE"))) 324 ("SCALE3" pro nil (system) "%s" ("S4.html" ("AX" . 787108) ("AZ" . 787111) ("XRANGE" . 787099) ("YRANGE" . 787102) ("ZRANGE" . 787105)))
335 ("SET_SHADING" pro nil (system) "%s" (("GOURAUD") ("LIGHT") ("REJECT") ("VALUES"))) 325 ("SCALE3D" pro nil (system) "%s" ("S5.html"))
336 ("SET_SYMBOL" pro nil (system) "%s, Name, Value" (("TYPE"))) 326 ("SET_PLOT" pro nil (system) "%s, Device" ("S11.html" ("COPY" . 862592) ("INTERPOLATE" . 862599)))
337 ("SETENV" pro nil (system) "%s, Environment_Expression" nil) 327 ("SET_SHADING" pro nil (system) "%s" ("S12.html" ("GOURAUD" . 678682) ("LIGHT" . 678685) ("REJECT" . 678687) ("VALUES" . 678689)))
338 ("SETLOG" pro nil (system) "%s, Lognam, Value" (("CONCEALED") ("CONFINE") ("NO_ALIAS") ("TABLE") ("TERMINAL"))) 328 ("SETENV" pro nil (system) "%s, Environment_Expression" ("S13.html"))
339 ("SETUP_KEYS" pro nil (system) "%s" (("APP_KEYPAD") ("EIGHTBIT") ("HP9000") ("MIPS") ("NUM_KEYPAD") ("PSTERM") ("SGI") ("SUN") ("VT200"))) 329 ("SETUP_KEYS" pro nil (system) "%s" ("S14.html" ("ANSI" . 43203) ("APP_KEYPAD" . 43217) ("EIGHTBIT" . 1015422) ("HP9000" . 43209) ("IBM" . 1015421) ("MIPS" . 43211) ("NUM_KEYPAD" . 43219) ("SGI" . 43215) ("SUN" . 43205) ("VT200" . 43207)))
340 ("SHADE_SURF" pro nil (system) "%s, Z [, X, Y]" (("AX") ("AZ") ("CHARSIZE") ("CHARTHICK") ("COLOR") ("DATA") ("DEVICE") ("FONT") ("IMAGE") ("MAX_VALUE") ("MIN_VALUE") ("NODATA") ("NORMAL") ("PIXELS") ("POSITION") ("SAVE") ("SHADES") ("SUBTITLE") ("T3D") ("THICK") ("TICKLEN") ("TITLE") ("XCHARSIZE") ("XGRIDSTYLE") ("XLOG") ("XMARGIN") ("XMINOR") ("XRANGE") ("XSTYLE") ("XTHICK") ("XTICK_GET") ("XTICKFORMAT") ("XTICKINTERVAL") ("XTICKLAYOUT") ("XTICKLEN") ("XTICKNAME") ("XTICKS") ("XTICKUNITS") ("XTICKV") ("XTITLE") ("YCHARSIZE") ("YGRIDSTYLE") ("YLOG") ("YMARGIN") ("YMINOR") ("YRANGE") ("YSTYLE") ("YTHICK") ("YTICK_GET") ("YTICKFORMAT") ("YTICKINTERVAL") ("YTICKLAYOUT") ("YTICKLEN") ("YTICKNAME") ("YTICKS") ("YTICKUNITS") ("YTICKV") ("YTITLE") ("ZCHARSIZE") ("ZGRIDSTYLE") ("ZMARGIN") ("ZMINOR") ("ZRANGE") ("ZSTYLE") ("ZTHICK") ("ZTICK_GET") ("ZTICKFORMAT") ("ZTICKINTERVAL") ("ZTICKLAYOUT") ("ZTICKLEN") ("ZTICKNAME") ("ZTICKS") ("ZTICKUNITS") ("ZTICKV") ("ZTITLE") ("ZVALUE"))) 330 ("SHADE_SURF" pro nil (system) "%s, Z [, X, Y]" ("S16.html" ("AX" . 678754) ("AZ" . 678759) ("IMAGE" . 678761) ("MAX_VALUE" . 678763) ("MIN_VALUE" . 47127) ("PIXELS" . 844042) ("SAVE" . 678765) ("SHADES" . 678767) ("XLOG" . 158361) ("YLOG" . 158393)) ("graphkeyw2.html" ("CHARSIZE" . 266973) ("CHARTHICK" . 331668) ("COLOR" . 315952) ("DATA" . 315961) ("DEVICE" . 315977) ("FONT" . 331795) ("NODATA" . 316018) ("NORMAL" . 315963) ("POSITION" . 316026) ("SUBTITLE" . 316057) ("T3D" . 315956) ("THICK" . 316006) ("TICKLEN" . 332207) ("TITLE" . 332238) ("XCHARSIZE" . 331699) ("XGRIDSTYLE" . 332009) ("XMARGIN" . 332038) ("XMINOR" . 332061) ("XRANGE" . 332090) ("XSTYLE" . 332116) ("XTHICK" . 332298) ("XTICK_GET" . 332321) ("XTICKFORMAT" . 332347) ("XTICKINTERVAL" . 332463) ("XTICKLAYOUT" . 332488) ("XTICKLEN" . 332513) ("XTICKNAME" . 332536) ("XTICKS" . 332559) ("XTICKUNITS" . 332586) ("XTICKV" . 332628) ("XTITLE" . 316100) ("YCHARSIZE" . 331699) ("YGRIDSTYLE" . 332009) ("YMARGIN" . 332038) ("YMINOR" . 332061) ("YRANGE" . 332090) ("YSTYLE" . 332116) ("YTHICK" . 332298) ("YTICK_GET" . 332321) ("YTICKFORMAT" . 332347) ("YTICKINTERVAL" . 332463) ("YTICKLAYOUT" . 332488) ("YTICKLEN" . 332513) ("YTICKNAME" . 332536) ("YTICKS" . 332559) ("YTICKUNITS" . 332586) ("YTICKV" . 332628) ("YTITLE" . 316100) ("ZCHARSIZE" . 331699) ("ZGRIDSTYLE" . 332009) ("ZMARGIN" . 332038) ("ZMINOR" . 332061) ("ZRANGE" . 332090) ("ZSTYLE" . 332116) ("ZTHICK" . 332298) ("ZTICK_GET" . 332321) ("ZTICKFORMAT" . 332347) ("ZTICKINTERVAL" . 332463) ("ZTICKLAYOUT" . 332488) ("ZTICKLEN" . 332513) ("ZTICKNAME" . 332536) ("ZTICKS" . 332559) ("ZTICKUNITS" . 332586) ("ZTICKV" . 332628) ("ZTITLE" . 316100) ("ZVALUE" . 316102)))
341 ("SHADE_SURF_IRR" pro nil (system) "%s, Z, X, Y" (("AX") ("AZ") ("IMAGE") ("PLIST") ("T3D"))) 331 ("SHADE_SURF_IRR" pro nil (system) "%s, Z, X, Y" ("S17.html" ("AX" . 787162) ("AZ" . 787165) ("IMAGE" . 787168) ("PLIST" . 787171) ("T3D" . 867401)))
342 ("SHADE_VOLUME" pro nil (system) "%s, Volume, Value, Vertex, Poly" (("LOW") ("SHADES") ("VERBOSE") ("XRANGE") ("YRANGE") ("ZRANGE"))) 332 ("SHADE_VOLUME" pro nil (system) "%s, Volume, Value, Vertex, Poly" ("S18.html" ("LOW" . 678801) ("SHADES" . 678803) ("VERBOSE" . 678805) ("XRANGE" . 678807) ("YRANGE" . 678809) ("ZRANGE" . 678811)))
343 ("SHOW3" pro nil (system) "%s, Image [, X, Y]" (("E_CONTOUR") ("E_SURFACE") ("INTERP") ("SSCALE"))) 333 ("SHMMAP" pro nil (system) "%s [, SegmentName] [, D1, ..., D8]" ("S21.html" ("BYTE" . 1143213) ("COMPLEX" . 1143215) ("DCOMPLEX" . 1143217) ("DESTROY_SEGMENT" . 1143219) ("DIMENSION" . 1143226) ("DOUBLE" . 1143228) ("FILENAME" . 1143230) ("FLOAT" . 1143234) ("GET_NAME" . 1143237) ("GET_OS_HANDLE" . 1143240) ("INTEGER" . 1143245) ("L64" . 1143247) ("LONG" . 1143252) ("OFFSET" . 1143254) ("OS_HANDLE" . 1143259) ("PRIVATE" . 1143277) ("SIZE" . 1143281) ("SYSV" . 1143286) ("TEMPLATE" . 1143291) ("TYPE" . 1143293) ("UINT" . 1143298) ("UL64" . 1143302) ("ULONG" . 1143300)))
344 ("SHOWFONT" pro nil (system) "%s, Font, Name" (("ENCAPSULATED") ("TT_FONT"))) 334 ("SHMUNMAP" pro nil (system) "%s, SegmentName" ("S22.html"))
345 ("SKIPF" pro nil (system) "%s, Unit, Files or SKIPF, Unit, Records, R" nil) 335 ("SHOW3" pro nil (system) "%s, Image [, X, Y]" ("S24.html" ("E_CONTOUR" . 863032) ("E_SURFACE" . 863036) ("INTERP" . 862964) ("SSCALE" . 787203)))
346 ("SLICER3" pro nil (system) "%s [, hData3D]" (("DATA_NAMES") ("DETACH") ("GROUP") ("MODAL"))) 336 ("SHOWFONT" pro nil (system) "%s, Font, Name" ("S25.html" ("ENCAPSULATED" . 762072) ("TT_FONT" . 901959)))
347 ("SLIDE_IMAGE" pro nil (system) "%s [, Image]" (("BLOCK") ("CONGRID") ("FULL_WINDOW") ("GROUP") ("ORDER") ("REGISTER") ("RETAIN") ("SHOW_FULL") ("SLIDE_WINDOW") ("TITLE") ("TOP_ID") ("XSIZE") ("XVISIBLE") ("YSIZE") ("YVISIBLE"))) 337 ("SKIP_LUN" pro nil (system) "%s, FromUnit, [, Num]" ("S32.html" ("EOF" . 1143762) ("LINES" . 1143765) ("TRANSFER_COUNT" . 1143767)))
348 ("SOCKET" pro nil (system) "%s, Unit, Host, Port" (("CONNECT_TIMEOUT") ("ERROR") ("GET_LUN") ("RAWIO") ("READ_TIMEOUT") ("STDIO") ("SWAP_ENDIAN") ("SWAP_IF_BIG_ENDIAN") ("SWAP_IF_LITTLE_ENDIAN") ("WIDTH") ("WRITE_TIMEOUT"))) 338 ("SLICER3" pro nil (system) "%s [, hData3D]" ("S33.html" ("DATA_NAMES" . 914863) ("DETACH" . 914866) ("GROUP" . 914869) ("MODAL" . 914872)))
349 ("SPAWN" pro nil (system) "%s [, Command [, Result] [, ErrResult]]" (("COUNT") ("EXIT_STATUS") ("FORCE") ("HIDE") ("LOG_OUTPUT") ("MACCREATOR") ("NOCLISYM") ("NOLOGNAM") ("NOSHELL") ("NOTIFY") ("NOTTYRESET") ("NOWAIT") ("NULL_STDIN") ("PID") ("SH") ("STDERR") ("UNIT"))) 339 ("SLIDE_IMAGE" pro nil (system) "%s [, Image]" ("S34.html" ("BLOCK" . 923990) ("CONGRID" . 787344) ("FULL_WINDOW" . 787347) ("GROUP" . 787350) ("ORDER" . 787353) ("REGISTER" . 787356) ("RETAIN" . 787360) ("SHOW_FULL" . 787366) ("SLIDE_WINDOW" . 787363) ("TITLE" . 900068) ("TOP_ID" . 787369) ("XSIZE" . 787374) ("XVISIBLE" . 787377) ("YSIZE" . 787380) ("YVISIBLE" . 787383)))
350 ("SPH_4PNT" pro nil (system) "%s, X, Y, Z, Xc, Yc, Zc, R" (("DOUBLE"))) 340 ("SOCKET" pro nil (system) "%s, Unit, Host, Port" ("S37.html" ("CONNECT_TIMEOUT" . 1098145) ("ERROR" . 1098148) ("GET_LUN" . 1142975) ("RAWIO" . 1098160) ("READ_TIMEOUT" . 1098166) ("STDIO" . 1133828) ("SWAP_ENDIAN" . 1098168) ("SWAP_IF_BIG_ENDIAN" . 1098171) ("SWAP_IF_LITTLE_ENDIAN" . 1098175) ("WIDTH" . 1098179) ("WRITE_TIMEOUT" . 1098187)))
351 ("SPLINE_P" pro nil (system) "%s, X, Y, Xr, Yr" (("INTERVAL") ("TAN0") ("TAN1"))) 341 ("SPAWN" pro nil (system) "%s [, Command [, Result] [, ErrResult]]" ("S39.html" ("COUNT" . 678969) ("EXIT_STATUS" . 678971) ("HIDE" . 1133996) ("LOG_OUTPUT" . 1134006) ("NOSHELL" . 1108410) ("NOTTYRESET" . 1134017) ("NOWAIT" . 1134051) ("NULL_STDIN" . 1134151) ("PID" . 1084167) ("SH" . 1133965) ("STDERR" . 1133968) ("UNIT" . 1133975)))
352 ("STOP" pro nil (system) "%s [, Expr1, ..., Exprn]" nil) 342 ("SPH_4PNT" pro nil (system) "%s, X, Y, Z, Xc, Yc, Zc, R" ("S40.html" ("DOUBLE" . 1094107)))
353 ("STREAMLINE" pro nil (system) "%s, Verts, Conn, Normals, Outverts, Outconn" (("ANISOTROPY") ("PROFILE") ("SIZE"))) 343 ("SPLINE_P" pro nil (system) "%s, X, Y, Xr, Yr" ("S46.html" ("DOUBLE" . 1187959) ("INTERVAL" . 758561) ("TAN0" . 758564) ("TAN1" . 758567)))
354 ("STRETCH" pro nil (system) "%s [, Low, High [, Gamma]]" (("CHOP"))) 344 ("STOP" pro nil (system) "%s [, Expr1, ..., Exprn]" ("S54.html"))
355 ("STRPUT" pro nil (system) "%s, Destination, Source [, Position]" nil) 345 ("STREAMLINE" pro nil (system) "%s, Verts, Conn, Normals, Outverts, Outconn" ("S58.html" ("ANISOTROPY" . 1078861) ("PROFILE" . 1078865) ("SIZE" . 1078863)))
356 ("STRUCT_ASSIGN" pro nil (system) "%s, Source, Destination" (("NOZERO") ("VERBOSE"))) 346 ("STRETCH" pro nil (system) "%s [, Low, High [, Gamma]]" ("S60.html" ("CHOP" . 759533)))
357 ("STRUCT_HIDE" pro nil (system) "%s, Arg1 [, Arg2, ..., Argn]" nil) 347 ("STRPUT" pro nil (system) "%s, Destination, Source [, Position]" ("S69.html"))
358 ("SURFACE" pro nil (system) "%s, Z [, X, Y]" (("AX") ("AZ") ("BACKGROUND") ("BOTTOM") ("CHARSIZE") ("CHARTHICK") ("CLIP") ("COLOR") ("DATA") ("DEVICE") ("FONT") ("HORIZONTAL") ("ISOTROPIC") ("LEGO") ("LINESTYLE") ("LOWER_ONLY") ("MAX_VALUE") ("MIN_VALUE") ("NOCLIP") ("NODATA") ("NOERASE") ("NORMAL") ("NSUM") ("POLAR") ("POSITION") ("SAVE") ("SHADES") ("SKIRT") ("SUBTITLE") ("T3D") ("THICK") ("TICKLEN") ("TITLE") ("UPPER_ONLY") ("XCHARSIZE") ("XGRIDSTYLE") ("XLOG") ("XMARGIN") ("XMINOR") ("XRANGE") ("XSTYLE") ("XTHICK") ("XTICK_GET") ("XTICKFORMAT") ("XTICKINTERVAL") ("XTICKLAYOUT") ("XTICKLEN") ("XTICKNAME") ("XTICKS") ("XTICKUNITS") ("XTICKV") ("XTITLE") ("YCHARSIZE") ("YGRIDSTYLE") ("YLOG") ("YMARGIN") ("YMINOR") ("YNOZERO") ("YRANGE") ("YSTYLE") ("YTHICK") ("YTICK_GET") ("YTICKFORMAT") ("YTICKINTERVAL") ("YTICKLAYOUT") ("YTICKLEN") ("YTICKNAME") ("YTICKS") ("YTICKUNITS") ("YTICKV") ("YTITLE") ("ZAXIS") ("ZCHARSIZE") ("ZGRIDSTYLE") ("ZLOG") ("ZMARGIN") ("ZMINOR") ("ZRANGE") ("ZSTYLE") ("ZTHICK") ("ZTICK_GET") ("ZTICKFORMAT") ("ZTICKINTERVAL") ("ZTICKLAYOUT") ("ZTICKLEN") ("ZTICKNAME") ("ZTICKS") ("ZTICKUNITS") ("ZTICKV") ("ZTITLE") ("ZVALUE"))) 348 ("STRUCT_ASSIGN" pro nil (system) "%s, Source, Destination" ("S72.html" ("NOZERO" . 1074356) ("VERBOSE" . 901018)))
359 ("SURFR" pro nil (system) "%s" (("AX") ("AZ"))) 349 ("STRUCT_HIDE" pro nil (system) "%s, Arg1 [, Arg2, ..., Argn]" ("S73.html"))
360 ("SVDC" pro nil (system) "%s, A, W, U, V" (("COLUMN") ("DOUBLE") ("ITMAX"))) 350 ("SURFACE" pro nil (system) "%s, Z [, X, Y]" ("S75.html" ("AX" . 679220) ("AZ" . 679225) ("BOTTOM" . 679227) ("HORIZONTAL" . 679229) ("LEGO" . 716839) ("LOWER_ONLY" . 679231) ("MAX_VALUE" . 679233) ("MIN_VALUE" . 47161) ("SAVE" . 679235) ("SHADES" . 679245) ("SKIRT" . 679247) ("UPPER_ONLY" . 679250) ("XLOG" . 158409) ("YLOG" . 158414) ("ZAXIS" . 679256) ("ZLOG" . 862016)))
361 ("T3D" pro nil (system) "%s [, Array]" (("MATRIX") ("OBLIQUE") ("PERSPECTIVE") ("RESET") ("ROTATE") ("SCALE") ("TRANSLATE") ("XYEXCH") ("XZEXCH") ("YZEXCH"))) 351 ("SURFR" pro nil (system) "%s" ("S76.html" ("AX" . 787417) ("AZ" . 787420)))
362 ("TAPRD" pro nil (system) "%s, Array, Unit [, Byte_Reverse]" nil) 352 ("SVDC" pro nil (system) "%s, A, W, U, V" ("S77.html" ("COLUMN" . 58767) ("DOUBLE" . 52115) ("ITMAX" . 1095860)))
363 ("TAPWRT" pro nil (system) "%s, Array, Unit [, Byte_Reverse]" nil) 353 ("SWAP_ENDIAN_INPLACE" pro nil (system) "%s, Variable" ("S81.html" ("SWAP_IF_BIG_ENDIAN" . 1143824) ("SWAP_IF_LITTLE_ENDIAN" . 1143826)))
364 ("TEK_COLOR" pro nil (system) "%s [, Start_Index, Colors]" nil) 354 ("T3D" pro nil (system) "%s [, Array]" ("T3.html" ("MATRIX" . 787453) ("OBLIQUE" . 1076313) ("PERSPECTIVE" . 787459) ("RESET" . 787462) ("ROTATE" . 787465) ("SCALE" . 787468) ("TRANSLATE" . 787471) ("XYEXCH" . 787474) ("XZEXCH" . 787477) ("YZEXCH" . 787480)))
365 ("THREED" pro nil (system) "%s, A [, Sp]" (("TITLE") ("XTITLE") ("YTITLE"))) 355 ("TEK_COLOR" pro nil (system) "%s [, Start_Index, Colors]" ("T7.html"))
366 ("TIFF_DUMP" pro nil (system) "%s, File" nil) 356 ("THREED" pro nil (system) "%s, A [, Sp]" ("T13.html" ("TITLE" . 787515) ("XTITLE" . 787518) ("YTITLE" . 787521)))
367 ("TIFF_WRITE" pro nil (system) "%s, File, Array [, Orientation]" nil) 357 ("TIME_TEST2" pro nil (system) "%s [, Filename]" ("T14.html"))
368 ("TIME_TEST2" pro nil (system) "%s [, Filename]" nil) 358 ("TRIANGULATE" pro nil (system) "%s, X, Y, Triangles [, B]" ("T21.html" ("CONNECTIVITY" . 679547) ("DEGREES" . 126686) ("FVALUE" . 126695) ("REPEATS" . 679555) ("SPHERE" . 126681)))
369 ("TRIANGULATE" pro nil (system) "%s, X, Y, Triangles [, B]" (("CONNECTIVITY") ("DEGREES") ("FVALUE") ("REPEATS") ("SPHERE"))) 359 ("TRIQL" pro nil (system) "%s, D, E, A" ("T23.html" ("DOUBLE" . 52221)))
370 ("TRIQL" pro nil (system) "%s, D, E, A" (("DOUBLE"))) 360 ("TRIRED" pro nil (system) "%s, A, D, E" ("T24.html" ("DOUBLE" . 52282)))
371 ("TRIRED" pro nil (system) "%s, A, D, E" (("DOUBLE"))) 361 ("TRUNCATE_LUN" pro nil (system) "%s, Unit1, ..., Unitn" ("T26.html"))
372 ("TV" pro nil (system) "%s, Image [, Position] or TV, Image [, X, Y [, Channel]]" (("CENTIMETERS") ("CHANNEL") ("DATA") ("DEVICE") ("INCHES") ("NORMAL") ("ORDER") ("T3D") ("TRUE") ("WORDS") ("XSIZE") ("YSIZE") ("Z"))) 362 ("TV" pro nil (system) "%s, Image [, Position] or %s, Image [, X, Y [, Channel]]" ("T31.html" ("CENTIMETERS" . 679682) ("INCHES" . 679690) ("ORDER" . 679694) ("TRUE" . 679698) ("WORDS" . 679701) ("XSIZE" . 679703) ("YSIZE" . 679705)) ("graphkeyw2.html" ("CHANNEL" . 315931) ("DATA" . 315961) ("DEVICE" . 315977) ("NORMAL" . 315963) ("T3D" . 315956) ("Z" . 332658)))
373 ("TVCRS" pro nil (system) "%s [, ON_OFF] or TVCRS [, X, Y]" (("CENTIMETERS") ("DATA") ("DEVICE") ("HIDE_CURSOR") ("INCHES") ("NORMAL") ("T3D") ("Z"))) 363 ("TVCRS" pro nil (system) "%s [, ON_OFF] or %s [, X, Y]" ("T32.html" ("CENTIMETERS" . 679732) ("HIDE_CURSOR" . 817846) ("INCHES" . 817861)) ("graphkeyw2.html" ("DATA" . 315961) ("DEVICE" . 315977) ("NORMAL" . 315963) ("T3D" . 315956) ("Z" . 332658)))
374 ("TVLCT" pro nil (system) "%s, V1, V2, V3 [, Start]" (("GET") ("HLS") ("HSV"))) 364 ("TVLCT" pro nil (system) "%s, V1, V2, V3 [, Start]" ("T33.html" ("GET" . 844142) ("HLS" . 679761) ("HSV" . 679763)))
375 ("TVSCL" pro nil (system) "%s, Image [, Position] or TVSCL, Image [, X, Y [, Channel]]" (("CENTIMETERS") ("CHANNEL") ("DATA") ("DEVICE") ("INCHES") ("NAN") ("NORMAL") ("ORDER") ("T3D") ("TOP") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD") ("TRUE") ("WORDS") ("XSIZE") ("YSIZE") ("Z"))) 365 ("TVSCL" pro nil (system) "%s, Image [, Position] or %s, Image [, X, Y [, Channel]]" ("T35.html" ("CENTIMETERS") ("INCHES") ("NAN" . 902069) ("ORDER") ("TOP" . 218988) ("TRUE") ("WORDS") ("XSIZE") ("YSIZE")) ("T31.html" ("CENTIMETERS" . 679682) ("INCHES" . 679690) ("ORDER" . 679694) ("TRUE" . 679698) ("WORDS" . 679701) ("XSIZE" . 679703) ("YSIZE" . 679705)) ("graphkeyw2.html" ("CHANNEL" . 315931) ("DATA" . 315961) ("DEVICE" . 315977) ("NORMAL" . 315963) ("T3D" . 315956) ("Z" . 332658)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
376 ("USERSYM" pro nil (system) "%s, X [, Y]" (("COLOR") ("FILL") ("THICK"))) 366 ("USERSYM" pro nil (system) "%s, X [, Y]" ("U12.html" ("COLOR" . 886945) ("FILL" . 886948) ("THICK" . 886951)))
377 ("VECTOR_FIELD" pro nil (system) "%s, Field, Outverts, Outconn" (("ANISOTROPY") ("SCALE") ("VERTICES"))) 367 ("VECTOR_FIELD" pro nil (system) "%s, Field, Outverts, Outconn" ("V3.html" ("ANISOTROPY" . 957083) ("SCALE" . 957085) ("VERTICES" . 957087)))
378 ("VEL" pro nil (system) "%s, U, V" (("LENGTH") ("NSTEPS") ("NVECS") ("TITLE") ("XMAX"))) 368 ("VEL" pro nil (system) "%s, U, V" ("V4.html" ("LENGTH" . 956021) ("NSTEPS" . 956033) ("NVECS" . 787550) ("TITLE" . 956041) ("XMAX" . 787553)))
379 ("VELOVECT" pro nil (system) "%s, U, V [, X, Y]" (("COLOR") ("DOTS") ("LENGTH") ("MISSING") ("OVERPLOT"))) 369 ("VELOVECT" pro nil (system) "%s, U, V [, X, Y]" ("V5.html" ("COLOR" . 787592) ("DOTS" . 787595) ("LENGTH" . 787598) ("MISSING" . 787601) ("OVERPLOT" . 957555)) ("P6.html" ("ISOTROPIC" . 948898) ("MAX_VALUE" . 678098) ("MIN_VALUE" . 47057) ("NSUM" . 678100) ("POLAR" . 678103) ("THICK" . 678106) ("XLOG" . 810411) ("YLOG" . 810463) ("YNOZERO" . 810415)))
380 ("VORONOI" pro nil (system) "%s, X, Y, I0, C, Xp, Yp, Rect" nil) 370 ("VORONOI" pro nil (system) "%s, X, Y, I0, C, Xp, Yp, Rect" ("V8.html"))
381 ("WAIT" pro nil (system) "%s, Seconds" nil) 371 ("WAIT" pro nil (system) "%s, Seconds" ("W.html"))
382 ("WDELETE" pro nil (system) "%s [, Window_Index [, ...]]" nil) 372 ("WDELETE" pro nil (system) "%s [, Window_Index [, ...]]" ("W5.html"))
383 ("WEOF" pro nil (system) "%s, Unit" nil) 373 ("WF_DRAW" pro nil (system) "%s, X, Y" ("W6.html" ("COLD" . 787681) ("COLOR" . 787684) ("CONVERGENCE" . 787687) ("DATA" . 787690) ("DEVICE" . 787693) ("FRONT_TYPE" . 787696) ("INTERVAL" . 787699) ("NORMAL" . 787702) ("OCCLUDED" . 787705) ("PSYM" . 787708) ("STATIONARY" . 787714) ("SYM_HT" . 787717) ("SYM_LEN" . 787720) ("THICK" . 787723) ("WARM" . 787726)))
384 ("WF_DRAW" pro nil (system) "%s, X, Y" (("COLD") ("COLOR") ("CONVERGENCE") ("DATA") ("DEVICE") ("FRONT_TYPE") ("INTERVAL") ("NORMAL") ("OCCLUDED") ("PSYM") ("STATIONARY") ("SYM_HT") ("SYM_LEN") ("THICK") ("WARM"))) 374 ("WIDGET_CONTROL" pro nil (system) "%s [, Widget_ID]" ("W13.html" ("ALIGNMENT" . 894840) ("ALL_TABLE_EVENTS" . 894849) ("ALL_TEXT_EVENTS" . 680079) ("AM_PM" . 949789) ("APPEND" . 886776) ("BAD_ID" . 680083) ("BASE_SET_TITLE" . 977104) ("BITMAP" . 1077396) ("CANCEL_BUTTON" . 910691) ("CLEAR_EVENTS" . 978647) ("COLUMN_LABELS" . 894928) ("COLUMN_WIDTHS" . 894930) ("COMBOBOX_ADDITEM" . 981369) ("COMBOBOX_DELETEITEM" . 981434) ("COMBOBOX_INDEX" . 981376) ("CONTEXT_EVENTS" . 949802) ("DAYS_OF_WEEK" . 970733) ("DEFAULT_BUTTON" . 909921) ("DEFAULT_FONT" . 680087) ("DELAY_DESTROY" . 680090) ("DELETE_COLUMNS" . 894963) ("DELETE_ROWS" . 919067) ("DESTROY" . 680094) ("DRAW_BUTTON_EVENTS" . 680097) ("DRAW_EXPOSE_EVENTS" . 907371) ("DRAW_KEYBOARD_EVENTS" . 985153) ("DRAW_MOTION_EVENTS" . 680099) ("DRAW_VIEWPORT_EVENTS" . 680101) ("DRAW_XSIZE" . 58243) ("DRAW_YSIZE" . 58244) ("DYNAMIC_RESIZE" . 192830) ("EDIT_CELL" . 895011) ("EDITABLE" . 889314) ("EVENT_FUNC" . 895036) ("EVENT_PRO" . 680108) ("FORMAT" . 895067) ("FUNC_GET_VALUE" . 680113) ("GET_DRAW_VIEW" . 680115) ("GET_UVALUE" . 680117) ("GET_VALUE" . 680122) ("GROUP_LEADER" . 933268) ("HOURGLASS" . 680134) ("ICONIFY" . 680136) ("INPUT_FOCUS" . 680138) ("INSERT_COLUMNS" . 895129) ("INSERT_ROWS" . 895131) ("KBRD_FOCUS_EVENTS" . 919052) ("KILL_NOTIFY" . 680140) ("MANAGED" . 680144) ("MAP" . 680146) ("MONTHS" . 949815) ("MULTIPLE_PROPERTIES" . 1100768) ("NO_COPY" . 680150) ("NO_NEWLINE" . 680152) ("NOTIFY_REALIZE" . 67586) ("PRO_SET_VALUE" . 680154) ("PROPERTYSHEET_SETSELECTED" . 1070765) ("PUSHBUTTON_EVENTS" . 1020091) ("REALIZE" . 680156) ("REFRESH_PROPERTY" . 1018381) ("RESET" . 1018400) ("ROW_HEIGHTS" . 895150) ("ROW_LABELS" . 895148) ("SCR_XSIZE" . 58190) ("SCR_YSIZE" . 58191) ("SEND_EVENT" . 58210) ("SENSITIVE" . 680164) ("SET_BUTTON" . 680167) ("SET_COMBOBOX_SELECT" . 981513) ("SET_DRAW_VIEW" . 680169) ("SET_DROPLIST_SELECT" . 680172) ("SET_LIST_SELECT" . 58235) ("SET_LIST_TOP" . 680175) ("SET_SLIDER_MAX" . 680177) ("SET_SLIDER_MIN" . 680179) ("SET_TAB_CURRENT" . 977118) ("SET_TAB_MULTILINE" . 977124) ("SET_TABLE_SELECT" . 895216) ("SET_TABLE_VIEW" . 895208) ("SET_TEXT_SELECT" . 680181) ("SET_TEXT_TOP_LINE" . 680185) ("SET_TREE_BITMAP" . 978535) ("SET_TREE_EXPANDED" . 978542) ("SET_TREE_SELECT" . 978548) ("SET_TREE_VISIBLE" . 978561) ("SET_UNAME" . 1095671) ("SET_UVALUE" . 949285) ("SET_VALUE" . 680190) ("SHOW" . 680199) ("TAB_MODE" . 1069607) ("TABLE_BLANK" . 1069681) ("TABLE_DISJOINT_SELECTION" . 987414) ("TABLE_XSIZE" . 895238) ("TABLE_YSIZE" . 895244) ("TIMER" . 680201) ("TLB_GET_OFFSET" . 680204) ("TLB_GET_SIZE" . 680206) ("TLB_ICONIFY_EVENTS" . 984722) ("TLB_KILL_REQUEST_EVENTS" . 192837) ("TLB_MOVE_EVENTS" . 984735) ("TLB_SET_TITLE" . 680208) ("TLB_SET_XOFFSET" . 680210) ("TLB_SET_YOFFSET" . 680212) ("TLB_SIZE_EVENTS" . 984752) ("TOOLTIP" . 982093) ("TRACKING_EVENTS" . 58183) ("UNITS" . 895316) ("UPDATE" . 680214) ("USE_TABLE_SELECT" . 934621) ("USE_TEXT_SELECT" . 192856) ("X_BITMAP_EXTRA" . 680216) ("XOFFSET" . 58269) ("XSIZE" . 58220) ("YOFFSET" . 58279) ("YSIZE" . 58221)))
385 ("WIDED" pro nil (system) "%s" nil) 375 ("WIDGET_DISPLAYCONTEXTMENU" pro nil (system) "%s, Parent, X, Y, ContextBase_ID" ("W14.html"))
386 ("WIDGET_CONTROL" pro nil (system) "%s [, Widget_ID]" (("ALIGNMENT") ("ALL_TABLE_EVENTS") ("ALL_TEXT_EVENTS") ("AM_PM") ("APPEND") ("BAD_ID") ("BITMAP") ("CANCEL_BUTTON") ("CLEAR_EVENTS") ("COLUMN_LABELS") ("COLUMN_WIDTHS") ("CONTEXT_MENU") ("DAYS_OF_WEEK") ("DEFAULT_BUTTON") ("DEFAULT_FONT") ("DELAY_DESTROY") ("DELETE_COLUMNS") ("DELETE_ROWS") ("DESTROY") ("DRAW_BUTTON_EVENTS") ("DRAW_EXPOSE_EVENTS") ("DRAW_MOTION_EVENTS") ("DRAW_VIEWPORT_EVENTS") ("DRAW_XSIZE") ("DRAW_YSIZE") ("DYNAMIC_RESIZE") ("EDIT_CELL") ("EDITABLE") ("EVENT_FUNC") ("EVENT_PRO") ("FORMAT") ("FUNC_GET_VALUE") ("GET_DRAW_VIEW") ("GET_UVALUE") ("GET_VALUE") ("GROUP_LEADER") ("HOURGLASS") ("ICONIFY") ("INPUT_FOCUS") ("INSERT_COLUMNS") ("INSERT_ROWS") ("KBRD_FOCUS_EVENTS") ("KILL_NOTIFY") ("MAP") ("MONTHS") ("NO_COPY") ("NO_NEWLINE") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("REALIZE") ("RESET") ("ROW_HEIGHTS") ("ROW_LABELS") ("SCR_XSIZE") ("SCR_YSIZE") ("SEND_EVENT") ("SENSITIVE") ("SET_BUTTON") ("SET_DRAW_VIEW") ("SET_DROPLIST_SELECT") ("SET_LIST_SELECT") ("SET_LIST_TOP") ("SET_SLIDER_MAX") ("SET_SLIDER_MIN") ("SET_TABLE_SELECT") ("SET_TABLE_VIEW") ("SET_TEXT_SELECT") ("SET_TEXT_TOP_LINE") ("SET_UNAME") ("SET_UVALUE") ("SET_VALUE") ("SHOW") ("TABLE_XSIZE") ("TABLE_YSIZE") ("TIMER") ("TLB_GET_OFFSET") ("TLB_GET_SIZE") ("TLB_KILL_REQUEST_EVENTS") ("TLB_SET_TITLE") ("TLB_SET_XOFFSET") ("TLB_SET_YOFFSET") ("TRACKING_EVENTS") ("UNITS") ("UPDATE") ("USE_TABLE_SELECT") ("USE_TEXT_SELECT") ("X_BITMAP_EXTRA") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 376 ("WINDOW" pro nil (system) "%s [, Window_Index]" ("W27.html" ("COLORS" . 896410) ("FREE" . 680620) ("PIXMAP" . 680622) ("RETAIN" . 680624) ("TITLE" . 680625) ("XPOS" . 680628) ("XSIZE" . 680635) ("YPOS" . 680633) ("YSIZE" . 680637)))
387 ("WIDGET_DISPLAYCONTEXTMENU" pro nil (system) "%s, Parent, X, Y, ContextBase_ID" nil) 377 ("WRITE_BMP" pro nil (system) "%s, Filename, Image[, R, G, B]" ("W28.html" ("FOUR_BIT" . 756441) ("HEADER_DEFINE" . 756447) ("IHDR" . 756444) ("RGB" . 964751)))
388 ("WINDOW" pro nil (system) "%s [, Window_Index]" (("COLORS") ("FREE") ("PIXMAP") ("RETAIN") ("TITLE") ("XPOS") ("XSIZE") ("YPOS") ("YSIZE"))) 378 ("WRITE_GIF" pro nil (system) "%s, Filename, Image[, R, G, B]" ("W29.html" ("CLOSE" . 1068115) ("MULTIPLE" . 1068121)))
389 ("WRITE_BMP" pro nil (system) "%s, Filename, Image[, R, G, B]" (("FOUR_BIT") ("HEADER_DEFINE") ("IHDR") ("RGB"))) 379 ("WRITE_IMAGE" pro nil (system) "%s, Filename, Format, Data [, Red, Green, Blue]" ("W30.html" ("APPEND" . 961233)))
390 ("WRITE_IMAGE" pro nil (system) "%s, Filename, Format, Data [, Red, Green, Blue]" (("APPEND"))) 380 ("WRITE_JPEG" pro nil (system) "%s [, Filename] , Image" ("W31.html" ("ORDER" . 279735) ("PROGRESSIVE" . 912025) ("QUALITY" . 279736) ("TRUE" . 279737) ("UNIT" . 896438)))
391 ("WRITE_JPEG" pro nil (system) "%s [, Filename] , Image" (("ORDER") ("PROGRESSIVE") ("QUALITY") ("TRUE") ("UNIT"))) 381 ("WRITE_JPEG2000" pro nil (system) "%s, Filename, Image [, Red, Green, Blue]" ("W32.html" ("N_LAYERS" . 1112356) ("N_LEVELS" . 1112359) ("ORDER" . 1112362) ("REVERSIBLE" . 1112365)))
392 ("WRITE_NRIF" pro nil (system) "%s, File, Image [, R, G, B]" nil) 382 ("WRITE_NRIF" pro nil (system) "%s, File, Image [, R, G, B]" ("W33.html"))
393 ("WRITE_PICT" pro nil (system) "%s, Filename [, Image, R, G, B]" nil) 383 ("WRITE_PICT" pro nil (system) "%s, Filename [, Image, R, G, B]" ("W34.html"))
394 ("WRITE_PNG" pro nil (system) "%s, Filename, Image[, R, G, B]" (("ORDER") ("TRANSPARENT") ("VERBOSE"))) 384 ("WRITE_PNG" pro nil (system) "%s, Filename, Image[, R, G, B]" ("W35.html" ("ORDER" . 950656) ("TRANSPARENT" . 950659) ("VERBOSE" . 964556)))
395 ("WRITE_PPM" pro nil (system) "%s, Filename, Image" (("ASCII"))) 385 ("WRITE_PPM" pro nil (system) "%s, Filename, Image" ("W36.html" ("ASCII" . 67923)))
396 ("WRITE_SPR" pro nil (system) "%s, AS, Filename" nil) 386 ("WRITE_SPR" pro nil (system) "%s, AS, Filename" ("W37.html"))
397 ("WRITE_SRF" pro nil (system) "%s, Filename [, Image, R, G, B]" (("ORDER") ("WRITE_32"))) 387 ("WRITE_SRF" pro nil (system) "%s, Filename [, Image, R, G, B]" ("W38.html" ("ORDER" . 756556) ("WRITE_32" . 756559)))
398 ("WRITE_TIFF" pro nil (system) "%s, Filename [, Image, Order]" (("APPEND") ("BITS_PER_SAMPLE") ("BLUE") ("COMPRESSION") ("FLOAT") ("GEOTIFF") ("GREEN") ("LONG") ("ORIENTATION") ("PLANARCONFIG") ("RED") ("SHORT") ("UNITS") ("VERBOSE") ("XRESOL") ("YRESOL"))) 388 ("WRITE_TIFF" pro nil (system) "%s, Filename [, Image]" ("W40.html" ("APPEND" . 945440) ("BITS_PER_SAMPLE" . 945448) ("BLUE" . 960346) ("CMYK" . 1049851) ("COMPRESSION" . 972526) ("DESCRIPTION" . 1049872) ("DOCUMENT_NAME" . 1049881) ("DOT_RANGE" . 1049890) ("FLOAT" . 945539) ("GEOTIFF" . 945456) ("GREEN" . 960346) ("ICC_PROFILE" . 1049899) ("LONG" . 945853) ("ORIENTATION" . 972561) ("PHOTOSHOP" . 1049908) ("PLANARCONFIG" . 896473) ("RED" . 960346) ("SHORT" . 945559) ("UNITS" . 960431) ("VERBOSE" . 972627) ("XPOSITION" . 1063829) ("XRESOL" . 896478) ("YPOSITION" . 1063850) ("YRESOL" . 917320)))
399 ("WRITE_WAV" pro nil (system) "%s, Filename, Data, Rate" nil) 389 ("WRITE_WAV" pro nil (system) "%s, Filename, Data, Rate" ("W41.html"))
400 ("WRITE_WAVE" pro nil (system) "%s, File, Array" (("BIN") ("DATANAME") ("MESHNAME") ("NOMESHDEF") ("VECTOR"))) 390 ("WRITE_WAVE" pro nil (system) "%s, File, Array" ("W42.html" ("BIN" . 756580) ("DATANAME" . 756583) ("MESHNAME" . 756586) ("NOMESHDEF" . 756589) ("VECTOR" . 756592)))
401 ("WRITEU" pro nil (system) "%s, Unit, Expr1 ..., Exprn" (("REWRITE") ("TRANSFER_COUNT"))) 391 ("WRITEU" pro nil (system) "%s, Unit, Expr1 ..., Exprn" ("W43.html" ("TRANSFER_COUNT" . 680669)))
402 ("WSET" pro nil (system) "%s [, Window_Index]" nil) 392 ("WSET" pro nil (system) "%s [, Window_Index]" ("W44.html"))
403 ("WSHOW" pro nil (system) "%s [, Window_Index [, Show]]" (("ICONIC"))) 393 ("WSHOW" pro nil (system) "%s [, Window_Index [, Show]]" ("W45.html" ("ICONIC" . 680709)))
404 ("XBM_EDIT" pro nil (system) "%s" (("BLOCK") ("FILENAME") ("GROUP") ("XSIZE") ("YSIZE"))) 394 ("WV_APPLET" pro nil (system) "%s [, Input]" ("ref4.html" ("ARRAY" . 1004583) ("GROUP_LEADER" . 1004841) ("NO_SPLASH" . 1004848) ("TOOLS" . 1004856) ("WAVELETS" . 1005269)))
405 ("XDISPLAYFILE" pro nil (system) "%s, Filename" (("BLOCK") ("DONE_BUTTON") ("EDITABLE") ("FONT") ("GROUP") ("HEIGHT") ("MODAL") ("TEXT") ("TITLE") ("WIDTH") ("WTEXT"))) 395 ("WV_IMPORT_DATA" pro nil (system) "%s, Data" ("ref16.html" ("MESSAGE_OUT" . 1006957) ("PARENT" . 1008033)))
406 ("XDXF" pro nil (system) "%s [, Filename]" (("BLOCK") ("GROUP") ("MODAL") ("SCALE") ("TEST"))) 396 ("WV_IMPORT_WAVELET" pro nil (system) "%s [, Wavelet]" ("ref17.html" ("RESET" . 1007019)))
407 ("XINTERANIMATE" pro nil (system) "%s [, Rate]" (("BLOCK") ("CLOSE") ("CYCLE") ("FRAME") ("GROUP") ("IMAGE") ("KEEP_PIXMAPS") ("MODAL") ("MPEG_BITRATE") ("MPEG_CLOSE") ("MPEG_FILENAME") ("MPEG_IFRAME_GAP") ("MPEG_MOTION_VEC_LENGTH") ("MPEG_OPEN") ("MPEG_QUALITY") ("ORDER") ("SET") ("SHOWLOAD") ("TITLE") ("TRACK") ("WINDOW") ("XOFFSET") ("YOFFSET"))) 397 ("XBM_EDIT" pro nil (system) "%s" ("X.html" ("BLOCK" . 937479) ("FILENAME" . 762711) ("GROUP" . 762714) ("XSIZE" . 762717) ("YSIZE" . 762720)))
408 ("XLOADCT" pro nil (system) "%s" (("BLOCK") ("BOTTOM") ("FILE") ("GROUP") ("MODAL") ("NCOLORS") ("SILENT") ("UPDATECALLBACK") ("UPDATECBDATA") ("USE_CURENT"))) 398 ("XDISPLAYFILE" pro nil (system) "%s, Filename" ("X2.html" ("BLOCK" . 937490) ("DONE_BUTTON" . 960338) ("EDITABLE" . 960341) ("FONT" . 960336) ("GROUP" . 762749) ("HEIGHT" . 762752) ("MODAL" . 933305) ("TEXT" . 762755) ("TITLE" . 762758) ("WIDTH" . 762761) ("WTEXT" . 960359)))
409 ("XMANAGER" pro nil (system) "%s [, Name, ID]" (("CATCH") ("CLEANUP") ("EVENT_HANDLER") ("GROUP_LEADER") ("JUST_REG") ("NO_BLOCK"))) 399 ("XDXF" pro nil (system) "%s [, Filename]" ("X3.html" ("BLOCK" . 976345) ("GROUP" . 976354) ("SCALE" . 976358) ("TEST" . 976360)))
410 ("XMNG_TMPL" pro nil (system) "%s" (("BLOCK") ("GROUP"))) 400 ("XINTERANIMATE" pro nil (system) "%s [, Rate]" ("X5.html" ("BLOCK" . 964691) ("CLOSE" . 894369) ("CYCLE" . 894339) ("FRAME" . 894353) ("GROUP" . 964285) ("IMAGE" . 894356) ("KEEP_PIXMAPS" . 894375) ("MODAL" . 964292) ("MPEG_BITRATE" . 964699) ("MPEG_CLOSE" . 941497) ("MPEG_FILENAME" . 934000) ("MPEG_IFRAME_GAP" . 964723) ("MPEG_MOTION_VEC_LENGTH" . 964730) ("MPEG_OPEN" . 934051) ("MPEG_QUALITY" . 964762) ("ORDER" . 894359) ("SET" . 894336) ("SHOWLOAD" . 894342) ("TITLE" . 894348) ("TRACK" . 894345) ("WINDOW" . 894362) ("XOFFSET" . 894378) ("YOFFSET" . 894381)))
411 ("XMTOOL" pro nil (system) "%s" (("BLOCK") ("GROUP"))) 401 ("XLOADCT" pro nil (system) "%s" ("X6.html" ("BLOCK" . 937520) ("BOTTOM" . 937526) ("FILE" . 937512) ("GROUP" . 959363) ("MODAL" . 930516) ("NCOLORS" . 930518) ("SILENT" . 761913) ("UPDATECALLBACK" . 950093) ("UPDATECBDATA" . 950095) ("USE_CURRENT" . 761916)))
412 ("XOBJVIEW" pro nil (system) "%s, Obj" (("BACKGROUND") ("BLOCK") ("DOUBLE_VIEW") ("GROUP") ("JUST_REG") ("MODAL") ("REFRESH") ("RENDERER") ("SCALE") ("STATIONARY") ("TEST") ("TITLE") ("TLB") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 402 ("XMANAGER" pro nil (system) "%s [, Name, ID]" ("X7.html" ("CATCH" . 919187) ("CLEANUP" . 762794) ("EVENT_HANDLER" . 762797) ("GROUP_LEADER" . 762800) ("JUST_REG" . 762804) ("NO_BLOCK" . 921241)))
413 ("XOBJVIEW_ROTATE" pro nil (system) "%s, Axis, Angle" (("PREMULTIPLY"))) 403 ("XMNG_TMPL" pro nil (system) "%s" ("X8.html" ("BLOCK" . 937533) ("GROUP" . 762854)))
414 ("XOBJVIEW_WRITE_IMAGE" pro nil (system) "%s, Filename, Format" (("DIMENSIONS"))) 404 ("XMTOOL" pro nil (system) "%s" ("X9.html" ("BLOCK" . 937544) ("GROUP" . 762874)))
415 ("XPALETTE" pro nil (system) "%s" (("BLOCK") ("GROUP") ("UPDATECALLBACK") ("UPDATECBDATA"))) 405 ("XOBJVIEW" pro nil (system) "%s, Obj" ("X10.html" ("BACKGROUND" . 956927) ("BLOCK" . 964889) ("DOUBLE_VIEW" . 956930) ("GROUP" . 960389) ("JUST_REG" . 959168) ("MODAL" . 988927) ("REFRESH" . 959524) ("RENDERER" . 980622) ("SCALE" . 969430) ("STATIONARY" . 959520) ("TEST" . 959458) ("TITLE" . 959454) ("TLB" . 1013972) ("XOFFSET" . 959432) ("XSIZE" . 1000024) ("YOFFSET" . 973883) ("YSIZE" . 1000026)))
416 ("XPCOLOR" pro nil (system) "%s" (("GROUP"))) 406 ("XOBJVIEW_ROTATE" pro nil (system) "%s, Axis, Angle" ("X11.html" ("PREMULTIPLY" . 984371)))
417 ("XPLOT3D" pro nil (system) "%s, X, Y, Z" (("BLOCK") ("COLOR") ("DOUBLE_VIEW") ("GROUP") ("LINESTYLE") ("MODAL") ("NAME") ("OVERPLOT") ("SYMBOL") ("TEST") ("THICK") ("TITLE") ("XRANGE") ("XTITLE") ("YRANGE") ("YTITLE") ("ZRANGE") ("ZTITLE"))) 407 ("XOBJVIEW_WRITE_IMAGE" pro nil (system) "%s, Filename, Format" ("X12.html" ("DIMENSIONS" . 984402)))
418 ("XROI" pro nil (system) "%s [, ImageData] [, R] [, G] [, B]" (("BLOCK") ("FLOATING") ("GROUP") ("MODAL") ("REGIONS_IN") ("REGIONS_OUT") ("REJECTED") ("RENDERER") ("ROI_COLOR") ("ROI_GEOMETRY") ("ROI_SELECT_COLOR") ("STATISTICS") ("TITLE") ("TOOLS"))) 408 ("XPALETTE" pro nil (system) "%s" ("X13.html" ("BLOCK" . 937555) ("GROUP" . 761941) ("UPDATECALLBACK" . 949914) ("UPDATECBDATA" . 949916)))
419 ("XSURFACE" pro nil (system) "%s, Data" (("BLOCK") ("GROUP"))) 409 ("XPCOLOR" pro nil (system) "%s" ("X14.html" ("GROUP" . 976510)))
420 ("XVAREDIT" pro nil (system) "%s, Var" (("GROUP") ("NAME") ("X_SCROLL_SIZE") ("Y_SCROLL_SIZE"))) 410 ("XPLOT3D" pro nil (system) "%s, X, Y, Z" ("X15.html" ("BLOCK" . 976543) ("COLOR" . 976552) ("DOUBLE_VIEW" . 976554) ("GROUP" . 976556) ("LINESTYLE" . 976558) ("MODAL" . 976571) ("NAME" . 976577) ("OVERPLOT" . 976579) ("SYMBOL" . 976581) ("TEST" . 976583) ("THICK" . 976585) ("TITLE" . 976587) ("XRANGE" . 976589) ("XTITLE" . 1014240) ("YRANGE" . 976591) ("YTITLE" . 1014248) ("ZRANGE" . 976593) ("ZTITLE" . 976599)))
421 ("XVOLUME" pro nil (system) "%s, Vol" (("BLOCK") ("GROUP") ("INTERPOLATE") ("MODAL") ("RENDERER") ("REPLACE") ("SCALE") ("TEST") ("XSIZE") ("YSIZE"))) 411 ("XROI" pro nil (system) "%s [, ImageData] [, R] [, G] [, B]" ("X17.html" ("BLOCK" . 984509) ("FLOATING" . 984515) ("GROUP" . 984518) ("MODAL" . 984520) ("REGIONS_IN" . 984522) ("REGIONS_OUT" . 984530) ("REJECTED" . 984535) ("RENDERER" . 984540) ("ROI_COLOR" . 984544) ("ROI_GEOMETRY" . 984546) ("ROI_SELECT_COLOR" . 984572) ("STATISTICS" . 984574) ("TITLE" . 984608) ("TOOLS" . 984610) ("X_SCROLL_SIZE" . 999474) ("Y_SCROLL_SIZE" . 999479)))
422 ("XVOLUME_ROTATE" pro nil (system) "%s, Axis, Angle" (("PREMULTIPLY"))) 412 ("XSURFACE" pro nil (system) "%s, Data" ("X19.html" ("BLOCK" . 937566) ("GROUP" . 787853)))
423 ("XVOLUME_WRITE_IMAGE" pro nil (system) "%s, Filename, Format" (("DIMENSIONS"))) 413 ("XVAREDIT" pro nil (system) "%s, Var" ("X20.html" ("GROUP" . 759115) ("NAME" . 917618) ("X_SCROLL_SIZE" . 917623) ("Y_SCROLL_SIZE" . 917633)))
424 ("XYOUTS" pro nil (system) "%s, [X, Y,] String" (("ALIGNMENT") ("CHARSIZE") ("CHARTHICK") ("CLIP") ("COLOR") ("DATA") ("DEVICE") ("FONT") ("NOCLIP") ("NORMAL") ("ORIENTATION") ("T3D") ("TEXT_AXES") ("WIDTH") ("Z"))) 414 ("XVOLUME" pro nil (system) "%s, Vol" ("X21.html" ("BLOCK" . 977093) ("GROUP" . 977102) ("INTERPOLATE" . 977104) ("MODAL" . 977106) ("RENDERER" . 977112) ("REPLACE" . 977116) ("SCALE" . 977121) ("TEST" . 977123) ("XSIZE" . 977128) ("YSIZE" . 977130)))
425 ("ZOOM" pro nil (system) "%s" (("CONTINUOUS") ("FACT") ("INTERP") ("KEEP") ("NEW_WINDOW") ("XSIZE") ("YSIZE") ("ZOOM_WINDOW"))) 415 ("XVOLUME_ROTATE" pro nil (system) "%s, Axis, Angle" ("X22.html" ("PREMULTIPLY" . 977322)))
426 ("ZOOM_24" pro nil (system) "%s" (("FACT") ("RIGHT") ("XSIZE") ("YSIZE"))) 416 ("XVOLUME_WRITE_IMAGE" pro nil (system) "%s, Filename, Format" ("X23.html" ("DIMENSIONS" . 977402)))
427 ("A_CORRELATE" fun nil (system) "Result = %s(X, Lag)" (("COVARIANCE") ("DOUBLE"))) 417 ("XYOUTS" pro nil (system) "%s, [X, Y,] String" ("X24.html" ("ALIGNMENT" . 680731) ("CHARSIZE" . 680733) ("CHARTHICK" . 680735) ("TEXT_AXES" . 680737) ("WIDTH" . 680739)) ("graphkeyw2.html" ("CLIP" . 315949) ("COLOR" . 315952) ("DATA" . 315961) ("DEVICE" . 315977) ("FONT" . 331795) ("NOCLIP" . 323508) ("NORMAL" . 315963) ("ORIENTATION" . 315964) ("T3D" . 315956) ("Z" . 332658)))
428 ("ABS" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 418 ("ZOOM" pro nil (system) "%s" ("Z.html" ("CONTINUOUS" . 787879) ("FACT" . 787882) ("INTERP" . 787885) ("KEEP" . 787888) ("NEW_WINDOW" . 787891) ("XSIZE" . 787894) ("YSIZE" . 787897) ("ZOOM_WINDOW" . 787900)))
429 ("ACOS" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 419 ("ZOOM_24" pro nil (system) "%s" ("Z2.html" ("FACT" . 787920) ("RIGHT" . 787923) ("XSIZE" . 787926) ("YSIZE" . 787929)))
430 ("ADAPT_HIST_EQUAL" fun nil (system) "Result = %s (Image)" (("CLIP") ("FCN") ("NREGIONS") ("TOP"))) 420 ("A_CORRELATE" fun nil (system) "Result = %s(X, Lag)" ("A2.html" ("COVARIANCE" . 54405) ("DOUBLE" . 826748)))
431 ("ALOG" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 421 ("ABS" fun nil (system) "Result = %s(X)" ("A3.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
432 ("ALOG10" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 422 ("ACOS" fun nil (system) "Result = %s(X)" ("A4.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
433 ("AMOEBA" fun nil (system) "Result = %s( Ftol)" (("FUNCTION_NAME") ("FUNCTION_VALUE") ("NCALLS") ("NMAX") ("P0") ("SCALE") ("SIMPLEX"))) 423 ("ADAPT_HIST_EQUAL" fun nil (system) "Result = %s (Image)" ("A5.html" ("CLIP" . 985045) ("FCN" . 987804) ("NREGIONS" . 985047) ("TOP" . 985049)))
434 ("ARG_PRESENT" fun nil (system) "Result = %s(Variable)" nil) 424 ("ALOG" fun nil (system) "Result = %s(X)" ("A6.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
435 ("ARRAY_EQUAL" fun nil (system) "Result = %s( Op1 , Op2)" (("NO_TYPECONV"))) 425 ("ALOG10" fun nil (system) "Result = %s(X)" ("A7.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
436 ("ASCII_TEMPLATE" fun nil (system) "Result = %s( [Filename])" (("BROWSE_LINES") ("CANCEL") ("GROUP"))) 426 ("AMOEBA" fun nil (system) "Result = %s( Ftol)" ("A8.html" ("FUNCTION_NAME" . 864079) ("FUNCTION_VALUE" . 864085) ("NCALLS" . 864089) ("NMAX" . 864091) ("P0" . 864094) ("SCALE" . 864103) ("SIMPLEX" . 864424)))
437 ("ASIN" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 427 ("APP_USER_DIR" fun nil (system) "Result = %s(AuthorDirname, AuthorDesc, AppDirname, AppDesc, AppReadmeText, AppReadmeVersion)" ("A10.html" ("AUTHOR_README_TEXT" . 1011596) ("AUTHOR_README_VERSION" . 1011600) ("RESTRICT_APPVERSION" . 1011616) ("RESTRICT_ARCH" . 1011619) ("RESTRICT_FAMILY" . 1011624) ("RESTRICT_FILE_OFFSET_BITS" . 1011630) ("RESTRICT_IDL_RELEASE" . 1011635) ("RESTRICT_MEMORY_BITS" . 1011640) ("RESTRICT_OS" . 1011645)))
438 ("ASSOC" fun nil (system) "Result = %s( Unit, Array_Structure [, Offset])" (("PACKED"))) 428 ("APP_USER_DIR_QUERY" fun nil (system) "Result = %s(AuthorDirname, AppDirname)" ("A11.html" ("COUNT" . 1011749) ("EXCLUDE_CURRENT" . 1011751) ("QUERY_APPVERSION" . 1011762) ("QUERY_ARCH" . 1011764) ("QUERY_FAMILY" . 1011766) ("QUERY_FILE_OFFSET_BITS" . 1011768) ("QUERY_IDL_RELEASE" . 1011770) ("QUERY_MEMORY_BITS" . 1011772) ("QUERY_OS" . 1011774)))
439 ("ATAN" fun nil (system) "Result = %s([Y,] X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 429 ("ARG_PRESENT" fun nil (system) "Result = %s(Variable)" ("A12.html"))
440 ("BESELI" fun nil (system) "Result = %s(X, N)" nil) 430 ("ARRAY_EQUAL" fun nil (system) "Result = %s( Op1 , Op2)" ("A13.html" ("NO_TYPECONV" . 987069)))
441 ("BESELJ" fun nil (system) "Result = %s(X, N)" nil) 431 ("ARRAY_INDICES" fun nil (system) "Result = %s(Array, Index)" ("A14.html"))
442 ("BESELK" fun nil (system) "Result = %s( X, N )" nil) 432 ("ASCII_TEMPLATE" fun nil (system) "Result = %s( [Filename])" ("A16.html" ("BROWSE_LINES" . 871007) ("CANCEL" . 871139) ("GROUP" . 884032)))
443 ("BESELY" fun nil (system) "Result = %s(X, N)" nil) 433 ("ASIN" fun nil (system) "Result = %s(X)" ("A17.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
444 ("BETA" fun nil (system) "Result = %s( Z, W)" (("DOUBLE"))) 434 ("ASSOC" fun nil (system) "Result = %s( Unit, Array_Structure [, Offset])" ("A18.html" ("PACKED" . 906241)))
445 ("BILINEAR" fun nil (system) "Result = %s(P, IX, JY)" nil) 435 ("ATAN" fun nil (system) "Result = %s([Y,] X)" ("A19.html" ("PHASE" . 995606)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
446 ("BIN_DATE" fun nil (system) "Result = %s(Ascii_Time)" nil) 436 ("BESELI" fun nil (system) "Result = %s(X, N)" ("B3.html" ("DOUBLE" . 998579) ("ITER" . 998584)))
447 ("BINARY_TEMPLATE" fun nil (system) "Template = %s ( [Filename])" (("CANCEL") ("GROUP") ("N_ROWS") ("TEMPLATE"))) 437 ("BESELJ" fun nil (system) "Result = %s(X, N)" ("B4.html" ("DOUBLE" . 998704) ("ITER" . 998706)))
448 ("BINDGEN" fun nil (system) "Result = %s(D1, ...,D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 438 ("BESELK" fun nil (system) "Result = %s( X, N)" ("B5.html" ("DOUBLE" . 998712) ("ITER" . 998714)))
449 ("BINOMIAL" fun nil (system) "Result = %s(V, N, P)" (("DOUBLE") ("GAUSSIAN"))) 439 ("BESELY" fun nil (system) "Result = %s(X, N)" ("B6.html" ("DOUBLE" . 998720) ("ITER" . 998722)))
450 ("BLK_CON" fun nil (system) "Result = %s( Filter, Signal)" (("B_LENGTH") ("DOUBLE"))) 440 ("BETA" fun nil (system) "Result = %s( Z, W)" ("B7.html" ("DOUBLE" . 50234)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
451 ("BROYDEN" fun nil (system) "Result = %s( X, Vecfunc)" (("CHECK") ("DOUBLE") ("EPS") ("ITMAX") ("STEPMAX") ("TOLF") ("TOLMIN") ("TOLX"))) 441 ("BILINEAR" fun nil (system) "Result = %s(P, IX, JY)" ("B8.html" ("MISSING" . 996637)))
452 ("BYTARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 442 ("BIN_DATE" fun nil (system) "Result = %s(Ascii_Time)" ("B9.html"))
453 ("BYTE" fun nil (system) "Result = %s( Expression[, Offset [, Dim1, ..., Dim8]] )" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 443 ("BINARY_TEMPLATE" fun nil (system) "Result = %s ( [Filename])" ("B10.html" ("CANCEL" . 985257) ("GROUP" . 985259) ("N_ROWS" . 985261) ("TEMPLATE" . 988405)))
454 ("BYTSCL" fun nil (system) "Result = %s( Array)" (("MAX") ("MIN") ("NAN") ("TOP") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 444 ("BINDGEN" fun nil (system) "Result = %s(D1 [, ...,D8])" ("B11.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
455 ("C_CORRELATE" fun nil (system) "Result = %s( X, Y, Lag)" (("COVARIANCE") ("DOUBLE"))) 445 ("BINOMIAL" fun nil (system) "Result = %s(V, N, P)" ("B12.html" ("DOUBLE" . 988094) ("GAUSSIAN" . 988097)))
456 ("CALL_EXTERNAL" fun nil (system) "Result = %s(Image, Entry [, P0, ..., PN-1])" (("ALL_VALUE") ("AUTOGLUE") ("B_VALUE") ("CC") ("CDECL") ("COMPILE_DIRECTORY") ("D_VALUE") ("DEFAULT") ("EXTRA_CFLAGS") ("EXTRA_LFLAGS") ("F_VALUE") ("I_VALUE") ("IGNORE_EXISTING_GLUE") ("L64_VALUE") ("LD") ("NOCLEANUP") ("PORTABLE") ("RETURN_TYPE") ("S_VALUE") ("SHOW_ALL_OUTPUT") ("UI_VALUE") ("UL64_VALUE") ("UL_VALUE") ("UNLOAD") ("VALUE") ("VAX_FLOAT") ("VERBOSE") ("WRITE_WRAPPER"))) 446 ("BLK_CON" fun nil (system) "Result = %s( Filter, Signal)" ("B14.html" ("B_LENGTH" . 749505) ("DOUBLE" . 987871)))
457 ("CALL_FUNCTION" fun nil (system) "Result = %s(Name [, P1, ..., Pn])" nil) 447 ("BROYDEN" fun nil (system) "Result = %s( X, Vecfunc)" ("B18.html" ("CHECK" . 50283) ("DOUBLE" . 50286) ("EPS" . 50289) ("ITMAX" . 989330) ("STEPMAX" . 50292) ("TOLF" . 50295) ("TOLMIN" . 50298) ("TOLX" . 50301)))
458 ("CALL_METHOD" fun nil (system) "Result = %s, Name, ObjRef, [, P1, ..., Pn]" nil) 448 ("BYTARR" fun nil (system) "Result = %s( D1[, ..., D8])" ("B19.html" ("NOZERO" . 675878)))
459 ("CDF_ATTCREATE" fun nil (system) "Result = %s( Id, Attribute_Name)" (("GLOBAL_SCOPE") ("VARIABLE_SCOPE"))) 449 ("BYTE" fun nil (system) "Result = %s( Expression[, Offset [, D1[, ..., D8]]] )" ("B20.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
460 ("CDF_ATTEXISTS" fun nil (system) "Result = %s( Id, Attribute [, EntryNum])" (("ZVARIABLE"))) 450 ("BYTSCL" fun nil (system) "Result = %s( Array)" ("B22.html" ("MAX" . 675964) ("MIN" . 675966) ("NAN" . 47179) ("TOP" . 675968)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
461 ("CDF_ATTNUM" fun nil (system) "Result = %s(Id, Attribute_Name)" nil) 451 ("C_CORRELATE" fun nil (system) "Result = %s( X, Y, Lag)" ("C.html" ("COVARIANCE" . 54458) ("DOUBLE" . 826756)))
462 ("CDF_CREATE" fun nil (system) "Result = %s( Filename, [Dimensions])" (("ALPHAOSF1_DECODING") ("ALPHAOSF1_ENCODING") ("ALPHAVMSD_DECODING") ("ALPHAVMSD_ENCODING") ("ALPHAVMSG_DECODING") ("ALPHAVMSG_ENCODING") ("CLOBBER") ("COL_MAJOR") ("DECSTATION_DECODING") ("DECSTATION_ENCODING") ("HOST_DECODING") ("HOST_ENCODING") ("HP_DECODING") ("HP_ENCODING") ("IBMPC_DECODING") ("IBMPC_ENCODING") ("IBMRS_DECODING") ("IBMRS_ENCODING") ("MAC_DECODING") ("MAC_ENCODING") ("MULTI_FILE") ("NETWORK_DECODING") ("NETWORK_ENCODING") ("NEXT_DECODING") ("NEXT_ENCODING") ("ROW_MAJOR") ("SGI_DECODING") ("SGI_ENCODING") ("SINGLE_FILE") ("SUN_DECODING") ("SUN_ENCODING"))) 452 ("CALL_EXTERNAL" fun nil (system) "Result = %s(Image, Entry [, P0, ..., PN-1])" ("C4.html" ("ALL_VALUE" . 905908) ("AUTO_GLUE" . 1025677) ("B_VALUE" . 951311) ("CC" . 1012394) ("CDECL" . 905911) ("COMPILE_DIRECTORY" . 1012398) ("D_VALUE" . 905920) ("EXTRA_CFLAGS" . 1012436) ("EXTRA_LFLAGS" . 1012440) ("F_VALUE" . 905923) ("I_VALUE" . 905926) ("IGNORE_EXISTING_GLUE" . 1012444) ("L64_VALUE" . 951332) ("LD" . 1012449) ("NOCLEANUP" . 1012453) ("RETURN_TYPE" . 1029187) ("S_VALUE" . 951354) ("SHOW_ALL_OUTPUT" . 1012458) ("UI_VALUE" . 951320) ("UL64_VALUE" . 965882) ("UL_VALUE" . 965879) ("UNLOAD" . 993357) ("VALUE" . 905936) ("VERBOSE" . 1012497) ("WRITE_WRAPPER" . 1029198)))
463 ("CDF_ENCODE_EPOCH" fun nil (system) "Result = %s(Epoch)" (("EPOCH"))) 453 ("CALL_FUNCTION" fun nil (system) "Result = %s(Name [, P1, ..., Pn])" ("C5.html"))
464 ("CDF_ERROR" fun nil (system) "Result = %s(Status)" nil) 454 ("CALL_METHOD" fun nil (system) "Result = %s, Name, ObjRef, [, P1, ..., Pn]" ("C6.html"))
465 ("CDF_EXISTS" fun nil (system) "Result = %s( )" nil) 455 ("CDF_ATTCREATE" fun nil (system) "Result = %s( Id, Attribute_Name)" ("CDF-routines8.html" ("GLOBAL_SCOPE" . 996934) ("VARIABLE_SCOPE" . 996937)))
466 ("CDF_INQUIRE" fun nil (system) "Result = %s(Id)" nil) 456 ("CDF_ATTEXISTS" fun nil (system) "Result = %s( Id, Attribute [, EntryNum])" ("CDF-routines10.html" ("ZVARIABLE" . 1002462)))
467 ("CDF_OPEN" fun nil (system) "Result = %s(Filename)" nil) 457 ("CDF_ATTNUM" fun nil (system) "Result = %s(Id, Attribute_Name)" ("CDF-routines13.html"))
468 ("CDF_PARSE_EPOCH" fun nil (system) "Result = %s(Epoch_string)" nil) 458 ("CDF_CREATE" fun nil (system) "Result = %s( Filename, [Dimensions])" ("CDF-routines19.html" ("ALPHAOSF1_DECODING" . 1017799) ("ALPHAOSF1_ENCODING" . 997337) ("ALPHAVMSD_DECODING" . 1017802) ("ALPHAVMSD_ENCODING" . 997340) ("ALPHAVMSG_DECODING" . 1017805) ("ALPHAVMSG_ENCODING" . 997343) ("CLOBBER" . 1017643) ("COL_MAJOR" . 1017646) ("DECSTATION_DECODING" . 1017808) ("DECSTATION_ENCODING" . 1017778) ("HOST_DECODING" . 1017811) ("HOST_ENCODING" . 997349) ("HP_DECODING" . 1017814) ("HP_ENCODING" . 997352) ("IBMPC_DECODING" . 1017817) ("IBMPC_ENCODING" . 1017767) ("IBMRS_DECODING" . 1017820) ("IBMRS_ENCODING" . 997355) ("MAC_DECODING" . 1017823) ("MAC_ENCODING" . 997367) ("MULTI_FILE" . 1017715) ("NETWORK_DECODING" . 1017826) ("NETWORK_ENCODING" . 997378) ("NEXT_DECODING" . 1017829) ("NEXT_ENCODING" . 997381) ("ROW_MAJOR" . 1017746) ("SGI_DECODING" . 1017832) ("SGI_ENCODING" . 1017789) ("SINGLE_FILE" . 1017749) ("SUN_DECODING" . 1017835) ("SUN_ENCODING" . 997390)))
469 ("CDF_VARCREATE" fun nil (system) "Result = %s( Id, Name [, DimVary])" (("ALLOCATERECS") ("CDF_BYTE") ("CDF_CHAR") ("CDF_DOUBLE") ("CDF_EPOCH") ("CDF_FLOAT") ("CDF_INT1") ("CDF_INT2") ("CDF_INT4") ("CDF_REAL4") ("CDF_REAL8") ("CDF_UCHAR") ("CDF_UINT1") ("CDF_UINT2") ("CDF_UINT4") ("DIMENSIONS") ("NUMELEM") ("REC_NOVARY") ("REC_VARY") ("ZVARIABLE"))) 459 ("CDF_ENCODE_EPOCH" fun nil (system) "Result = %s(Epoch)" ("CDF-routines22.html" ("EPOCH" . 997448)))
470 ("CDF_VARINQ" fun nil (system) "Result = %s( Id, Variable)" (("ZVARIABLE"))) 460 ("CDF_ERROR" fun nil (system) "Result = %s(Status)" ("CDF-routines24.html"))
471 ("CDF_VARNUM" fun nil (system) "Result = %s( Id, VarName [, IsZVar] )" nil) 461 ("CDF_EXISTS" fun nil (system) "Result = %s( )" ("CDF-routines25.html"))
472 ("CEIL" fun nil (system) "Result = %s(X)" (("L64") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 462 ("CDF_INQUIRE" fun nil (system) "Result = %s(Id)" ("CDF-routines26.html"))
473 ("CHEBYSHEV" fun nil (system) "Result = %s(D, N)" nil) 463 ("CDF_OPEN" fun nil (system) "Result = %s(Filename)" ("CDF-routines28.html"))
474 ("CHECK_MATH" fun nil (system) "Result = %s()" (("MASK") ("NOCLEAR") ("PRINT"))) 464 ("CDF_PARSE_EPOCH" fun nil (system) "Result = %s(Epoch_string)" ("CDF-routines29.html"))
475 ("CHISQR_CVF" fun nil (system) "Result = %s(P, Df)" nil) 465 ("CDF_VARCREATE" fun nil (system) "Result = %s( Id, Name [, DimVary])" ("CDF-routines30.html" ("ALLOCATERECS" . 997736) ("DIMENSIONS" . 997739) ("NUMELEM" . 997744) ("REC_NOVARY" . 997747) ("REC_VARY" . 997750) ("VARIABLETYPE" . 1027601) ("ZVARIABLE" . 997753)))
476 ("CHISQR_PDF" fun nil (system) "Result = %s(V, Df)" nil) 466 ("CDF_VARINQ" fun nil (system) "Result = %s( Id, Variable)" ("CDF-routines34.html" ("ZVARIABLE" . 997944)))
477 ("CHOLSOL" fun nil (system) "Result = %s( A, P, B)" (("DOUBLE"))) 467 ("CDF_VARNUM" fun nil (system) "Result = %s( Id, VarName [, IsZVar] )" ("CDF-routines35.html"))
478 ("CINDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 468 ("CEIL" fun nil (system) "Result = %s(X)" ("C12.html" ("L64" . 1015251)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
479 ("CLUST_WTS" fun nil (system) "Result = %s( Array)" (("DOUBLE") ("N_CLUSTERS") ("N_ITERATIONS") ("VARIABLE_WTS"))) 469 ("CHEBYSHEV" fun nil (system) "Result = %s(D, N)" ("C13.html"))
480 ("CLUSTER" fun nil (system) "Result = %s( Array, Weights)" (("DOUBLE") ("N_CLUSTERS"))) 470 ("CHECK_MATH" fun nil (system) "Result = %s()" ("C14.html" ("MASK" . 993110) ("NOCLEAR" . 993190) ("PRINT" . 993188)))
481 ("COLOR_QUAN" fun nil (system) "Result = %s( Image_R, Image_G, Image_B, R, G, B) or Result = COLOR_QUAN( Image, Dim, R, G, B )" (("COLORS") ("CUBE") ("DITHER") ("ERROR") ("GET_TRANSLATION") ("MAP_ALL") ("TRANSLATION"))) 471 ("CHISQR_CVF" fun nil (system) "Result = %s(P, Df)" ("C15.html"))
482 ("COLORMAP_APPLICABLE" fun nil (system) "Result = %s( redrawRequired )" nil) 472 ("CHISQR_PDF" fun nil (system) "Result = %s(V, Df)" ("C16.html"))
483 ("COMFIT" fun nil (system) "Result = %s( X, Y, A)" (("EXPONENTIAL") ("GEOMETRIC") ("GOMPERTZ") ("HYPERBOLIC") ("LOGISTIC") ("LOGSQUARE") ("SIGMA") ("WEIGHTS") ("YFIT"))) 473 ("CHOLSOL" fun nil (system) "Result = %s( A, P, B)" ("C18.html" ("DOUBLE" . 50387)))
484 ("COMPLEX" fun nil (system) "Result = %s( Real [, Imaginary] ) or Result = COMPLEX(Expression, Offset, Dim1 [, ..., Dim8])" (("DOUBLE") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 474 ("CINDGEN" fun nil (system) "Result = %s(D1[, ..., D8])" ("C19.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
485 ("COMPLEXARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 475 ("CLUST_WTS" fun nil (system) "Result = %s( Array)" ("C22.html" ("DOUBLE" . 862498) ("N_CLUSTERS" . 862487) ("N_ITERATIONS" . 862488) ("VARIABLE_WTS" . 862545)))
486 ("COMPLEXROUND" fun nil (system) "Result = %s(Input)" nil) 476 ("CLUSTER" fun nil (system) "Result = %s( Array, Weights)" ("C23.html" ("DOUBLE" . 862580) ("N_CLUSTERS" . 862583)))
487 ("COMPUTE_MESH_NORMALS" fun nil (system) "Result = %s( fVerts[, iConn] )" nil) 477 ("CLUSTER_TREE" fun nil (system) "Result = %s( Pairdistance, Linkdistance)" ("C24.html" ("DATA" . 1196682) ("LINKAGE" . 1196686) ("MEASURE" . 1196715) ("POWER_MEASURE" . 1196749)))
488 ("COND" fun nil (system) "Result = %s( A)" (("DOUBLE") ("LNORM"))) 478 ("COLOR_QUAN" fun nil (system) "Result = %s( Image_R, Image_G, Image_B, R, G, B) or Result = %s( Image, Dim, R, G, B )" ("C26.html" ("COLORS" . 676177) ("CUBE" . 676179) ("DITHER" . 676181) ("ERROR" . 676183) ("GET_TRANSLATION" . 676185) ("MAP_ALL" . 676187) ("TRANSLATION" . 676189)))
489 ("CONGRID" fun nil (system) "Result = %s( Array, X, Y, Z)" (("CENTER") ("CUBIC") ("INTERP") ("MINUS_ONE"))) 479 ("COLORMAP_APPLICABLE" fun nil (system) "Result = %s( redrawRequired )" ("C27.html"))
490 ("CONJ" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 480 ("COMFIT" fun nil (system) "Result = %s( X, Y, A)" ("C28.html" ("EXPONENTIAL" . 53208) ("GEOMETRIC" . 838932) ("GOMPERTZ" . 838937) ("HYPERBOLIC" . 838944) ("LOGISTIC" . 838961) ("LOGSQUARE" . 838970) ("SIGMA" . 838980) ("WEIGHTS" . 53265) ("YFIT" . 53268)))
491 ("CONVERT_COORD" fun nil (system) "Result = %s( X [, Y [, Z]])" (("DATA") ("DEVICE") ("DOUBLE") ("NORMAL") ("T3D") ("TO_DATA") ("TO_DEVICE") ("TO_NORMAL"))) 481 ("COMPLEX" fun nil (system) "Result = %s( Real [, Imaginary])" ("C31.html" ("DOUBLE" . 1041956)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
492 ("CONVOL" fun nil (system) "Result = %s( Array, Kernel [, Scale_Factor])" (("CENTER") ("EDGE_TRUNCATE") ("EDGE_WRAP") ("MISSING") ("NAN") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 482 ("COMPLEXARR" fun nil (system) "Result = %s( D1[, ..., D8])" ("C32.html" ("NOZERO" . 676236)))
493 ("COORD2TO3" fun nil (system) "Result = %s( Mx, My, Dim, D0 [, PTI] )" nil) 483 ("COMPLEXROUND" fun nil (system) "Result = %s(Input)" ("C33.html"))
494 ("CORRELATE" fun nil (system) "Result = %s( X [, Y])" (("COVARIANCE") ("DOUBLE"))) 484 ("COMPUTE_MESH_NORMALS" fun nil (system) "Result = %s( fVerts[, iConn] )" ("C34.html"))
495 ("COS" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 485 ("COND" fun nil (system) "Result = %s( A)" ("C35.html" ("DOUBLE" . 749542) ("LNORM" . 1042001)))
496 ("COSH" fun nil (system) "Result = %s(X)" nil) 486 ("CONGRID" fun nil (system) "Result = %s( Array, X, Y, Z)" ("C36.html" ("CENTER" . 757848) ("CUBIC" . 1042041) ("INTERP" . 757851) ("MINUS_ONE" . 757854)))
497 ("CRAMER" fun nil (system) "Result = %s( A, B)" (("DOUBLE") ("ZERO"))) 487 ("CONJ" fun nil (system) "Result = %s(X)" ("C37.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
498 ("CREATE_STRUCT" fun nil (system) "Result = %s( [Tag1, Value1, ..., Tagn, Valuen] ) or Result = CREATE_STRUCT()" (("NAME"))) 488 ("CONVERT_COORD" fun nil (system) "Result = %s( X [, Y [, Z]])" ("C41.html" ("DATA" . 676377) ("DEVICE" . 676379) ("DOUBLE" . 1015017) ("NORMAL" . 676381) ("T3D" . 676383) ("TO_DATA" . 676385) ("TO_DEVICE" . 676387) ("TO_NORMAL" . 676389)))
499 ("CROSSP" fun nil (system) "Result = %s(V1, V2)" nil) 489 ("CONVOL" fun nil (system) "Result = %s( Array, Kernel [, Scale_Factor])" ("C42.html" ("CENTER" . 676409) ("EDGE_TRUNCATE" . 746326) ("EDGE_WRAP" . 228821) ("MISSING" . 1028668) ("NAN" . 1028683)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
500 ("CRVLENGTH" fun nil (system) "Result = %s( X, Y)" (("DOUBLE"))) 490 ("COORD2TO3" fun nil (system) "Result = %s( Mx, My, Dim, D0 [, PTI] )" ("C43.html"))
501 ("CT_LUMINANCE" fun nil (system) "Result = %s( [R, G, B])" (("BRIGHT") ("DARK") ("READ_TABLES"))) 491 ("CORRELATE" fun nil (system) "Result = %s( X [, Y])" ("C45.html" ("COVARIANCE" . 53307) ("DOUBLE" . 868819)))
502 ("CTI_TEST" fun nil (system) "Result = %s( Obfreq)" (("COEFF") ("CORRECTED") ("CRAMV") ("DF") ("EXFREQ") ("RESIDUAL"))) 492 ("COS" fun nil (system) "Result = %s(X)" ("C46.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
503 ("CURVEFIT" fun nil (system) "Result = %s( X, Y, Weights, A [, Sigma])" (("CHISQ") ("DOUBLE") ("FUNCTION_NAME") ("ITER") ("ITMAX") ("NODERIVATIVE") ("TOL"))) 493 ("COSH" fun nil (system) "Result = %s(X)" ("C47.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
504 ("CV_COORD" fun nil (system) "Result = %s()" (("DEGREES") ("DOUBLE") ("FROM_CYLIN") ("FROM_POLAR") ("FROM_RECT") ("FROM_SPHERE") ("TO_CYLIN") ("TO_POLAR") ("TO_RECT") ("TO_SPHERE"))) 494 ("CRAMER" fun nil (system) "Result = %s( A, B)" ("C49.html" ("DOUBLE" . 749607) ("ZERO" . 749609)))
505 ("CVTTOBM" fun nil (system) "Result = %s( Array)" (("THRESHOLD"))) 495 ("CREATE_CURSOR" fun nil (system) "Result = %s( StringArray)" ("C50.html" ("HOTSPOT" . 1192516) ("MASK" . 1222423)))
506 ("CW_ANIMATE" fun nil (system) "Result = %s( Parent, Sizex, Sizey, Nframes)" (("NO_KILL") ("OPEN_FUNC") ("PIXMAPS") ("TRACK") ("UNAME") ("UVALUE"))) 496 ("CREATE_STRUCT" fun nil (system) "Result = %s( [Tag1, Values1, ..., Tagn, Valuesn] [, Structuresn])" ("C51.html" ("NAME" . 279439)))
507 ("CW_ARCBALL" fun nil (system) "Result = %s( Parent)" (("COLORS") ("FRAME") ("LABEL") ("RETAIN") ("SIZE") ("UNAME") ("UPDATE") ("UVALUE") ("VALUE"))) 497 ("CROSSP" fun nil (system) "Result = %s(V1, V2)" ("C53.html"))
508 ("CW_BGROUP" fun nil (system) "Result = %s( Parent, Names)" (("BUTTON_UVALUE") ("COLUMN") ("EVENT_FUNC") ("EXCLUSIVE") ("FONT") ("FRAME") ("IDS") ("LABEL_LEFT") ("LABEL_TOP") ("MAP") ("NO_RELEASE") ("NONEXCLUSIVE") ("RETURN_ID") ("RETURN_INDEX") ("RETURN_NAME") ("ROW") ("SCROLL") ("SET_VALUE") ("SPACE") ("UNAME") ("UVALUE") ("X_SCROLL_SIZE") ("XOFFSET") ("XPAD") ("XSIZE") ("Y_SCROLL_SIZE") ("YOFFSET") ("YPAD") ("YSIZE"))) 498 ("CRVLENGTH" fun nil (system) "Result = %s( X, Y)" ("C54.html" ("DOUBLE" . 862840)))
509 ("CW_CLR_INDEX" fun nil (system) "Result = %s( Parent)" (("COLOR_VALUES") ("EVENT_FUNC") ("FRAME") ("LABEL") ("NCOLORS") ("START_COLOR") ("UNAME") ("UVALUE") ("VALUE") ("XSIZE") ("YSIZE"))) 499 ("CT_LUMINANCE" fun nil (system) "Result = %s( [R, G, B])" ("C55.html" ("BRIGHT" . 759145) ("DARK" . 759148) ("READ_TABLES" . 759151)))
510 ("CW_COLORSEL" fun nil (system) "Result = %s( Parent)" (("FRAME") ("UNAME") ("UVALUE") ("XOFFSET") ("YOFFSET"))) 500 ("CTI_TEST" fun nil (system) "Result = %s( Obfreq)" ("C56.html" ("COEFF" . 53357) ("CORRECTED" . 53360) ("CRAMV" . 53363) ("DF" . 53366) ("EXFREQ" . 53369) ("RESIDUAL" . 53372)))
511 ("CW_DEFROI" fun nil (system) "Result = %s( Draw)" (("IMAGE_SIZE") ("OFFSET") ("ORDER") ("RESTORE") ("ZOOM"))) 501 ("CURVEFIT" fun nil (system) "Result = %s( X, Y, Weights, A [, Sigma])" ("C58.html" ("CHISQ" . 1024958) ("DOUBLE" . 1024093) ("FITA" . 148399) ("FUNCTION_NAME" . 1118305) ("ITER" . 150209) ("ITMAX" . 150211) ("NODERIVATIVE" . 150222) ("STATUS" . 1107869) ("TOL" . 1108021) ("YERROR" . 1053331)))
512 ("CW_FIELD" fun nil (system) "Result = %s( Parent)" (("ALL_EVENTS") ("COLUMN") ("FIELDFONT") ("FLOATING") ("FONT") ("FRAME") ("INTEGER") ("LONG") ("NOEDIT") ("RETURN_EVENTS") ("ROW") ("STRING") ("TEXT_FRAME") ("TITLE") ("UNAME") ("UVALUE") ("VALUE") ("XSIZE") ("YSIZE"))) 502 ("CV_COORD" fun nil (system) "Result = %s()" ("C59.html" ("DEGREES" . 756965) ("DOUBLE" . 1025482) ("FROM_CYLIN" . 756968) ("FROM_POLAR" . 756971) ("FROM_RECT" . 756974) ("FROM_SPHERE" . 756977) ("TO_CYLIN" . 1109055) ("TO_POLAR" . 756983) ("TO_RECT" . 756986) ("TO_SPHERE" . 756989)))
513 ("CW_FILESEL" fun nil (system) "Result = %s ( Parent)" (("FILENAME") ("FILTER") ("FIX_FILTER") ("FRAME") ("IMAGE_FILTER") ("MULTIPLE") ("PATH") ("SAVE") ("UNAME") ("UVALUE") ("WARN_EXIST"))) 503 ("CVTTOBM" fun nil (system) "Result = %s( Array)" ("C60.html" ("THRESHOLD" . 871509)))
514 ("CW_FORM" fun nil (system) "Result = %s( [Parent,] Desc)" (("COLUMN") ("IDS") ("TITLE") ("UNAME") ("UVALUE"))) 504 ("CW_ANIMATE" fun nil (system) "Result = %s( Parent, Sizex, Sizey, Nframes)" ("C61.html" ("NO_KILL" . 853861) ("OPEN_FUNC" . 853864) ("PIXMAPS" . 853868) ("TAB_MODE" . 1189372) ("TRACK" . 853871) ("UNAME" . 996617) ("UVALUE" . 853874)))
515 ("CW_FSLIDER" fun nil (system) "Result = %s( Parent)" (("DOUBLE") ("DRAG") ("EDIT") ("FORMAT") ("FRAME") ("MAXIMUM") ("MINIMUM") ("SCROLL") ("SUPPRESS_VALUE") ("TITLE") ("UNAME") ("UVALUE") ("VALUE") ("VERTICAL") ("XSIZE") ("YSIZE"))) 505 ("CW_ARCBALL" fun nil (system) "Result = %s( Parent)" ("C65.html" ("COLORS" . 755064) ("FRAME" . 755074) ("LABEL" . 755077) ("RETAIN" . 755080) ("SIZE" . 755108) ("TAB_MODE" . 1189488) ("UNAME" . 996624) ("UPDATE" . 1189483) ("UVALUE" . 755114) ("VALUE" . 755117)))
516 ("CW_LIGHT_EDITOR" fun nil (system) "Result = %s (Parent)" (("DIRECTION_DISABLED") ("DRAG_EVENTS") ("FRAME") ("HIDE_DISABLED") ("LIGHT") ("LOCATION_DISABLED") ("TYPE_DISABLED") ("UVALUE") ("XRANGE") ("XSIZE") ("YRANGE") ("YSIZE") ("ZRANGE"))) 506 ("CW_BGROUP" fun nil (system) "Result = %s( Parent, Names)" ("C66.html" ("BUTTON_UVALUE" . 755175) ("COLUMN" . 755178) ("EVENT_FUNC" . 755181) ("EXCLUSIVE" . 755184) ("FONT" . 755187) ("FRAME" . 755190) ("IDS" . 755193) ("LABEL_LEFT" . 755196) ("LABEL_TOP" . 755199) ("MAP" . 755202) ("NO_RELEASE" . 755208) ("NONEXCLUSIVE" . 755205) ("RETURN_ID" . 755211) ("RETURN_INDEX" . 755214) ("RETURN_NAME" . 755217) ("ROW" . 755220) ("SCROLL" . 755223) ("SET_VALUE" . 755226) ("SPACE" . 755230) ("TAB_MODE" . 1189560) ("UNAME" . 996707) ("UVALUE" . 755233) ("X_SCROLL_SIZE" . 755245) ("XOFFSET" . 755236) ("XPAD" . 755239) ("XSIZE" . 755242) ("Y_SCROLL_SIZE" . 755257) ("YOFFSET" . 755248) ("YPAD" . 755251) ("YSIZE" . 755254)))
517 ("CW_ORIENT" fun nil (system) "Result = %s( Parent)" (("AX") ("AZ") ("FRAME") ("TITLE") ("UNAME") ("UVALUE") ("XSIZE") ("YSIZE"))) 507 ("CW_CLR_INDEX" fun nil (system) "Result = %s( Parent)" ("C67.html" ("COLOR_VALUES" . 854099) ("EVENT_FUNC" . 854102) ("FRAME" . 854105) ("LABEL" . 854108) ("NCOLORS" . 854111) ("START_COLOR" . 854114) ("TAB_MODE" . 1189650) ("UNAME" . 996631) ("UVALUE" . 854117) ("VALUE" . 854120) ("XSIZE" . 1025090) ("YSIZE" . 854123)))
518 ("CW_PALETTE_EDITOR" fun nil (system) "Result = %s (Parent)" (("DATA") ("FRAME") ("HISTOGRAM") ("HORIZONTAL") ("SELECTION") ("UNAME") ("UVALUE") ("XSIZE") ("YSIZE"))) 508 ("CW_COLORSEL" fun nil (system) "Result = %s( Parent)" ("C68.html" ("FRAME" . 854194) ("TAB_MODE" . 1189739) ("UNAME" . 996638) ("UVALUE" . 1233223) ("XOFFSET" . 854200) ("YOFFSET" . 854203)))
519 ("CW_PDMENU" fun nil (system) "Result = %s( Parent, Desc)" (("COLUMN") ("CONTEXT_MENU") ("DELIMITER") ("FONT") ("HELP") ("IDS") ("MBAR") ("RETURN_FULL_NAME") ("RETURN_ID") ("RETURN_INDEX") ("RETURN_NAME") ("UNAME") ("UVALUE") ("XOFFSET") ("YOFFSET"))) 509 ("CW_DEFROI" fun nil (system) "Result = %s( Draw)" ("C69.html" ("IMAGE_SIZE" . 755439) ("OFFSET" . 755442) ("ORDER" . 755445) ("RESTORE" . 755448) ("TAB_MODE" . 1189809) ("ZOOM" . 755451)))
520 ("CW_RGBSLIDER" fun nil (system) "Result = %s( Parent)" (("CMY") ("COLOR_INDEX") ("DRAG") ("FRAME") ("GRAPHICS_LEVEL") ("HLS") ("HSV") ("LENGTH") ("RGB") ("UNAME") ("UVALUE") ("VALUE") ("VERTICAL"))) 510 ("CW_FIELD" fun nil (system) "Result = %s( Parent)" ("C70.html" ("ALL_EVENTS" . 755508) ("COLUMN" . 755511) ("FIELDFONT" . 755514) ("FLOATING" . 755517) ("FONT" . 755520) ("FRAME" . 755523) ("INTEGER" . 755526) ("LONG" . 755529) ("NOEDIT" . 755532) ("RETURN_EVENTS" . 755535) ("ROW" . 755540) ("STRING" . 755543) ("TAB_MODE" . 1189883) ("TEXT_FRAME" . 755546) ("TITLE" . 1029040) ("UNAME" . 996600) ("UVALUE" . 755549) ("VALUE" . 755552) ("XSIZE" . 755555) ("YSIZE" . 755558)))
521 ("CW_TMPL" fun nil (system) "Result = %s( Parent)" (("UNAME") ("UVALUE"))) 511 ("CW_FILESEL" fun nil (system) "Result = %s ( Parent)" ("C71.html" ("FILENAME" . 1001063) ("FILTER" . 1001065) ("FIX_FILTER" . 1001072) ("FRAME" . 1001074) ("IMAGE_FILTER" . 1001076) ("MULTIPLE" . 1001078) ("PATH" . 1001080) ("SAVE" . 1024908) ("TAB_MODE" . 1189963) ("UNAME" . 1001082) ("UVALUE" . 1001085) ("WARN_EXIST" . 1024611)))
522 ("CW_ZOOM" fun nil (system) "Result = %s( Parent)" (("FRAME") ("MAX") ("MIN") ("RETAIN") ("SAMPLE") ("SCALE") ("TRACK") ("UNAME") ("UVALUE") ("X_SCROLL_SIZE") ("X_ZSIZE") ("XSIZE") ("Y_SCROLL_SIZE") ("Y_ZSIZE") ("YSIZE"))) 512 ("CW_FORM" fun nil (system) "Result = %s( [Parent,] Desc)" ("C72.html" ("COLUMN" . 141396) ("IDS" . 141399) ("TAB_MODE" . 1190037) ("TITLE" . 141402) ("UNAME" . 996652) ("UVALUE" . 141405)))
523 ("DBLARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 513 ("CW_FSLIDER" fun nil (system) "Result = %s( Parent)" ("C73.html" ("DOUBLE" . 755581) ("DRAG" . 1028998) ("EDIT" . 755584) ("FORMAT" . 755587) ("FRAME" . 755590) ("MAXIMUM" . 755593) ("MINIMUM" . 755596) ("SCROLL" . 218849) ("SUPPRESS_VALUE" . 755599) ("TAB_MODE" . 1190109) ("TITLE" . 755602) ("UNAME" . 996664) ("UVALUE" . 755605) ("VALUE" . 755608) ("VERTICAL" . 755611) ("XSIZE" . 755614) ("YSIZE" . 755617)))
524 ("DCINDGEN" fun nil (system) "Result = %s( D1, ..., D8 )" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 514 ("CW_ITMENU" fun nil (system) "Result = %s(Parent, UI, Target)" ("fw_cw_ref4.html" ("CONTEXT_MENU" . 999147) ("UNAME" . 999150) ("UVALUE" . 999153)))
525 ("DCOMPLEX" fun nil (system) "Result = %s( Real [, Imaginary] ) or Result = DCOMPLEX( Expression, Offset, Dim1 [, ..., Dim8] )" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 515 ("CW_ITPANEL" fun nil (system) "Result = %s(Parent, UI)" ("fw_cw_ref5.html" ("ORIENTATION" . 999520) ("UNAME" . 999524) ("UVALUE" . 999527)))
526 ("DCOMPLEXARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 516 ("CW_ITSTATUSBAR" fun nil (system) "Result = %s(Parent, UI)" ("fw_cw_ref6.html" ("UNAME" . 999554) ("UVALUE" . 999557) ("XSIZE" . 999560)))
527 ("DEFROI" fun nil (system) "Result = %s( Sx, Sy [, Xverts, Yverts])" (("NOFILL") ("NOREGION") ("RESTORE") ("X0") ("Y0") ("ZOOM"))) 517 ("CW_ITTOOLBAR" fun nil (system) "Result = %s(Parent, UI, Target)" ("fw_cw_ref7.html" ("EXCLUSIVE" . 999187) ("ROW" . 999190) ("UNAME" . 1001835) ("UVALUE" . 999196)))
528 ("DEMO_MODE" fun nil (system) "Result = %s()" nil) 518 ("CW_ITWINDOW" fun nil (system) "Result = %s(Parent, UI)" ("fw_cw_ref8.html" ("DIMENSIONS" . 999225) ("UNAME" . 999229) ("UVALUE" . 999232) ("VIRTUAL_DIMENSIONS" . 1002122)))
529 ("DERIV" fun nil (system) "Result = %s([X,] Y)" nil) 519 ("CW_LIGHT_EDITOR" fun nil (system) "Result = %s (Parent)" ("C74.html" ("DIRECTION_DISABLED" . 1001420) ("DRAG_EVENTS" . 1001422) ("FRAME" . 1001426) ("HIDE_DISABLED" . 1001428) ("LIGHT" . 1001430) ("LOCATION_DISABLED" . 1001432) ("TAB_MODE" . 1239092) ("TYPE_DISABLED" . 1001434) ("UNAME" . 1001436) ("UVALUE" . 1001439) ("XRANGE" . 1001441) ("XSIZE" . 1001443) ("YRANGE" . 1001445) ("YSIZE" . 1001447) ("ZRANGE" . 1001449)))
530 ("DERIVSIG" fun nil (system) "Result = %s( [X, Y, Sigx,] Sigy )" nil) 520 ("CW_ORIENT" fun nil (system) "Result = %s( Parent)" ("C77.html" ("AX" . 755637) ("AZ" . 755640) ("FRAME" . 755643) ("TAB_MODE" . 1190182) ("TITLE" . 755646) ("UNAME" . 996671) ("UVALUE" . 755649) ("XSIZE" . 755652) ("YSIZE" . 755655)))
531 ("DETERM" fun nil (system) "Result = %s( A)" (("CHECK") ("DOUBLE") ("ZERO"))) 521 ("CW_PALETTE_EDITOR" fun nil (system) "Result = %s (Parent)" ("C78.html" ("DATA" . 1001627) ("FRAME" . 1001629) ("HISTOGRAM" . 1001631) ("HORIZONTAL" . 1001633) ("SELECTION" . 1001635) ("TAB_MODE" . 1190256) ("UNAME" . 1001637) ("UVALUE" . 1001640) ("XSIZE" . 1001642) ("YSIZE" . 1001644)))
532 ("DIALOG_MESSAGE" fun nil (system) "Result = %s( Message_Text)" (("CANCEL") ("DEFAULT_CANCEL") ("DEFAULT_NO") ("DIALOG_PARENT") ("DISPLAY_NAME") ("ERROR") ("INFORMATION") ("QUESTION") ("RESOURCE_NAME") ("TITLE"))) 522 ("CW_PDMENU" fun nil (system) "Result = %s( Parent, Desc)" ("C81.html" ("COLUMN" . 755708) ("CONTEXT_MENU" . 1025506) ("DELIMITER" . 1042113) ("FONT" . 67046) ("HELP" . 855550) ("IDS" . 860166) ("MBAR" . 1188103) ("RETURN_FULL_NAME" . 755726) ("RETURN_ID" . 1188112) ("RETURN_INDEX" . 755720) ("RETURN_NAME" . 755723) ("TAB_MODE" . 1190329) ("UNAME" . 996678) ("UVALUE" . 755731) ("XOFFSET" . 755734) ("YOFFSET" . 755737)))
533 ("DIALOG_PICKFILE" fun nil (system) "Result = %s()" (("DIALOG_PARENT") ("DIRECTORY") ("DISPLAY_NAME") ("FILE") ("FILTER") ("FIX_FILTER") ("GET_PATH") ("GROUP") ("MULTIPLE_FILES") ("MUST_EXIST") ("PATH") ("READ") ("RESOURCE_NAME") ("TITLE") ("WRITE"))) 523 ("CW_RGBSLIDER" fun nil (system) "Result = %s( Parent)" ("C82.html" ("CMY" . 755795) ("COLOR_INDEX" . 755798) ("DRAG" . 755801) ("FRAME" . 755804) ("GRAPHICS_LEVEL" . 755807) ("HLS" . 755810) ("HSV" . 1025517) ("LENGTH" . 755813) ("RGB" . 755816) ("TAB_MODE" . 1190402) ("UNAME" . 996685) ("UVALUE" . 755819) ("VALUE" . 755822) ("VERTICAL" . 1025592)))
534 ("DIALOG_PRINTERSETUP" fun nil (system) "Result = %s( [PrintDestination])" (("DIALOG_PARENT") ("DISPLAY_NAME") ("RESOURCE_NAME") ("TITLE"))) 524 ("CW_TMPL" fun nil (system) "Result = %s( Parent)" ("C83.html" ("TAB_MODE" . 1239165) ("UNAME" . 996692) ("UVALUE" . 137507)))
535 ("DIALOG_PRINTJOB" fun nil (system) "Result = %s( [PrintDestination])" (("DIALOG_PARENT") ("DISPLAY_NAME") ("RESOURCE_NAME") ("TITLE"))) 525 ("CW_ZOOM" fun nil (system) "Result = %s( Parent)" ("C84.html" ("FRAME" . 755848) ("MAX" . 755851) ("MIN" . 755854) ("RETAIN" . 755857) ("SAMPLE" . 755885) ("SCALE" . 755888) ("TAB_MODE" . 1190480) ("TRACK" . 755891) ("UNAME" . 996700) ("UVALUE" . 755894) ("X_SCROLL_SIZE" . 755900) ("X_ZSIZE" . 755903) ("XSIZE" . 755897) ("Y_SCROLL_SIZE" . 755909) ("Y_ZSIZE" . 755912) ("YSIZE" . 755906)))
536 ("DIALOG_READ_IMAGE" fun nil (system) "Result = %s ( [Filename])" (("BLUE") ("DIALOG_PARENT") ("FILE") ("FILTER_TYPE") ("FIX_FILTER") ("GET_PATH") ("GREEN") ("IMAGE") ("PATH") ("QUERY") ("RED") ("TITLE"))) 526 ("DB_EXISTS" fun nil (system) "status = %s()" ("api5.html"))
537 ("DIALOG_WRITE_IMAGE" fun nil (system) "Result = %s ( Image [, R, G, B])" (("DIALOG_PARENT") ("FILE") ("FIX_TYPE") ("NOWRITE") ("OPTIONS") ("PATH") ("TITLE") ("TYPE") ("WARN_EXIST"))) 527 ("DBLARR" fun nil (system) "Result = %s( D1[, ..., D8])" ("D.html" ("NOZERO" . 676487)))
538 ("DIGITAL_FILTER" fun nil (system) "Result = %s( Flow, Fhigh, A, Nterms )" nil) 528 ("DCINDGEN" fun nil (system) "Result = %s( D1 [, ..., D8 ])" ("D2.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
539 ("DILATE" fun nil (system) "Result = %s( Image, Structure [, X0 [, Y0 [, Z0]]])" (("BACKGROUND") ("CONSTRAINED") ("GRAY") ("PRESERVE_TYPE") ("UINT") ("ULONG") ("VALUES"))) 529 ("DCOMPLEX" fun nil (system) "Result = %s( Real [, Imaginary] ) or Result = %s( Expression, Offset [, D1 [, ..., D8]] )" ("D3.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
540 ("DINDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 530 ("DCOMPLEXARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("D4.html" ("NOZERO" . 37699)))
541 ("DIST" fun nil (system) "Result = %s(N [, M])" nil) 531 ("DEFROI" fun nil (system) "Result = %s( Sx, Sy [, Xverts, Yverts])" ("D8.html" ("NOFILL" . 757032) ("NOREGION" . 757029) ("RESTORE" . 757035) ("X0" . 757039) ("Y0" . 757039) ("ZOOM" . 757042)))
542 ("DOUBLE" fun nil (system) "Result = %s(Expression[, Offset [, Dim1, ..., Dimn]])" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 532 ("DERIV" fun nil (system) "Result = %s([X,] Y)" ("D13.html"))
543 ("EIGENQL" fun nil (system) "Result = %s( A)" (("ABSOLUTE") ("ASCENDING") ("DOUBLE") ("EIGENVECTORS") ("OVERWRITE") ("RESIDUAL"))) 533 ("DERIVSIG" fun nil (system) "Result = %s( [X, Y, Sigx,] Sigy )" ("D14.html"))
544 ("EIGENVEC" fun nil (system) "Result = %s( A, Eval)" (("DOUBLE") ("ITMAX") ("RESIDUAL"))) 534 ("DETERM" fun nil (system) "Result = %s( A)" ("D15.html" ("CHECK" . 749767) ("DOUBLE" . 37196) ("ZERO" . 749769)))
545 ("ELMHES" fun nil (system) "Result = %s( A)" (("COLUMN") ("DOUBLE") ("NO_BALANCE"))) 535 ("DIAG_MATRIX" fun nil (system) "Result = %s(A [, Diag] )" ("D18.html"))
546 ("EOF" fun nil (system) "Result = %s(Unit)" nil) 536 ("DIALOG_DBCONNECT" fun nil (system) "status = %s(DBobj)" ("api4.html" ("DATASOURCE" . 1007548) ("DIALOG_PARENT" . 1007555) ("PASSWORD" . 1007553) ("USER_ID" . 1007551)))
547 ("EOS_EH_CONVANG" fun nil (system) "Result = %s(inAngle, code)" nil) 537 ("DIALOG_MESSAGE" fun nil (system) "Result = %s( Message_Text)" ("D19.html" ("CANCEL" . 863012) ("DEFAULT_CANCEL" . 863015) ("DEFAULT_NO" . 863018) ("DIALOG_PARENT" . 863021) ("DISPLAY_NAME" . 871724) ("ERROR" . 863025) ("INFORMATION" . 863028) ("QUESTION" . 863031) ("RESOURCE_NAME" . 863035) ("TITLE" . 863041)))
548 ("EOS_EH_GETVERSION" fun nil (system) "Result = %s(fid, version)" nil) 538 ("DIALOG_PICKFILE" fun nil (system) "Result = %s()" ("D20.html" ("DEFAULT_EXTENSION" . 1010269) ("DIALOG_PARENT" . 907482) ("DIRECTORY" . 951270) ("DISPLAY_NAME" . 907484) ("FILE" . 862313) ("FILTER" . 907329) ("FIX_FILTER" . 907334) ("GET_PATH" . 862316) ("GROUP" . 862319) ("MULTIPLE_FILES" . 907351) ("MUST_EXIST" . 1009929) ("OVERWRITE_PROMPT" . 1009949) ("PATH" . 1009942) ("READ" . 862322) ("RESOURCE_NAME" . 1006308) ("TITLE" . 907359) ("WRITE" . 862325)))
549 ("EOS_EH_IDINFO" fun nil (system) "Result = %s(fid, HDFfid, sdInterfaceID)" nil) 539 ("DIALOG_PRINTERSETUP" fun nil (system) "Result = %s( [PrintDestination])" ("D21.html" ("DIALOG_PARENT" . 984460) ("DISPLAY_NAME" . 984463) ("RESOURCE_NAME" . 984466) ("TITLE" . 984469)))
550 ("EOS_EXISTS" fun nil (system) "Result = %s( )" nil) 540 ("DIALOG_PRINTJOB" fun nil (system) "Result = %s( [PrintDestination])" ("D22.html" ("DIALOG_PARENT" . 863760) ("DISPLAY_NAME" . 870902) ("RESOURCE_NAME" . 870904) ("TITLE" . 870915)))
551 ("EOS_GD_ATTACH" fun nil (system) "Result = %s(fid, gridname)" nil) 541 ("DIALOG_READ_IMAGE" fun nil (system) "Result = %s ( [Filename])" ("D23.html" ("BLUE" . 986778) ("DIALOG_PARENT" . 986218) ("FILE" . 986220) ("FILTER_TYPE" . 986222) ("FIX_FILTER" . 986226) ("GET_PATH" . 986785) ("GREEN" . 990353) ("IMAGE" . 986228) ("PATH" . 986230) ("QUERY" . 986232) ("RED" . 986234) ("TITLE" . 986240)))
552 ("EOS_GD_ATTRINFO" fun nil (system) "Result = %s(gridID, attrname, numbertype, count)" nil) 542 ("DIALOG_WRITE_IMAGE" fun nil (system) "Result = %s ( Image [, R, G, B])" ("D24.html" ("DIALOG_PARENT" . 986258) ("FILE" . 986260) ("FIX_TYPE" . 986262) ("NOWRITE" . 986264) ("OPTIONS" . 986266) ("PATH" . 986268) ("TITLE" . 986270) ("TYPE" . 986272) ("WARN_EXIST" . 990326)))
553 ("EOS_GD_BLKSOMOFFSET" fun nil (system) "Result = %s(gridID, offset, code)" nil) 543 ("DIGITAL_FILTER" fun nil (system) "Result = %s( Flow, Fhigh, A, Nterms)" ("D25.html" ("DOUBLE" . 1002899)))
554 ("EOS_GD_CLOSE" fun nil (system) "Result = %s(fid)" nil) 544 ("DILATE" fun nil (system) "Result = %s( Image, Structure [, X0 [, Y0 [, Z0]]])" ("D26.html" ("BACKGROUND" . 984751) ("CONSTRAINED" . 984770) ("GRAY" . 984614) ("PRESERVE_TYPE" . 984778) ("UINT" . 984780) ("ULONG" . 984782) ("VALUES" . 984617)))
555 ("EOS_GD_COMPINFO" fun nil (system) "Result = %s(gridID, fieldname, compcode, compparm)" nil) 545 ("DINDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("D27.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
556 ("EOS_GD_CREATE" fun nil (system) "Result = %s(fid, gridname, xdimsize, ydimsize, upleftpt, lowrightpt)" nil) 546 ("DIST" fun nil (system) "Result = %s(N [, M])" ("D29.html"))
557 ("EOS_GD_DEFBOXREGION" fun nil (system) "Result = %s(gridID, cornerlon, cornerlat)" nil) 547 ("DISTANCE_MEASURE" fun nil (system) "Result = %s( Array)" ("D30.html" ("DOUBLE" . 1033017) ("MATRIX" . 1033020) ("MEASURE" . 1033023) ("POWER_MEASURE" . 1033069)))
558 ("EOS_GD_DEFCOMP" fun nil (system) "Result = %s(gridID, compcode [, compparm] )" nil) 548 ("DOUBLE" fun nil (system) "Result = %s(Expression[, Offset [, D1 [, ..., D8]]])" ("D34.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
559 ("EOS_GD_DEFDIM" fun nil (system) "Result = %s(gridID, dimname, dim)" nil) 549 ("EIGENQL" fun nil (system) "Result = %s( A)" ("E2.html" ("ABSOLUTE" . 870576) ("ASCENDING" . 862897) ("DOUBLE" . 862899) ("EIGENVECTORS" . 870583) ("OVERWRITE" . 862901) ("RESIDUAL" . 862903)))
560 ("EOS_GD_DEFFIELD" fun nil (system) "Result = %s(gridID, fieldname, dimlist, numbertype)" (("MERGE"))) 550 ("EIGENVEC" fun nil (system) "Result = %s( A, Eval)" ("E3.html" ("DOUBLE" . 47356) ("ITMAX" . 47358) ("RESIDUAL" . 47286)))
561 ("EOS_GD_DEFORIGIN" fun nil (system) "Result = %s(gridID, origincode)" nil) 551 ("ELMHES" fun nil (system) "Result = %s( A)" ("E4.html" ("COLUMN" . 983389) ("DOUBLE" . 50601) ("NO_BALANCE" . 50604)))
562 ("EOS_GD_DEFPIXREG" fun nil (system) "Result = %s(gridID, pixreg)" nil) 552 ("EOF" fun nil (system) "Result = %s(Unit)" ("E7.html"))
563 ("EOS_GD_DEFPROJ" fun nil (system) "Result = %s(gridID, projcode, zonecode, spherecode, projparm)" nil) 553 ("EOS_EH_CONVANG" fun nil (system) "Result = %s(inAngle, code)" ("EOS-routines8.html"))
564 ("EOS_GD_DEFTILE" fun nil (system) "Result = %s( gridID, tilecode [, tilerank, tiledims] )" nil) 554 ("EOS_EH_GETVERSION" fun nil (system) "Result = %s(fid, version)" ("EOS-routines9.html"))
565 ("EOS_GD_DEFTIMEPERIOD" fun nil (system) "Result = %s(gridID, periodID, starttime, stoptime)" nil) 555 ("EOS_EH_IDINFO" fun nil (system) "Result = %s(fid, HDFfid, sdInterfaceID)" ("EOS-routines10.html"))
566 ("EOS_GD_DEFVRTREGION" fun nil (system) "Result = %s(gridID, regionID, vertObj, range)" nil) 556 ("EOS_EXISTS" fun nil (system) "Result = %s( )" ("EOS-routines11.html"))
567 ("EOS_GD_DETACH" fun nil (system) "Result = %s(gridID)" nil) 557 ("EOS_GD_ATTACH" fun nil (system) "Result = %s(fid, gridname)" ("EOS-routines12.html"))
568 ("EOS_GD_DIMINFO" fun nil (system) "Result = %s(gridID, dimname)" nil) 558 ("EOS_GD_ATTRINFO" fun nil (system) "Result = %s(gridID, attrname, numbertype, count)" ("EOS-routines13.html"))
569 ("EOS_GD_DUPREGION" fun nil (system) "Result = %s(regionID)" nil) 559 ("EOS_GD_BLKSOMOFFSET" fun nil (system) "Result = %s(gridID, offset, code)" ("EOS-routines14.html"))
570 ("EOS_GD_EXTRACTREGION" fun nil (system) "Result = %s(gridID, regionID, fieldname, buffer)" nil) 560 ("EOS_GD_CLOSE" fun nil (system) "Result = %s(fid)" ("EOS-routines15.html"))
571 ("EOS_GD_FIELDINFO" fun nil (system) "Result = %s(gridID, fieldname, rank, dims, numbertype, dimlist)" nil) 561 ("EOS_GD_COMPINFO" fun nil (system) "Result = %s(gridID, fieldname, compcode, compparm)" ("EOS-routines16.html"))
572 ("EOS_GD_GETFILLVALUE" fun nil (system) "Result = %s(gridID, fieldname, fillvalue)" nil) 562 ("EOS_GD_CREATE" fun nil (system) "Result = %s(fid, gridname, xdimsize, ydimsize, upleftpt, lowrightpt)" ("EOS-routines17.html"))
573 ("EOS_GD_GETPIXELS" fun nil (system) "Result = %s(gridID, nLonLat, lonVal, latVal, pixRow, pixCol)" nil) 563 ("EOS_GD_DEFBOXREGION" fun nil (system) "Result = %s(gridID, cornerlon, cornerlat)" ("EOS-routines18.html"))
574 ("EOS_GD_GETPIXVALUES" fun nil (system) "Result = %s(gridID, nPixels, pixRow, pixCol, fieldname, buffer)" nil) 564 ("EOS_GD_DEFCOMP" fun nil (system) "Result = %s(gridID, compcode [, compparm] )" ("EOS-routines19.html"))
575 ("EOS_GD_GRIDINFO" fun nil (system) "Result = %s(gridID, xdimsize, ydimsize, upleft, lowright)" nil) 565 ("EOS_GD_DEFDIM" fun nil (system) "Result = %s(gridID, dimname, dim)" ("EOS-routines20.html"))
576 ("EOS_GD_INQATTRS" fun nil (system) "Result = %s( gridID, attrlist)" (("LENGTH"))) 566 ("EOS_GD_DEFFIELD" fun nil (system) "Result = %s(gridID, fieldname, dimlist, numbertype)" ("EOS-routines21.html" ("MERGE" . 1030256)))
577 ("EOS_GD_INQDIMS" fun nil (system) "Result = %s(gridID, dimname, dims)" nil) 567 ("EOS_GD_DEFORIGIN" fun nil (system) "Result = %s(gridID, origincode)" ("EOS-routines22.html"))
578 ("EOS_GD_INQFIELDS" fun nil (system) "Result = %s(gridID, fieldlist, rank, numbertype)" nil) 568 ("EOS_GD_DEFPIXREG" fun nil (system) "Result = %s(gridID, pixreg)" ("EOS-routines23.html"))
579 ("EOS_GD_INQGRID" fun nil (system) "Result = %s( filename, gridlist)" (("LENGTH"))) 569 ("EOS_GD_DEFPROJ" fun nil (system) "Result = %s(gridID, projcode, zonecode, spherecode, projparm)" ("EOS-routines24.html"))
580 ("EOS_GD_INTERPOLATE" fun nil (system) "Result = %s(gridID, Interp, lonVal, latVal, fieldname, interpVal)" nil) 570 ("EOS_GD_DEFTILE" fun nil (system) "Result = %s( gridID, tilecode [, tilerank, tiledims] )" ("EOS-routines25.html"))
581 ("EOS_GD_NENTRIES" fun nil (system) "Result = %s( gridID, entrycode)" (("LENGTH"))) 571 ("EOS_GD_DEFVRTREGION" fun nil (system) "Result = %s(gridID, regionID, vertObj, range)" ("EOS-routines26.html"))
582 ("EOS_GD_OPEN" fun nil (system) "Result = %s( filename, access)" (("CREATE") ("RDWR") ("READ"))) 572 ("EOS_GD_DETACH" fun nil (system) "Result = %s(gridID)" ("EOS-routines27.html"))
583 ("EOS_GD_ORIGININFO" fun nil (system) "Result = %s(gridID, origincode)" nil) 573 ("EOS_GD_DIMINFO" fun nil (system) "Result = %s(gridID, dimname)" ("EOS-routines28.html"))
584 ("EOS_GD_PIXREGINFO" fun nil (system) "Result = %s(gridID, pixregcode)" nil) 574 ("EOS_GD_DUPREGION" fun nil (system) "Result = %s(regionID)" ("EOS-routines29.html"))
585 ("EOS_GD_PROJINFO" fun nil (system) "Result = %s(gridID, projcode, zonecode, spherecode, projparm)" nil) 575 ("EOS_GD_EXTRACTREGION" fun nil (system) "Result = %s(gridID, regionID, fieldname, buffer)" ("EOS-routines30.html"))
586 ("EOS_GD_QUERY" fun nil (system) "Result = %s( Filename, GridName, [Info])" nil) 576 ("EOS_GD_FIELDINFO" fun nil (system) "Result = %s(gridID, fieldname, rank, dims, numbertype, dimlist)" ("EOS-routines31.html"))
587 ("EOS_GD_READATTR" fun nil (system) "Result = %s(gridID, attrname, datbuf)" nil) 577 ("EOS_GD_GETFILLVALUE" fun nil (system) "Result = %s(gridID, fieldname, fillvalue)" ("EOS-routines32.html"))
588 ("EOS_GD_READFIELD" fun nil (system) "Result = %s( gridID, fieldname, buffer)" (("EDGE") ("START") ("STRIDE"))) 578 ("EOS_GD_GETPIXELS" fun nil (system) "Result = %s(gridID, nLonLat, lonVal, latVal, pixRow, pixCol)" ("EOS-routines33.html"))
589 ("EOS_GD_READTILE" fun nil (system) "Result = %s(gridID, fieldname, tilecoords, buffer)" nil) 579 ("EOS_GD_GETPIXVALUES" fun nil (system) "Result = %s(gridID, nPixels, pixCol, pixRow, fieldname, buffer)" ("EOS-routines34.html"))
590 ("EOS_GD_REGIONINFO" fun nil (system) "Result = %s(gridID, regionID, fieldname, ntype, rank, dims, size, upleftpt, lowrightpt)" nil) 580 ("EOS_GD_GRIDINFO" fun nil (system) "Result = %s(gridID, xdimsize, ydimsize, upleft, lowright)" ("EOS-routines35.html"))
591 ("EOS_GD_SETFILLVALUE" fun nil (system) "Result = %s(gridID, fieldname, fillvalue)" nil) 581 ("EOS_GD_INQATTRS" fun nil (system) "Result = %s( gridID, attrlist)" ("EOS-routines36.html" ("LENGTH" . 1030732)))
592 ("EOS_GD_SETTILECACHE" fun nil (system) "Result = %s(gridID, fieldname, maxcache, cachecode)" nil) 582 ("EOS_GD_INQDIMS" fun nil (system) "Result = %s(gridID, dimname, dims)" ("EOS-routines37.html"))
593 ("EOS_GD_TILEINFO" fun nil (system) "Result = %s(gridID, fieldname, tilecode, tilerank, tiledims)" nil) 583 ("EOS_GD_INQFIELDS" fun nil (system) "Result = %s(gridID, fieldlist, rank, numbertype)" ("EOS-routines38.html"))
594 ("EOS_GD_WRITEATTR" fun nil (system) "Result = %s( gridID, attrname, datbuf)" (("COUNT") ("HDF_TYPE"))) 584 ("EOS_GD_INQGRID" fun nil (system) "Result = %s( filename, gridlist)" ("EOS-routines39.html" ("LENGTH" . 1030811)))
595 ("EOS_GD_WRITEFIELD" fun nil (system) "Result = %s( gridID, fieldname, data)" (("EDGE") ("START") ("STRIDE"))) 585 ("EOS_GD_INTERPOLATE" fun nil (system) "Result = %s(gridID, Interp, lonVal, latVal, fieldname, interpVal)" ("EOS-routines40.html"))
596 ("EOS_GD_WRITEFIELDMETA" fun nil (system) "Result = %s(gridID, fieldname, dimlist, numbertype)" nil) 586 ("EOS_GD_NENTRIES" fun nil (system) "Result = %s( gridID, entrycode)" ("EOS-routines41.html" ("LENGTH" . 1030866)))
597 ("EOS_GD_WRITETILE" fun nil (system) "Result = %s(gridID, fieldname, tilecoords, data)" nil) 587 ("EOS_GD_OPEN" fun nil (system) "Result = %s( filename, access)" ("EOS-routines42.html" ("CREATE" . 1030919) ("RDWR" . 1030921) ("READ" . 1030923)))
598 ("EOS_PT_ATTACH" fun nil (system) "Result = %s(fid, pointname)" nil) 588 ("EOS_GD_ORIGININFO" fun nil (system) "Result = %s(gridID, origincode)" ("EOS-routines43.html"))
599 ("EOS_PT_ATTRINFO" fun nil (system) "Result = %s( pointID, attrname, numbertype, count)" nil) 589 ("EOS_GD_PIXREGINFO" fun nil (system) "Result = %s(gridID, pixregcode)" ("EOS-routines44.html"))
600 ("EOS_PT_BCKLINKINFO" fun nil (system) "Result = %s(pointID, level, linkfield)" nil) 590 ("EOS_GD_PROJINFO" fun nil (system) "Result = %s(gridID, projcode, zonecode, spherecode, projparm)" ("EOS-routines45.html"))
601 ("EOS_PT_CLOSE" fun nil (system) "Result = %s(fid)" nil) 591 ("EOS_GD_QUERY" fun nil (system) "Result = %s( Filename, GridName, [Info])" ("EOS-routines46.html"))
602 ("EOS_PT_CREATE" fun nil (system) "Result = %s(fid, pointname)" nil) 592 ("EOS_GD_READATTR" fun nil (system) "Result = %s(gridID, attrname, datbuf)" ("EOS-routines47.html"))
603 ("EOS_PT_DEFBOXREGION" fun nil (system) "Result = %s(pointID, cornerlon, cornerlat)" nil) 593 ("EOS_GD_READFIELD" fun nil (system) "Result = %s( gridID, fieldname, buffer)" ("EOS-routines48.html" ("EDGE" . 1031035) ("START" . 1031037) ("STRIDE" . 1031039)))
604 ("EOS_PT_DEFLEVEL" fun nil (system) "Result = %s(pointID, levelname, fieldlist, fieldtype, fieldorder)" nil) 594 ("EOS_GD_READTILE" fun nil (system) "Result = %s(gridID, fieldname, tilecoords, buffer)" ("EOS-routines49.html"))
605 ("EOS_PT_DEFLINKAGE" fun nil (system) "Result = %s(pointID, parent, child, linkfield)" nil) 595 ("EOS_GD_REGIONINFO" fun nil (system) "Result = %s(gridID, regionID, fieldname, ntype, rank, dims, size, upleftpt, lowrightpt)" ("EOS-routines50.html"))
606 ("EOS_PT_DEFTIMEPERIOD" fun nil (system) "Result = %s(pointID, starttime, stoptime)" nil) 596 ("EOS_GD_SETFILLVALUE" fun nil (system) "Result = %s(gridID, fieldname, fillvalue)" ("EOS-routines51.html"))
607 ("EOS_PT_DEFVRTREGION" fun nil (system) "Result = %s( pointID, regionID, vertObj, range)" nil) 597 ("EOS_GD_SETTILECACHE" fun nil (system) "Result = %s(gridID, fieldname, maxcache, cachecode)" ("EOS-routines52.html"))
608 ("EOS_PT_DETACH" fun nil (system) "Result = %s(pointID)" nil) 598 ("EOS_GD_TILEINFO" fun nil (system) "Result = %s(gridID, fieldname, tilecode, tilerank, tiledims)" ("EOS-routines53.html"))
609 ("EOS_PT_EXTRACTPERIOD" fun nil (system) "Result = %s(pointID, periodID, level, fieldlist, buffer)" nil) 599 ("EOS_GD_WRITEATTR" fun nil (system) "Result = %s( gridID, attrname, datbuf)" ("EOS-routines54.html" ("COUNT" . 1031201) ("HDF_TYPE" . 1031203)))
610 ("EOS_PT_EXTRACTREGION" fun nil (system) "Result = %s( pointID, regionID, level, fieldlist, buffer)" nil) 600 ("EOS_GD_WRITEFIELD" fun nil (system) "Result = %s( gridID, fieldname, data)" ("EOS-routines55.html" ("EDGE" . 1031230) ("START" . 1031232) ("STRIDE" . 1031234)))
611 ("EOS_PT_FWDLINKINFO" fun nil (system) "Result = %s(pointID, level, linkfield)" nil) 601 ("EOS_GD_WRITEFIELDMETA" fun nil (system) "Result = %s(gridID, fieldname, dimlist, numbertype)" ("EOS-routines56.html"))
612 ("EOS_PT_GETLEVELNAME" fun nil (system) "Result = %s( pointID, level, levelname)" (("LENGTH"))) 602 ("EOS_GD_WRITETILE" fun nil (system) "Result = %s(gridID, fieldname, tilecoords, data)" ("EOS-routines57.html"))
613 ("EOS_PT_GETRECNUMS" fun nil (system) "Result = %s( pointID, inlevel, outlevel, inNrec, inRecs, outNrec, outRecs)" nil) 603 ("EOS_PT_ATTACH" fun nil (system) "Result = %s(fid, pointname)" ("EOS-routines58.html"))
614 ("EOS_PT_INQATTRS" fun nil (system) "Result = %s( pointID, attrlist)" (("LENGTH"))) 604 ("EOS_PT_ATTRINFO" fun nil (system) "Result = %s( pointID, attrname, numbertype, count)" ("EOS-routines59.html"))
615 ("EOS_PT_INQPOINT" fun nil (system) "Result = %s( filename, pointlist)" (("LENGTH"))) 605 ("EOS_PT_BCKLINKINFO" fun nil (system) "Result = %s(pointID, level, linkfield)" ("EOS-routines60.html"))
616 ("EOS_PT_LEVELINDX" fun nil (system) "Result = %s( pointID, levelname)" nil) 606 ("EOS_PT_CLOSE" fun nil (system) "Result = %s(fid)" ("EOS-routines61.html"))
617 ("EOS_PT_LEVELINFO" fun nil (system) "Result = %s(pointID, level, fieldlist, fldtype, fldorder)" nil) 607 ("EOS_PT_CREATE" fun nil (system) "Result = %s(fid, pointname)" ("EOS-routines62.html"))
618 ("EOS_PT_NFIELDS" fun nil (system) "Result = %s( pointID, level)" (("LENGTH"))) 608 ("EOS_PT_DEFBOXREGION" fun nil (system) "Result = %s(pointID, cornerlon, cornerlat)" ("EOS-routines63.html"))
619 ("EOS_PT_NLEVELS" fun nil (system) "Result = %s(pointID)" nil) 609 ("EOS_PT_DEFLEVEL" fun nil (system) "Result = %s(pointID, levelname, fieldlist, fieldtype, fieldorder)" ("EOS-routines64.html"))
620 ("EOS_PT_NRECS" fun nil (system) "Result = %s( pointID, level)" nil) 610 ("EOS_PT_DEFLINKAGE" fun nil (system) "Result = %s(pointID, parent, child, linkfield)" ("EOS-routines65.html"))
621 ("EOS_PT_OPEN" fun nil (system) "Result = %s( fieldname)" (("CREATE") ("RDWR") ("READ"))) 611 ("EOS_PT_DEFTIMEPERIOD" fun nil (system) "Result = %s(pointID, starttime, stoptime)" ("EOS-routines66.html"))
622 ("EOS_PT_PERIODINFO" fun nil (system) "Result = %s(pointID, periodID, level, fieldlist, size)" nil) 612 ("EOS_PT_DEFVRTREGION" fun nil (system) "Result = %s( pointID, regionID, vertObj, range)" ("EOS-routines67.html"))
623 ("EOS_PT_PERIODRECS" fun nil (system) "Result = %s(pointID, periodID, level, nrec, recs)" nil) 613 ("EOS_PT_DETACH" fun nil (system) "Result = %s(pointID)" ("EOS-routines68.html"))
624 ("EOS_PT_QUERY" fun nil (system) "Result = %s( Filename, PointName, [Info] )" nil) 614 ("EOS_PT_EXTRACTPERIOD" fun nil (system) "Result = %s(pointID, periodID, level, fieldlist, buffer)" ("EOS-routines69.html"))
625 ("EOS_PT_READATTR" fun nil (system) "Result = %s(pointID, attrname, datbuf)" nil) 615 ("EOS_PT_EXTRACTREGION" fun nil (system) "Result = %s( pointID, regionID, level, fieldlist, buffer)" ("EOS-routines70.html"))
626 ("EOS_PT_READLEVEL" fun nil (system) "Result = %s(pointID, level, fieldlist, nrec, recs, buffer)" nil) 616 ("EOS_PT_FWDLINKINFO" fun nil (system) "Result = %s(pointID, level, linkfield)" ("EOS-routines71.html"))
627 ("EOS_PT_REGIONINFO" fun nil (system) "Result = %s(pointID, regionID, level, fieldlist, size)" nil) 617 ("EOS_PT_GETLEVELNAME" fun nil (system) "Result = %s( pointID, level, levelname)" ("EOS-routines72.html" ("LENGTH" . 1017099)))
628 ("EOS_PT_REGIONRECS" fun nil (system) "Result = %s(pointID, regionID, level, nrec, recs)" nil) 618 ("EOS_PT_GETRECNUMS" fun nil (system) "Result = %s( pointID, inlevel, outlevel, inNrec, inRecs, outNrec, outRecs)" ("EOS-routines73.html"))
629 ("EOS_PT_SIZEOF" fun nil (system) "Result = %s(pointID, fieldlist, fldlevel)" nil) 619 ("EOS_PT_INQATTRS" fun nil (system) "Result = %s( pointID, attrlist)" ("EOS-routines74.html" ("LENGTH" . 1017172)))
630 ("EOS_PT_UPDATELEVEL" fun nil (system) "Result = %s(pointID, level, field, list, nrec, recs, data)" nil) 620 ("EOS_PT_INQPOINT" fun nil (system) "Result = %s( filename, pointlist)" ("EOS-routines75.html" ("LENGTH" . 1017203)))
631 ("EOS_PT_WRITEATTR" fun nil (system) "Result = %s( pointID, attrname, datbuf)" (("COUNT") ("HDF_TYPE"))) 621 ("EOS_PT_LEVELINDX" fun nil (system) "Result = %s( pointID, levelname)" ("EOS-routines76.html"))
632 ("EOS_PT_WRITELEVEL" fun nil (system) "Result = %s(pointID, level, nrec, data)" nil) 622 ("EOS_PT_LEVELINFO" fun nil (system) "Result = %s(pointID, level, fieldlist, fldtype, fldorder)" ("EOS-routines77.html"))
633 ("EOS_QUERY" fun nil (system) "Result = %s( Filename, [Info] )" nil) 623 ("EOS_PT_NFIELDS" fun nil (system) "Result = %s( pointID, level)" ("EOS-routines78.html" ("LENGTH" . 1017295)))
634 ("EOS_SW_ATTACH" fun nil (system) "Result = %s(fid, swathname)" nil) 624 ("EOS_PT_NLEVELS" fun nil (system) "Result = %s(pointID)" ("EOS-routines79.html"))
635 ("EOS_SW_ATTRINFO" fun nil (system) "Result = %s(swathID, attrname, numbertype, count)" nil) 625 ("EOS_PT_NRECS" fun nil (system) "Result = %s( pointID, level)" ("EOS-routines80.html"))
636 ("EOS_SW_CLOSE" fun nil (system) "Result = %s(fid)" nil) 626 ("EOS_PT_OPEN" fun nil (system) "Result = %s( fieldname)" ("EOS-routines81.html" ("CREATE" . 1017375) ("RDWR" . 1024341) ("READ" . 1024343)))
637 ("EOS_SW_COMPINFO" fun nil (system) "Result = %s(swathID, fieldname, compcode, compparm)" nil) 627 ("EOS_PT_PERIODINFO" fun nil (system) "Result = %s(pointID, periodID, level, fieldlist, size)" ("EOS-routines82.html"))
638 ("EOS_SW_CREATE" fun nil (system) "Result = %s(fid, swathname)" nil) 628 ("EOS_PT_PERIODRECS" fun nil (system) "Result = %s(pointID, periodID, level, nrec, recs)" ("EOS-routines83.html"))
639 ("EOS_SW_DEFBOXREGION" fun nil (system) "Result = %s(swathID, cornerlon, cornerlat, mode)" nil) 629 ("EOS_PT_QUERY" fun nil (system) "Result = %s( Filename, PointName, [Info] )" ("EOS-routines84.html"))
640 ("EOS_SW_DEFCOMP" fun nil (system) "Result = %s( swathID, compcode, [, compparm] )" nil) 630 ("EOS_PT_READATTR" fun nil (system) "Result = %s(pointID, attrname, datbuf)" ("EOS-routines85.html"))
641 ("EOS_SW_DEFDATAFIELD" fun nil (system) "Result = %s( swathID, fieldname, dimlist, numbertype)" (("MERGE"))) 631 ("EOS_PT_READLEVEL" fun nil (system) "Result = %s(pointID, level, fieldlist, nrec, recs, buffer)" ("EOS-routines86.html"))
642 ("EOS_SW_DEFDIM" fun nil (system) "Result = %s(swathID, fieldname, dim)" nil) 632 ("EOS_PT_REGIONINFO" fun nil (system) "Result = %s(pointID, regionID, level, fieldlist, size)" ("EOS-routines87.html"))
643 ("EOS_SW_DEFDIMMAP" fun nil (system) "Result = %s(swathID, geodim, datadim, offset, increment)" nil) 633 ("EOS_PT_REGIONRECS" fun nil (system) "Result = %s(pointID, regionID, level, nrec, recs)" ("EOS-routines88.html"))
644 ("EOS_SW_DEFGEOFIELD" fun nil (system) "Result = %s( swathID, fieldname, dimlist, numbertype)" (("MERGE"))) 634 ("EOS_PT_SIZEOF" fun nil (system) "Result = %s(pointID, fieldlist, fldlevel)" ("EOS-routines89.html"))
645 ("EOS_SW_DEFIDXMAP" fun nil (system) "Result = %s(swathID, geodim, datadim, index)" nil) 635 ("EOS_PT_UPDATELEVEL" fun nil (system) "Result = %s(pointID, level, field, list, nrec, recs, data)" ("EOS-routines90.html"))
646 ("EOS_SW_DEFTIMEPERIOD" fun nil (system) "Result = %s(swathID, starttime , stoptime, mode)" nil) 636 ("EOS_PT_WRITEATTR" fun nil (system) "Result = %s( pointID, attrname, datbuf)" ("EOS-routines91.html" ("COUNT" . 1017685) ("HDF_TYPE" . 1024378)))
647 ("EOS_SW_DEFVRTREGION" fun nil (system) "Result = %s(swathID, regionID, vertObj, range)" nil) 637 ("EOS_PT_WRITELEVEL" fun nil (system) "Result = %s(pointID, level, nrec, data)" ("EOS-routines92.html"))
648 ("EOS_SW_DETACH" fun nil (system) "Result = %s(swathID)" nil) 638 ("EOS_QUERY" fun nil (system) "Result = %s( Filename, [Info] )" ("EOS-routines93.html"))
649 ("EOS_SW_DIMINFO" fun nil (system) "Result = %s(swathID, dimname)" nil) 639 ("EOS_SW_ATTACH" fun nil (system) "Result = %s(fid, swathname)" ("EOS-routines94.html"))
650 ("EOS_SW_DUPREGION" fun nil (system) "Result = %s(regionID)" nil) 640 ("EOS_SW_ATTRINFO" fun nil (system) "Result = %s(swathID, attrname, numbertype, count)" ("EOS-routines95.html"))
651 ("EOS_SW_EXTRACTPERIOD" fun nil (system) "Result = %s(swathID, periodID, fieldname, external_mode, buffer)" nil) 641 ("EOS_SW_CLOSE" fun nil (system) "Result = %s(fid)" ("EOS-routines96.html"))
652 ("EOS_SW_EXTRACTREGION" fun nil (system) "Result = %s(swathID, regionID, fieldname, external_mode, buffer)" nil) 642 ("EOS_SW_COMPINFO" fun nil (system) "Result = %s(swathID, fieldname, compcode, compparm)" ("EOS-routines97.html"))
653 ("EOS_SW_FIELDINFO" fun nil (system) "Result = %s(swathID, fieldname, rank, dims, numbertype, dimlist)" nil) 643 ("EOS_SW_CREATE" fun nil (system) "Result = %s(fid, swathname)" ("EOS-routines98.html"))
654 ("EOS_SW_GETFILLVALUE" fun nil (system) "Result = %s(swathID, fieldname, fillvalue)" nil) 644 ("EOS_SW_DEFBOXREGION" fun nil (system) "Result = %s(swathID, cornerlon, cornerlat, mode)" ("EOS-routines99.html"))
655 ("EOS_SW_IDXMAPINFO" fun nil (system) "Result = %s(swathID, geodim, datadim, index)" nil) 645 ("EOS_SW_DEFCOMP" fun nil (system) "Result = %s( swathID, compcode, [, compparm] )" ("EOS-routines100.html"))
656 ("EOS_SW_INQATTRS" fun nil (system) "Result = %s( swathID, attrlist)" (("LENGTH"))) 646 ("EOS_SW_DEFDATAFIELD" fun nil (system) "Result = %s( swathID, fieldname, dimlist, numbertype)" ("EOS-routines101.html" ("MERGE" . 1017975)))
657 ("EOS_SW_INQDATAFIELDS" fun nil (system) "Result = %s(swathID, fieldlist, rank, numbertype)" nil) 647 ("EOS_SW_DEFDIM" fun nil (system) "Result = %s(swathID, fieldname, dim)" ("EOS-routines102.html"))
658 ("EOS_SW_INQDIMS" fun nil (system) "Result = %s(swathID, dimname, dim)" nil) 648 ("EOS_SW_DEFDIMMAP" fun nil (system) "Result = %s(swathID, geodim, datadim, offset, increment)" ("EOS-routines103.html"))
659 ("EOS_SW_INQGEOFIELDS" fun nil (system) "Result = %s(swathID, fieldlist, rank, numbertype)" nil) 649 ("EOS_SW_DEFGEOFIELD" fun nil (system) "Result = %s( swathID, fieldname, dimlist, numbertype)" ("EOS-routines104.html" ("MERGE" . 1022830)))
660 ("EOS_SW_INQIDXMAPS" fun nil (system) "Result = %s(swathID, idxmap, idxsizes)" nil) 650 ("EOS_SW_DEFIDXMAP" fun nil (system) "Result = %s(swathID, geodim, datadim, index)" ("EOS-routines105.html"))
661 ("EOS_SW_INQMAPS" fun nil (system) "Result = %s(swathID, dimmap, offset, increment)" nil) 651 ("EOS_SW_DEFTIMEPERIOD" fun nil (system) "Result = %s(swathID, starttime , stoptime, mode)" ("EOS-routines106.html"))
662 ("EOS_SW_INQSWATH" fun nil (system) "Result = %s( filename, swathlist)" (("LENGTH"))) 652 ("EOS_SW_DEFVRTREGION" fun nil (system) "Result = %s(swathID, regionID, vertObj, range)" ("EOS-routines107.html"))
663 ("EOS_SW_MAPINFO" fun nil (system) "Result = %s(swathID, geodim, datadim, offset, increment)" nil) 653 ("EOS_SW_DETACH" fun nil (system) "Result = %s(swathID)" ("EOS-routines108.html"))
664 ("EOS_SW_NENTRIES" fun nil (system) "Result = %s( swathID, entrycode)" (("LENGTH"))) 654 ("EOS_SW_DIMINFO" fun nil (system) "Result = %s(swathID, dimname)" ("EOS-routines109.html"))
665 ("EOS_SW_OPEN" fun nil (system) "Result = %s( filename)" (("CREATE") ("RDWR") ("READ"))) 655 ("EOS_SW_DUPREGION" fun nil (system) "Result = %s(regionID)" ("EOS-routines110.html"))
666 ("EOS_SW_PERIODINFO" fun nil (system) "Result = %s(swathID, periodID, fieldname, ntype, rank, dims, size)" nil) 656 ("EOS_SW_EXTRACTPERIOD" fun nil (system) "Result = %s(swathID, periodID, fieldname, external_mode, buffer)" ("EOS-routines111.html"))
667 ("EOS_SW_QUERY" fun nil (system) "Result=%s(Filename, SwathName, [Info])" nil) 657 ("EOS_SW_EXTRACTREGION" fun nil (system) "Result = %s(swathID, regionID, fieldname, external_mode, buffer)" ("EOS-routines112.html"))
668 ("EOS_SW_READATTR" fun nil (system) "Result = %s(swathID, attrname, datbuf)" nil) 658 ("EOS_SW_FIELDINFO" fun nil (system) "Result = %s(swathID, fieldname, rank, dims, numbertype, dimlist)" ("EOS-routines113.html"))
669 ("EOS_SW_READFIELD" fun nil (system) "Result = %s( swathID, fieldname, buffer)" (("EDGE") ("START") ("STRIDE"))) 659 ("EOS_SW_GETFILLVALUE" fun nil (system) "Result = %s(swathID, fieldname, fillvalue)" ("EOS-routines114.html"))
670 ("EOS_SW_REGIONINFO" fun nil (system) "Result = %s(swathID, regionID, fieldname, ntype, rank, dims, size)" nil) 660 ("EOS_SW_IDXMAPINFO" fun nil (system) "Result = %s(swathID, geodim, datadim, index)" ("EOS-routines115.html"))
671 ("EOS_SW_SETFILLVALUE" fun nil (system) "Result = %s(swathID, fieldname, fillvalue)" nil) 661 ("EOS_SW_INQATTRS" fun nil (system) "Result = %s( swathID, attrlist)" ("EOS-routines116.html" ("LENGTH" . 1018488)))
672 ("EOS_SW_WRITEATTR" fun nil (system) "Result = %s( swathID, attrname, datbuf)" (("COUNT") ("HDF_TYPE"))) 662 ("EOS_SW_INQDATAFIELDS" fun nil (system) "Result = %s(swathID, fieldlist, rank, numbertype)" ("EOS-routines117.html"))
673 ("EOS_SW_WRITEDATAMETA" fun nil (system) "Result = %s(swathID, fieldname, dimlist, numbertype)" nil) 663 ("EOS_SW_INQDIMS" fun nil (system) "Result = %s(swathID, dimname, dim)" ("EOS-routines118.html"))
674 ("EOS_SW_WRITEFIELD" fun nil (system) "Result = %s( swathID, fieldname, cut, data)" (("EDGE") ("START") ("STRIDE"))) 664 ("EOS_SW_INQGEOFIELDS" fun nil (system) "Result = %s(swathID, fieldlist, rank, numbertype)" ("EOS-routines119.html"))
675 ("EOS_SW_WRITEGEOMETA" fun nil (system) "Result = %s(swathID, fieldname, dimlist, numbertype)" nil) 665 ("EOS_SW_INQIDXMAPS" fun nil (system) "Result = %s(swathID, idxmap, idxsizes)" ("EOS-routines120.html"))
676 ("ERF" fun nil (system) "Result = %s(X)" nil) 666 ("EOS_SW_INQMAPS" fun nil (system) "Result = %s(swathID, dimmap, offset, increment)" ("EOS-routines121.html"))
677 ("ERFC" fun nil (system) "Result = %s(X)" nil) 667 ("EOS_SW_INQSWATH" fun nil (system) "Result = %s( filename, swathlist)" ("EOS-routines122.html" ("LENGTH" . 1018674)))
678 ("ERFCX" fun nil (system) "Result = %s(X)" nil) 668 ("EOS_SW_MAPINFO" fun nil (system) "Result = %s(swathID, geodim, datadim, offset, increment)" ("EOS-routines123.html"))
679 ("ERODE" fun nil (system) "Result = %s( Image, Structure [, X0 [, Y0 [, Z0]]])" (("GRAY") ("PRESERVE_TYPE") ("UINT") ("ULONG") ("VALUES"))) 669 ("EOS_SW_NENTRIES" fun nil (system) "Result = %s( swathID, entrycode)" ("EOS-routines124.html" ("LENGTH" . 1018745)))
680 ("ERRORF" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 670 ("EOS_SW_OPEN" fun nil (system) "Result = %s( filename)" ("EOS-routines125.html" ("CREATE" . 1018776) ("RDWR" . 1024156) ("READ" . 1024157)))
681 ("EXECUTE" fun nil (system) "Result = %s(String [, QuietCompile])" nil) 671 ("EOS_SW_PERIODINFO" fun nil (system) "Result = %s(swathID, periodID, fieldname, ntype, rank, dims, size)" ("EOS-routines126.html"))
682 ("EXP" fun nil (system) "Result = %s(Expression)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 672 ("EOS_SW_QUERY" fun nil (system) "Result=%s(Filename, SwathName, [Info])" ("EOS-routines127.html"))
683 ("EXPAND_PATH" fun nil (system) "Result = %s( String)" (("ALL_DIRS") ("ARRAY") ("COUNT") ("DLM") ("HELP"))) 673 ("EOS_SW_READATTR" fun nil (system) "Result = %s(swathID, attrname, datbuf)" ("EOS-routines128.html"))
684 ("EXPINT" fun nil (system) "Result = %s( N, X)" (("DOUBLE") ("EPS") ("ITMAX") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 674 ("EOS_SW_READFIELD" fun nil (system) "Result = %s( swathID, fieldname, buffer)" ("EOS-routines129.html" ("EDGE" . 1018883) ("START" . 1024163) ("STRIDE" . 1024164)))
685 ("EXTRAC" fun nil (system) "Result = %s( Array, C1, C2, ..., Cn, S1, S2, ..., Sn )" nil) 675 ("EOS_SW_REGIONINFO" fun nil (system) "Result = %s(swathID, regionID, fieldname, ntype, rank, dims, size)" ("EOS-routines130.html"))
686 ("EXTRACT_SLICE" fun nil (system) "Result = %s( Vol, Xsize, Ysize, Xcenter, Ycenter, Zcenter, Xrot, Yrot, Zrot)" (("ANISOTROPY") ("CUBIC") ("OUT_VAL") ("RADIANS") ("SAMPLE") ("VERTICES"))) 676 ("EOS_SW_SETFILLVALUE" fun nil (system) "Result = %s(swathID, fieldname, fillvalue)" ("EOS-routines131.html"))
687 ("F_CVF" fun nil (system) "Result = %s(P, Dfn, Dfd)" nil) 677 ("EOS_SW_WRITEATTR" fun nil (system) "Result = %s( swathID, attrname, datbuf)" ("EOS-routines132.html" ("COUNT" . 1019002) ("HDF_TYPE" . 1024170)))
688 ("F_PDF" fun nil (system) "Result = %s(V, Dfn, Dfd)" nil) 678 ("EOS_SW_WRITEDATAMETA" fun nil (system) "Result = %s(swathID, fieldname, dimlist, numbertype)" ("EOS-routines133.html"))
689 ("FACTORIAL" fun nil (system) "Result = %s( N)" (("STIRLING") ("UL64"))) 679 ("EOS_SW_WRITEFIELD" fun nil (system) "Result = %s( swathID, fieldname, data)" ("EOS-routines134.html" ("EDGE" . 1026788) ("START" . 1026786) ("STRIDE" . 1025378)))
690 ("FFT" fun nil (system) "Result = %s( Array [, Direction])" (("DIMENSION") ("DOUBLE") ("INVERSE") ("OVERWRITE") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 680 ("EOS_SW_WRITEGEOMETA" fun nil (system) "Result = %s(swathID, fieldname, dimlist, numbertype)" ("EOS-routines135.html"))
691 ("FILE_EXPAND_PATH" fun nil (system) "Result = %s (Path)" nil) 681 ("ERF" fun nil (system) "Result = %s(Z)" ("E10.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
692 ("FILE_INFO" fun nil (system) "Result = %s(Path)" (("NOEXPAND_PATH"))) 682 ("ERFC" fun nil (system) "Result = %s(Z)" ("E11.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
693 ("FILE_SEARCH" fun nil (system) "Result = %s(Path_Specification) or for recursive searching, Result = FILE_SEARCH(Dir_Specification, Recur_Pattern)" (("COUNT") ("EXPAND_ENVIRONMENT") ("EXPAND_TILDE") ("FOLD_CASE") ("FULLY_QUALIFY_PATH") ("ISSUE_ACCESS_ERROR") ("MARK_DIRECTORY") ("MATCH_ALL_INITIAL_DOT") ("MATCH_INITIAL_DOT") ("NOSORT") ("QUOTE") ("TEST_BLOCK_SPECIAL") ("TEST_CHARACTER_SPECIAL") ("TEST_DANGLING_SYMLINK") ("TEST_DIRECTORY") ("TEST_EXECUTABLE") ("TEST_GROUP") ("TEST_NAMED_PIPE") ("TEST_READ") ("TEST_REGULAR") ("TEST_SETGID") ("TEST_SETUID") ("TEST_SOCKET") ("TEST_STICKY_BIT") ("TEST_SYMLINK") ("TEST_USER") ("TEST_WRITE") ("TEST_ZERO_LENGTH"))) 683 ("ERFCX" fun nil (system) "Result = %s(Z)" ("E12.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
694 ("FILE_TEST" fun nil (system) "Result = %s( File)" (("BLOCK_SPECIAL") ("CHARACTER_SPECIAL") ("DANGLING_SYMLINK") ("DIRECTORY") ("EXECUTABLE") ("GET_MODE") ("GROUP") ("NAMED_PIPE") ("NOEXPAND_PATH") ("READ") ("REGULAR") ("SETGID") ("SETUID") ("SOCKET") ("STICKY_BIT") ("SYMLINK") ("USER") ("WRITE") ("ZERO_LENGTH"))) 684 ("ERODE" fun nil (system) "Result = %s( Image, Structure [, X0 [, Y0 [, Z0]]])" ("E13.html" ("GRAY" . 989437) ("PRESERVE_TYPE" . 989439) ("UINT" . 989441) ("ULONG" . 989443) ("VALUES" . 989445)))
695 ("FILE_WHICH" fun nil (system) "Result = %s( [Path, ] File)" (("INCLUDE_CURRENT_DIR"))) 685 ("EXECUTE" fun nil (system) "Result = %s(String [, QuietCompile] [, QuietExecution])" ("E15.html"))
696 ("FILEPATH" fun nil (system) "Result = %s( Filename)" (("ROOT_DIR") ("SUBDIRECTORY") ("TERMINAL") ("TMP"))) 686 ("EXP" fun nil (system) "Result = %s(Expression)" ("E17.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
697 ("FINDFILE" fun nil (system) "Result = %s( File_Specification)" (("COUNT"))) 687 ("EXPAND_PATH" fun nil (system) "Result = %s( String)" ("E19.html" ("ALL_DIRS" . 987744) ("ARRAY" . 987739) ("COUNT" . 676819) ("DLM" . 987893) ("HELP" . 987895)))
698 ("FINDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 688 ("EXPINT" fun nil (system) "Result = %s( N, X)" ("E20.html" ("DOUBLE" . 50644) ("EPS" . 997966) ("ITER" . 997968) ("ITMAX" . 997920)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
699 ("FINITE" fun nil (system) "Result = %s( X)" (("INFINITY") ("NAN") ("SIGN") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 689 ("EXTRAC" fun nil (system) "Result = %s( Array, C1, C2, ..., Cn, S1, S2, ..., Sn )" ("E21.html"))
700 ("FIX" fun nil (system) "Result = %s( Expression [, Offset [, Dim1, ..., Dim8]])" (("PRINT") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD") ("TYPE"))) 690 ("EXTRACT_SLICE" fun nil (system) "Result = %s( Vol, Xsize, Ysize, Xcenter, Ycenter, Zcenter, Xrot, Yrot, Zrot)" ("E22.html" ("ANISOTROPY" . 985393) ("OUT_VAL" . 988206) ("RADIANS" . 758834) ("SAMPLE" . 758840) ("VERTICES" . 985402)))
701 ("FLOAT" fun nil (system) "Result = %s( Expression [, Offset [, Dim1, ..., Dim8]] )" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 691 ("F_CVF" fun nil (system) "Result = %s(P, Dfn, Dfd)" ("F.html"))
702 ("FLOOR" fun nil (system) "Result = %s(X)" (("L64") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 692 ("F_PDF" fun nil (system) "Result = %s(V, Dfn, Dfd)" ("F2.html"))
703 ("FLTARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 693 ("FACTORIAL" fun nil (system) "Result = %s( N)" ("F3.html" ("STIRLING" . 54500) ("UL64" . 880257)))
704 ("FORMAT_AXIS_VALUES" fun nil (system) "Result = %s( Values )" nil) 694 ("FFT" fun nil (system) "Result = %s( Array [, Direction])" ("F4.html" ("DIMENSION" . 37862) ("DOUBLE" . 882851) ("INVERSE" . 37868) ("OVERWRITE" . 676843)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
705 ("FSTAT" fun nil (system) "Result = %s(Unit)" nil) 695 ("FILE_BASENAME" fun nil (system) "Result = %s(Path [, RemoveSuffix])" ("F5.html" ("FOLD_CASE" . 922324)))
706 ("FULSTR" fun nil (system) "Result = %s(A)" nil) 696 ("FILE_DIRNAME" fun nil (system) "Result = %s(Path)" ("F9.html" ("MARK_DIRECTORY" . 922462)))
707 ("FV_TEST" fun nil (system) "Result = %s(X, Y)" nil) 697 ("FILE_EXPAND_PATH" fun nil (system) "Result = %s (Path)" ("F10.html"))
708 ("FX_ROOT" fun nil (system) "Result = %s(X, Func)" (("DOUBLE") ("ITMAX") ("STOP") ("TOL"))) 698 ("FILE_INFO" fun nil (system) "Result = %s(Path)" ("F11.html" ("NOEXPAND_PATH" . 883815)))
709 ("FZ_ROOTS" fun nil (system) "Result = %s(C)" (("DOUBLE") ("EPS") ("NO_POLISH"))) 699 ("FILE_LINES" fun nil (system) "Result = %s(Path)" ("F12.html" ("COMPRESS" . 910561) ("NOEXPAND_PATH" . 910559)))
710 ("GAMMA" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 700 ("FILE_READLINK" fun nil (system) "Result = %s(Path)" ("F16.html" ("ALLOW_NONEXISTENT" . 906651) ("ALLOW_NONSYMLINK" . 906653) ("NOEXPAND_PATH" . 906655)))
711 ("GAUSS2DFIT" fun nil (system) "Result = %s( Z, A [, X, Y])" (("NEGATIVE") ("TILT"))) 701 ("FILE_SAME" fun nil (system) "Result = %s(Path1, Path2)" ("F17.html" ("NOEXPAND_PATH" . 906717)))
712 ("GAUSS_CVF" fun nil (system) "Result = %s(P)" nil) 702 ("FILE_SEARCH" fun nil (system) "Result = %s(Path_Specification) or Result = %s(Dir_Specification, Recur_Pattern)" ("F18.html" ("COUNT" . 883932) ("EXPAND_ENVIRONMENT" . 883934) ("EXPAND_TILDE" . 883941) ("FOLD_CASE" . 883947) ("FULLY_QUALIFY_PATH" . 883949) ("ISSUE_ACCESS_ERROR" . 883957) ("MARK_DIRECTORY" . 883959) ("MATCH_ALL_INITIAL_DOT" . 883965) ("MATCH_INITIAL_DOT" . 883967) ("NOSORT" . 883969) ("QUOTE" . 883975) ("TEST_BLOCK_SPECIAL" . 900969) ("TEST_CHARACTER_SPECIAL" . 900971) ("TEST_DANGLING_SYMLINK" . 900973) ("TEST_DIRECTORY" . 883984) ("TEST_EXECUTABLE" . 883986) ("TEST_GROUP" . 900983) ("TEST_NAMED_PIPE" . 900993) ("TEST_READ" . 883991) ("TEST_REGULAR" . 883994) ("TEST_SETGID" . 901003) ("TEST_SETUID" . 901005) ("TEST_SOCKET" . 901015) ("TEST_STICKY_BIT" . 901017) ("TEST_SYMLINK" . 901019) ("TEST_USER" . 901021) ("TEST_WRITE" . 883996) ("TEST_ZERO_LENGTH" . 883999) ("WINDOWS_SHORT_NAMES" . 932747)))
713 ("GAUSS_PDF" fun nil (system) "Result = %s(V)" nil) 703 ("FILE_TEST" fun nil (system) "Result = %s( File)" ("F19.html" ("BLOCK_SPECIAL" . 901098) ("CHARACTER_SPECIAL" . 901108) ("DANGLING_SYMLINK" . 901110) ("DIRECTORY" . 882375) ("EXECUTABLE" . 882377) ("GET_MODE" . 882382) ("GROUP" . 901120) ("NAMED_PIPE" . 901122) ("NOEXPAND_PATH" . 883024) ("READ" . 882391) ("REGULAR" . 882393) ("SETGID" . 901132) ("SETUID" . 901134) ("SOCKET" . 901136) ("STICKY_BIT" . 901143) ("SYMLINK" . 901145) ("USER" . 901152) ("WRITE" . 882395) ("ZERO_LENGTH" . 882397)))
714 ("GAUSSFIT" fun nil (system) "Result = %s( X, Y [, A])" (("ESTIMATES") ("NTERMS"))) 704 ("FILE_WHICH" fun nil (system) "Result = %s( [Path, ] File)" ("F20.html" ("INCLUDE_CURRENT_DIR" . 882459)))
715 ("GAUSSINT" fun nil (system) "Result = %s(X)" nil) 705 ("FILEPATH" fun nil (system) "Result = %s( Filename)" ("F21.html" ("ROOT_DIR" . 762284) ("SUBDIRECTORY" . 762286) ("TERMINAL" . 762290) ("TMP" . 762292)))
716 ("GET_DRIVE_LIST" fun nil (system) "Result = %s( )" (("CDROM") ("COUNT") ("FIXED") ("REMOTE") ("REMOVABLE"))) 706 ("FINDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("F22.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
717 ("GET_KBRD" fun nil (system) "Result = %s(Wait)" nil) 707 ("FINITE" fun nil (system) "Result = %s( X)" ("F23.html" ("INFINITY" . 862771) ("NAN" . 862772) ("SIGN" . 887616)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
718 ("GET_SCREEN_SIZE" fun nil (system) "Result = %s( [Display_name])" (("DISPLAY_NAME") ("RESOLUTION"))) 708 ("FIX" fun nil (system) "Result = %s( Expression [, Offset [, D1 [, ..., D8]]])" ("F24.html" ("PRINT" . 871518) ("TYPE" . 871524)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
719 ("GET_SYMBOL" fun nil (system) "Result = %s( Name)" (("TYPE"))) 709 ("FLOAT" fun nil (system) "Result = %s( Expression [, Offset [, D1 [, ..., D8]]] )" ("F26.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
720 ("GETENV" fun nil (system) "Result = %s( Name )" (("ENVIRONMENT"))) 710 ("FLOOR" fun nil (system) "Result = %s(X)" ("F27.html" ("L64" . 875894)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
721 ("GETHELP" fun nil (system) "Result = %s([Variable])" nil) 711 ("FLTARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("F29.html" ("NOZERO" . 676947)))
722 ("GRID3" fun nil (system) "Result = %s( X, Y, Z, F, Gx, Gy, Gz)" (("DELTA") ("DTOL") ("GRID") ("NGRID") ("START"))) 712 ("FORMAT_AXIS_VALUES" fun nil (system) "Result = %s( Values )" ("F32.html"))
723 ("GRID_TPS" fun nil (system) "Interp = %s (Xp, Yp, Values)" (("COEFFICIENTS") ("DELTA") ("NGRID") ("START"))) 713 ("FSTAT" fun nil (system) "Result = %s(Unit)" ("F35.html"))
724 ("GS_ITER" fun nil (system) "Result = %s( A, B)" (("CHECK") ("DOUBLE") ("LAMBDA") ("MAX_ITER") ("TOL") ("X_0"))) 714 ("FULSTR" fun nil (system) "Result = %s(A)" ("F36.html"))
725 ("HANDLE_CREATE" fun nil (system) "Result = %s([ID])" nil) 715 ("FV_TEST" fun nil (system) "Result = %s(X, Y)" ("F39.html"))
726 ("HANDLE_INFO" fun nil (system) "Result = %s(ID)" nil) 716 ("FX_ROOT" fun nil (system) "Result = %s(X, Func)" ("F40.html" ("DOUBLE" . 749893) ("ITMAX" . 749897) ("STOP" . 749899) ("TOL" . 749901)))
727 ("HANNING" fun nil (system) "Result = %s( N1 [, N2])" (("ALPHA") ("DOUBLE"))) 717 ("FZ_ROOTS" fun nil (system) "Result = %s(C)" ("F41.html" ("DOUBLE" . 52525) ("EPS" . 902541) ("NO_POLISH" . 902543)))
728 ("HDF_" fun nil (system) "Result = %s VD _NATTRS( VData, FieldID )" nil) 718 ("GAMMA" fun nil (system) "Result = %s(Z)" ("G.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
729 ("HDF_AN_ANNLEN" fun nil (system) "Result = %s(ann_id)" nil) 719 ("GAUSS2DFIT" fun nil (system) "Result = %s( Z, A [, X, Y])" ("G5.html" ("NEGATIVE" . 199709) ("TILT" . 199711)))
730 ("HDF_AN_ANNLIST" fun nil (system) "Result = %s(an_id, annot_type, obj_tag, obj_ref, ann_list)" nil) 720 ("GAUSS_CVF" fun nil (system) "Result = %s(P)" ("G3.html"))
731 ("HDF_AN_ATYPE2TAG" fun nil (system) "Result = %s(annot_type)" nil) 721 ("GAUSS_PDF" fun nil (system) "Result = %s(V)" ("G4.html"))
732 ("HDF_AN_CREATE" fun nil (system) "Result = %s(an_id, obj_tag, obj_ref, annot_type)" nil) 722 ("GAUSSFIT" fun nil (system) "Result = %s( X, Y [, A])" ("G6.html" ("CHISQ" . 881490) ("ESTIMATES" . 841704) ("MEASURE_ERRORS" . 841712) ("NTERMS" . 889863) ("SIGMA" . 881498) ("YERROR" . 881500)))
733 ("HDF_AN_CREATEF" fun nil (system) "Result = %s(an_id, annot_type)" nil) 723 ("GAUSSINT" fun nil (system) "Result = %s(X)" ("G7.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
734 ("HDF_AN_FILEINFO" fun nil (system) "Result = %s(an_id, n_file_labels, n_file_descs, n_data_labels, n_data_descs)" nil) 724 ("GET_DRIVE_LIST" fun nil (system) "Result = %s()" ("G8.html" ("CDROM" . 884482) ("COUNT" . 876351) ("FIXED" . 876358) ("REMOTE" . 878573) ("REMOVABLE" . 878575)))
735 ("HDF_AN_GET_TAGREF" fun nil (system) "Result = %s(an_id, index, annot_type, ann_tag, ann_ref)" nil) 725 ("GET_KBRD" fun nil (system) "Result = %s(Wait)" ("G9.html"))
736 ("HDF_AN_ID2TAGREF" fun nil (system) "Result = %s(ann_id, ann_tag, ann_ref)" nil) 726 ("GET_SCREEN_SIZE" fun nil (system) "Result = %s( [Display_name])" ("G11.html" ("DISPLAY_NAME" . 841676) ("RESOLUTION" . 853571)))
737 ("HDF_AN_NUMANN" fun nil (system) "Result = %s(an_id, annot_type, obj_tag, obj_ref)" nil) 727 ("GETENV" fun nil (system) "Result = %s( Name)" ("G12.html" ("ENVIRONMENT" . 887078)))
738 ("HDF_AN_READANN" fun nil (system) "Result = %s( ann_id, annotation)" (("LENGTH"))) 728 ("GRID3" fun nil (system) "Result = %s( X, Y, Z, F, Gx, Gy, Gz)" ("G16.html" ("DELTA" . 677098) ("DTOL" . 168207) ("GRID" . 677100) ("NGRID" . 677102) ("START" . 677104)))
739 ("HDF_AN_SELECT" fun nil (system) "Result = %s(an_id, index, annot_type)" nil) 729 ("GRID_TPS" fun nil (system) "Result = %s (Xp, Yp, Values)" ("G15.html" ("COEFFICIENTS" . 871830) ("DELTA" . 871832) ("NGRID" . 871834) ("START" . 871836)))
740 ("HDF_AN_START" fun nil (system) "Result = %s(file_id)" nil) 730 ("GRIDDATA" fun nil (system) "Result = %s( X, F ) or Result = %s( X, Y, F ) or Result = %s( X, Y, Z, F)" ("G17.html" ("ANISOTROPY" . 877568) ("DEGREES" . 877573) ("DELTA" . 877575) ("DIMENSION" . 877578) ("EMPTY_SECTORS" . 877581) ("FAULT_POLYGONS" . 877584) ("FAULT_XY" . 877588) ("FUNCTION_TYPE" . 877591) ("GRID" . 877652) ("INVERSE_DISTANCE" . 877655) ("KRIGING" . 877657) ("LINEAR" . 877659) ("MAX_PER_SECTOR" . 877661) ("METHOD" . 877664) ("MIN_CURVATURE" . 877713) ("MIN_POINTS" . 877715) ("MISSING" . 877719) ("NATURAL_NEIGHBOR" . 877723) ("NEAREST_NEIGHBOR" . 877726) ("NEIGHBORHOOD" . 877729) ("POLYNOMIAL_REGRESSION" . 877733) ("POWER" . 877749) ("QUINTIC" . 877752) ("RADIAL_BASIS_FUNCTION" . 877755) ("SEARCH_ELLIPSE" . 877757) ("SECTORS" . 877761) ("SHEPARDS" . 877763) ("SMOOTHING" . 877766) ("SPHERE" . 877769) ("START" . 877771) ("TRIANGLES" . 877774) ("VARIOGRAM" . 877778) ("XOUT" . 877781) ("YOUT" . 877784)))
741 ("HDF_AN_TAG2ATYPE" fun nil (system) "Result = %s(ann_tag)" nil) 731 ("GS_ITER" fun nil (system) "Result = %s( A, B)" ("G18.html" ("CHECK" . 750095) ("DOUBLE" . 875451) ("LAMBDA" . 750097) ("MAX_ITER" . 750102) ("TOL" . 872926) ("X_0" . 750104)))
742 ("HDF_AN_TAGREF2ID" fun nil (system) "Result = %s(an_id, ann_tag, ann_ref)" nil) 732 ("H5_BROWSER" fun nil (system) "Result = %s([Files])" ("H4.html" ("DIALOG_READ" . 885865)))
743 ("HDF_AN_WRITEANN" fun nil (system) "Result = %s( ann_id, annotation)" (("LENGTH"))) 733 ("H5_GET_LIBVERSION" fun nil (system) "Result = %s( )" ("HDF5-routines11.html"))
744 ("HDF_BROWSER" fun nil (system) "Template = %s([Filename])" (("CANCEL") ("GROUP") ("PREFIX"))) 734 ("H5_PARSE" fun nil (system) "Result = %s (File)" ("HDF5-routines13.html" ("FILE" . 1148311) ("PATH" . 1148313) ("READ_DATA" . 1148315)))
745 ("HDF_DF24_LASTREF" fun nil (system) "Result = %s( )" nil) 735 ("H5A_GET_NAME" fun nil (system) "Result = %s(Attribute_id)" ("HDF5-routines15.html"))
746 ("HDF_DF24_NIMAGES" fun nil (system) "Result = %s(Filename)" nil) 736 ("H5A_GET_NUM_ATTRS" fun nil (system) "Result = %s(Loc_id)" ("HDF5-routines16.html"))
747 ("HDF_DFAN_LABLIST" fun nil (system) "Result = %s( Filename, Tag, Reflist, Labellist)" (("LISTSIZE") ("MAXLABEL") ("STARTPOS") ("STRING"))) 737 ("H5A_GET_SPACE" fun nil (system) "Result = %s(Attribute_id)" ("HDF5-routines17.html"))
748 ("HDF_DFAN_LASTREF" fun nil (system) "Result = %s( )" nil) 738 ("H5A_GET_TYPE" fun nil (system) "Result = %s(Attribute_id)" ("HDF5-routines18.html"))
749 ("HDF_DFP_LASTREF" fun nil (system) "Result = %s( )" nil) 739 ("H5A_OPEN_IDX" fun nil (system) "Result = %s(Loc_id, Index)" ("HDF5-routines19.html"))
750 ("HDF_DFP_NPALS" fun nil (system) "Result = %s(Filename)" nil) 740 ("H5A_OPEN_NAME" fun nil (system) "Result = %s(Loc_id, Name)" ("HDF5-routines20.html"))
751 ("HDF_DFR8_LASTREF" fun nil (system) "Result = %s( )" nil) 741 ("H5A_READ" fun nil (system) "Result = %s(Attribute_id)" ("HDF5-routines21.html"))
752 ("HDF_DFR8_NIMAGES" fun nil (system) "Result = %s(Filename)" nil) 742 ("H5D_GET_SPACE" fun nil (system) "Result = %s(Dataset_id)" ("HDF5-routines23.html"))
753 ("HDF_EXISTS" fun nil (system) "Result = %s( )" nil) 743 ("H5D_GET_STORAGE_SIZE" fun nil (system) "Result = %s(Dataset_id)" ("HDF5-routines24.html"))
754 ("HDF_GR_ATTRINFO" fun nil (system) "Result = %s(obj_id, attr_index, name, data_type, count)" nil) 744 ("H5D_GET_TYPE" fun nil (system) "Result = %s(Dataset_id)" ("HDF5-routines25.html"))
755 ("HDF_GR_CREATE" fun nil (system) "Result = %s(gr_id, name, ncomp, data_type, interlace_mode, dim_sizes)" nil) 745 ("H5D_OPEN" fun nil (system) "Result = %s(Loc_id, Name)" ("HDF5-routines26.html"))
756 ("HDF_GR_FILEINFO" fun nil (system) "Result = %s(gr_id, n_images, n_file_attrs)" nil) 746 ("H5D_READ" fun nil (system) "Result = %s(Dataset_id)" ("HDF5-routines27.html" ("FILE_SPACE" . 1148824) ("MEMORY_SPACE" . 1148826)))
757 ("HDF_GR_FINDATTR" fun nil (system) "Result = %s(obj_id, attr_name)" nil) 747 ("H5F_IS_HDF5" fun nil (system) "Result = %s(Filename)" ("HDF5-routines29.html"))
758 ("HDF_GR_GETATTR" fun nil (system) "Result = %s(obj_id, attr_index, values)" nil) 748 ("H5F_OPEN" fun nil (system) "Result = %s(Filename)" ("HDF5-routines30.html"))
759 ("HDF_GR_GETCHUNKINFO" fun nil (system) "Result = %s(ri_id, dim_length, flag)" nil) 749 ("H5G_GET_COMMENT" fun nil (system) "Result = %s(Loc_id, Name)" ("HDF5-routines32.html"))
760 ("HDF_GR_GETIMINFO" fun nil (system) "Result = %s(ri_id, gr_name, ncomp, data_type, interlace_mode, dim_sizes, num_attrs)" nil) 750 ("H5G_GET_LINKVAL" fun nil (system) "Result = %s(Loc_id, Name)" ("HDF5-routines33.html"))
761 ("HDF_GR_GETLUTID" fun nil (system) "Result = %s(ri_id, pal_index)" nil) 751 ("H5G_GET_MEMBER_NAME" fun nil (system) "Result = %s(Loc_id, Name, Index)" ("HDF5-routines34.html"))
762 ("HDF_GR_GETLUTINFO" fun nil (system) "Result = %s(pal_id, ncomp, data_type, interlace_mode, num_entries)" nil) 752 ("H5G_GET_NMEMBERS" fun nil (system) "Result = %s(Loc_id, Name)" ("HDF5-routines35.html"))
763 ("HDF_GR_IDTOREF" fun nil (system) "Result = %s(ri_id)" nil) 753 ("H5G_GET_OBJINFO" fun nil (system) "Result = %s(Loc_id, Name)" ("HDF5-routines36.html" ("FOLLOW_LINK" . 1149214)))
764 ("HDF_GR_LUTTOREF" fun nil (system) "Result = %s(pal_id)" nil) 754 ("H5G_OPEN" fun nil (system) "Result = %s(Loc_id, Name)" ("HDF5-routines37.html"))
765 ("HDF_GR_NAMETOINDEX" fun nil (system) "Result = %s(gr_id, gr_name)" nil) 755 ("H5I_GET_TYPE" fun nil (system) "Result = %s(Obj_id)" ("HDF5-routines38.html"))
766 ("HDF_GR_READIMAGE" fun nil (system) "Result = %s( ri_id, data)" (("EDGE") ("INTERLACE") ("START") ("STRIDE"))) 756 ("H5R_DEREFERENCE" fun nil (system) "Result = %s(Loc_id, Reference)" ("HDF5-routines39.html"))
767 ("HDF_GR_READLUT" fun nil (system) "Result = %s( pal_id, pal_data)" (("INTERLACE"))) 757 ("H5R_GET_OBJECT_TYPE" fun nil (system) "Result = %s(Loc_id, Reference)" ("HDF5-routines40.html"))
768 ("HDF_GR_REFTOINDEX" fun nil (system) "Result = %s(gr_id, gr_ref)" nil) 758 ("H5S_COPY" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines42.html"))
769 ("HDF_GR_SELECT" fun nil (system) "Result = %s(gr_id, index)" nil) 759 ("H5S_CREATE_SIMPLE" fun nil (system) "Result = %s(Dimensions)" ("HDF5-routines43.html" ("MAX_DIMENSIONS" . 1149414)))
770 ("HDF_GR_SETATTR" fun nil (system) "Result = %s(obj_id, attr_name, data_type, count, values)" nil) 760 ("H5S_GET_SELECT_BOUNDS" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines44.html"))
771 ("HDF_GR_SETCHUNK" fun nil (system) "Result = %s(ri_id, dim_length, comp_type, comp_prm)" nil) 761 ("H5S_GET_SELECT_ELEM_NPOINTS" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines45.html"))
772 ("HDF_GR_SETCHUNKCACHE" fun nil (system) "Result = %s(ri_id, maxcache, flags)" nil) 762 ("H5S_GET_SELECT_ELEM_POINTLIST" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines46.html" ("NUMBER" . 1149508) ("START" . 1149506)))
773 ("HDF_GR_SETCOMPRESS" fun nil (system) "Result = %s(ri_id, comp_type, comp_prm)" nil) 763 ("H5S_GET_SELECT_HYPER_BLOCKLIST" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines47.html" ("NUMBER" . 1149544) ("START" . 1149542)))
774 ("HDF_GR_SETEXTERNALFILE" fun nil (system) "Result = %s(ri_id, filename, offset)" nil) 764 ("H5S_GET_SELECT_HYPER_NBLOCKS" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines48.html"))
775 ("HDF_GR_START" fun nil (system) "Result = %s(file_id)" nil) 765 ("H5S_GET_SELECT_NPOINTS" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines49.html"))
776 ("HDF_GR_WRITEIMAGE" fun nil (system) "Result = %s( ri_id, data)" (("EDGE") ("INTERLACE") ("START") ("STRIDE"))) 766 ("H5S_GET_SIMPLE_EXTENT_DIMS" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines50.html" ("MAX_DIMENSIONS" . 1149642)))
777 ("HDF_GR_WRITELUT" fun nil (system) "Result = %s( pal_id, pal_data)" (("DATA_TYPE") ("INTERLACE_MODE") ("NENTRIES"))) 767 ("H5S_GET_SIMPLE_EXTENT_NDIMS" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines51.html"))
778 ("HDF_HDF2IDLTYPE" fun nil (system) "Result = %s( hdftypecode )" nil) 768 ("H5S_GET_SIMPLE_EXTENT_NPOINTS" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines52.html"))
779 ("HDF_IDL2HDFTYPE" fun nil (system) "Result = %s( idltypecode )" nil) 769 ("H5S_GET_SIMPLE_EXTENT_TYPE" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines53.html"))
780 ("HDF_ISHDF" fun nil (system) "Result = %s(Filename)" nil) 770 ("H5S_IS_SIMPLE" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines54.html"))
781 ("HDF_NEWREF" fun nil (system) "Result = %s(FileHandle)" nil) 771 ("H5S_SELECT_VALID" fun nil (system) "Result = %s(Dataspace_id)" ("HDF5-routines60.html"))
782 ("HDF_NUMBER" fun nil (system) "Result = %s( FileHandle)" (("TAG"))) 772 ("H5T_COMMITTED" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines62.html"))
783 ("HDF_OPEN" fun nil (system) "Result = %s( Filename)" (("ALL") ("CREATE") ("NUM_DD") ("RDWR") ("READ") ("WRITE"))) 773 ("H5T_COPY" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines63.html"))
784 ("HDF_PACKDATA" fun nil (system) "Result = %s( data1 [, data2 [, data3 [, data4 [, data5 [, data6 [, data7 [, data8]]]]]]])" (("HDF_ORDER") ("HDF_TYPE") ("NREC"))) 774 ("H5T_EQUAL" fun nil (system) "Result = %s(Datatype_id1, Datatype_id2)" ("HDF5-routines64.html"))
785 ("HDF_READ" fun nil (system) "Result = %s( [Filename])" (("DF24") ("DFR8") ("PREFIX") ("TEMPLATE"))) 775 ("H5T_GET_ARRAY_DIMS" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines65.html" ("PERMUTATIONS" . 1150077)))
786 ("HDF_SD_ATTRFIND" fun nil (system) "Result = %s(S_ID, Name)" nil) 776 ("H5T_GET_ARRAY_NDIMS" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines66.html"))
787 ("HDF_SD_CREATE" fun nil (system) "Result = %s( SD_ID, Name, Dims)" (("BYTE") ("DFNT_CHAR") ("DFNT_FLOAT32") ("DFNT_FLOAT64") ("DFNT_INT16") ("DFNT_INT32") ("DFNT_INT8") ("DFNT_UINT16") ("DFNT_UINT32") ("DFNT_UINT8") ("DOUBLE") ("FLOAT") ("HDF_TYPE") ("INT") ("LONG") ("SHORT") ("STRING"))) 777 ("H5T_GET_CLASS" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines67.html"))
788 ("HDF_SD_DIMGETID" fun nil (system) "Result = %s(SDS_ID, Dimension_Number)" nil) 778 ("H5T_GET_CSET" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines68.html"))
789 ("HDF_SD_IDTOREF" fun nil (system) "Result = %s(SDS_ID)" nil) 779 ("H5T_GET_EBIAS" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines69.html"))
790 ("HDF_SD_ISCOORDVAR" fun nil (system) "Result = %s(SDS_ID)" nil) 780 ("H5T_GET_FIELDS" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines70.html"))
791 ("HDF_SD_NAMETOINDEX" fun nil (system) "Result = %s(SD_ID, SDS_Name)" nil) 781 ("H5T_GET_INPAD" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines71.html"))
792 ("HDF_SD_REFTOINDEX" fun nil (system) "Result = %s(SD_ID, Refno)" nil) 782 ("H5T_GET_MEMBER_CLASS" fun nil (system) "Result = %s(Datatype_id, Member)" ("HDF5-routines72.html"))
793 ("HDF_SD_SELECT" fun nil (system) "Result = %s(SD_ID, Number)" nil) 783 ("H5T_GET_MEMBER_NAME" fun nil (system) "Result = %s(Datatype_id, Member)" ("HDF5-routines73.html"))
794 ("HDF_SD_START" fun nil (system) "Result = %s( Filename)" (("CREATE") ("RDWR") ("READ"))) 784 ("H5T_GET_MEMBER_OFFSET" fun nil (system) "Result = %s(Datatype_id, Member)" ("HDF5-routines74.html"))
795 ("HDF_VD_ATTACH" fun nil (system) "Result = %s( FileHandle, VDataId)" (("READ") ("WRITE"))) 785 ("H5T_GET_MEMBER_TYPE" fun nil (system) "Result = %s(Datatype_id, Member)" ("HDF5-routines75.html"))
796 ("HDF_VD_ATTRFIND" fun nil (system) "Result = %s(VData, FieldID, Name)" nil) 786 ("H5T_GET_NMEMBERS" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines76.html"))
797 ("HDF_VD_FEXIST" fun nil (system) "Result = %s(VData, Fieldnames)" nil) 787 ("H5T_GET_NORM" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines77.html"))
798 ("HDF_VD_FIND" fun nil (system) "Result = %s(FileHandle, Name)" nil) 788 ("H5T_GET_OFFSET" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines78.html"))
799 ("HDF_VD_GETID" fun nil (system) "Result = %s(FileHandle, VDataId)" nil) 789 ("H5T_GET_ORDER" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines79.html"))
800 ("HDF_VD_GETNEXT" fun nil (system) "Result = %s(VData, Id)" nil) 790 ("H5T_GET_PAD" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines80.html"))
801 ("HDF_VD_ISATTR" fun nil (system) "Result = %s(VData)" nil) 791 ("H5T_GET_PRECISION" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines81.html"))
802 ("HDF_VD_ISVD" fun nil (system) "Result = %s(VGroup, Id)" nil) 792 ("H5T_GET_SIGN" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines82.html"))
803 ("HDF_VD_LONE" fun nil (system) "Result = %s( FileHandle)" (("MAXSIZE"))) 793 ("H5T_GET_SIZE" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines83.html"))
804 ("HDF_VD_READ" fun nil (system) "Result = %s( VData, Data)" (("FIELDS") ("FULL_INTERLACE") ("NO_INTERLACE") ("NRECORDS"))) 794 ("H5T_GET_STRPAD" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines84.html"))
805 ("HDF_VG_ATTACH" fun nil (system) "Result = %s( FileHandle, VGroupId)" (("READ") ("WRITE"))) 795 ("H5T_GET_SUPER" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines85.html"))
806 ("HDF_VG_GETID" fun nil (system) "Result = %s(FileHandle, VGroupId)" nil) 796 ("H5T_IDLTYPE" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines86.html" ("ARRAY_DIMENSIONS" . 1150764) ("STRUCTURE" . 1150766)))
807 ("HDF_VG_GETNEXT" fun nil (system) "Result = %s(VGroup, Id)" nil) 797 ("H5T_MEMTYPE" fun nil (system) "Result = %s(Datatype_id)" ("HDF5-routines87.html"))
808 ("HDF_VG_INQTR" fun nil (system) "Result = %s(VGroup, Tag, Ref)" nil) 798 ("H5T_OPEN" fun nil (system) "Result = %s(Loc_id, Name)" ("HDF5-routines88.html"))
809 ("HDF_VG_ISVD" fun nil (system) "Result = %s(VGroup, Id)" nil) 799 ("HANNING" fun nil (system) "Result = %s( N1 [, N2])" ("H5.html" ("ALPHA" . 758100) ("DOUBLE" . 874103)))
810 ("HDF_VG_ISVG" fun nil (system) "Result = %s(VGroup, Id)" nil) 800 ("HDF_AN_ANNLEN" fun nil (system) "Result = %s(Annotation_id)" ("HDF-routines8.html"))
811 ("HDF_VG_LONE" fun nil (system) "Result = %s( FileHandle)" (("MAXSIZE"))) 801 ("HDF_AN_ANNLIST" fun nil (system) "Result = %s(Annotation_id, Annotation_type, Object_tag, Object_ref, Annotation_list)" ("HDF-routines9.html"))
812 ("HDF_VG_NUMBER" fun nil (system) "Result = %s(VGroup)" nil) 802 ("HDF_AN_ATYPE2TAG" fun nil (system) "Result = %s(Annotation_type)" ("HDF-routines10.html"))
813 ("HILBERT" fun nil (system) "Result = %s(X [, D])" nil) 803 ("HDF_AN_CREATE" fun nil (system) "Result = %s(Annotation_id, Object_tag, Object_ref, Annotation_type)" ("HDF-routines11.html"))
814 ("HIST_2D" fun nil (system) "Result = %s( V1, V2)" (("BIN1") ("BIN2") ("MAX1") ("MAX2") ("MIN1") ("MIN2"))) 804 ("HDF_AN_CREATEF" fun nil (system) "Result = %s(Annotation_id, Annotation_type)" ("HDF-routines12.html"))
815 ("HIST_EQUAL" fun nil (system) "Result = %s( A)" (("BINSIZE") ("FCN") ("HISTOGRAM_ONLY") ("MAXV") ("MINV") ("OMAX") ("OMIN") ("PERCENT") ("TOP"))) 805 ("HDF_AN_FILEINFO" fun nil (system) "Result = %s(Annotation_id, n_file_labels, n_file_descs, n_data_labels, n_data_descs)" ("HDF-routines15.html"))
816 ("HISTOGRAM" fun nil (system) "Result = %s( Array)" (("BINSIZE") ("INPUT") ("L64") ("MAX") ("MIN") ("NAN") ("NBINS") ("OMAX") ("OMIN") ("REVERSE_INDICES"))) 806 ("HDF_AN_GET_TAGREF" fun nil (system) "Result = %s(Annotation_id, index, Annotation_type, Annotation_tag, Annotation_ref)" ("HDF-routines16.html"))
817 ("HOUGH" fun nil (system) "Result = %s( Array)" (("BACKPROJECT") ("DOUBLE") ("DRHO") ("DX") ("DY") ("GRAY") ("NRHO") ("NTHETA") ("NX") ("NY") ("RHO") ("RMIN") ("THETA") ("XMIN") ("YMIN"))) 807 ("HDF_AN_NUMANN" fun nil (system) "Result = %s(Annotation_id, Annotation_type, Object_tag, Object_ref)" ("HDF-routines18.html"))
818 ("HQR" fun nil (system) "Result = %s( A)" (("COLUMN") ("DOUBLE"))) 808 ("HDF_AN_READANN" fun nil (system) "Result = %s( Annotation_id, annotation)" ("HDF-routines19.html" ("LENGTH" . 1056839)))
819 ("IBETA" fun nil (system) "Result = %s( A, B, X)" (("DOUBLE") ("EPS") ("ITER") ("ITMAX"))) 809 ("HDF_AN_SELECT" fun nil (system) "Result = %s(Annotation_id, index, Annotation_type)" ("HDF-routines20.html"))
820 ("IDENTITY" fun nil (system) "Result = %s( N)" (("DOUBLE"))) 810 ("HDF_AN_START" fun nil (system) "Result = %s(file_id)" ("HDF-routines21.html"))
821 ("IGAMMA" fun nil (system) "Result = %s( A, X)" (("DOUBLE") ("EPS") ("ITER") ("ITMAX") ("METHOD"))) 811 ("HDF_AN_WRITEANN" fun nil (system) "Result = %s( Annotation_id, annotation)" ("HDF-routines24.html" ("LENGTH" . 1056941)))
822 ("IMAGINARY" fun nil (system) "Result = %s(Complex_Expression)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 812 ("HDF_ANNOTATION_ID2TAGREF" fun nil (system) "Result = %s(Annotation_id, Annotation_tag, Annotation_ref)" ("HDF-routines17.html"))
823 ("INDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("BYTE") ("COMPLEX") ("DCOMPLEX") ("DOUBLE") ("FLOAT") ("L64") ("LONG") ("STRING") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD") ("TYPE") ("UINT") ("UL64") ("ULONG"))) 813 ("HDF_ANNOTATION_TAG2ATYPE" fun nil (system) "Result = %s(Annotation_tag)" ("HDF-routines22.html"))
824 ("INT_2D" fun nil (system) "Result = %s( Fxy, AB_Limits, PQ_Limits, Pts)" (("DOUBLE") ("ORDER"))) 814 ("HDF_ANNOTATION_TAGREF2ID" fun nil (system) "Result = %s(Annotation_id, Annotation_tag, Annotation_ref)" ("HDF-routines23.html"))
825 ("INT_3D" fun nil (system) "Result = %s( Fxyz, AB_Limits, PQ_Limits, UV_Limits, Pts)" (("DOUBLE"))) 815 ("HDF_BROWSER" fun nil (system) "Template = %s([Filename])" ("H7.html" ("CANCEL" . 852206) ("GROUP" . 870963) ("PREFIX" . 852209)))
826 ("INT_TABULATED" fun nil (system) "Result = %s( X, F)" (("DOUBLE") ("SORT"))) 816 ("HDF_DF24_LASTREF" fun nil (system) "Result = %s( )" ("HDF-routines30.html"))
827 ("INTARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 817 ("HDF_DF24_NIMAGES" fun nil (system) "Result = %s(Filename)" ("HDF-routines31.html"))
828 ("INTERPOL" fun nil (system) "Result = %s( V, N) or Result = INTERPOL( V, X, U)" (("LSQUADRATIC") ("QUADRATIC") ("SPLINE"))) 818 ("HDF_DFAN_LABLIST" fun nil (system) "Result = %s( Filename, Tag, Reflist, Labellist)" ("HDF-routines40.html" ("LISTSIZE" . 997374) ("MAXLABEL" . 997377) ("STARTPOS" . 997380) ("STRING" . 997383)))
829 ("INTERPOLATE" fun nil (system) "Result = %s( P, X [, Y [, Z]])" (("CUBIC") ("GRID") ("MISSING") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 819 ("HDF_DFAN_LASTREF" fun nil (system) "Result = %s( )" ("HDF-routines41.html"))
830 ("INVERT" fun nil (system) "Result = %s( Array [, Status])" (("DOUBLE"))) 820 ("HDF_DFP_LASTREF" fun nil (system) "Result = %s( )" ("HDF-routines46.html"))
831 ("IOCTL" fun nil (system) "Result = %s( File_Unit [, Request, Arg])" (("BY_VALUE") ("MT_OFFLINE") ("MT_REWIND") ("MT_SKIP_FILE") ("MT_SKIP_RECORD") ("MT_WEOF") ("SUPPRESS_ERROR"))) 821 ("HDF_DFP_NPALS" fun nil (system) "Result = %s(Filename)" ("HDF-routines47.html"))
832 ("ISHFT" fun nil (system) "Result = %s(P1, P2)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 822 ("HDF_DFR8_LASTREF" fun nil (system) "Result = %s( )" ("HDF-routines55.html"))
833 ("JULDAY" fun nil (system) "Result = %s(Month, Day, Year, Hour, Minute, Second)" nil) 823 ("HDF_DFR8_NIMAGES" fun nil (system) "Result = %s(Filename)" ("HDF-routines56.html"))
834 ("KEYWORD_SET" fun nil (system) "Result = %s(Expression)" nil) 824 ("HDF_EXISTS" fun nil (system) "Result = %s( )" ("HDF-routines62.html"))
835 ("KRIG2D" fun nil (system) "Result = %s( Z [, X, Y])" (("BOUNDS") ("EXPONENTIAL") ("GS") ("NX") ("NY") ("REGULAR") ("SPHERICAL") ("XGRID") ("XVALUES") ("YGRID") ("YVALUES"))) 825 ("HDF_GR_ATTRINFO" fun nil (system) "Result = %s(obj_id, attr_index, name, data_type, count)" ("HDF-routines63.html"))
836 ("KURTOSIS" fun nil (system) "Result = %s(X)" (("DOUBLE") ("NAN"))) 826 ("HDF_GR_CREATE" fun nil (system) "Result = %s(gr_id, name, ncomp, data_type, interlace_mode, dim_sizes)" ("HDF-routines64.html"))
837 ("KW_TEST" fun nil (system) "Result = %s( X)" (("DF") ("MISSING"))) 827 ("HDF_GR_FILEINFO" fun nil (system) "Result = %s(gr_id, n_images, n_file_attrs)" ("HDF-routines67.html"))
838 ("L64INDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 828 ("HDF_GR_FINDATTR" fun nil (system) "Result = %s(obj_id, attr_name)" ("HDF-routines68.html"))
839 ("LABEL_DATE" fun nil (system) "Result = %s()" (("AM_PM") ("DATE_FORMAT") ("DAYS_OF_WEEK") ("MONTHS") ("OFFSET") ("ROUND_UP") ("XTICKFORMAT"))) 829 ("HDF_GR_GETATTR" fun nil (system) "Result = %s(obj_id, attr_index, values)" ("HDF-routines69.html"))
840 ("LABEL_REGION" fun nil (system) "Result = %s( Data)" (("ALL_NEIGHBORS") ("ULONG"))) 830 ("HDF_GR_GETCHUNKINFO" fun nil (system) "Result = %s(ri_id, dim_length, flag)" ("HDF-routines70.html"))
841 ("LADFIT" fun nil (system) "Result = %s( X, Y)" (("ABSDEV") ("DOUBLE"))) 831 ("HDF_GR_GETIMINFO" fun nil (system) "Result = %s(ri_id, gr_name, ncomp, data_type, interlace_mode, dim_sizes, num_attrs)" ("HDF-routines71.html"))
842 ("LAGUERRE" fun nil (system) "Result = %s( X, N [, K])" (("COEFFICIENTS") ("DOUBLE"))) 832 ("HDF_GR_GETLUTID" fun nil (system) "Result = %s(ri_id, pal_index)" ("HDF-routines72.html"))
843 ("LEEFILT" fun nil (system) "Result = %s( A [, N [, Sig]])" (("DOUBLE") ("EXACT"))) 833 ("HDF_GR_GETLUTINFO" fun nil (system) "Result = %s(pal_id, ncomp, data_type, interlace_mode, num_entries)" ("HDF-routines73.html"))
844 ("LEGENDRE" fun nil (system) "Result = %s( X, L [, M])" (("DOUBLE"))) 834 ("HDF_GR_IDTOREF" fun nil (system) "Result = %s(ri_id)" ("HDF-routines74.html"))
845 ("LINBCG" fun nil (system) "Result = %s( A, B, X)" (("DOUBLE") ("ITER") ("ITMAX") ("ITOL") ("TOL"))) 835 ("HDF_GR_LUTTOREF" fun nil (system) "Result = %s(pal_id)" ("HDF-routines75.html"))
846 ("LINDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 836 ("HDF_GR_NAMETOINDEX" fun nil (system) "Result = %s(gr_id, gr_name)" ("HDF-routines76.html"))
847 ("LINFIT" fun nil (system) "Result = %s( X, Y)" (("CHISQ") ("COVAR") ("DOUBLE") ("MEASURE_ERRORS") ("PROB") ("SIGMA") ("YFIT"))) 837 ("HDF_GR_READIMAGE" fun nil (system) "Result = %s( ri_id, data)" ("HDF-routines77.html" ("EDGE" . 1057619) ("INTERLACE" . 1057617) ("START" . 1057607) ("STRIDE" . 1057609)))
848 ("LIVE_STYLE" fun nil (system) "Style = %s ({ 'contour' | 'image' | 'plot' | 'surface'})" (("BASE_STYLE") ("COLORBAR_PROPERTIES") ("ERROR") ("GRAPHIC_PROPERTIES") ("GROUP") ("LEGEND_PROPERTIES") ("NAME") ("SAVE") ("TEMPLATE_FILE") ("VISUALIZATION_PROPERTIES") ("XAXIS_PROPERTIES") ("YAXIS_PROPERTIES") ("ZAXIS_PROPERTIES"))) 838 ("HDF_GR_READLUT" fun nil (system) "Result = %s( pal_id, pal_data)" ("HDF-routines78.html" ("INTERLACE" . 1057387)))
849 ("LL_ARC_DISTANCE" fun nil (system) "Result = %s( Lon_lat0, Arc_Dist, Az)" (("DEGREES"))) 839 ("HDF_GR_REFTOINDEX" fun nil (system) "Result = %s(gr_id, gr_ref)" ("HDF-routines79.html"))
850 ("LMFIT" fun nil (system) "Result = %s( X, Y, A)" (("ALPHA") ("CHISQ") ("CONVERGENCE") ("COVAR") ("DOUBLE") ("FITA") ("FUNCTION_NAME") ("ITER") ("ITMAX") ("ITMIN") ("MEASURE_ERRORS") ("SIGMA") ("TOL"))) 840 ("HDF_GR_SELECT" fun nil (system) "Result = %s(gr_id, index)" ("HDF-routines80.html"))
851 ("LMGR" fun nil (system) "Result = %s()" (("CLIENTSERVER") ("DEMO") ("EMBEDDED") ("EXPIRE_DATE") ("FORCE_DEMO") ("INSTALL_NUM") ("LMHOSTID") ("RUNTIME") ("SITE_NOTICE") ("STUDENT") ("TRIAL"))) 841 ("HDF_GR_SETATTR" fun nil (system) "Result = %s(obj_id, attr_name, data_type, count, values)" ("HDF-routines81.html"))
852 ("LNGAMMA" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 842 ("HDF_GR_SETCHUNK" fun nil (system) "Result = %s(ri_id, dim_length, comp_type, comp_prm)" ("HDF-routines82.html"))
853 ("LNP_TEST" fun nil (system) "Result = %s( X, Y)" (("DOUBLE") ("HIFAC") ("JMAX") ("OFAC") ("WK1") ("WK2"))) 843 ("HDF_GR_SETCHUNKCACHE" fun nil (system) "Result = %s(ri_id, maxcache, flags)" ("HDF-routines83.html"))
854 ("LOCALE_GET" fun nil (system) "Result = %s( )" nil) 844 ("HDF_GR_SETCOMPRESS" fun nil (system) "Result = %s(ri_id, comp_type, comp_prm)" ("HDF-routines84.html"))
855 ("LON64ARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 845 ("HDF_GR_SETEXTERNALFILE" fun nil (system) "Result = %s(ri_id, filename, offset)" ("HDF-routines85.html"))
856 ("LONARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 846 ("HDF_GR_START" fun nil (system) "Result = %s(file_id)" ("HDF-routines86.html"))
857 ("LONG" fun nil (system) "Result = %s( Expression[, Offset [, Dim1, ..., Dim8]] )" nil) 847 ("HDF_GR_WRITEIMAGE" fun nil (system) "Result = %s( ri_id, data)" ("HDF-routines87.html" ("EDGE" . 1057693) ("INTERLACE" . 1057699) ("START" . 1057691) ("STRIDE" . 1057681)))
858 ("LONG64" fun nil (system) "Result = %s( Expression[, Offset [, D1, ..., D8]] )" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 848 ("HDF_GR_WRITELUT" fun nil (system) "Result = %s( pal_id, pal_data )" ("HDF-routines88.html"))
859 ("LSODE" fun nil (system) "Result = %s( Y, X, H, Derivs[, Status])" (("ATOL") ("RTOL"))) 849 ("HDF_HDF2IDLTYPE" fun nil (system) "Result = %s( hdftypecode )" ("HDF-routines89.html"))
860 ("LU_COMPLEX" fun nil (system) "Result = %s( A, B)" (("DOUBLE") ("INVERSE") ("SPARSE"))) 850 ("HDF_IDL2HDFTYPE" fun nil (system) "Result = %s( idltypecode )" ("HDF-routines90.html"))
861 ("LUMPROVE" fun nil (system) "Result = %s( A, Alud, Index, B, X)" (("COLUMN") ("DOUBLE"))) 851 ("HDF_ISHDF" fun nil (system) "Result = %s(Filename)" ("HDF-routines91.html"))
862 ("LUSOL" fun nil (system) "Result = %s(A, Index, B)" (("COLUMN") ("DOUBLE"))) 852 ("HDF_NEWREF" fun nil (system) "Result = %s(FileHandle)" ("HDF-routines93.html"))
863 ("M_CORRELATE" fun nil (system) "Result = %s( X, Y)" (("DOUBLE"))) 853 ("HDF_NUMBER" fun nil (system) "Result = %s( FileHandle)" ("HDF-routines94.html" ("TAG" . 998362)))
864 ("MACHAR" fun nil (system) "Result = %s()" (("DOUBLE"))) 854 ("HDF_OPEN" fun nil (system) "Result = %s( Filename)" ("HDF-routines95.html" ("ALL" . 998379) ("CREATE" . 998383) ("NUM_DD" . 998386) ("RDWR" . 998390) ("READ" . 998394) ("WRITE" . 998397)))
865 ("MAKE_ARRAY" fun nil (system) "Result = %s ( [D1, ..., D8])" (("BYTE") ("COMPLEX") ("DCOMPLEX") ("DIMENSION") ("DOUBLE") ("FLOAT") ("INDEX") ("INT") ("L64") ("LONG") ("NOZERO") ("OBJ") ("PTR") ("SIZE") ("STRING") ("TYPE") ("UINT") ("UL64") ("ULONG") ("VALUE"))) 855 ("HDF_PACKDATA" fun nil (system) "Result = %s( data1 [, data2 [, data3 [, data4 [, data5 [, data6 [, data7 [, data8]]]]]]])" ("HDF-routines96.html" ("HDF_ORDER" . 1042936) ("HDF_TYPE" . 1042939) ("NREC" . 1042942)))
866 ("MAP_2POINTS" fun nil (system) "Result = %s( lon0, lat0, lon1, lat1)" (("DPATH") ("METERS") ("MILES") ("NPATH") ("PARAMETERS") ("RADIANS") ("RADIUS") ("RHUMB"))) 856 ("HDF_READ" fun nil (system) "Result = %s( [Filename])" ("H8.html" ("DF24" . 852278) ("DFR8" . 852275) ("PREFIX" . 871657) ("TEMPLATE" . 852281)))
867 ("MAP_IMAGE" fun nil (system) "Result = %s( Image [, Startx, Starty [, Xsize, Ysize]])" (("BILINEAR") ("COMPRESS") ("LATMAX") ("LATMIN") ("LONMAX") ("LONMIN") ("MAX_VALUE") ("MIN_VALUE") ("MISSING") ("SCALE"))) 857 ("HDF_SD_ATTRFIND" fun nil (system) "Result = %s(SD_id, Name)" ("HDF-routines98.html"))
868 ("MAP_PATCH" fun nil (system) "Result = %s( Image_Orig [, Lons, Lats])" (("LAT0") ("LAT1") ("LON0") ("LON1") ("MAX_VALUE") ("MISSING") ("TRIANGULATE") ("XSIZE") ("XSTART") ("YSIZE") ("YSTART"))) 858 ("HDF_SD_CREATE" fun nil (system) "Result = %s( SDinterface_id, Name, Dims)" ("HDF-routines101.html" ("BYTE" . 1053869) ("DFNT_CHAR88" . 1053872) ("DFNT_FLOAT32" . 1053875) ("DFNT_FLOAT64" . 1053878) ("DFNT_INT16" . 1053884) ("DFNT_INT32" . 1053887) ("DFNT_INT8" . 1053881) ("DFNT_UINT16" . 1053893) ("DFNT_UINT32" . 1053896) ("DFNT_UINT8" . 1053890) ("DOUBLE" . 1053899) ("FLOAT" . 1053902) ("HDF_TYPE" . 1106175) ("INT" . 1106171) ("LONG" . 1053908) ("SHORT" . 1053911) ("STRING" . 1053914)))
869 ("MATRIX_MULTIPLY" fun nil (system) "Result = %s( A, B)" (("ATRANSPOSE") ("BTRANSPOSE"))) 859 ("HDF_SD_DIMGETID" fun nil (system) "Result = %s(SDdataset_id, Dimension_Number)" ("HDF-routines103.html"))
870 ("MAX" fun nil (system) "Result = %s( Array [, Max_Subscript])" (("DIMENSION") ("MIN") ("NAN") ("SUBSCRIPT_MIN") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 860 ("HDF_SD_ISCOORDVAR" fun nil (system) "Result = %s(SDdataset_id)" ("HDF-routines111.html"))
871 ("MD_TEST" fun nil (system) "Result = %s( X)" (("ABOVE") ("BELOW") ("MDC"))) 861 ("HDF_SD_NAMETOINDEX" fun nil (system) "Result = %s(SDinterface_id, SDS_Name)" ("HDF-routines112.html"))
872 ("MEAN" fun nil (system) "Result = %s( X)" (("DOUBLE") ("NAN"))) 862 ("HDF_SD_REFTOINDEX" fun nil (system) "Result = %s(SDinterface_id, Reference_number)" ("HDF-routines113.html"))
873 ("MEANABSDEV" fun nil (system) "Result = %s( X)" (("DOUBLE") ("MEDIAN") ("NAN"))) 863 ("HDF_SD_SELECT" fun nil (system) "Result = %s(SDinterface_id, Number)" ("HDF-routines114.html"))
874 ("MEDIAN" fun nil (system) "Result = %s( Array [, Width])" (("EVEN"))) 864 ("HDF_SD_START" fun nil (system) "Result = %s( Filename)" ("HDF-routines118.html" ("CREATE" . 1054663) ("RDWR" . 1054661) ("READ" . 1054659)))
875 ("MEMORY" fun nil (system) "Result = %s()" (("CURRENT") ("HIGHWATER") ("L64") ("NUM_ALLOC") ("NUM_FREE") ("STRUCTURE"))) 865 ("HDF_SDINTERFACE_IDTOREF" fun nil (system) "Result = %s(SDdataset_id)" ("HDF-routines110.html"))
876 ("MESH_CLIP" fun nil (system) "Result = %s (Plane, Vertsin, Connin, Vertsout, Connout)" (("AUXDATA_IN") ("AUXDATA_OUT") ("CUT_VERTS"))) 866 ("HDF_VD_ATTACH" fun nil (system) "Result = %s( FileHandle, VData_id)" ("HDF-routines120.html" ("READ" . 999503) ("WRITE" . 999506)))
877 ("MESH_DECIMATE" fun nil (system) "Result = %s (Verts, Conn, Connout)" (("PERCENT_POLYGONS") ("PERCENT_VERTICES") ("VERTICES"))) 867 ("HDF_VD_ATTRFIND" fun nil (system) "Result = %s(VData, FieldID, Name)" ("HDF-routines121.html"))
878 ("MESH_ISSOLID" fun nil (system) "Result = %s (Conn)" nil) 868 ("HDF_VD_FEXIST" fun nil (system) "Result = %s(VData, Fieldnames)" ("HDF-routines126.html"))
879 ("MESH_MERGE" fun nil (system) "Result = %s (Verts, Conn, Verts1, Conn1)" (("COMBINE_VERTICES") ("TOLERANCE"))) 869 ("HDF_VD_FIND" fun nil (system) "Result = %s(FileHandle, Name)" ("HDF-routines127.html"))
880 ("MESH_NUMTRIANGLES" fun nil (system) "Result = %s (Conn)" nil) 870 ("HDF_VD_GETID" fun nil (system) "Result = %s(FileHandle, VData_id)" ("HDF-routines129.html"))
881 ("MESH_SMOOTH" fun nil (system) "Result = %s (Verts, Conn)" (("FIXED_EDGE_VERTICES") ("FIXED_VERTICES") ("ITERATIONS") ("LAMBDA"))) 871 ("HDF_VD_ISATTR" fun nil (system) "Result = %s(VData)" ("HDF-routines132.html"))
882 ("MESH_SURFACEAREA" fun nil (system) "Result = %s ( Verts, Conn)" (("AUXDATA") ("MOMENT"))) 872 ("HDF_VD_ISVD" fun nil (system) "Result = %s(VGroup, Id)" ("HDF-routines133.html"))
883 ("MESH_VALIDATE" fun nil (system) "Result = %s ( Verts, Conn)" (("COMBINE_VERTICES") ("PACK_VERTICES") ("REMOVE_NAN") ("TOLERANCE"))) 873 ("HDF_VD_LONE" fun nil (system) "Result = %s( FileHandle)" ("HDF-routines135.html" ("MAXSIZE" . 999761)))
884 ("MESH_VOLUME" fun nil (system) "Result = %s ( Verts, Conn)" (("SIGNED"))) 874 ("HDF_VD_NATTRS" fun nil (system) "Result = %s( VData, FieldID )" ("HDF-routines136.html"))
885 ("MIN" fun nil (system) "Result = %s( Array [, Min_Subscript])" (("DIMENSION") ("MAX") ("NAN") ("SUBSCRIPT_MAX") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 875 ("HDF_VD_READ" fun nil (system) "Result = %s( VData, Data)" ("HDF-routines137.html" ("FIELDS" . 999788) ("FULL_INTERLACE" . 999791) ("NO_INTERLACE" . 999794) ("NRECORDS" . 999797)))
886 ("MIN_CURVE_SURF" fun nil (system) "Result = %s(Z [, X, Y])" (("BOUNDS") ("CONST") ("DOUBLE") ("GS") ("NX") ("NY") ("REGULAR") ("SPHERE") ("TPS") ("XGRID") ("XOUT") ("XPOUT") ("XVALUES") ("YGRID") ("YOUT") ("YPOUT") ("YVALUES"))) 876 ("HDF_VG_ATTACH" fun nil (system) "Result = %s( FileHandle, VGroup_id)" ("HDF-routines142.html" ("READ" . 999942) ("WRITE" . 999945)))
887 ("MOMENT" fun nil (system) "Result = %s( X)" (("DOUBLE") ("MDEV") ("NAN") ("SDEV"))) 877 ("HDF_VG_GETID" fun nil (system) "Result = %s(FileHandle, VGroup_id)" ("HDF-routines144.html"))
888 ("MORPH_CLOSE" fun nil (system) "Result = %s (Image, Structure)" (("GRAY") ("PRESERVE_TYPE") ("UINT") ("ULONG") ("VALUES"))) 878 ("HDF_VG_GETNEXT" fun nil (system) "Result = %s(VGroup, Id)" ("HDF-routines146.html"))
889 ("MORPH_DISTANCE" fun nil (system) "Result = %s (Data)" (("BACKGROUND") ("NEIGHBOR_SAMPLING") ("NO_COPY"))) 879 ("HDF_VG_INQTR" fun nil (system) "Result = %s(VGroup, Tag, Ref)" ("HDF-routines149.html"))
890 ("MORPH_GRADIENT" fun nil (system) "Result = %s (Image, Structure)" (("PRESERVE_TYPE") ("UINT") ("ULONG") ("VALUES"))) 880 ("HDF_VG_ISVD" fun nil (system) "Result = %s(VGroup, Id)" ("HDF-routines151.html"))
891 ("MORPH_HITORMISS" fun nil (system) "Result = %s (Image, HitStructure, MissStructure)" nil) 881 ("HDF_VG_ISVG" fun nil (system) "Result = %s(VGroup, Id)" ("HDF-routines152.html"))
892 ("MORPH_OPEN" fun nil (system) "Result = %s (Image, Structure)" (("GRAY") ("PRESERVE_TYPE") ("UINT") ("ULONG") ("VALUES"))) 882 ("HDF_VG_LONE" fun nil (system) "Result = %s( FileHandle)" ("HDF-routines153.html" ("MAXSIZE" . 1000150)))
893 ("MORPH_THIN" fun nil (system) "Result = %s ( Image, HitStructure, MissStructure )" nil) 883 ("HDF_VG_NUMBER" fun nil (system) "Result = %s(VGroup)" ("HDF-routines154.html"))
894 ("MORPH_TOPHAT" fun nil (system) "Result = %s ( Image, Structure)" (("PRESERVE_TYPE") ("UINT") ("ULONG") ("VALUES"))) 884 ("HILBERT" fun nil (system) "Result = %s(X [, D])" ("H12.html"))
895 ("MPEG_OPEN" fun nil (system) "mpegID = %s( Dimensions)" (("BITRATE") ("FILENAME") ("IFRAME_GAP") ("MOTION_VEC_LENGTH") ("QUALITY"))) 885 ("HIST_2D" fun nil (system) "Result = %s( V1, V2)" ("H13.html" ("BIN1" . 832830) ("BIN2" . 832832) ("MAX1" . 832284) ("MAX2" . 832345) ("MIN1" . 832837) ("MIN2" . 832839)))
896 ("MSG_CAT_OPEN" fun nil (system) "Result = %s( application)" (("DEFAULT_FILENAME") ("FILENAME") ("FOUND") ("LOCALE") ("PATH") ("SUB_QUERY"))) 886 ("HIST_EQUAL" fun nil (system) "Result = %s( A)" ("H14.html" ("BINSIZE" . 871698) ("FCN" . 876498) ("HISTOGRAM_ONLY" . 874403) ("MAXV" . 874687) ("MINV" . 758160) ("OMAX" . 875087) ("OMIN" . 875100) ("PERCENT" . 874600) ("TOP" . 874602)))
897 ("N_ELEMENTS" fun nil (system) "Result = %s(Expression)" nil) 887 ("HISTOGRAM" fun nil (system) "Result = %s( Array)" ("H15.html" ("BINSIZE" . 677175) ("INPUT" . 677177) ("L64" . 677180) ("LOCATIONS" . 886107) ("MAX" . 886113) ("MIN" . 677182) ("NAN" . 197674) ("NBINS" . 677184) ("OMAX" . 873903) ("OMIN" . 677186) ("REVERSE_INDICES" . 677188)))
898 ("N_PARAMS" fun nil (system) "Result = %s()" nil) 888 ("HOUGH" fun nil (system) "Result = %s( Array)" ("H17.html" ("BACKPROJECT" . 875957) ("DOUBLE" . 875960) ("DRHO" . 875962) ("DX" . 875964) ("DY" . 875966) ("GRAY" . 875968) ("NRHO" . 875970) ("NTHETA" . 875972) ("NX" . 875974) ("NY" . 875976) ("RHO" . 875978) ("RMIN" . 875980) ("THETA" . 875982) ("XMIN" . 875984) ("YMIN" . 875986)))
899 ("N_TAGS" fun nil (system) "Result = %s( Expression)" (("DATA_LENGTH") ("LENGTH"))) 889 ("HQR" fun nil (system) "Result = %s( A)" ("H18.html" ("COLUMN" . 871729) ("DOUBLE" . 50748)))
900 ("NCDF_ATTCOPY" fun nil (system) "Result = %s( Incdf [, Invar])" (("IN_GLOBAL") ("OUT_GLOBAL"))) 890 ("IBETA" fun nil (system) "Result = %s( A, B, Z)" ("I.html" ("DOUBLE" . 875616) ("EPS" . 875618) ("ITER" . 875967) ("ITMAX" . 875622)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
901 ("NCDF_ATTINQ" fun nil (system) "Result = %s( Cdfid [, Varid])" (("GLOBAL"))) 891 ("IDENTITY" fun nil (system) "Result = %s( N)" ("I3.html" ("DOUBLE" . 832664)))
902 ("NCDF_ATTNAME" fun nil (system) "Result = %s( Cdfid [, Varid])" (("GLOBAL"))) 892 ("IDL_VALIDNAME" fun nil (system) "Result = %s(String)" ("I4.html" ("CONVERT_ALL" . 937159) ("CONVERT_SPACES" . 937166)))
903 ("NCDF_CREATE" fun nil (system) "Result = %s( Filename)" (("CLOBBER") ("NOCLOBBER"))) 893 ("IDLITSYS_CREATETOOL" fun nil (system) "Result = %s(StrTool)" ("I5.html" ("DIMENSIONS" . 984612) ("IDENTIFIER" . 984573) ("INITIAL_DATA" . 939956) ("LOCATION" . 984462) ("MACRO_NAMES" . 964508) ("NO_SAVEPROMPT" . 982826) ("OVERPLOT" . 939958) ("STYLE_NAME" . 984522) ("USER_INTERFACE" . 983497) ("VIEW_GRID" . 939979) ("VIEW_NEXT" . 939981) ("VIEW_NUMBER" . 939984) ("VISUALIZATION_TYPE" . 939987)))
904 ("NCDF_DIMDEF" fun nil (system) "Result = %s( Cdfid, DimName, Size)" (("UNLIMITED"))) 894 ("IGAMMA" fun nil (system) "Result = %s( A, Z)" ("I7.html" ("DOUBLE" . 875550) ("EPS" . 875548) ("ITER" . 875581) ("ITMAX" . 875579) ("METHOD" . 875520)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
905 ("NCDF_DIMID" fun nil (system) "Result = %s( Cdfid, DimName )" nil) 895 ("IMAGINARY" fun nil (system) "Result = %s(Complex_Expression)" ("I11.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
906 ("NCDF_EXISTS" fun nil (system) "Result = %s( )" nil) 896 ("INDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("I13.html" ("BYTE" . 862684) ("COMPLEX" . 862699) ("DCOMPLEX" . 862701) ("DOUBLE" . 862705) ("FLOAT" . 862707) ("L64" . 862711) ("LONG" . 862927) ("STRING" . 862930) ("TYPE" . 862752) ("UINT" . 862746) ("UL64" . 862748) ("ULONG" . 862750)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
907 ("NCDF_INQUIRE" fun nil (system) "Result = %s(Cdfid)" nil) 897 ("INT_2D" fun nil (system) "Result = %s( Fxy, AB_Limits, PQ_Limits, Pts)" ("I14.html" ("DOUBLE" . 832191) ("ORDER" . 813280)))
908 ("NCDF_OPEN" fun nil (system) "Result = %s( Filename)" (("NOWRITE") ("WRITE"))) 898 ("INT_3D" fun nil (system) "Result = %s( Fxyz, AB_Limits, PQ_Limits, UV_Limits, Pts)" ("I15.html" ("DOUBLE" . 813293)))
909 ("NCDF_VARDEF" fun nil (system) "Result = %s( Cdfid, Name [, Dim])" (("BYTE") ("CHAR") ("DOUBLE") ("FLOAT") ("LONG") ("SHORT"))) 899 ("INT_TABULATED" fun nil (system) "Result = %s( X, F)" ("I16.html" ("DOUBLE" . 875649) ("SORT" . 750310)))
910 ("NCDF_VARID" fun nil (system) "Result = %s(Cdfid, Name)" nil) 900 ("INTARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("I17.html" ("NOZERO" . 677253)))
911 ("NCDF_VARINQ" fun nil (system) "Result = %s(Cdfid, Varid)" nil) 901 ("INTERPOL" fun nil (system) "Result = %s( V, N)" ("I18.html" ("LSQUADRATIC" . 872067) ("QUADRATIC" . 872072) ("SPLINE" . 872076)))
912 ("NEWTON" fun nil (system) "Result = %s( X, Vecfunc)" (("CHECK") ("DOUBLE") ("ITMAX") ("STEPMAX") ("TOLF") ("TOLMIN") ("TOLX"))) 902 ("INTERPOLATE" fun nil (system) "Result = %s( P, X [, Y [, Z]])" ("I19.html" ("CUBIC" . 680782) ("GRID" . 680781) ("MISSING" . 677276)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
913 ("NORM" fun nil (system) "Result = %s( A)" (("DOUBLE") ("LNORM"))) 903 ("INVERT" fun nil (system) "Result = %s( Array [, Status])" ("I21.html" ("DOUBLE" . 50809)))
914 ("OBJ_CLASS" fun nil (system) "Result = %s( [Arg])" (("COUNT") ("SUPERCLASS"))) 904 ("IOCTL" fun nil (system) "Result = %s( File_Unit [, Request, Arg])" ("I22.html" ("BY_VALUE" . 677325) ("MT_OFFLINE" . 677327) ("MT_REWIND" . 677329) ("MT_SKIP_FILE" . 677331) ("MT_SKIP_RECORD" . 677333) ("MT_WEOF" . 677335) ("SUPPRESS_ERROR" . 677337)))
915 ("OBJ_ISA" fun nil (system) "Result = %s(ObjectInstance, ClassName)" nil) 905 ("ISHFT" fun nil (system) "Result = %s(P1, P2)" ("I24.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
916 ("OBJ_NEW" fun nil (system) "Result = %s( [ObjectClassName [, Arg1......Argn]] )" nil) 906 ("ITGETCURRENT" fun nil (system) "Result = %s()" ("I30.html" ("TOOL" . 941481)))
917 ("OBJ_VALID" fun nil (system) "Result = %s( [Arg])" (("CAST") ("COUNT"))) 907 ("JULDAY" fun nil (system) "Result = %s(Month, Day, Year, Hour, Minute, Second)" ("J2.html"))
918 ("OBJARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 908 ("KEYWORD_SET" fun nil (system) "Result = %s(Expression)" ("K.html"))
919 ("P_CORRELATE" fun nil (system) "Result = %s( X, Y, C)" (("DOUBLE"))) 909 ("KRIG2D" fun nil (system) "Result = %s( Z [, X, Y])" ("K2.html" ("BOUNDS" . 750620) ("EXPONENTIAL" . 750596) ("GS" . 930292) ("NX" . 750622) ("NY" . 750624) ("REGULAR" . 750607) ("SPHERICAL" . 750598) ("XGRID" . 750609) ("XVALUES" . 750611) ("YGRID" . 750613) ("YVALUES" . 750615)))
920 ("PATH_SEP" fun nil (system) "Result = %s()" (("PARENT_DIRECTORY") ("SEARCH_PATH"))) 910 ("KURTOSIS" fun nil (system) "Result = %s(X)" ("K3.html" ("DOUBLE" . 859078) ("NAN" . 860892)))
921 ("PCOMP" fun nil (system) "Result = %s( A)" (("COEFFICIENTS") ("COVARIANCE") ("DOUBLE") ("EIGENVALUES") ("NVARIABLES") ("STANDARDIZE") ("VARIANCES"))) 911 ("KW_TEST" fun nil (system) "Result = %s( X)" ("K4.html" ("DF" . 53675) ("MISSING" . 53678)))
922 ("PNT_LINE" fun nil (system) "Result = %s( P0, L0, L1 [, Pl])" (("INTERVAL"))) 912 ("L64INDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("L.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
923 ("POLAR_SURFACE" fun nil (system) "Result = %s( Z, R, Theta)" (("BOUNDS") ("GRID") ("MISSING") ("QUINTIC") ("SPACING"))) 913 ("LA_CHOLMPROVE" fun nil (system) "Result = %s( Array, Achol, B, X)" ("L3.html" ("BACKWARD_ERROR" . 969194) ("DOUBLE" . 969196) ("FORWARD_ERROR" . 969198) ("UPPER" . 969200)))
924 ("POLY" fun nil (system) "Result = %s(X, C)" nil) 914 ("LA_CHOLSOL" fun nil (system) "Result = %s( A, B)" ("L4.html" ("DOUBLE" . 969317) ("UPPER" . 969319)))
925 ("POLY_2D" fun nil (system) "Result = %s( Array, P, Q [, Interp [, Dimx, Dimy]])" (("CUBIC") ("MISSING") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 915 ("LA_DETERM" fun nil (system) "Result = %s( A)" ("L5.html" ("CHECK" . 969400) ("DOUBLE" . 969402) ("ZERO" . 969404)))
926 ("POLY_AREA" fun nil (system) "Result = %s( X, Y)" (("DOUBLE") ("SIGNED"))) 916 ("LA_EIGENPROBLEM" fun nil (system) "Result = %s( A [, B])" ("L6.html" ("ALPHA" . 969502) ("BALANCE" . 969505) ("BETA" . 969512) ("DOUBLE" . 969515) ("EIGENVECTORS" . 969517) ("LEFT_EIGENVECTORS" . 969520) ("NORM_BALANCE" . 969523) ("PERMUTE_RESULT" . 969525) ("RCOND_VALUE" . 969527) ("RCOND_VECTOR" . 969529) ("SCALE_RESULT" . 969531) ("STATUS" . 969533)))
927 ("POLY_FIT" fun nil (system) "Result = %s( X, Y, Degree)" (("CHISQ") ("COVAR") ("DOUBLE") ("MEASURE_ERRORS") ("SIGMA") ("STATUS") ("YBAND") ("YERROR") ("YFIT"))) 917 ("LA_EIGENQL" fun nil (system) "Result = %s( A [, B])" ("L7.html" ("DOUBLE" . 969688) ("EIGENVECTORS" . 969690) ("FAILED" . 969692) ("GENERALIZED" . 969695) ("METHOD" . 969701) ("RANGE" . 969707) ("SEARCH_RANGE" . 969709) ("STATUS" . 969712) ("TOLERANCE" . 969723)))
928 ("POLYFILLV" fun nil (system) "Result = %s( X, Y, Sx, Sy [, Run_Length] )" nil) 918 ("LA_EIGENVEC" fun nil (system) "Result = %s( T, QZ)" ("L8.html" ("BALANCE" . 969898) ("DOUBLE" . 969901) ("EIGENINDEX" . 969903) ("LEFT_EIGENVECTORS" . 969906) ("PERMUTE_RESULT" . 969908) ("RCOND_VALUE" . 969910) ("RCOND_VECTOR" . 969912) ("SCALE_RESULT" . 969914) ("SELECT" . 969916)))
929 ("POLYFITW" fun nil (system) "Result = %s(X, Y, Weights, NDegree [, Yfit, Yband, Sigma, Corrm])" (("DOUBLE") ("STATUS"))) 919 ("LA_ELMHES" fun nil (system) "Result = %s( Array [, Q])" ("L9.html" ("BALANCE" . 970060) ("DOUBLE" . 970067) ("NORM_BALANCE" . 970069) ("PERMUTE_RESULT" . 970071) ("SCALE_RESULT" . 970073)))
930 ("POLYSHADE" fun nil (system) "Result = %s( Vertices, Polygons) or Result = POLYSHADE(X, Y, Z, Polygons)" (("DATA") ("NORMAL") ("POLY_SHADES") ("SHADES") ("T3D") ("TOP") ("XSIZE") ("YSIZE"))) 920 ("LA_GM_LINEAR_MODEL" fun nil (system) "Result = %s( A, B, D, Y)" ("L10.html" ("DOUBLE" . 970161)))
931 ("PRIMES" fun nil (system) "Result = %s(K)" nil) 921 ("LA_HQR" fun nil (system) "Result = %s(H [, Q])" ("L11.html" ("DOUBLE" . 970266) ("PERMUTE_RESULT" . 970268) ("STATUS" . 970270)))
932 ("PROFILE" fun nil (system) "Result = %s( Image [, XX, YY])" (("NOMARK") ("XSTART") ("YSTART"))) 922 ("LA_INVERT" fun nil (system) "Result = %s( A)" ("L12.html" ("DOUBLE" . 970351) ("STATUS" . 970353)))
933 ("PROJECT_VOL" fun nil (system) "Return = %s( Vol, X_Sample, Y_Sample, Z_Sample)" (("DEPTH_Q") ("OPAQUE") ("TRANS"))) 923 ("LA_LEAST_SQUARE_EQUALITY" fun nil (system) "Result = %s( A, B, C, D)" ("L13.html" ("DOUBLE" . 970448) ("RESIDUAL" . 970450)))
934 ("PTR_NEW" fun nil (system) "Result = %s( [InitExpr])" (("ALLOCATE_HEAP") ("NO_COPY"))) 924 ("LA_LEAST_SQUARES" fun nil (system) "Result = %s( A, B)" ("L14.html" ("DOUBLE" . 970563) ("METHOD" . 970565) ("RANK" . 970571) ("RCONDITION" . 970573) ("RESIDUAL" . 970575) ("STATUS" . 970577)))
935 ("PTR_VALID" fun nil (system) "Result = %s( [Arg])" (("CAST") ("COUNT"))) 925 ("LA_LINEAR_EQUATION" fun nil (system) "Result = %s( Array, B)" ("L15.html" ("BACKWARD_ERROR" . 970657) ("DOUBLE" . 970659) ("FORWARD_ERROR" . 970661) ("STATUS" . 970663)))
936 ("PTRARR" fun nil (system) "Result = %s( D1, ... ..., D8)" (("ALLOCATE_HEAP") ("NOZERO"))) 926 ("LA_LUMPROVE" fun nil (system) "Result = %s( Array, Aludc, Index, B, X)" ("L17.html" ("BACKWARD_ERROR" . 970892) ("DOUBLE" . 970894) ("FORWARD_ERROR" . 970896)))
937 ("QGRID3" fun nil (system) "Result = %s( XYZ, F, Tetrahedra)" (("DELTA") ("DIMENSION") ("MISSING") ("START"))) 927 ("LA_LUSOL" fun nil (system) "Result = %s( A, Index, B)" ("L18.html" ("DOUBLE" . 971007)))
938 ("QROMB" fun nil (system) "Result = %s( Func, A, B)" (("DOUBLE") ("EPS") ("JMAX") ("K"))) 928 ("LA_TRIMPROVE" fun nil (system) "Result = %s( AL, A, AU, DAL, DA, DAU, DU2, Index, B, X)" ("L21.html" ("BACKWARD_ERROR" . 971423) ("DOUBLE" . 971425) ("FORWARD_ERROR" . 971427)))
939 ("QROMO" fun nil (system) "Result = %s(Func, A [, B])" (("DOUBLE") ("EPS") ("JMAX") ("K") ("MIDEXP") ("MIDINF") ("MIDPNT") ("MIDSQL") ("MIDSQU"))) 929 ("LA_TRISOL" fun nil (system) "Result = %s( AL, A, AU, U2, Index, B)" ("L24.html" ("DOUBLE" . 971725)))
940 ("QSIMP" fun nil (system) "Result = %s( Func, A, B)" (("DOUBLE") ("EPS") ("JMAX"))) 930 ("LABEL_DATE" fun nil (system) "Result = %s()" ("L25.html" ("AM_PM" . 939222) ("DATE_FORMAT" . 939215) ("DAYS_OF_WEEK" . 939285) ("MONTHS" . 939288) ("OFFSET" . 939291) ("ROUND_UP" . 940951)))
941 ("QUERY_BMP" fun nil (system) "Result = %s ( Filename [, Info] )" nil) 931 ("LABEL_REGION" fun nil (system) "Result = %s( Data)" ("L26.html" ("ALL_NEIGHBORS" . 930484) ("EIGHT" . 828027) ("ULONG" . 677395)))
942 ("QUERY_DICOM" fun nil (system) "Result = %s( Filename [, Info])" (("IMAGE_INDEX"))) 932 ("LADFIT" fun nil (system) "Result = %s( X, Y)" ("L27.html" ("ABSDEV" . 53730) ("DOUBLE" . 837069)))
943 ("QUERY_IMAGE" fun nil (system) "Result = %s ( Filename[, Info])" (("CHANNELS") ("DIMENSIONS") ("HAS_PALETTE") ("IMAGE_INDEX") ("NUM_IMAGES") ("PIXEL_TYPE") ("SUPPORTED_READ") ("SUPPORTED_WRITE") ("TYPE"))) 933 ("LAGUERRE" fun nil (system) "Result = %s( X, N [, K])" ("L28.html" ("COEFFICIENTS" . 942495) ("DOUBLE" . 942497)))
944 ("QUERY_JPEG" fun nil (system) "Result = %s ( Filename [, Info] )" nil) 934 ("LEEFILT" fun nil (system) "Result = %s( A [, N [, Sig]])" ("L29.html" ("DOUBLE" . 939800) ("EXACT" . 833703)))
945 ("QUERY_MRSID" fun nil (system) "Result = %s( Filename [, Info])" (("LEVEL"))) 935 ("LEGENDRE" fun nil (system) "Result = %s( X, L [, M])" ("L30.html" ("DOUBLE" . 942590)))
946 ("QUERY_PICT" fun nil (system) "Result = %s ( Filename [, Info] )" nil) 936 ("LINBCG" fun nil (system) "Result = %s( A, B, X)" ("L31.html" ("DOUBLE" . 50883) ("ITER" . 50896) ("ITMAX" . 50899) ("ITOL" . 50886) ("TOL" . 50893)))
947 ("QUERY_PNG" fun nil (system) "Result = %s ( Filename [, Info] )" nil) 937 ("LINDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("L32.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
948 ("QUERY_PPM" fun nil (system) "Result = %s ( Filename [, Info])" (("MAXVAL"))) 938 ("LINFIT" fun nil (system) "Result = %s( X, Y)" ("L33.html" ("CHISQ" . 53778) ("COVAR" . 940616) ("DOUBLE" . 837073) ("MEASURE_ERRORS" . 53781) ("PROB" . 941301) ("SDEV" . 941420) ("SIGMA" . 941423) ("YFIT" . 941298)))
949 ("QUERY_SRF" fun nil (system) "Result = %s (Filename [, Info] )" nil) 939 ("LL_ARC_DISTANCE" fun nil (system) "Result = %s( Lon_lat0, Arc_Dist, Az)" ("L35.html" ("DEGREES" . 758227)))
950 ("QUERY_TIFF" fun nil (system) "Result = %s ( Filename [, Info])" (("IMAGE_INDEX"))) 940 ("LMFIT" fun nil (system) "Result = %s( X, Y, A)" ("L36.html" ("ALPHA" . 849263) ("CHISQ" . 831462) ("CONVERGENCE" . 831464) ("COVAR" . 831689) ("DOUBLE" . 831466) ("FITA" . 831077) ("FUNCTION_NAME" . 831083) ("ITER" . 831471) ("ITMAX" . 831092) ("ITMIN" . 831094) ("MEASURE_ERRORS" . 941497) ("SIGMA" . 940586) ("TOL" . 940573) ("WEIGHTS" . 940578)))
951 ("QUERY_WAV" fun nil (system) "Result = %s ( Filename[, Info] )" nil) 941 ("LMGR" fun nil (system) "Result = %s()" ("L37.html" ("CLIENTSERVER" . 879327) ("DEMO" . 856060) ("EMBEDDED" . 856064) ("EXPIRE_DATE" . 932522) ("FORCE_DEMO" . 856072) ("INSTALL_NUM" . 932505) ("LMHOSTID" . 856081) ("RUNTIME" . 856085) ("SITE_NOTICE" . 932539) ("STUDENT" . 856089) ("TRIAL" . 856094) ("VM" . 996553)))
952 ("R_CORRELATE" fun nil (system) "Result = %s( X, Y)" (("D") ("KENDALL") ("PROBD") ("ZD"))) 942 ("LNGAMMA" fun nil (system) "Result = %s(Z)" ("L38.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
953 ("R_TEST" fun nil (system) "Result = %s( X)" (("N0") ("N1") ("R"))) 943 ("LNP_TEST" fun nil (system) "Result = %s( X, Y)" ("L39.html" ("DOUBLE" . 54544) ("HIFAC" . 941916) ("JMAX" . 54547) ("OFAC" . 54550) ("WK1" . 54553) ("WK2" . 54556)))
954 ("RADON" fun nil (system) "Result = %s( Array)" (("BACKPROJECT") ("DOUBLE") ("DRHO") ("DX") ("DY") ("GRAY") ("LINEAR") ("NRHO") ("NTHETA") ("NX") ("NY") ("RHO") ("RMIN") ("THETA") ("XMIN") ("YMIN"))) 944 ("LOCALE_GET" fun nil (system) "Result = %s( )" ("L41.html"))
955 ("RANDOMN" fun nil (system) "Result = %s( Seed [, D1, ..., D8])" (("BINOMIAL") ("DOUBLE") ("GAMMA") ("LONG") ("NORMAL") ("POISSON") ("UNIFORM"))) 945 ("LOGICAL_AND" fun nil (system) "Result = %s(Arg1, Arg2)" ("L42.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
956 ("RANDOMU" fun nil (system) "Result = %s( Seed [, D1, ..., D8])" (("BINOMIAL") ("DOUBLE") ("GAMMA") ("LONG") ("NORMAL") ("POISSON") ("UNIFORM"))) 946 ("LOGICAL_OR" fun nil (system) "Result = %s(Arg1, Arg2)" ("L43.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
957 ("RANKS" fun nil (system) "Result = %s(X)" nil) 947 ("LOGICAL_TRUE" fun nil (system) "Result = %s(Arg)" ("L44.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
958 ("READ_ASCII" fun nil (system) "Result = %s( [Filename])" (("COMMENT_SYMBOL") ("COUNT") ("DATA_START") ("DELIMITER") ("HEADER") ("MISSING_VALUE") ("NUM_RECORDS") ("RECORD_START") ("TEMPLATE") ("VERBOSE"))) 948 ("LON64ARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("L45.html" ("NOZERO" . 918880)))
959 ("READ_BINARY" fun nil (system) "Result = %s ([Filename] | FileUnit)" (("DATA_DIMS") ("DATA_START") ("DATA_TYPE") ("ENDIAN") ("TEMPLATE"))) 949 ("LONARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("L46.html" ("NOZERO" . 916558)))
960 ("READ_BMP" fun nil (system) "Result = %s( Filename, [, R, G, B] [, Ihdr])" (("RGB"))) 950 ("LONG" fun nil (system) "Result = %s( Expression[, Offset [, D1 [, ..., D8]]] )" ("L47.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
961 ("READ_DICOM" fun nil (system) "Result = %s (Filename [, Red, Green, Blue])" (("IMAGE_INDEX"))) 951 ("LONG64" fun nil (system) "Result = %s( Expression[, Offset [, D1 [, ..., D8]]] )" ("L48.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
962 ("READ_IMAGE" fun nil (system) "Result = %s (Filename [, Red, Green, Blue])" (("IMAGE_INDEX"))) 952 ("LSODE" fun nil (system) "Result = %s( Y, X, H, Derivs[, Status])" ("L49.html" ("ATOL" . 904984) ("QUIET" . 1014877) ("RTOL" . 905036)))
963 ("READ_MRSID" fun nil (system) "Result = %s ( Filename)" (("LEVEL") ("SUB_RECT"))) 953 ("LU_COMPLEX" fun nil (system) "Result = %s( A, B)" ("L50.html" ("DOUBLE" . 750791) ("INVERSE" . 48859) ("SPARSE" . 37275)))
964 ("READ_PNG" fun nil (system) "Result = %s ( Filename [, R, G, B])" (("ORDER") ("TRANSPARENT") ("VERBOSE"))) 954 ("LUMPROVE" fun nil (system) "Result = %s( A, Alud, Index, B, X)" ("L52.html" ("COLUMN" . 58736) ("DOUBLE" . 51323)))
965 ("READ_SPR" fun nil (system) "Result = %s(Filename)" nil) 955 ("LUSOL" fun nil (system) "Result = %s(A, Index, B)" ("L53.html" ("COLUMN" . 58727) ("DOUBLE" . 50997)))
966 ("READ_SYLK" fun nil (system) "Result = %s( File)" (("ARRAY") ("COLMAJOR") ("NCOLS") ("NROWS") ("STARTCOL") ("STARTROW") ("USEDOUBLES") ("USELONGS"))) 956 ("M_CORRELATE" fun nil (system) "Result = %s( X, Y)" ("M.html" ("DOUBLE" . 956112)))
967 ("READ_TIFF" fun nil (system) "Result = %s( Filename [, R, G, B])" (("CHANNELS") ("GEOTIFF") ("IMAGE_INDEX") ("INTERLEAVE") ("ORDER") ("ORIENTATION") ("PLANARCONFIG") ("SUB_RECT") ("UNSIGNED") ("VERBOSE"))) 957 ("MACHAR" fun nil (system) "Result = %s()" ("M2.html" ("DOUBLE" . 928847)))
968 ("READ_WAV" fun nil (system) "Result = %s ( Filename [, Rate] )" nil) 958 ("MAKE_ARRAY" fun nil (system) "Result = %s ( [D1 [, ..., D8]])" ("M3.html" ("BYTE" . 887432) ("COMPLEX" . 887435) ("DCOMPLEX" . 887438) ("DIMENSION" . 887441) ("DOUBLE" . 887444) ("FLOAT" . 887447) ("INDEX" . 887450) ("INTEGER" . 887453) ("L64" . 916074) ("LONG" . 887456) ("NOZERO" . 887459) ("OBJ" . 887462) ("PTR" . 887465) ("SIZE" . 887468) ("STRING" . 887471) ("TYPE" . 887474) ("UINT" . 918501) ("UL64" . 918504) ("ULONG" . 916082) ("VALUE" . 887480)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
969 ("READ_XWD" fun nil (system) "Result = %s( Filename[, R, G, B] )" nil) 959 ("MAP_2POINTS" fun nil (system) "Result = %s( lon0, lat0, lon1, lat1)" ("M5.html" ("DPATH" . 960572) ("METERS" . 960574) ("MILES" . 960576) ("NPATH" . 960578) ("PARAMETERS" . 960581) ("RADIANS" . 960583) ("RADIUS" . 960585) ("RHUMB" . 960587)))
970 ("REAL_PART" fun nil (system) "Result = %s(Z)" nil) 960 ("MAP_IMAGE" fun nil (system) "Result = %s( Image [, Startx, Starty [, Xsize, Ysize]])" ("M8.html" ("BILINEAR" . 903532) ("COMPRESS" . 887760) ("LATMAX" . 887748) ("LATMIN" . 887745) ("LONMAX" . 887754) ("LONMIN" . 887751) ("MAP_STRUCTURE" . 1060029) ("MASK" . 1061279) ("MAX_VALUE" . 887766) ("MIN_VALUE" . 887770) ("MISSING" . 887774) ("SCALE" . 887763)))
971 ("REBIN" fun nil (system) "Result = %s( Array, D1 [, ..., D8])" (("SAMPLE"))) 961 ("MAP_PATCH" fun nil (system) "Result = %s( Image_Orig [, Lons, Lats])" ("M9.html" ("LAT0" . 958167) ("LAT1" . 887838) ("LON0" . 887841) ("LON1" . 887844) ("MAX_VALUE" . 928019) ("MISSING" . 887847) ("TRIANGULATE" . 887853) ("XSIZE" . 887856) ("XSTART" . 887859) ("YSIZE" . 887862) ("YSTART" . 887865)))
972 ("RECALL_COMMANDS" fun nil (system) "Result = %s()" nil) 962 ("MAP_PROJ_FORWARD" fun nil (system) "Result = %s(Longitude [, Latitude])" ("M10.html" ("CONNECTIVITY" . 999199) ("FILL" . 999209) ("MAP_STRUCTURE" . 1059849) ("POLYGONS" . 999214) ("POLYLINES" . 999218) ("RADIANS" . 999222)))
973 ("RECON3" fun nil (system) "Result = %s( Images, Obj_Rot, Obj_Pos, Focal, Dist,Vol_Pos, Img_Ref, Img_Mag, Vol_Size)" (("CUBIC") ("MISSING") ("MODE") ("QUIET"))) 963 ("MAP_PROJ_IMAGE" fun nil (system) "Result = %s(Image [, Range])" ("M11.html" ("BILINEAR" . 1062551) ("DIMENSIONS" . 1062553) ("IMAGE_STRUCTURE" . 1062555) ("MAP_STRUCTURE" . 1062557) ("MASK" . 1062562) ("MAX_VALUE" . 1062565) ("MIN_VALUE" . 1062567) ("MISSING" . 1062569) ("UVRANGE" . 1062571)))
974 ("REFORM" fun nil (system) "Result = %s( Array, D1, ..., D8)" (("OVERWRITE"))) 964 ("MAP_PROJ_INIT" fun nil (system) "Result = %s(Projection)" ("M13.html" ("CENTER_AZIMUTH" . 999986) ("CENTER_LATITUDE" . 999988) ("CENTER_LONGITUDE" . 999990) ("DATUM" . 999770) ("FALSE_EASTING" . 999992) ("FALSE_NORTHING" . 999994) ("GCTP" . 999952) ("HEIGHT" . 999996) ("HOM_AZIM_ANGLE" . 1000000) ("HOM_AZIM_LONGITUDE" . 999998) ("HOM_LATITUDE1" . 1000002) ("HOM_LATITUDE2" . 1000004) ("HOM_LONGITUDE1" . 1000006) ("HOM_LONGITUDE2" . 1000008) ("IS_JUSTIFY" . 1000012) ("IS_ZONES" . 1000010) ("LIMIT" . 999954) ("MERCATOR_SCALE" . 1000036) ("OEA_ANGLE" . 1000038) ("OEA_SHAPEM" . 1000040) ("OEA_SHAPEN" . 1000042) ("RADIANS" . 999959) ("RELAXED" . 999961) ("ROTATION" . 1000045) ("SAT_TILT" . 1000074) ("SEMIMAJOR_AXIS" . 1000048) ("SEMIMINOR_AXIS" . 1000050) ("SOM_FLAG" . 1000060) ("SOM_INCLINATION" . 1000052) ("SOM_LANDSAT_NUMBER" . 1000062) ("SOM_LANDSAT_PATH" . 1000064) ("SOM_LONGITUDE" . 1000054) ("SOM_PERIOD" . 1000056) ("SOM_RATIO" . 1000058) ("SPHERE_RADIUS" . 1000066) ("STANDARD_PAR1" . 1000070) ("STANDARD_PAR2" . 1000072) ("STANDARD_PARALLEL" . 1000068) ("TRUE_SCALE_LATITUDE" . 1000076) ("ZONE" . 1000078)))
975 ("REGION_GROW" fun nil (system) "Result = %s(Array, ROIPixels)" (("ALL_NEIGHBORS") ("STDDEV_MULTIPLIER") ("THRESHOLD"))) 965 ("MAP_PROJ_INVERSE" fun nil (system) "Result = %s (X [, Y])" ("M14.html" ("MAP_STRUCTURE" . 1000165) ("RADIANS" . 1000170)))
976 ("REGRESS" fun nil (system) "Result = %s( X, Y)" (("CHISQ") ("CONST") ("CORRELATION") ("DOUBLE") ("FTEST") ("MCORRELATION") ("MEASURE_ERRORS") ("SIGMA") ("STATUS") ("YFIT"))) 966 ("MATRIX_MULTIPLY" fun nil (system) "Result = %s( A, B)" ("M16.html" ("ATRANSPOSE" . 960661) ("BTRANSPOSE" . 960663)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
977 ("REPLICATE" fun nil (system) "Result = %s( Value, D1 [, ..., D8] )" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 967 ("MATRIX_POWER" fun nil (system) "Result = %s(Array, N)" ("M17.html" ("DOUBLE" . 1000204) ("STATUS" . 1000207)))
978 ("REVERSE" fun nil (system) "Result = %s( Array [, Subscript_Index])" (("OVERWRITE"))) 968 ("MAX" fun nil (system) "Result = %s( Array [, Max_Subscript])" ("M18.html" ("ABSOLUTE" . 1047888) ("DIMENSION" . 888204) ("MIN" . 963501) ("NAN" . 888207) ("SUBSCRIPT_MIN" . 929038)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
979 ("RK4" fun nil (system) "Result = %s( Y, Dydx, X, H, Derivs)" (("DOUBLE"))) 969 ("MD_TEST" fun nil (system) "Result = %s( X)" ("M19.html" ("ABOVE" . 888251) ("BELOW" . 888254) ("MDC" . 888257)))
980 ("ROBERTS" fun nil (system) "Result = %s(Image)" nil) 970 ("MEAN" fun nil (system) "Result = %s( X)" ("M20.html" ("DOUBLE" . 888313) ("NAN" . 888316)))
981 ("ROT" fun nil (system) "Result = %s( A, Angle, [Mag, X0, Y0])" (("CUBIC") ("INTERP") ("MISSING") ("PIVOT"))) 971 ("MEANABSDEV" fun nil (system) "Result = %s( X)" ("M21.html" ("DOUBLE" . 888362) ("MEDIAN" . 888365) ("NAN" . 888368)))
982 ("ROTATE" fun nil (system) "Result = %s(Array, Direction)" nil) 972 ("MEDIAN" fun nil (system) "Result = %s ( Array [, Width])" ("M22.html" ("DIMENSION" . 978207) ("DOUBLE" . 1047845) ("EVEN" . 978204)))
983 ("ROUND" fun nil (system) "Result = %s(X)" (("L64") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 973 ("MEMORY" fun nil (system) "Result = %s()" ("M23.html" ("CURRENT" . 960747) ("HIGHWATER" . 960749) ("L64" . 960751) ("NUM_ALLOC" . 960754) ("NUM_FREE" . 960756) ("STRUCTURE" . 960758)))
984 ("ROUTINE_INFO" fun nil (system) "Result = %s( [Routine])" (("DISABLED") ("ENABLED") ("FUNCTIONS") ("PARAMETERS") ("SOURCE") ("SYSTEM") ("UNRESOLVED") ("VARIABLES"))) 974 ("MESH_CLIP" fun nil (system) "Result = %s (Plane, Vertsin, Connin, Vertsout, Connout)" ("M24.html" ("AUXDATA_IN" . 948402) ("AUXDATA_OUT" . 948404) ("CUT_VERTS" . 948406)))
985 ("RS_TEST" fun nil (system) "Result = %s( X, Y)" (("UX") ("UY"))) 975 ("MESH_DECIMATE" fun nil (system) "Result = %s (Verts, Conn, Connout)" ("M25.html" ("PERCENT_POLYGONS" . 948433) ("PERCENT_VERTICES" . 948431) ("PROGRESS_CALLBACK" . 1051741) ("PROGRESS_METHOD" . 1020618) ("PROGRESS_OBJECT" . 1020641) ("PROGRESS_PERCENT" . 1020654) ("PROGRESS_USERDATA" . 1020660) ("VERTICES" . 1020667)))
986 ("RSTRPOS" fun nil (system) "Result = %s( Expression, Search_String [, Pos] )" nil) 976 ("MESH_ISSOLID" fun nil (system) "Result = %s (Conn)" ("M26.html"))
987 ("S_TEST" fun nil (system) "Result = %s( X, Y)" (("ZDIFF"))) 977 ("MESH_MERGE" fun nil (system) "Result = %s (Verts, Conn, Verts1, Conn1)" ("M27.html" ("COMBINE_VERTICES" . 948474) ("TOLERANCE" . 948480)))
988 ("SAVGOL" fun nil (system) "Result = %s( Nleft, Nright, Order, Degree)" (("DOUBLE"))) 978 ("MESH_NUMTRIANGLES" fun nil (system) "Result = %s (Conn)" ("M28.html"))
989 ("SEARCH2D" fun nil (system) "Result = %s( Array, Xpos, Ypos, Min_Val, Max_Val)" (("DECREASE") ("DIAGONAL") ("INCREASE") ("LPF_BAND"))) 979 ("MESH_SMOOTH" fun nil (system) "Result = %s (Verts, Conn)" ("M30.html" ("FIXED_EDGE_VERTICES" . 948537) ("FIXED_VERTICES" . 948535) ("ITERATIONS" . 948533) ("LAMBDA" . 948539)))
990 ("SEARCH3D" fun nil (system) "Result = %s( Array, Xpos, Ypos, Zpos, Min_Val, Max_Val)" (("DECREASE") ("DIAGONAL") ("INCREASE") ("LPF_BAND"))) 980 ("MESH_SURFACEAREA" fun nil (system) "Result = %s ( Verts, Conn)" ("M31.html" ("AUXDATA" . 948575) ("MOMENT" . 948577)))
991 ("SFIT" fun nil (system) "Result = %s( Data, Degree)" (("KX"))) 981 ("MESH_VALIDATE" fun nil (system) "Result = %s ( Verts, Conn)" ("M32.html" ("COMBINE_VERTICES" . 948607) ("PACK_VERTICES" . 949513) ("REMOVE_NAN" . 948611) ("TOLERANCE" . 948613)))
992 ("SHIFT" fun nil (system) "Result = %s(Array, S1, ..., Sn)" nil) 982 ("MESH_VOLUME" fun nil (system) "Result = %s ( Verts, Conn)" ("M33.html" ("SIGNED" . 948632)))
993 ("SIMPLEX" fun nil (system) "Result = %s( Zequation, Constraints, M1, M2, M3 [, Tableau [, Izrov [, Iposv]]])" (("DOUBLE") ("EPS") ("STATUS"))) 983 ("MIN" fun nil (system) "Result = %s( Array [, Min_Subscript])" ("M35.html" ("ABSOLUTE" . 1047943) ("DIMENSION" . 965599) ("MAX" . 963567) ("NAN" . 888740) ("SUBSCRIPT_MAX" . 965815)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
994 ("SIN" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 984 ("MIN_CURVE_SURF" fun nil (system) "Result = %s(Z [, X, Y])" ("M36.html" ("BOUNDS" . 888798) ("CONST" . 956696) ("DOUBLE" . 929725) ("GS" . 888796) ("NX" . 888800) ("NY" . 888802) ("REGULAR" . 888785) ("SPHERE" . 956689) ("TPS" . 888782) ("XGRID" . 888787) ("XOUT" . 888804) ("XPOUT" . 888808) ("XVALUES" . 888789) ("YGRID" . 888791) ("YOUT" . 888806) ("YPOUT" . 888808) ("YVALUES" . 888793)))
995 ("SINDGEN" fun nil (system) "Result = %s(D1, ..., D8)" nil) 985 ("MOMENT" fun nil (system) "Result = %s( X)" ("M39.html" ("DOUBLE" . 888958) ("MDEV" . 888961) ("NAN" . 888964) ("SDEV" . 888970)))
996 ("SINH" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 986 ("MORPH_CLOSE" fun nil (system) "Result = %s (Image, Structure)" ("M40.html" ("GRAY" . 948649) ("PRESERVE_TYPE" . 948651) ("UINT" . 948653) ("ULONG" . 948655) ("VALUES" . 948657)))
997 ("SIZE" fun nil (system) "Result = %s( Expression)" (("DIMENSIONS") ("FILE_LUN") ("L64") ("N_DIMENSIONS") ("N_ELEMENTS") ("STRUCTURE") ("TNAME") ("TYPE"))) 987 ("MORPH_DISTANCE" fun nil (system) "Result = %s (Data)" ("M41.html" ("BACKGROUND" . 948898) ("NEIGHBOR_SAMPLING" . 948900) ("NO_COPY" . 948943)))
998 ("SKEWNESS" fun nil (system) "Result = %s( X)" (("DOUBLE") ("NAN"))) 988 ("MORPH_GRADIENT" fun nil (system) "Result = %s (Image, Structure)" ("M42.html" ("PRESERVE_TYPE" . 948983) ("UINT" . 948985) ("ULONG" . 948987) ("VALUES" . 948989)))
999 ("SMOOTH" fun nil (system) "Result = %s( Array, Width)" (("EDGE_TRUNCATE") ("MISSING") ("NAN"))) 989 ("MORPH_HITORMISS" fun nil (system) "Result = %s (Image, HitStructure, MissStructure)" ("M43.html"))
1000 ("SOBEL" fun nil (system) "Result = %s(Image)" nil) 990 ("MORPH_OPEN" fun nil (system) "Result = %s (Image, Structure)" ("M44.html" ("GRAY" . 949085) ("PRESERVE_TYPE" . 949087) ("UINT" . 949089) ("ULONG" . 949091) ("VALUES" . 949093)))
1001 ("SORT" fun nil (system) "Result = %s(Array)" (("L64"))) 991 ("MORPH_THIN" fun nil (system) "Result = %s ( Image, HitStructure, MissStructure )" ("M45.html"))
1002 ("SPH_SCAT" fun nil (system) "Result = %s( Lon, Lat, F)" (("BOUNDS") ("BOUT") ("GOUT") ("GS") ("NLAT") ("NLON"))) 992 ("MORPH_TOPHAT" fun nil (system) "Result = %s ( Image, Structure)" ("M46.html" ("PRESERVE_TYPE" . 949148) ("UINT" . 949150) ("ULONG" . 949152) ("VALUES" . 949154)))
1003 ("SPHER_HARM" fun nil (system) "Result = %s( Theta, Phi, L, M)" (("DOUBLE"))) 993 ("MPEG_OPEN" fun nil (system) "mpegID = %s( Dimensions)" ("M48.html" ("BITRATE" . 958969) ("FILENAME" . 958930) ("IFRAME_GAP" . 958935) ("MOTION_VEC_LENGTH" . 958939) ("QUALITY" . 958887)))
1004 ("SPL_INIT" fun nil (system) "Result = %s( X, Y)" (("DOUBLE") ("YP0") ("YPN_1"))) 994 ("N_ELEMENTS" fun nil (system) "Result = %s(Expression)" ("N.html"))
1005 ("SPL_INTERP" fun nil (system) "Result = %s( X, Y, Y2, X2)" (("DOUBLE"))) 995 ("N_PARAMS" fun nil (system) "Result = %s()" ("N2.html"))
1006 ("SPLINE" fun nil (system) "Result = %s( X, Y, T [, Sigma] )" nil) 996 ("N_TAGS" fun nil (system) "Result = %s( Expression)" ("N3.html" ("DATA_LENGTH" . 889267) ("LENGTH" . 928988)))
1007 ("SPRSAB" fun nil (system) "Result = %s( A, B)" (("DOUBLE") ("THRESHOLD"))) 997 ("NCDF_ATTCOPY" fun nil (system) "Result = %s( Incdf [, Invar])" ("NetCDF-routines11.html" ("IN_GLOBAL" . 996938) ("OUT_GLOBAL" . 996942)))
1008 ("SPRSAX" fun nil (system) "Result = %s( A, X)" (("DOUBLE"))) 998 ("NCDF_ATTINQ" fun nil (system) "Result = %s( Cdfid [, Varid])" ("NetCDF-routines14.html" ("GLOBAL" . 997032)))
1009 ("SPRSIN" fun nil (system) "Result = %s( A)" (("COLUMN") ("DOUBLE") ("THRESHOLD"))) 999 ("NCDF_ATTNAME" fun nil (system) "Result = %s( Cdfid [, Varid])" ("NetCDF-routines15.html" ("GLOBAL" . 997094)))
1010 ("SPRSTP" fun nil (system) "Result = %s(A)" nil) 1000 ("NCDF_CREATE" fun nil (system) "Result = %s( Filename)" ("NetCDF-routines20.html" ("CLOBBER" . 997292) ("NOCLOBBER" . 997295)))
1011 ("SQRT" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1001 ("NCDF_DIMDEF" fun nil (system) "Result = %s( Cdfid, DimName, Size)" ("NetCDF-routines21.html" ("UNLIMITED" . 997333)))
1012 ("STANDARDIZE" fun nil (system) "Result = %s( A)" (("DOUBLE"))) 1002 ("NCDF_DIMID" fun nil (system) "Result = %s( Cdfid, DimName )" ("NetCDF-routines22.html"))
1013 ("STDDEV" fun nil (system) "Result = %s( X)" (("DOUBLE") ("NAN"))) 1003 ("NCDF_EXISTS" fun nil (system) "Result = %s( )" ("NetCDF-routines25.html"))
1014 ("STR_SEP" fun nil (system) "Result = %s( Str, Separator)" (("ESC") ("REMOVE_ALL") ("TRIM"))) 1004 ("NCDF_INQUIRE" fun nil (system) "Result = %s(Cdfid)" ("NetCDF-routines26.html"))
1015 ("STRARR" fun nil (system) "Result = %s(D1, ..., D8)" nil) 1005 ("NCDF_OPEN" fun nil (system) "Result = %s( Filename)" ("NetCDF-routines27.html" ("NOWRITE" . 997434) ("WRITE" . 997437)))
1016 ("STRCMP" fun nil (system) "Result = %s( String1, String2 [, N])" (("FOLD_CASE"))) 1006 ("NCDF_VARDEF" fun nil (system) "Result = %s( Cdfid, Name [, Dim])" ("NetCDF-routines28.html" ("BYTE" . 997458) ("CHAR" . 997461) ("DOUBLE" . 997464) ("FLOAT" . 997467) ("LONG" . 997470) ("SHORT" . 997473)))
1017 ("STRCOMPRESS" fun nil (system) "Result = %s( String)" (("REMOVE_ALL"))) 1007 ("NCDF_VARID" fun nil (system) "Result = %s(Cdfid, Name)" ("NetCDF-routines31.html"))
1018 ("STREGEX" fun nil (system) "Result = %s( StringExpression, RegularExpression)" (("BOOLEAN") ("EXTRACT") ("FOLD_CASE") ("LENGTH") ("SUBEXPR"))) 1008 ("NCDF_VARINQ" fun nil (system) "Result = %s(Cdfid, Varid)" ("NetCDF-routines32.html"))
1019 ("STRING" fun nil (system) "Result = %s( Expression1, ..., Expressionn)" (("AM_PM") ("DAYS_OF_WEEK") ("FORMAT") ("MONTHS") ("PRINT"))) 1009 ("NEWTON" fun nil (system) "Result = %s( X, Vecfunc)" ("N5.html" ("CHECK" . 889318) ("DOUBLE" . 889321) ("ITMAX" . 928608) ("STEPMAX" . 889327) ("TOLF" . 889330) ("TOLMIN" . 889334) ("TOLX" . 889337)))
1020 ("STRJOIN" fun nil (system) "Result = %s( String [, Delimiter])" (("SINGLE"))) 1010 ("NORM" fun nil (system) "Result = %s( A)" ("N6.html" ("DOUBLE" . 889381) ("LNORM" . 929047)))
1021 ("STRLEN" fun nil (system) "Result = %s(Expression)" nil) 1011 ("OBJ" fun nil (system) "Result = %s->[IDLitManipulatorManager::][IDLitManipulatorManager::]->GetDefaultManipulator()" ("objects_it125.html" ("REFERENCE" . 1004397)))
1022 ("STRLOWCASE" fun nil (system) "Result = %s(String)" nil) 1012 ("OBJ_CLASS" fun nil (system) "Result = %s( [Arg])" ("O.html" ("COUNT" . 889415) ("SUPERCLASS" . 889418)))
1023 ("STRMATCH" fun nil (system) "Result = %s( String, SearchString)" (("FOLD_CASE"))) 1013 ("OBJ_ISA" fun nil (system) "Result = %s(ObjectInstance, ClassName)" ("O3.html"))
1024 ("STRMESSAGE" fun nil (system) "Result = %s( Err)" (("BLOCK") ("CODE") ("NAME"))) 1014 ("OBJ_NEW" fun nil (system) "Result = %s( [ObjectClassName [, Arg1......Argn]] )" ("O4.html"))
1025 ("STRMID" fun nil (system) "Result = %s(Expression, First_Character [, Length])" (("REVERSE_OFFSET"))) 1015 ("OBJ_VALID" fun nil (system) "Result = %s( [Arg])" ("O5.html" ("CAST" . 889505) ("COUNT" . 889508)))
1026 ("STRPOS" fun nil (system) "Result = %s( Expression, Search String [, Pos])" (("REVERSE_OFFSET") ("REVERSE_SEARCH"))) 1016 ("OBJARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("O6.html" ("NOZERO" . 889547)))
1027 ("STRSPLIT" fun nil (system) "Result = %s( String [, Pattern])" (("ESCAPE") ("EXTRACT") ("FOLD_CASE") ("LENGTH") ("PRESERVE_NULL") ("REGEX"))) 1017 ("P_CORRELATE" fun nil (system) "Result = %s( X, Y, C)" ("P.html" ("DOUBLE" . 1073021)))
1028 ("STRTRIM" fun nil (system) "Result = %s( String [, Flag] )" nil) 1018 ("PATH_SEP" fun nil (system) "Result = %s()" ("P4.html" ("PARENT_DIRECTORY" . 1076856) ("SEARCH_PATH" . 1076858)))
1029 ("STRUPCASE" fun nil (system) "Result = %s(String)" nil) 1019 ("PCOMP" fun nil (system) "Result = %s( A)" ("P5.html" ("COEFFICIENTS" . 844766) ("COVARIANCE" . 844768) ("DOUBLE" . 844770) ("EIGENVALUES" . 844772) ("NVARIABLES" . 844774) ("STANDARDIZE" . 844776) ("VARIANCES" . 844778)))
1030 ("SVDFIT" fun nil (system) "Result = %s( X, Y [, M])" (("A") ("CHISQ") ("COVAR") ("DOUBLE") ("FUNCTION_NAME") ("LEGENDRE") ("MEASURE_ERRORS") ("SIGMA") ("SINGULAR") ("VARIANCE") ("YFIT"))) 1020 ("PNT_LINE" fun nil (system) "Result = %s( P0, L0, L1 [, Pl])" ("P11.html" ("INTERVAL" . 758337)))
1031 ("SVSOL" fun nil (system) "Result = %s( U, W, V, B)" (("COLUMN") ("DOUBLE"))) 1021 ("POLAR_SURFACE" fun nil (system) "Result = %s( Z, R, Theta)" ("P14.html" ("BOUNDS" . 753641) ("GRID" . 753637) ("MISSING" . 753645) ("QUINTIC" . 753643) ("SPACING" . 753639)))
1032 ("SWAP_ENDIAN" fun nil (system) "Result = %s(Variable)" nil) 1022 ("POLY" fun nil (system) "Result = %s(X, C)" ("P15.html"))
1033 ("SYSTIME" fun nil (system) "String = %s( [0 [, ElaspedSeconds]])" (("JULIAN") ("SECONDS") ("UTC"))) 1023 ("POLY_2D" fun nil (system) "Result = %s( Array, P, Q [, Interp [, Dimx, Dimy]])" ("P16.html" ("CUBIC" . 678217) ("MISSING" . 680892)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1034 ("T_CVF" fun nil (system) "Result = %s(P, Df)" nil) 1024 ("POLY_AREA" fun nil (system) "Result = %s( X, Y)" ("P17.html" ("DOUBLE" . 1074988) ("SIGNED" . 1074986)))
1035 ("T_PDF" fun nil (system) "Result = %s(V, Df)" nil) 1025 ("POLY_FIT" fun nil (system) "Result = %s( X, Y, Degree)" ("P18.html" ("CHISQ" . 1073859) ("COVAR" . 1073862) ("DOUBLE" . 837040) ("MEASURE_ERRORS" . 1074498) ("SIGMA" . 1074050) ("STATUS" . 1073417) ("YBAND" . 1074058) ("YERROR" . 1074060) ("YFIT" . 1074062)))
1036 ("TAG_NAMES" fun nil (system) "Result = %s( Expression)" (("STRUCTURE_NAME"))) 1026 ("POLYFILLV" fun nil (system) "Result = %s( X, Y, Sx, Sy [, Run_Length] )" ("P20.html"))
1037 ("TAN" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1027 ("POLYSHADE" fun nil (system) "Result = %s( Vertices, Polygons) or Result = %s(X, Y, Z, Polygons)" ("P21.html" ("DATA" . 678323) ("NORMAL" . 678325) ("POLY_SHADES" . 678327) ("SHADES" . 678329) ("T3D" . 678331) ("TOP" . 678333) ("XSIZE" . 678335) ("YSIZE" . 678338)))
1038 ("TANH" fun nil (system) "Result = %s(X)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1028 ("PRIMES" fun nil (system) "Result = %s(K)" ("P25.html"))
1039 ("TEMPORARY" fun nil (system) "Result = %s(Variable)" nil) 1029 ("PRODUCT" fun nil (system) "Result = %s(Array [, Dimension])" ("P29.html" ("CUMULATIVE" . 1088999) ("INTEGER" . 1111663) ("NAN" . 1089001) ("PRESERVE_TYPE" . 1112722)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1040 ("TETRA_CLIP" fun nil (system) "Result = %s ( Plane, Vertsin, Connin, Vertsout, Connout)" (("AUXDATA_IN") ("AUXDATA_OUT") ("CUT_VERTS"))) 1030 ("PROFILE" fun nil (system) "Result = %s( Image [, XX, YY])" ("P30.html" ("NOMARK" . 757684) ("XSTART" . 757687) ("YSTART" . 757690)))
1041 ("TETRA_SURFACE" fun nil (system) "Result = %s (Verts, Connin)" nil) 1031 ("PROJECT_VOL" fun nil (system) "Result = %s( Vol, X_Sample, Y_Sample, Z_Sample)" ("P33.html" ("AVG_INTENSITY" . 786865) ("CUBIC" . 1105686) ("DEPTH_Q" . 1105735) ("OPAQUE" . 786868) ("TRANS" . 786871) ("XSIZE" . 1105761) ("YSIZE" . 1105822) ("Z_BUFFER" . 1105820)))
1042 ("TETRA_VOLUME" fun nil (system) "Result = %s ( Verts, Conn)" (("AUXDATA") ("MOMENT"))) 1032 ("PTR_NEW" fun nil (system) "Result = %s( [InitExpr])" ("P38.html" ("ALLOCATE_HEAP" . 845063) ("NO_COPY" . 845065)))
1043 ("THIN" fun nil (system) "Result = %s( Image)" (("NEIGHBOR_COUNT") ("PRUNE"))) 1033 ("PTR_VALID" fun nil (system) "Result = %s( [Arg])" ("P39.html" ("CAST" . 863586) ("COUNT" . 863622)))
1044 ("TIFF_READ" fun nil (system) "Result = %s(File [, R, G, B])" nil) 1034 ("PTRARR" fun nil (system) "Result = %s( D1, ... ..., D8)" ("P40.html" ("ALLOCATE_HEAP" . 845095) ("NOZERO" . 845097)))
1045 ("TIMEGEN" fun nil (system) "Result = %s( [D1,...,D8])" (("DAYS") ("FINAL") ("HOURS") ("MINUTES") ("MONTHS") ("SECONDS") ("START") ("STEP_SIZE") ("UNITS") ("YEAR"))) 1035 ("QGRID3" fun nil (system) "Result = %s( XYZ, F, Tetrahedra)" ("Q.html" ("DELTA" . 1073303) ("DIMENSION" . 1073305) ("MISSING" . 1073307) ("START" . 1073309)))
1046 ("TM_TEST" fun nil (system) "Result = %s( X, Y)" (("PAIRED") ("UNEQUAL"))) 1036 ("QROMB" fun nil (system) "Result = %s( Func, A, B)" ("Q3.html" ("DOUBLE" . 51533) ("EPS" . 51536) ("JMAX" . 51539) ("K" . 51542)))
1047 ("TOTAL" fun nil (system) "Result = %s( Array [, Dimension])" (("CUMULATIVE") ("DOUBLE") ("NAN") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1037 ("QROMO" fun nil (system) "Result = %s(Func, A [, B])" ("Q4.html" ("DOUBLE" . 51594) ("EPS" . 51597) ("JMAX" . 51600) ("K" . 51603) ("MIDEXP" . 51606) ("MIDINF" . 51609) ("MIDPNT" . 51612) ("MIDSQL" . 51615) ("MIDSQU" . 51618)))
1048 ("TRACE" fun nil (system) "Result = %s( A)" (("DOUBLE"))) 1038 ("QSIMP" fun nil (system) "Result = %s( Func, A, B)" ("Q5.html" ("DOUBLE" . 51671) ("EPS" . 51674) ("JMAX" . 51677)))
1049 ("TRANSPOSE" fun nil (system) "Result = %s( Array [, P] )" nil) 1039 ("QUERY_BMP" fun nil (system) "Result = %s ( Filename [, Info] )" ("Q7.html"))
1050 ("TRI_SURF" fun nil (system) "Result = %s( Z [, X, Y])" (("BOUNDS") ("EXTRAPOLATE") ("GS") ("MISSING") ("NX") ("NY") ("REGULAR") ("XGRID") ("XVALUES") ("YGRID") ("YVALUES"))) 1040 ("QUERY_DICOM" fun nil (system) "Result = %s( Filename [, Info])" ("Q8.html" ("IMAGE_INDEX" . 1045358)))
1051 ("TRIGRID" fun nil (system) "Result = %s( X, Y, Z, Triangles [, GS, Limits] ) For spherical gridding: Result = TRIGRID( F , GS, Limits)" (("DEGREES") ("EXTRAPOLATE") ("INPUT") ("MAX_VALUE") ("MIN_VALUE") ("MISSING") ("NX") ("NY") ("QUINTIC") ("SPHERE") ("XGRID") ("XOUT") ("YGRID") ("YOUT"))) 1041 ("QUERY_GIF" fun nil (system) "Result = %s ( Filename [, Info] )" ("Q9.html"))
1052 ("TRISOL" fun nil (system) "Result = %s( A, B, C, R)" (("DOUBLE"))) 1042 ("QUERY_IMAGE" fun nil (system) "Result = %s ( Filename[, Info])" ("Q10.html" ("CHANNELS" . 1070109) ("DIMENSIONS" . 1070111) ("HAS_PALETTE" . 1070113) ("IMAGE_INDEX" . 1070115) ("NUM_IMAGES" . 1070117) ("PIXEL_TYPE" . 1070119) ("SUPPORTED_READ" . 1070131) ("SUPPORTED_WRITE" . 1070133) ("TYPE" . 1104573)))
1053 ("TRNLOG" fun nil (system) "Result = %s( Lognam, Value)" (("ACMODE") ("FULL_TRANSLATION") ("ISSUE_ERROR") ("RESULT_ACMODE") ("RESULT_TABLE") ("TABLE"))) 1043 ("QUERY_JPEG" fun nil (system) "Result = %s ( Filename [, Info] )" ("Q11.html"))
1054 ("TS_COEF" fun nil (system) "Result = %s( X, P)" (("DOUBLE") ("MSE"))) 1044 ("QUERY_JPEG2000" fun nil (system) "Result = %s(Filename [, Info] )" ("Q12.html"))
1055 ("TS_DIFF" fun nil (system) "Result = %s( X, K)" (("DOUBLE"))) 1045 ("QUERY_MRSID" fun nil (system) "Result = %s( Filename [, Info])" ("Q13.html" ("LEVEL" . 1073601)))
1056 ("TS_FCAST" fun nil (system) "Result = %s( X, P, Nvalues)" (("BACKCAST") ("DOUBLE"))) 1046 ("QUERY_PICT" fun nil (system) "Result = %s ( Filename [, Info] )" ("Q14.html"))
1057 ("TS_SMOOTH" fun nil (system) "Result = %s( X, Nvalues)" (("BACKWARD") ("DOUBLE") ("FORWARD") ("ORDER"))) 1047 ("QUERY_PNG" fun nil (system) "Result = %s ( Filename [, Info] )" ("Q15.html"))
1058 ("TVRD" fun nil (system) "Result = %s( [X0 [, Y0 [, Nx [, Ny [, Channel]]]]])" (("CHANNEL") ("ORDER") ("TRUE") ("WORDS"))) 1048 ("QUERY_PPM" fun nil (system) "Result = %s ( Filename [, Info])" ("Q16.html" ("MAXVAL" . 1045715)))
1059 ("UINDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1049 ("QUERY_SRF" fun nil (system) "Result = %s (Filename [, Info] )" ("Q17.html"))
1060 ("UINT" fun nil (system) "Result = %s( Expression[, Offset [, Dim1, ..., Dim8]] )" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1050 ("QUERY_TIFF" fun nil (system) "Result = %s ( Filename [, Info])" ("Q18.html" ("GEOTIFF" . 1091493) ("IMAGE_INDEX" . 1045788)))
1061 ("UINTARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 1051 ("QUERY_WAV" fun nil (system) "Result = %s ( Filename[, Info] )" ("Q19.html"))
1062 ("UL64INDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1052 ("R_CORRELATE" fun nil (system) "Result = %s( X, Y)" ("R.html" ("D" . 54014) ("KENDALL" . 54017) ("PROBD" . 54020) ("ZD" . 54023)))
1063 ("ULINDGEN" fun nil (system) "Result = %s(D1, ..., D8)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1053 ("R_TEST" fun nil (system) "Result = %s( X)" ("R2.html" ("N0" . 54060) ("N1" . 54063) ("R" . 54066)))
1064 ("ULON64ARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 1054 ("RADON" fun nil (system) "Result = %s( Array)" ("R3.html" ("BACKPROJECT" . 1081929) ("DOUBLE" . 1081932) ("DRHO" . 1081934) ("DX" . 1081936) ("DY" . 1081938) ("GRAY" . 1081940) ("LINEAR" . 1081942) ("NRHO" . 1081944) ("NTHETA" . 1081946) ("NX" . 1081948) ("NY" . 1081950) ("RHO" . 1081952) ("RMIN" . 1081954) ("THETA" . 1081956) ("XMIN" . 1081958) ("YMIN" . 1081960)))
1065 ("ULONARR" fun nil (system) "Result = %s( D1, ..., D8)" (("NOZERO"))) 1055 ("RANDOMN" fun nil (system) "Result = %s( Seed [, D1 [, ..., D8]])" ("R4.html" ("BINOMIAL" . 867947) ("DOUBLE" . 867736) ("GAMMA" . 1080709) ("LONG" . 1080819) ("NORMAL" . 867741) ("POISSON" . 867743) ("UNIFORM" . 867744)))
1066 ("ULONG" fun nil (system) "Result = %s( Expression[, Offset [, Dim1, ..., Dim8]] )" nil) 1056 ("RANDOMU" fun nil (system) "Result = %s( Seed [, D1 [, ..., D8]])" ("R5.html" ("BINOMIAL" . 868252) ("DOUBLE" . 1080874) ("GAMMA" . 868213) ("LONG" . 1080854) ("NORMAL" . 868216) ("POISSON" . 868219) ("UNIFORM" . 868222)))
1067 ("ULONG64" fun nil (system) "Result = %s( Expression[, Offset [, Dim1, ..., Dim8]] )" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1057 ("RANKS" fun nil (system) "Result = %s(X)" ("R6.html"))
1068 ("UNIQ" fun nil (system) "Result = %s( Array [, Index] )" nil) 1058 ("READ_ASCII" fun nil (system) "Result = %s( [Filename])" ("R9.html" ("COMMENT_SYMBOL" . 864824) ("COUNT" . 864541) ("DATA_START" . 864606) ("DELIMITER" . 865250) ("HEADER" . 865253) ("MISSING_VALUE" . 864515) ("NUM_RECORDS" . 864373) ("RECORD_START" . 678426) ("TEMPLATE" . 863940) ("VERBOSE" . 863965)))
1069 ("VALUE_LOCATE" fun nil (system) "Result = %s ( Vector, Value)" (("L64"))) 1059 ("READ_BINARY" fun nil (system) "Result = %s ([Filename] | FileUnit)" ("R10.html" ("DATA_DIMS" . 1071927) ("DATA_START" . 1071929) ("DATA_TYPE" . 1071931) ("ENDIAN" . 1071933) ("TEMPLATE" . 1071937)))
1070 ("VARIANCE" fun nil (system) "Result = %s( X)" (("DOUBLE") ("NAN"))) 1060 ("READ_BMP" fun nil (system) "Result = %s( Filename, [, R, G, B] [, Ihdr])" ("R11.html" ("RGB" . 867600)))
1071 ("VAX_FLOAT" fun nil (system) "Result = %s( [Default])" (("FILE_UNIT"))) 1061 ("READ_DICOM" fun nil (system) "Result = %s (Filename [, Red, Green, Blue])" ("R12.html" ("IMAGE_INDEX" . 1045423)))
1072 ("VERT_T3D" fun nil (system) "Result = %s( Vertex_List)" (("MATRIX") ("NO_COPY") ("NO_DIVIDE") ("SAVE_DIVIDE"))) 1062 ("READ_IMAGE" fun nil (system) "Result = %s (Filename [, Red, Green, Blue])" ("R14.html" ("IMAGE_INDEX" . 1071963)))
1073 ("VOIGT" fun nil (system) "Result = %s(A, U)" (("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1063 ("READ_JPEG2000" fun nil (system) "Result = %s(Filename [, Red, Green, Blue])" ("R17.html" ("DISCARD_LEVELS" . 1171494) ("MAX_LAYERS" . 1171497) ("ORDER" . 1171500) ("REGION" . 1171503)))
1074 ("VOXEL_PROJ" fun nil (system) "Result = %s( V [, RGBO])" (("BACKGROUND") ("CUTTING_PLANE") ("INTERPOLATE") ("MAXIMUM_INTENSITY") ("STEP") ("XSIZE") ("YSIZE") ("ZBUFFER") ("ZPIXELS"))) 1064 ("READ_MRSID" fun nil (system) "Result = %s ( Filename)" ("R18.html" ("LEVEL" . 1086317) ("SUB_RECT" . 1086319)))
1075 ("WARP_TRI" fun nil (system) "Result = %s( Xo, Yo, Xi, Yi, Image)" (("EXTRAPOLATE") ("OUTPUT_SIZE") ("QUINTIC") ("TPS"))) 1065 ("READ_PNG" fun nil (system) "Result = %s ( Filename [, R, G, B])" ("R20.html" ("ORDER" . 1045842) ("TRANSPARENT" . 1045845) ("VERBOSE" . 1075225)))
1076 ("WATERSHED" fun nil (system) "Result = %s ( Image)" (("CONNECTIVITY"))) 1066 ("READ_SPR" fun nil (system) "Result = %s(Filename)" ("R22.html"))
1077 ("WHERE" fun nil (system) "Result = %s( Array_Expression [, Count])" (("COMPLEMENT") ("L64") ("NCOMPLEMENT") ("TPOOL_MAX_ELTS") ("TPOOL_MIN_ELTS") ("TPOOL_NOTHREAD"))) 1067 ("READ_SYLK" fun nil (system) "Result = %s( File)" ("R24.html" ("ARRAY" . 67837) ("COLMAJOR" . 67840) ("NCOLS" . 67844) ("NROWS" . 67847) ("STARTCOL" . 67850) ("STARTROW" . 67853) ("USEDOUBLES" . 67856) ("USELONGS" . 67859)))
1078 ("WIDGET_ACTIVEX" fun nil (system) "Result = %s( Parent, COM_ID)" (("ALIGN_BOTTOM") ("ALIGN_CENTER") ("ALIGN_LEFT") ("ALIGN_RIGHT") ("ALIGN_TOP") ("EVENT_FUNC") ("EVENT_PRO") ("FUNC_GET_VALUE") ("ID_TYPE") ("KILL_NOTIFY") ("NO_COPY") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("SCR_XSIZE") ("SCR_YSIZE") ("SENSITIVE") ("UNAME") ("UNITS") ("UVALUE") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 1068 ("READ_TIFF" fun nil (system) "Result = %s( Filename [, R, G, B])" ("R25.html" ("CHANNELS" . 1078044) ("DOT_RANGE" . 1134312) ("GEOTIFF" . 966463) ("ICC_PROFILE" . 1134317) ("IMAGE_INDEX" . 966504) ("INTERLEAVE" . 1077871) ("ORIENTATION" . 948922) ("PHOTOSHOP" . 1134329) ("PLANARCONFIG" . 1086578) ("SUB_RECT" . 966525) ("VERBOSE" . 966492)))
1079 ("WIDGET_BASE" fun nil (system) "Result = %s( [Parent])" (("ALIGN_BOTTOM") ("ALIGN_CENTER") ("ALIGN_LEFT") ("ALIGN_RIGHT") ("ALIGN_TOP") ("APP_MBAR") ("BASE_ALIGN_BOTTOM") ("BASE_ALIGN_CENTER") ("BASE_ALIGN_LEFT") ("BASE_ALIGN_RIGHT") ("BASE_ALIGN_TOP") ("COLUMN") ("CONTEXT_MENU") ("DISPLAY_NAME") ("EVENT_FUNC") ("EVENT_PRO") ("EXCLUSIVE") ("FLOATING") ("FRAME") ("FUNC_GET_VALUE") ("GRID_LAYOUT") ("GROUP_LEADER") ("KBRD_FOCUS_EVENTS") ("KILL_NOTIFY") ("MAP") ("MBAR") ("MODAL") ("NO_COPY") ("NONEXCLUSIVE") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RESOURCE_NAME") ("RNAME_MBAR") ("ROW") ("SCR_XSIZE") ("SCR_YSIZE") ("SCROLL") ("SENSITIVE") ("SPACE") ("TITLE") ("TLB_FRAME_ATTR") ("TLB_KILL_REQUEST_EVENTS") ("TLB_SIZE_EVENTS") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("X_SCROLL_SIZE") ("XOFFSET") ("XPAD") ("XSIZE") ("Y_SCROLL_SIZE") ("YOFFSET") ("YPAD") ("YSIZE"))) 1069 ("READ_WAV" fun nil (system) "Result = %s ( Filename [, Rate] )" ("R26.html"))
1080 ("WIDGET_BUTTON" fun nil (system) "Result = %s( Parent)" (("ALIGN_CENTER") ("ALIGN_LEFT") ("ALIGN_RIGHT") ("BITMAP") ("DYNAMIC_RESIZE") ("EVENT_FUNC") ("EVENT_PRO") ("FONT") ("FRAME") ("FUNC_GET_VALUE") ("GROUP_LEADER") ("HELP") ("KILL_NOTIFY") ("MENU") ("NO_COPY") ("NO_RELEASE") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RESOURCE_NAME") ("SCR_XSIZE") ("SCR_YSIZE") ("SENSITIVE") ("SEPARATOR") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("VALUE") ("X_BITMAP_EXTRA") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 1070 ("READ_XWD" fun nil (system) "Result = %s( Filename[, R, G, B] )" ("R29.html"))
1081 ("WIDGET_DRAW" fun nil (system) "Result = %s(Parent)" (("APP_SCROLL") ("BUTTON_EVENTS") ("COLOR_MODEL") ("COLORS") ("EVENT_FUNC") ("EVENT_PRO") ("EXPOSE_EVENTS") ("FRAME") ("FUNC_GET_VALUE") ("GRAPHICS_LEVEL") ("GROUP_LEADER") ("KILL_NOTIFY") ("MOTION_EVENTS") ("NO_COPY") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RENDERER") ("RESOURCE_NAME") ("RETAIN") ("SCR_XSIZE") ("SCR_YSIZE") ("SCROLL") ("SENSITIVE") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("VALUE") ("VIEWPORT_EVENTS") ("X_SCROLL_SIZE") ("XOFFSET") ("XSIZE") ("Y_SCROLL_SIZE") ("YOFFSET") ("YSIZE"))) 1071 ("REAL_PART" fun nil (system) "Result = %s(Z)" ("R32.html"))
1082 ("WIDGET_DROPLIST" fun nil (system) "Result = %s( Parent)" (("DYNAMIC_RESIZE") ("EVENT_FUNC") ("EVENT_PRO") ("FONT") ("FRAME") ("FUNC_GET_VALUE") ("GROUP_LEADER") ("KILL_NOTIFY") ("NO_COPY") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RESOURCE_NAME") ("SCR_XSIZE") ("SCR_YSIZE") ("SENSITIVE") ("TITLE") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("VALUE") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 1072 ("REBIN" fun nil (system) "Result = %s( Array, D1 [, ..., D8])" ("R33.html" ("SAMPLE" . 678500)))
1083 ("WIDGET_EVENT" fun nil (system) "Result = %s([Widget_ID])" (("BAD_ID") ("NOWAIT") ("SAVE_HOURGLASS") ("YIELD_TO_TTY"))) 1073 ("RECALL_COMMANDS" fun nil (system) "Result = %s()" ("R34.html"))
1084 ("WIDGET_INFO" fun nil (system) "Result = %s( [Widget_ID] )" (("ACTIVE") ("CHILD") ("COLUMN_WIDTHS") ("CONTEXT_EVENTS") ("DRAW_BUTTON_EVENTS") ("DRAW_EXPOSE_EVENTS") ("DRAW_MOTION_EVENTS") ("DRAW_VIEWPORT_EVENTS") ("DROPLIST_NUMBER") ("DROPLIST_SELECT") ("DYNAMIC_RESIZE") ("EVENT_FUNC") ("EVENT_PRO") ("FIND_BY_UNAME") ("GEOMETRY") ("KBRD_FOCUS_EVENTS") ("LIST_MULTIPLE") ("LIST_NUM_VISIBLE") ("LIST_NUMBER") ("LIST_SELECT") ("LIST_TOP") ("MANAGED") ("MODAL") ("NAME") ("PARENT") ("REALIZED") ("ROW_HEIGHTS") ("SIBLING") ("SLIDER_MIN_MAX") ("SYSTEM_COLORS") ("TABLE_ALL_EVENTS") ("TABLE_EDIT_CELL") ("TABLE_EDITABLE") ("TABLE_SELECT") ("TABLE_VIEW") ("TEXT_ALL_EVENTS") ("TEXT_EDITABLE") ("TEXT_NUMBER") ("TEXT_OFFSET_TO_XY") ("TEXT_SELECT") ("TEXT_TOP_LINE") ("TEXT_XY_TO_OFFSET") ("TLB_KILL_REQUEST_EVENTS") ("TRACKING_EVENTS") ("TYPE") ("UNAME") ("UNITS") ("UPDATE") ("USE_TABLE_SELECT") ("VALID_ID") ("VERSION"))) 1074 ("RECON3" fun nil (system) "Result = %s( Images, Obj_Rot, Obj_Pos, Focal, Dist,Vol_Pos, Img_Ref, Img_Mag, Vol_Size)" ("R35.html" ("CUBIC" . 1079063) ("MISSING" . 787003) ("MODE" . 787006) ("QUIET" . 1086709)))
1085 ("WIDGET_LABEL" fun nil (system) "Result = %s( Parent)" (("ALIGN_CENTER") ("ALIGN_LEFT") ("ALIGN_RIGHT") ("DYNAMIC_RESIZE") ("FONT") ("FRAME") ("FUNC_GET_VALUE") ("GROUP_LEADER") ("KILL_NOTIFY") ("NO_COPY") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RESOURCE_NAME") ("SCR_XSIZE") ("SCR_YSIZE") ("SENSITIVE") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("VALUE") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 1075 ("REFORM" fun nil (system) "Result = %s( Array, D1 [, ..., D8])" ("R37.html" ("OVERWRITE" . 678529)))
1086 ("WIDGET_LIST" fun nil (system) "Result = %s( Parent)" (("CONTEXT_EVENTS") ("EVENT_FUNC") ("EVENT_PRO") ("FONT") ("FRAME") ("FUNC_GET_VALUE") ("GROUP_LEADER") ("KILL_NOTIFY") ("MULTIPLE") ("NO_COPY") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RESOURCE_NAME") ("SCR_XSIZE") ("SCR_YSIZE") ("SENSITIVE") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("VALUE") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 1076 ("REGION_GROW" fun nil (system) "Result = %s(Array, ROIPixels)" ("R38.html" ("ALL_NEIGHBORS" . 1086463) ("NAN" . 1168470) ("STDDEV_MULTIPLIER" . 1086465) ("THRESHOLD" . 1086469)))
1087 ("WIDGET_SLIDER" fun nil (system) "Result = %s( Parent)" (("DRAG") ("EVENT_FUNC") ("EVENT_PRO") ("FONT") ("FRAME") ("FUNC_GET_VALUE") ("GROUP_LEADER") ("KILL_NOTIFY") ("MAXIMUM") ("MINIMUM") ("NO_COPY") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RESOURCE_NAME") ("SCR_XSIZE") ("SCR_YSIZE") ("SCROLL") ("SENSITIVE") ("SUPPRESS_VALUE") ("TITLE") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("VALUE") ("VERTICAL") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 1077 ("REGRESS" fun nil (system) "Result = %s( X, Y)" ("R40.html" ("CHISQ" . 1078522) ("CONST" . 1078527) ("CORRELATION" . 1078530) ("DOUBLE" . 1078533) ("FTEST" . 1078535) ("MCORRELATION" . 1078538) ("MEASURE_ERRORS" . 1080427) ("RELATIVE_WEIGHT" . 1080465) ("SIGMA" . 1080460) ("STATUS" . 1078543) ("YFIT" . 1078803)))
1088 ("WIDGET_TABLE" fun nil (system) "Result = %s( Parent)" (("ALIGNMENT") ("ALL_EVENTS") ("AM_PM") ("COLUMN_LABELS") ("COLUMN_MAJOR") ("COLUMN_WIDTHS") ("DAYS_OF_WEEK") ("EDITABLE") ("EVENT_FUNC") ("EVENT_PRO") ("FONT") ("FORMAT") ("FRAME") ("FUNC_GET_VALUE") ("GROUP_LEADER") ("KBRD_FOCUS_EVENTS") ("KILL_NOTIFY") ("MONTHS") ("NO_COPY") ("NO_HEADERS") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RESIZEABLE_COLUMNS") ("RESIZEABLE_ROWS") ("RESOURCE_NAME") ("ROW_HEIGHTS") ("ROW_LABELS") ("ROW_MAJOR") ("SCR_XSIZE") ("SCR_YSIZE") ("SCROLL") ("SENSITIVE") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("VALUE") ("X_SCROLL_SIZE") ("XOFFSET") ("XSIZE") ("Y_SCROLL_SIZE") ("YOFFSET") ("YSIZE"))) 1078 ("REPLICATE" fun nil (system) "Result = %s( Value, D1 [, ..., D8] )" ("R42.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1089 ("WIDGET_TEXT" fun nil (system) "Result = %s( Parent)" (("ALL_EVENTS") ("CONTEXT_EVENTS") ("EDITABLE") ("EVENT_FUNC") ("EVENT_PRO") ("FONT") ("FRAME") ("FUNC_GET_VALUE") ("GROUP_LEADER") ("KBRD_FOCUS_EVENTS") ("KILL_NOTIFY") ("NO_COPY") ("NO_NEWLINE") ("NOTIFY_REALIZE") ("PRO_SET_VALUE") ("RESOURCE_NAME") ("SCR_XSIZE") ("SCR_YSIZE") ("SCROLL") ("SENSITIVE") ("TRACKING_EVENTS") ("UNAME") ("UNITS") ("UVALUE") ("VALUE") ("WRAP") ("XOFFSET") ("XSIZE") ("YOFFSET") ("YSIZE"))) 1079 ("REVERSE" fun nil (system) "Result = %s( Array [, Subscript_Index])" ("R49.html" ("OVERWRITE" . 1077839)))
1090 ("WRITE_SYLK" fun nil (system) "Result = %s( File, Data)" (("STARTCOL") ("STARTROW"))) 1080 ("RK4" fun nil (system) "Result = %s( Y, Dydx, X, H, Derivs)" ("R50.html" ("DOUBLE" . 51771)))
1091 ("WTN" fun nil (system) "Result = %s( A, Coef)" (("COLUMN") ("DOUBLE") ("INVERSE") ("OVERWRITE"))) 1081 ("ROBERTS" fun nil (system) "Result = %s(Image)" ("R51.html"))
1092 ("XFONT" fun nil (system) "Result = %s()" (("GROUP") ("PRESERVE_FONT_INFO"))) 1082 ("ROT" fun nil (system) "Result = %s( A, Angle, [Mag, X0, Y0])" ("R52.html" ("CUBIC" . 758912) ("INTERP" . 758909) ("MISSING" . 758915) ("PIVOT" . 758918)))
1093 ("XREGISTERED" fun nil (system) "Result = %s(Name)" (("NO_SHOW"))) 1083 ("ROTATE" fun nil (system) "Result = %s(Array, Direction)" ("R53.html"))
1094 ("XSQ_TEST" fun nil (system) "Result = %s( Obfreq, Exfreq)" (("EXCELL") ("OBCELL") ("RESIDUAL"))) 1084 ("ROUND" fun nil (system) "Result = %s(X)" ("R54.html" ("L64" . 1073244)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1095 ("Add" pro "IDL_Container" (system) "Obj -> [%s::]%s, Object" (("POSITION"))) 1085 ("ROUTINE_INFO" fun nil (system) "Result = %s( [Routine])" ("R55.html" ("DISABLED" . 1068792) ("ENABLED" . 1068823) ("FUNCTIONS" . 1068790) ("PARAMETERS" . 845189) ("SOURCE" . 845200) ("SYSTEM" . 845207) ("UNRESOLVED" . 845209) ("VARIABLES" . 845211)))
1096 ("Cleanup" pro "IDL_Container" (system) "Obj-> [%s::]%s" nil) 1086 ("RS_TEST" fun nil (system) "Result = %s( X, Y)" ("R56.html" ("UX" . 54144) ("UY" . 54147)))
1097 ("Move" pro "IDL_Container" (system) "Obj -> [%s::]%s, Source, Destination" nil) 1087 ("S_TEST" fun nil (system) "Result = %s( X, Y)" ("S.html" ("ZDIFF" . 54194)))
1098 ("Remove" pro "IDL_Container" (system) "Obj -> [%s::]%s [, Child_object]" (("ALL") ("POSITION"))) 1088 ("SAVGOL" fun nil (system) "Result = %s( Nleft, Nright, Order, Degree)" ("S3.html" ("DOUBLE" . 1098051)))
1099 ("Count" fun "IDL_Container" (system) "Result = Obj -> [%s::]%s()" nil) 1089 ("SCOPE_LEVEL" fun nil (system) "Result = %s()" ("S6.html"))
1100 ("Get" fun "IDL_Container" (system) "Result = Obj -> [%s::]%s ()" (("ALL") ("COUNT") ("ISA") ("POSITION"))) 1090 ("SCOPE_VARFETCH" fun nil (system) "Result = %s(VarName)" ("S7.html" ("COMMON" . 1215122) ("ENTER" . 1215135) ("LEVEL" . 1215145) ("REF_EXTRA" . 1215173)))
1101 ("Init" fun "IDL_Container" (system) "Result = Obj -> [%s::]%s( ) ('IDL_Container')" nil) 1091 ("SCOPE_VARNAME" fun nil (system) "Result = %s( [Var1[, ..., Varn]])" ("S8.html" ("COMMON" . 1215382) ("COUNT" . 1215393) ("LEVEL" . 1215399)))
1102 ("IsContained" fun "IDL_Container" (system) "Result = Obj -> [%s::]%s( Object)" (("POSITION"))) 1092 ("SEARCH2D" fun nil (system) "Result = %s( Array, Xpos, Ypos, Min_Val, Max_Val)" ("S9.html" ("DECREASE" . 758963) ("DIAGONAL" . 758972) ("INCREASE" . 758966) ("LPF_BAND" . 758969)))
1103 ("AppendData" pro "IDLanROI" (system) "Obj->[%s::]%s, X [, Y] [, Z]" (("XRANGE") ("YRANGE") ("ZRANGE"))) 1093 ("SEARCH3D" fun nil (system) "Result = %s( Array, Xpos, Ypos, Zpos, Min_Val, Max_Val)" ("S10.html" ("DECREASE" . 759017) ("DIAGONAL" . 759026) ("INCREASE" . 759020) ("LPF_BAND" . 759023)))
1104 ("Cleanup" pro "IDLanROI" (system) "Obj->[%s::]%s" nil) 1094 ("SFIT" fun nil (system) "Result = %s( Data, Degree)" ("S15.html" ("IRREGULAR" . 1198892) ("KX" . 1199079) ("MAX_DEGREE" . 1198955)))
1105 ("GetProperty" pro "IDLanROI" (system) "Obj->[%s::]%s" (("ALL") ("BLOCKSIZE") ("DATA") ("DOUBLE") ("INTERIOR") ("N_VERTS") ("ROI_XRANGE") ("ROI_YRANGE") ("ROI_ZRANGE") ("TYPE"))) 1095 ("SHIFT" fun nil (system) "Result = %s(Array, S1, ..., Sn)" ("S19.html"))
1106 ("RemoveData" pro "IDLanROI" (system) "Obj->[%s::]%s" (("COUNT") ("START") ("XRANGE") ("YRANGE") ("ZRANGE"))) 1096 ("SHMDEBUG" fun nil (system) "Result = %s(Enable)" ("S20.html"))
1107 ("ReplaceData" pro "IDLanROI" (system) "Obj->[%s::]%s, X[, Y[, Z]]" (("FINISH") ("START") ("XRANGE") ("YRANGE") ("ZRANGE"))) 1097 ("SHMVAR" fun nil (system) "Result = %s(SegmentName [, D1, ..., D8])" ("S23.html" ("BYTE" . 1143650) ("COMPLEX" . 1143652) ("DCOMPLEX" . 1143654) ("DIMENSION" . 1143656) ("DOUBLE" . 1143658) ("FLOAT" . 1143660) ("INTEGER" . 1143662) ("L64" . 1143664) ("LONG" . 1143666) ("SIZE" . 1143668) ("TEMPLATE" . 1143673) ("TYPE" . 1143675) ("UINT" . 1143680) ("UL64" . 1143684) ("ULONG" . 1143682)))
1108 ("Rotate" pro "IDLanROI" (system) "Obj->[%s::]%s, Axis, Angle" (("CENTER"))) 1098 ("SIMPLEX" fun nil (system) "Result = %s( Zequation, Constraints, M1, M2, M3 [, Tableau [, Izrov [, Iposv]]])" ("S26.html" ("DOUBLE" . 1103779) ("EPS" . 1103781) ("STATUS" . 1103783)))
1109 ("Scale" pro "IDLanROI" (system) "Obj->[%s::]%s, Sx[, Sy[, Sz]]" nil) 1099 ("SIN" fun nil (system) "Result = %s(X)" ("S27.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1110 ("SetProperty" pro "IDLanROI" (system) "Obj->[%s::]%s" (("BLOCKSIZE") ("DATA") ("DOUBLE") ("INTERIOR"))) 1100 ("SINDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("S28.html"))
1111 ("Translate" pro "IDLanROI" (system) "Obj->[%s::]%s, Tx[, Ty[, Tz]]" nil) 1101 ("SINH" fun nil (system) "Result = %s(X)" ("S29.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1112 ("ComputeGeometry" fun "IDLanROI" (system) "Result = Obj->[%s::]%s()" (("AREA") ("CENTROID") ("PERIMETER") ("SPATIAL_OFFSET") ("SPATIAL_SCALE"))) 1102 ("SIZE" fun nil (system) "Result = %s( Expression)" ("S30.html" ("DIMENSIONS" . 901281) ("FILE_LUN" . 901288) ("FILE_OFFSET" . 1199822) ("L64" . 1082592) ("N_DIMENSIONS" . 1082662) ("N_ELEMENTS" . 901298) ("SNAME" . 1199867) ("STRUCTURE" . 901301) ("TNAME" . 901328) ("TYPE" . 901331)))
1113 ("ComputeMask" fun "IDLanROI" (system) "Result = Obj->[%s::]%s()" (("DIMENSIONS") ("INITIALIZE") ("LOCATION") ("MASK_IN") ("MASK_RULE") ("PLANE_NORMAL") ("PLANE_XAXIS"))) 1103 ("SKEWNESS" fun nil (system) "Result = %s( X)" ("S31.html" ("DOUBLE" . 901912) ("NAN" . 903224)))
1114 ("ContainsPoints" fun "IDLanROI" (system) "Result = Obj->[%s::]%s( X [, Y [, Z]] )" nil) 1104 ("SMOOTH" fun nil (system) "Result = %s( Array, Width)" ("S35.html" ("EDGE_TRUNCATE" . 113915) ("MISSING" . 1101098) ("NAN" . 1101095)))
1115 ("Init" fun "IDLanROI" (system) "Result = Obj -> [%s::]%s( [X [, Y [, Z ]]] ) ( 'IDLanROI' [, X [, Y [, Z]]])" (("BLOCKSIZE") ("DATA") ("DOUBLE") ("INTERIOR") ("TYPE"))) 1105 ("SOBEL" fun nil (system) "Result = %s(Image)" ("S36.html"))
1116 ("Add" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, ROI" nil) 1106 ("SORT" fun nil (system) "Result = %s(Array)" ("S38.html" ("L64" . 1082892)))
1117 ("Cleanup" pro "IDLanROIGroup" (system) "Obj->[%s::]%s" nil) 1107 ("SPH_SCAT" fun nil (system) "Result = %s( Lon, Lat, F)" ("S41.html" ("BOUNDS" . 126851) ("BOUT" . 126868) ("GOUT" . 126871) ("GS" . 126862) ("NLAT" . 126875) ("NLON" . 126858)))
1118 ("GetProperty" pro "IDLanROIGroup" (system) "Obj->[%s::]%s" (("ALL") ("ROIGROUP_XRANGE") ("ROIGROUP_YRANGE") ("ROIGROUP_ZRANGE"))) 1108 ("SPHER_HARM" fun nil (system) "Result = %s( Theta, Phi, L, M)" ("S42.html" ("DOUBLE" . 1098257)))
1119 ("Rotate" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Axis, Angle" (("CENTER"))) 1109 ("SPL_INIT" fun nil (system) "Result = %s( X, Y)" ("S43.html" ("DOUBLE" . 51818) ("YP0" . 51822) ("YPN_1" . 1095878)))
1120 ("Scale" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Sx[, Sy[, Sz]]" nil) 1110 ("SPL_INTERP" fun nil (system) "Result = %s( X, Y, Y2, X2)" ("S44.html" ("DOUBLE" . 51859)))
1121 ("Translate" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Tx[, Ty[, Tz]]" nil) 1111 ("SPLINE" fun nil (system) "Result = %s( X, Y, T [, Sigma])" ("S45.html" ("DOUBLE" . 1134574)))
1122 ("ComputeMask" fun "IDLanROIGroup" (system) "Result = Obj->[%s::]%s()" (("DIMENSIONS") ("INITIALIZE") ("LOCATION") ("MASK_IN") ("MASK_RULE"))) 1112 ("SPRSAB" fun nil (system) "Result = %s( A, B)" ("S47.html" ("DOUBLE" . 51917) ("THRESHOLD" . 51920)))
1123 ("ComputeMesh" fun "IDLanROIGroup" (system) "Result = Obj->[%s::]%s( Vertices, Conn)" (("CAPPED") ("SURFACE_AREA"))) 1113 ("SPRSAX" fun nil (system) "Result = %s( A, X)" ("S48.html" ("DOUBLE" . 51985)))
1124 ("ContainsPoints" fun "IDLanROIGroup" (system) "Result = Obj->[%s::]%s( X[, Y[, Z]] )" nil) 1114 ("SPRSIN" fun nil (system) "Result = %s( A)" ("S49.html" ("COLUMN" . 58754) ("DOUBLE" . 52033) ("THRESHOLD" . 52036)))
1125 ("Init" fun "IDLanROIGroup" (system) "Result = Obj->[%s::]%s( ) ('IDLanROIGroup')" nil) 1115 ("SPRSTP" fun nil (system) "Result = %s(A)" ("S50.html"))
1126 ("GetProperty" pro "IDLcomIDispatch" (system) "Obj->[%s::]%s" (("PROPERTY_NAME"))) 1116 ("SQRT" fun nil (system) "Result = %s(X)" ("S51.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1127 ("SetProperty" pro "IDLcomIDispatch" (system) "Obj->[%s::]%s" (("PROPERTY_NAME"))) 1117 ("STANDARDIZE" fun nil (system) "Result = %s( A)" ("S52.html" ("DOUBLE" . 844918)))
1128 ("Init" fun "IDLcomIDispatch" (system) "Result = Obj -> [%s::]%s()" nil) 1118 ("STDDEV" fun nil (system) "Result = %s( X)" ("S53.html" ("DOUBLE" . 901885) ("NAN" . 903234)))
1129 ("Connect" pro "IDLdbDatabase" (system) "DBobj ->[%s::]%s" (("CONNECTION") ("DATASOURCE") ("PASSWORD") ("USER_ID"))) 1119 ("STRARR" fun nil (system) "Result = %s(D1 [, ..., D8])" ("S55.html"))
1130 ("ExecuteSQL" pro "IDLdbDatabase" (system) "DBobj->ExecuteSQL, strSQL" nil) 1120 ("STRCMP" fun nil (system) "Result = %s( String1, String2 [, N])" ("S56.html" ("FOLD_CASE" . 1069071)))
1131 ("GetProperty" pro "IDLdbDatabase" (system) "DBobj->GetProperty" (("CAN_GET_TABLES") ("DBMS_NAME") ("DBMS_VERSION") ("DRIVER_ODBC_LEVEL") ("DRIVER_VERSION") ("IS_CONNECTED") ("IS_READONLY") ("MAX_CONNECTIONS") ("MAX_RECORDSETS") ("ODBC_LEVEL") ("SQL_LEVEL") ("SQL_SERVER_NAME") ("USE_CURSOR_LIB") ("USER_NAME"))) 1121 ("STRCOMPRESS" fun nil (system) "Result = %s( String)" ("S57.html" ("REMOVE_ALL" . 679044)))
1132 ("SetProperty" pro "IDLdbDatabase" (system) "DBobj->SetProperty" (("N_BUFFERS") ("SQL") ("TABLE") ("USE_CURSOR_LIB") ("VERBOSE"))) 1122 ("STREGEX" fun nil (system) "Result = %s( StringExpression, RegularExpression)" ("S59.html" ("BOOLEAN" . 1069164) ("EXTRACT" . 1069170) ("FOLD_CASE" . 1069177) ("LENGTH" . 1069182) ("SUBEXPR" . 1069190)))
1133 ("GetDatasources" fun "IDLdbDatabase" (system) "Datasources = DBObj->GetDatasources()" nil) 1123 ("STRING" fun nil (system) "Result = %s( Expression1, ..., Expressionn)" ("S61.html" ("AM_PM" . 1015738) ("DAYS_OF_WEEK" . 1015740) ("FORMAT" . 1015736) ("MONTHS" . 1015759) ("PRINT" . 679063)))
1134 ("GetTables" fun "IDLdbDatabase" (system) "Tables = DBObj->GetTables()" nil) 1124 ("STRJOIN" fun nil (system) "Result = %s( String [, Delimiter])" ("S62.html" ("SINGLE" . 1070986)))
1135 ("AddRecord" pro "IDLdbRecordset" (system) "RSObj->AddRecord, [field1][field2]...[fieldn]" (("SET_AUTOINCREMENT"))) 1125 ("STRLEN" fun nil (system) "Result = %s(Expression)" ("S63.html"))
1136 ("DeleteRecord" pro "IDLdbRecordset" (system) "RSobj->DeleteRecord" nil) 1126 ("STRLOWCASE" fun nil (system) "Result = %s(String)" ("S64.html"))
1137 ("GetProperty" pro "IDLdbRecordset" (system) "RSobj->GetProperty" (("CAN_MOVE_ABSOLUTE") ("CAN_MOVE_FIRST") ("CAN_MOVE_LAST") ("CAN_MOVE_NEXT") ("CAN_MOVE_PRIOR") ("CAN_MOVE_RELATIVE") ("FIELD_INFO") ("GET_DATABASE") ("IS_READONLY") ("N_BUFFERS") ("RECORDSET_SOURCE"))) 1127 ("STRMATCH" fun nil (system) "Result = %s( String, SearchString)" ("S65.html" ("FOLD_CASE" . 1071246)))
1138 ("SetField" pro "IDLdbRecordset" (system) "RSobj->SetField, iFieldNumber, Value" (("INFORMIX") ("NULL") ("SQL_TSI_DAY") ("SQL_TSI_FRAC_SECOND") ("SQL_TSI_HOUR") ("SQL_TSI_MINUTE") ("SQL_TSI_MONTH") ("SQL_TSI_QUARTER") ("SQL_TSI_SECOND") ("SQL_TSI_WEEK") ("SQL_TSI_YEAR") ("TNSNAME") ("UNIX"))) 1128 ("STRMESSAGE" fun nil (system) "Result = %s( Err)" ("S66.html" ("BLOCK" . 923971) ("CODE" . 923974) ("NAME" . 923979)))
1139 ("CurrentRecord" fun "IDLdbRecordset" (system) "number = RSobj->CurrentRecord()" nil) 1129 ("STRMID" fun nil (system) "Result = %s(Expression, First_Character [, Length])" ("S67.html" ("REVERSE_OFFSET" . 1074174)))
1140 ("GetField" fun "IDLdbRecordset" (system) "value = RSobj->GetField(iFieldNumber)" (("IS_NULL") ("NULL_VALUE"))) 1130 ("STRPOS" fun nil (system) "Result = %s( Expression, Search_String [, Pos])" ("S68.html" ("REVERSE_OFFSET" . 1074185) ("REVERSE_SEARCH" . 1074254)))
1141 ("GetRecord" fun "IDLdbRecordset" (system) "Result = RSObj->GetRecord()" nil) 1131 ("STRSPLIT" fun nil (system) "Result = %s( String [, Pattern])" ("S70.html" ("COUNT" . 1071730) ("ESCAPE" . 1153687) ("EXTRACT" . 1071749) ("FOLD_CASE" . 1071757) ("LENGTH" . 1071761) ("PRESERVE_NULL" . 1071767) ("REGEX" . 1071772)))
1142 ("MoveCursor" fun "IDLdbRecordset" (system) "Result = RSObj->MoveCursor()" (("ABSOLUTE") ("FIRST") ("LAST") ("NEXT") ("PRIOR") ("RELATIVE"))) 1132 ("STRTRIM" fun nil (system) "Result = %s( String [, Flag] )" ("S71.html"))
1143 ("NFields" fun "IDLdbRecordset" (system) "status = RSobj->NFields()" nil) 1133 ("STRUPCASE" fun nil (system) "Result = %s(String)" ("S74.html"))
1144 ("Cleanup" pro "IDLffDICOM" (system) "OBJ -> [%s::]%s" nil) 1134 ("SVDFIT" fun nil (system) "Result = %s( X, Y [, M])" ("S78.html" ("A" . 845481) ("CHISQ" . 845501) ("COVAR" . 845503) ("DOUBLE" . 845488) ("FUNCTION_NAME" . 754160) ("LEGENDRE" . 1093586) ("MEASURE_ERRORS" . 1094756) ("SIGMA" . 1093549) ("SING_VALUES" . 1144017) ("SINGULAR" . 845513) ("STATUS" . 1143910) ("TOL" . 1144024) ("VARIANCE" . 845515) ("WEIGHTS" . 1093555) ("YFIT" . 754165)))
1145 ("DumpElements" pro "IDLffDICOM" (system) "Obj -> [%s::]%s [, Filename]" nil) 1135 ("SVSOL" fun nil (system) "Result = %s( U, W, V, B)" ("S79.html" ("COLUMN" . 58776) ("DOUBLE" . 52150)))
1146 ("Reset" pro "IDLffDICOM" (system) "Obj -> [%s::]%s" nil) 1136 ("SWAP_ENDIAN" fun nil (system) "Result = %s(Variable)" ("S80.html" ("SWAP_IF_BIG_ENDIAN" . 1110629) ("SWAP_IF_LITTLE_ENDIAN" . 1110632)))
1147 ("GetChildren" fun "IDLffDICOM" (system) "array = Obj -> [%s::]%s( Reference )" nil) 1137 ("SYSTIME" fun nil (system) "String = %s( [0 [, ElaspedSeconds]])" ("S83.html" ("JULIAN" . 1015505) ("SECONDS" . 1015507) ("UTC" . 1083080)))
1148 ("GetDescription" fun "IDLffDICOM" (system) "array = Obj -> [%s::]%s( [Group [, Element]])" (("REFERENCE"))) 1138 ("T_CVF" fun nil (system) "Result = %s(P, Df)" ("T.html"))
1149 ("GetElement" fun "IDLffDICOM" (system) "array = Obj -> [%s::]%s( [Group [, Element]])" (("REFERENCE"))) 1139 ("T_PDF" fun nil (system) "Result = %s(V, Df)" ("T2.html"))
1150 ("GetGroup" fun "IDLffDICOM" (system) "array = Obj -> [%s::]%s( [Group[, Element]])" (("REFERENCE"))) 1140 ("TAG_NAMES" fun nil (system) "Result = %s( Expression)" ("T4.html" ("STRUCTURE_NAME" . 679363)))
1151 ("GetLength" fun "IDLffDICOM" (system) "array = Obj -> [%s::]%s( [Group [, Element]])" (("REFERENCE"))) 1141 ("TAN" fun nil (system) "Result = %s(X)" ("T5.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1152 ("GetParent" fun "IDLffDICOM" (system) "array = Obj ->[%s::]%s( ReferenceList )" nil) 1142 ("TANH" fun nil (system) "Result = %s(X)" ("T6.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1153 ("GetPreamble" fun "IDLffDICOM" (system) "array = Obj -> [%s::]%s( )" nil) 1143 ("TEMPORARY" fun nil (system) "Result = %s(Variable)" ("T8.html"))
1154 ("GetReference" fun "IDLffDICOM" (system) "array = Obj -> [%s::]%s( [Group [, Element]])" (("DESCRIPTION") ("VR"))) 1144 ("TETRA_CLIP" fun nil (system) "Result = %s ( Plane, Vertsin, Connin, Vertsout, Connout)" ("T9.html" ("AUXDATA_IN" . 1071827) ("AUXDATA_OUT" . 1071829) ("CUT_VERTS" . 1071831)))
1155 ("GetValue" fun "IDLffDICOM" (system) "ptrArray = Obj -> [%s::]%s( [Group [, Element]])" (("NO_COPY") ("REFERENCE"))) 1145 ("TETRA_SURFACE" fun nil (system) "Result = %s (Verts, Connin)" ("T10.html"))
1156 ("GetVR" fun "IDLffDICOM" (system) "array = Obj -> [%s::]%s( [Group [, Element]])" (("REFERENCE"))) 1146 ("TETRA_VOLUME" fun nil (system) "Result = %s ( Verts, Conn)" ("T11.html" ("AUXDATA" . 1071864) ("MOMENT" . 1071866)))
1157 ("Init" fun "IDLffDICOM" (system) "Result = Obj -> [%s::]%s( [Filename])" (("VERBOSE"))) 1147 ("THIN" fun nil (system) "Result = %s( Image)" ("T12.html" ("NEIGHBOR_COUNT" . 1069698) ("PRUNE" . 1069716)))
1158 ("Read" fun "IDLffDICOM" (system) "Result = Obj -> [%s::]%s( Filename)" (("ENDIAN"))) 1148 ("TIMEGEN" fun nil (system) "Result = %s( [D1,...,D8])" ("T15.html" ("DAYS" . 1077148) ("FINAL" . 1077151) ("HOURS" . 1077154) ("MINUTES" . 1077156) ("MONTHS" . 1077158) ("SECONDS" . 1077160) ("START" . 1077162) ("STEP_SIZE" . 1077166) ("UNITS" . 1077168) ("YEAR" . 1077211)))
1159 ("Cleanup" pro "IDLffDXF" (system) "Obj -> [%s::]%s" nil) 1149 ("TM_TEST" fun nil (system) "Result = %s( X, Y)" ("T16.html" ("PAIRED" . 54299) ("UNEQUAL" . 54302)))
1160 ("GetPalette" pro "IDLffDXF" (system) "Obj-> [%s::]%s, Red, Green, Blue" nil) 1150 ("TOTAL" fun nil (system) "Result = %s( Array [, Dimension])" ("T17.html" ("CUMULATIVE" . 1070565) ("DOUBLE" . 1070569) ("INTEGER" . 1115757) ("NAN" . 47220) ("PRESERVE_TYPE" . 1116699)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1161 ("PutEntity" pro "IDLffDXF" (system) "Obj -> [%s::]%s, Data" nil) 1151 ("TRACE" fun nil (system) "Result = %s( A)" ("T18.html" ("DOUBLE" . 845005)))
1162 ("RemoveEntity" pro "IDLffDXF" (system) "Obj -> [%s::]%s[, Type]" (("INDEX"))) 1152 ("TRANSPOSE" fun nil (system) "Result = %s( Array [, P] )" ("T19.html"))
1163 ("Reset" pro "IDLffDXF" (system) "Obj-> [%s::]%s" nil) 1153 ("TRI_SURF" fun nil (system) "Result = %s( Z [, X, Y])" ("T20.html" ("BOUNDS" . 758634) ("EXTRAPOLATE" . 758607) ("GS" . 758631) ("LINEAR" . 758610) ("MISSING" . 949473) ("NX" . 758637) ("NY" . 758640) ("REGULAR" . 851712) ("XGRID" . 758617) ("XVALUES" . 758620) ("YGRID" . 758623) ("YVALUES" . 758626)))
1164 ("SetPalette" pro "IDLffDXF" (system) "Obj-> [%s::]%s, Red, Green, Blue" nil) 1154 ("TRIGRID" fun nil (system) "Result = %s( X, Y, Z, Triangles [, GS, Limits] ) or Result = %s( F , GS, Limits)" ("T22.html" ("DEGREES" . 679620) ("EXTRAPOLATE" . 126730) ("INPUT" . 128106) ("MAX_VALUE" . 128088) ("MIN_VALUE" . 128089) ("MISSING" . 679622) ("NX" . 1076987) ("NY" . 1076989) ("QUINTIC" . 679624) ("SPHERE" . 126737) ("XGRID" . 837019) ("XOUT" . 1075935) ("YGRID" . 837021) ("YOUT" . 1075879)))
1165 ("GetContents" fun "IDLffDXF" (system) "Result = Obj-> [%s::]%s( [Filter])" (("BLOCK") ("COUNT") ("LAYER"))) 1155 ("TRISOL" fun nil (system) "Result = %s( A, B, C, R)" ("T25.html" ("DOUBLE" . 52330)))
1166 ("GetEntity" fun "IDLffDXF" (system) "Result = Obj-> [%s::]%s( Type)" (("BLOCK") ("INDEX") ("LAYER"))) 1156 ("TS_COEF" fun nil (system) "Result = %s( X, P)" ("T27.html" ("DOUBLE" . 1076434) ("MSE" . 54734)))
1167 ("Init" fun "IDLffDXF" (system) "Result = Obj -> [%s::]%s( [Filename] ) ('IDLffDXF' [, Filename] )" nil) 1157 ("TS_DIFF" fun nil (system) "Result = %s( X, K)" ("T28.html" ("DOUBLE" . 861958)))
1168 ("Read" fun "IDLffDXF" (system) "Result = Obj-> [%s::]%s( Filename )" nil) 1158 ("TS_FCAST" fun nil (system) "Result = %s( X, P, Nvalues)" ("T29.html" ("BACKCAST" . 223046) ("DOUBLE" . 223055)))
1169 ("Write" fun "IDLffDXF" (system) "Result = Obj-> [%s::]%s( Filename )" nil) 1159 ("TS_SMOOTH" fun nil (system) "Result = %s( X, Nvalues)" ("T30.html" ("BACKWARD" . 223123) ("DOUBLE" . 223168) ("FORWARD" . 223093) ("ORDER" . 223094)))
1170 ("IsValid" fun "IDLffLanguageCat" (system) "Result = Obj ->[%s::]%s( )" nil) 1160 ("TVRD" fun nil (system) "Result = %s( [X0 [, Y0 [, Nx [, Ny [, Channel]]]]])" ("T34.html" ("CHANNEL" . 679790) ("ORDER" . 679793) ("TRUE" . 679795) ("WORDS" . 679797)))
1171 ("Query" fun "IDLffLanguageCat" (system) "Result = Obj ->[%s::]%s( key)" (("DEFAULT_STRING"))) 1161 ("UINDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("U.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1172 ("SetCatalog" fun "IDLffLanguageCat" (system) "Result = Obj ->[%s::]%s( application)" (("FILENAME") ("LOCALE") ("PATH"))) 1162 ("UINT" fun nil (system) "Result = %s( Expression[, Offset [, D1 [, ..., D8]]] )" ("U2.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1173 ("Cleanup" pro "IDLffMrSID" (system) "Obj -> [%s::]%s" nil) 1163 ("UINTARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("U3.html" ("NOZERO" . 950261)))
1174 ("GetProperty" pro "IDLffMrSID" (system) "Obj->[%s::]%s" (("CHANNELS") ("DIMENSIONS") ("GEO_ORIGIN") ("GEO_PROJTYPE") ("GEO_RESOLUTION") ("GEO_VALID") ("LEVELS") ("PIXEL_TYPE") ("TYPE"))) 1164 ("UL64INDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("U4.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1175 ("GetDimsAtLevel" fun "IDLffMrSID" (system) "Dims = Obj -> [%s::]%s ( Level )" nil) 1165 ("ULINDGEN" fun nil (system) "Result = %s(D1 [, ..., D8])" ("U5.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1176 ("GetImageData" fun "IDLffMrSID" (system) "ImageData = Obj->[%s::]%s ()" (("LEVEL") ("SUB_RECT"))) 1166 ("ULON64ARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("U6.html" ("NOZERO" . 950420)))
1177 ("Init" fun "IDLffMrSID" (system) "Result = Obj -> [%s::]%s(, Filename)" (("QUIET"))) 1167 ("ULONARR" fun nil (system) "Result = %s( D1 [, ..., D8])" ("U7.html" ("NOZERO" . 950477)))
1178 ("AddAttribute" pro "IDLffShape" (system) "Obj->[%s::]%s, Name, Type, Width" (("PRECISION"))) 1168 ("ULONG" fun nil (system) "Result = %s( Expression[, Offset [, D1 [, ..., D8]]] )" ("U8.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1179 ("Cleanup" pro "IDLffShape" (system) "Obj -> [%s::]%s" nil) 1169 ("ULONG64" fun nil (system) "Result = %s( Expression[, Offset [, D1 [, ..., D8]]] )" ("U9.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1180 ("Close" pro "IDLffShape" (system) "Obj->[%s::]%s" nil) 1170 ("UNIQ" fun nil (system) "Result = %s( Array [, Index] )" ("U10.html"))
1181 ("DestroyEntity" pro "IDLffShape" (system) "Obj->[%s::]%s, Entity" nil) 1171 ("UNSHARP_MASK" fun nil (system) "Result = %s(Image)" ("U11.html" ("AMOUNT" . 968717) ("RADIUS" . 968720) ("THRESHOLD" . 968725) ("TRUE" . 968729)))
1182 ("GetProperty" pro "IDLffShape" (system) "Obj->[%s::]%s" (("ATTRIBUTE_INFO") ("ATTRIBUTE_NAMES") ("ENTITY_TYPE") ("FILENAME") ("IS_OPEN") ("N_ATTRIBUTES") ("N_ENTITIES"))) 1172 ("VALUE_LOCATE" fun nil (system) "Result = %s ( Vector, Value)" ("V.html" ("L64" . 957054)))
1183 ("PutEntity" pro "IDLffShape" (system) "Obj->[%s::]%s, Data" nil) 1173 ("VARIANCE" fun nil (system) "Result = %s( X)" ("V2.html" ("DOUBLE" . 938748) ("NAN" . 938858)))
1184 ("SetAttributes" pro "IDLffShape" (system) "Obj->[%s::]%s, Index, Attribute_Num, Value or Obj->[IDLffShape::]SetAttributes, Index, Attributes" nil) 1174 ("VERT_T3D" fun nil (system) "Result = %s( Vertex_List)" ("V6.html" ("DOUBLE" . 787625) ("MATRIX" . 957551) ("NO_COPY" . 787628) ("NO_DIVIDE" . 787631) ("SAVE_DIVIDE" . 787634)))
1185 ("GetAttributes" fun "IDLffShape" (system) "Result = Obj->[%s::]%s([Index])" (("ALL") ("ATTRIBUTE_STRUCTURE"))) 1175 ("VOIGT" fun nil (system) "Result = %s(A, U)" ("V7.html") ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1186 ("GetEntity" fun "IDLffShape" (system) "Result = Obj->[%s::]%s( [Index])" (("ALL") ("ATTRIBUTES"))) 1176 ("VOXEL_PROJ" fun nil (system) "Result = %s( V [, RGBO])" ("V9.html" ("BACKGROUND" . 677308) ("CUTTING_PLANE" . 680823) ("INTERPOLATE" . 680824) ("MAXIMUM_INTENSITY" . 680825) ("STEP" . 680826) ("XSIZE" . 680827) ("YSIZE" . 680828) ("ZBUFFER" . 680829) ("ZPIXELS" . 680830)))
1187 ("Init" fun "IDLffShape" (system) "Result = Obj -> [%s::]%s( [ Filename])" (("ENTITY_TYPE") ("UPDATE"))) 1177 ("WARP_TRI" fun nil (system) "Result = %s( Xo, Yo, Xi, Yi, Image)" ("W2.html" ("EXTRAPOLATE" . 758734) ("OUTPUT_SIZE" . 758728) ("QUINTIC" . 758731) ("TPS" . 967342)))
1188 ("Open" fun "IDLffShape" (system) "Result = Obj->[%s::]%s( `Filename')" (("ENTITY_TYPE") ("UPDATE"))) 1178 ("WATERSHED" fun nil (system) "Result = %s ( Image)" ("W3.html" ("CONNECTIVITY" . 961172) ("LONG" . 1049951) ("NREGIONS" . 1049960)))
1189 ("Cleanup" pro "IDLgrAxis" (system) "Obj -> [%s::]%s" nil) 1179 ("WHERE" fun nil (system) "Result = %s( Array_Expression [, Count])" ("W7.html" ("COMPLEMENT" . 964874) ("L64" . 964006) ("NCOMPLEMENT" . 964887)) ("tpoolkeyw2.html" ("TPOOL_MAX_ELTS" . 333417) ("TPOOL_MIN_ELTS" . 333286) ("TPOOL_NOTHREAD" . 333289)))
1190 ("GetProperty" pro "IDLgrAxis" (system) "Obj -> [%s::]%s" (("ALL") ("AM_PM") ("COLOR") ("CRANGE") ("DAYS_OF_WEEK") ("DIRECTION") ("EXACT") ("EXTEND") ("GRIDSTYLE") ("HIDE") ("LOCATION") ("LOG") ("MAJOR") ("MINOR") ("MONTHS") ("NAME") ("NOTEXT") ("PALETTE") ("PARENT") ("RANGE") ("SUBTICKLEN") ("TEXTALIGNMENTS") ("TEXTBASELINE") ("TEXTPOS") ("TEXTUPDIR") ("THICK") ("TICKDIR") ("TICKFORMAT") ("TICKFRMTDATA") ("TICKINTERVAL") ("TICKLAYOUT") ("TICKLEN") ("TICKTEXT") ("TICKUNITS") ("TICKVALUES") ("TITLE") ("USE_TEXT_COLOR") ("UVALUE") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1180 ("WIDGET_ACTIVEX" fun nil (system) "Result = %s( Parent, COM_ID)" ("W9.html" ("ALIGN_BOTTOM" . 970441) ("ALIGN_CENTER" . 970444) ("ALIGN_LEFT" . 970446) ("ALIGN_RIGHT" . 970448) ("ALIGN_TOP" . 970450) ("EVENT_FUNC" . 970453) ("EVENT_PRO" . 970455) ("FUNC_GET_VALUE" . 970458) ("ID_TYPE" . 970461) ("KILL_NOTIFY" . 970465) ("NO_COPY" . 970471) ("NOTIFY_REALIZE" . 970475) ("PRO_SET_VALUE" . 970479) ("SCR_XSIZE" . 970483) ("SCR_YSIZE" . 970486) ("SENSITIVE" . 970488) ("UNAME" . 1003671) ("UNITS" . 970503) ("UVALUE" . 970505) ("XOFFSET" . 970510) ("XSIZE" . 970513) ("YOFFSET" . 970515) ("YSIZE" . 970518)))
1191 ("SetProperty" pro "IDLgrAxis" (system) "Obj -> [%s::]%s" (("AM_PM") ("COLOR") ("DAYS_OF_WEEK") ("DIRECTION") ("EXACT") ("EXTEND") ("GRIDSTYLE") ("HIDE") ("LOCATION") ("LOG") ("MAJOR") ("MINOR") ("MONTHS") ("NAME") ("NOTEXT") ("PALETTE") ("RANGE") ("SUBTICKLEN") ("TEXTALIGNMENTS") ("TEXTBASELINE") ("TEXTPOS") ("TEXTUPDIR") ("THICK") ("TICKDIR") ("TICKFORMAT") ("TICKFRMTDATA") ("TICKINTERVAL") ("TICKLAYOUT") ("TICKLEN") ("TICKTEXT") ("TICKUNITS") ("TICKVALUES") ("TITLE") ("USE_TEXT_COLOR") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1181 ("WIDGET_BASE" fun nil (system) "Result = %s( [Parent])" ("W10.html" ("ALIGN_BOTTOM" . 679920) ("ALIGN_CENTER" . 107036) ("ALIGN_LEFT" . 107030) ("ALIGN_RIGHT" . 107035) ("ALIGN_TOP" . 107037) ("BASE_ALIGN_BOTTOM" . 107046) ("BASE_ALIGN_CENTER" . 107047) ("BASE_ALIGN_LEFT" . 107048) ("BASE_ALIGN_RIGHT" . 107049) ("BASE_ALIGN_TOP" . 107050) ("COLUMN" . 107029) ("CONTEXT_EVENTS" . 917417) ("CONTEXT_MENU" . 970908) ("DISPLAY_NAME" . 970988) ("EVENT_FUNC" . 679923) ("EVENT_PRO" . 679925) ("EXCLUSIVE" . 679927) ("FLOATING" . 911154) ("FRAME" . 679931) ("FUNC_GET_VALUE" . 679933) ("GRID_LAYOUT" . 679935) ("GROUP_LEADER" . 895915) ("KBRD_FOCUS_EVENTS" . 912183) ("KILL_NOTIFY" . 679938) ("MAP" . 108526) ("MBAR" . 934563) ("MODAL" . 910174) ("NO_COPY" . 106818) ("NONEXCLUSIVE" . 679946) ("NOTIFY_REALIZE" . 67508) ("PRO_SET_VALUE" . 679949) ("RESOURCE_NAME" . 281150) ("RNAME_MBAR" . 72437) ("ROW" . 679951) ("SCR_XSIZE" . 948019) ("SCR_YSIZE" . 58070) ("SCROLL" . 679954) ("SENSITIVE" . 948204) ("SPACE" . 679957) ("TAB_MODE" . 1068884) ("TITLE" . 679959) ("TLB_FRAME_ATTR" . 977197) ("TLB_ICONIFY_EVENTS" . 984484) ("TLB_KILL_REQUEST_EVENTS" . 192742) ("TLB_MOVE_EVENTS" . 984511) ("TLB_SIZE_EVENTS" . 679965) ("TOOLBAR" . 978753) ("TRACKING_EVENTS" . 58059) ("UNAME" . 949220) ("UNITS" . 895507) ("UVALUE" . 679967) ("X_SCROLL_SIZE" . 679980) ("XOFFSET" . 679972) ("XPAD" . 679975) ("XSIZE" . 679977) ("Y_SCROLL_SIZE" . 679991) ("YOFFSET" . 679983) ("YPAD" . 679986) ("YSIZE" . 679988)))
1192 ("GetCTM" fun "IDLgrAxis" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1182 ("WIDGET_BUTTON" fun nil (system) "Result = %s( Parent)" ("W11.html" ("ACCELERATOR" . 1069174) ("ALIGN_CENTER" . 680015) ("ALIGN_LEFT" . 57956) ("ALIGN_RIGHT" . 57957) ("BITMAP" . 192775) ("CHECKED_MENU" . 978512) ("DYNAMIC_RESIZE" . 978508) ("EVENT_FUNC" . 106419) ("EVENT_PRO" . 680017) ("FONT" . 680019) ("FRAME" . 680021) ("FUNC_GET_VALUE" . 108837) ("GROUP_LEADER" . 680025) ("HELP" . 57994) ("KILL_NOTIFY" . 680028) ("MENU" . 680031) ("NO_COPY" . 109087) ("NO_RELEASE" . 680036) ("NOTIFY_REALIZE" . 67569) ("PRO_SET_VALUE" . 680038) ("PUSHBUTTON_EVENTS" . 1019958) ("RESOURCE_NAME" . 724023) ("SCR_XSIZE" . 67277) ("SCR_YSIZE" . 67280) ("SENSITIVE" . 948118) ("SEPARATOR" . 58000) ("TAB_MODE" . 1069036) ("TOOLTIP" . 982062) ("TRACKING_EVENTS" . 982064) ("UNAME" . 949273) ("UNITS" . 895525) ("UVALUE" . 680040) ("VALUE" . 680044) ("X_BITMAP_EXTRA" . 680046) ("XOFFSET" . 680048) ("XSIZE" . 680051) ("YOFFSET" . 680054) ("YSIZE" . 680057)))
1193 ("Init" fun "IDLgrAxis" (system) "Result = Obj -> [%s::]%s( [Direction] ) ('IDLgrAxis' [, Direction])" (("AM_PM") ("COLOR") ("DAYS_OF_WEEK") ("DIRECTION") ("EXACT") ("EXTEND") ("GRIDSTYLE") ("HIDE") ("LOCATION") ("LOG") ("MAJOR") ("MINOR") ("MONTHS") ("NAME") ("NOTEXT") ("PALETTE") ("RANGE") ("SUBTICKLEN") ("TEXTALIGNMENTS") ("TEXTBASELINE") ("TEXTPOS") ("TEXTUPDIR") ("THICK") ("TICKDIR") ("TICKFORMAT") ("TICKFRMTDATA") ("TICKINTERVAL") ("TICKLAYOUT") ("TICKLEN") ("TICKTEXT") ("TICKUNITS") ("TICKVALUES") ("TITLE") ("USE_TEXT_COLOR") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1183 ("WIDGET_COMBOBOX" fun nil (system) "Result = %s( Parent)" ("W12.html" ("DYNAMIC_RESIZE" . 1011945) ("EDITABLE" . 1011949) ("EVENT_FUNC" . 1011951) ("EVENT_PRO" . 1011953) ("FONT" . 1011955) ("FRAME" . 1011964) ("FUNC_GET_VALUE" . 1011967) ("GROUP_LEADER" . 1011969) ("IGNORE_ACCELERATORS" . 1096967) ("KILL_NOTIFY" . 1011972) ("NO_COPY" . 1011975) ("NOTIFY_REALIZE" . 1011978) ("PRO_SET_VALUE" . 1011980) ("RESOURCE_NAME" . 1011983) ("SCR_XSIZE" . 1011991) ("SCR_YSIZE" . 1011993) ("SENSITIVE" . 1011995) ("TAB_MODE" . 1071311) ("TRACKING_EVENTS" . 1012005) ("UNAME" . 1012013) ("UNITS" . 1012019) ("UVALUE" . 1012021) ("VALUE" . 1012025) ("XOFFSET" . 1012027) ("XSIZE" . 1012030) ("YOFFSET" . 1012032) ("YSIZE" . 1012035)))
1194 ("Cleanup" pro "IDLgrBuffer" (system) "Obj -> [%s::]%s" nil) 1184 ("WIDGET_DRAW" fun nil (system) "Result = %s(Parent)" ("W15.html" ("APP_SCROLL" . 680227) ("BUTTON_EVENTS" . 941808) ("COLOR_MODEL" . 930114) ("COLORS" . 896380) ("EVENT_FUNC" . 680234) ("EVENT_PRO" . 680236) ("EXPOSE_EVENTS" . 907355) ("FRAME" . 680238) ("FUNC_GET_VALUE" . 680240) ("GRAPHICS_LEVEL" . 914743) ("GROUP_LEADER" . 680242) ("IGNORE_ACCELERATORS" . 1097640) ("KEYBOARD_EVENTS" . 1097628) ("KILL_NOTIFY" . 680245) ("MOTION_EVENTS" . 153791) ("NO_COPY" . 680251) ("NOTIFY_REALIZE" . 67601) ("PRO_SET_VALUE" . 680253) ("RENDERER" . 930656) ("RESOURCE_NAME" . 947866) ("RETAIN" . 680255) ("SCR_XSIZE" . 67289) ("SCR_YSIZE" . 67292) ("SCROLL" . 67286) ("SENSITIVE" . 948221) ("TOOLTIP" . 982084) ("TRACKING_EVENTS" . 67368) ("UNAME" . 949316) ("UNITS" . 895543) ("UVALUE" . 680259) ("VALUE" . 680263) ("VIEWPORT_EVENTS" . 279483) ("X_SCROLL_SIZE" . 680274) ("XOFFSET" . 680268) ("XSIZE" . 680271) ("Y_SCROLL_SIZE" . 680283) ("YOFFSET" . 680277) ("YSIZE" . 680280)))
1195 ("Draw" pro "IDLgrBuffer" (system) "Obj -> [%s::]%s [, Picture]" (("CREATE_INSTANCE") ("DRAW_INSTANCE"))) 1185 ("WIDGET_DROPLIST" fun nil (system) "Result = %s( Parent)" ("W16.html" ("DYNAMIC_RESIZE" . 192790) ("EVENT_FUNC" . 192787) ("EVENT_PRO" . 58393) ("FONT" . 963245) ("FRAME" . 58399) ("FUNC_GET_VALUE" . 58404) ("GROUP_LEADER" . 58412) ("KILL_NOTIFY" . 58424) ("NO_COPY" . 67153) ("NOTIFY_REALIZE" . 67614) ("PRO_SET_VALUE" . 67133) ("RESOURCE_NAME" . 67140) ("SCR_XSIZE" . 67120) ("SCR_YSIZE" . 67123) ("SENSITIVE" . 948234) ("TAB_MODE" . 1071560) ("TITLE" . 888903) ("TRACKING_EVENTS" . 58334) ("UNAME" . 949326) ("UNITS" . 895561) ("UVALUE" . 67166) ("VALUE" . 67174) ("XOFFSET" . 67194) ("XSIZE" . 67198) ("YOFFSET" . 67201) ("YSIZE" . 67205)))
1196 ("Erase" pro "IDLgrBuffer" (system) "Obj -> [%s::]%s" (("COLOR"))) 1186 ("WIDGET_EVENT" fun nil (system) "Result = %s([Widget_ID])" ("W17.html" ("BAD_ID" . 680307) ("NOWAIT" . 680311) ("SAVE_HOURGLASS" . 680313) ("YIELD_TO_TTY" . 675439)))
1197 ("GetDeviceInfo" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" (("ALL") ("MAX_TEXTURE_DIMENSIONS") ("MAX_VIEWPORT_DIMENSIONS") ("NAME") ("NUM_CPUS") ("VENDOR") ("VERSION"))) 1187 ("WIDGET_INFO" fun nil (system) "Result = %s( [Widget_ID] )" ("W18.html" ("ACTIVE" . 680342) ("BUTTON_SET" . 978692) ("CHILD" . 978690) ("COLUMN_WIDTHS" . 895941) ("COMBOBOX_GETTEXT" . 981639) ("COMBOBOX_NUMBER" . 981602) ("COMPONENT" . 1018415) ("CONTEXT_EVENTS" . 1018413) ("DRAW_BUTTON_EVENTS" . 971032) ("DRAW_EXPOSE_EVENTS" . 909787) ("DRAW_KEYBOARD_EVENTS" . 985204) ("DRAW_MOTION_EVENTS" . 985200) ("DRAW_VIEWPORT_EVENTS" . 680350) ("DROPLIST_NUMBER" . 58164) ("DROPLIST_SELECT" . 58165) ("DYNAMIC_RESIZE" . 192872) ("EVENT_FUNC" . 680352) ("EVENT_PRO" . 680354) ("FIND_BY_UNAME" . 58144) ("FONTNAME" . 980336) ("GEOMETRY" . 980339) ("KBRD_FOCUS_EVENTS" . 1012790) ("LIST_MULTIPLE" . 934733) ("LIST_NUM_VISIBLE" . 680358) ("LIST_NUMBER" . 911616) ("LIST_SELECT" . 680360) ("LIST_TOP" . 680362) ("MANAGED" . 907337) ("MAP" . 982652) ("MODAL" . 910752) ("MULTIPLE_PROPERTIES" . 1100808) ("NAME" . 1100833) ("PARENT" . 680364) ("PROPERTY_VALID" . 1018429) ("PROPERTY_VALUE" . 1018452) ("PROPERTYSHEET_NSELECTED" . 1070799) ("PROPERTYSHEET_SELECTED" . 1082483) ("PUSHBUTTON_EVENTS" . 1020048) ("REALIZED" . 1018448) ("ROW_HEIGHTS" . 895972) ("SENSITIVE" . 982686) ("SIBLING" . 680368) ("SLIDER_MIN_MAX" . 680889) ("SYSTEM_COLORS" . 895977) ("TAB_CURRENT" . 976997) ("TAB_MODE" . 1069869) ("TAB_MULTILINE" . 977009) ("TAB_NUMBER" . 977045) ("TABLE_ALL_EVENTS" . 971069) ("TABLE_DISJOINT_SELECTION" . 987431) ("TABLE_EDIT_CELL" . 895981) ("TABLE_EDITABLE" . 895979) ("TABLE_SELECT" . 895983) ("TABLE_VIEW" . 895985) ("TEXT_ALL_EVENTS" . 680895) ("TEXT_EDITABLE" . 680899) ("TEXT_NUMBER" . 680370) ("TEXT_OFFSET_TO_XY" . 680903) ("TEXT_SELECT" . 680906) ("TEXT_TOP_LINE" . 680913) ("TEXT_XY_TO_OFFSET" . 899965) ("TLB_ICONIFY_EVENTS" . 984875) ("TLB_KILL_REQUEST_EVENTS" . 192881) ("TLB_MOVE_EVENTS" . 984854) ("TLB_SIZE_EVENTS" . 984889) ("TOOLTIP" . 982130) ("TRACKING_EVENTS" . 58086) ("TREE_EXPANDED" . 978324) ("TREE_ROOT" . 986723) ("TREE_SELECT" . 978331) ("TYPE" . 680072) ("UNAME" . 949465) ("UNITS" . 949467) ("UPDATE" . 680371) ("USE_TABLE_SELECT" . 896009) ("VALID_ID" . 891030) ("VERSION" . 680373) ("VISIBLE" . 984410)))
1198 ("GetProperty" pro "IDLgrBuffer" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR_MODEL") ("DIMENSIONS") ("GRAPHICS_TREE") ("IMAGE_DATA") ("N_COLORS") ("PALETTE") ("QUALITY") ("RESOLUTION") ("SCREEN_DIMENSIONS") ("UNITS") ("UVALUE") ("ZBUFFER_DATA"))) 1188 ("WIDGET_LABEL" fun nil (system) "Result = %s( Parent)" ("W19.html" ("ALIGN_CENTER" . 57967) ("ALIGN_LEFT" . 57970) ("ALIGN_RIGHT" . 57973) ("DYNAMIC_RESIZE" . 192801) ("FONT" . 680390) ("FRAME" . 680392) ("FUNC_GET_VALUE" . 680394) ("GROUP_LEADER" . 680396) ("KILL_NOTIFY" . 680399) ("NO_COPY" . 680402) ("NOTIFY_REALIZE" . 67628) ("PRO_SET_VALUE" . 680404) ("RESOURCE_NAME" . 724047) ("SCR_XSIZE" . 67301) ("SCR_YSIZE" . 67304) ("SENSITIVE" . 948248) ("SUNKEN_FRAME" . 978731) ("TRACKING_EVENTS" . 67390) ("UNAME" . 949494) ("UNITS" . 949487) ("UVALUE" . 680406) ("VALUE" . 680410) ("XOFFSET" . 680412) ("XSIZE" . 680415) ("YOFFSET" . 680418) ("YSIZE" . 680421)))
1199 ("SetProperty" pro "IDLgrBuffer" (system) "Obj -> [%s::]%s" (("DIMENSIONS") ("GRAPHICS_TREE") ("PALETTE") ("QUALITY") ("RESOLUTION") ("UNITS") ("UVALUE"))) 1189 ("WIDGET_LIST" fun nil (system) "Result = %s( Parent)" ("W20.html" ("CONTEXT_EVENTS" . 970955) ("EVENT_FUNC" . 680433) ("EVENT_PRO" . 680435) ("FONT" . 680437) ("FRAME" . 680439) ("FUNC_GET_VALUE" . 680441) ("GROUP_LEADER" . 680443) ("KILL_NOTIFY" . 680446) ("MULTIPLE" . 934705) ("NO_COPY" . 680449) ("NOTIFY_REALIZE" . 67642) ("PRO_SET_VALUE" . 680451) ("RESOURCE_NAME" . 724057) ("SCR_XSIZE" . 67319) ("SCR_YSIZE" . 1001133) ("SENSITIVE" . 948262) ("TAB_MODE" . 1071684) ("TRACKING_EVENTS" . 1071674) ("UNAME" . 949504) ("UNITS" . 895619) ("UVALUE" . 680453) ("VALUE" . 680457) ("XOFFSET" . 680460) ("XSIZE" . 680463) ("YOFFSET" . 680466) ("YSIZE" . 58021)))
1200 ("GetContiguousPixels" fun "IDLgrBuffer" (system) "Return = Obj -> [%s::]%s()" nil) 1190 ("WIDGET_PROPERTYSHEET" fun nil (system) "Result = %s(Parent)" ("W21.html" ("ALIGN_BOTTOM" . 1036791) ("ALIGN_CENTER" . 1036794) ("ALIGN_LEFT" . 1036796) ("ALIGN_RIGHT" . 1036798) ("ALIGN_TOP" . 1036800) ("CONTEXT_EVENTS" . 1036802) ("EDITABLE" . 1078422) ("EVENT_FUNC" . 1036806) ("EVENT_PRO" . 1036808) ("FONT" . 1036810) ("FRAME" . 1070614) ("FUNC_GET_VALUE" . 1036813) ("IGNORE_ACCELERATORS" . 1097821) ("KILL_NOTIFY" . 1036815) ("MULTIPLE_PROPERTIES" . 1100848) ("NO_COPY" . 1036819) ("NOTIFY_REALIZE" . 1036822) ("PRO_SET_VALUE" . 1036824) ("SCR_XSIZE" . 1036826) ("SCR_YSIZE" . 1036828) ("SENSITIVE" . 1036830) ("SUNKEN_FRAME" . 1070660) ("TRACKING_EVENTS" . 1036836) ("UNAME" . 1036838) ("UNITS" . 1036841) ("UVALUE" . 1036843) ("VALUE" . 1036847) ("XOFFSET" . 1036853) ("XSIZE" . 1036856) ("YOFFSET" . 1036858) ("YSIZE" . 1036861)))
1201 ("GetFontnames" fun "IDLgrBuffer" (system) "Return = Obj -> [%s::]%s( FamilyName)" (("IDL_FONTS") ("STYLES"))) 1191 ("WIDGET_SLIDER" fun nil (system) "Result = %s( Parent)" ("W22.html" ("DRAG" . 680487) ("EVENT_FUNC" . 680490) ("EVENT_PRO" . 680492) ("FONT" . 680494) ("FRAME" . 680496) ("FUNC_GET_VALUE" . 680498) ("GROUP_LEADER" . 680500) ("KILL_NOTIFY" . 680503) ("MAXIMUM" . 680506) ("MINIMUM" . 680508) ("NO_COPY" . 680510) ("NOTIFY_REALIZE" . 67656) ("PRO_SET_VALUE" . 680512) ("RESOURCE_NAME" . 724067) ("SCR_XSIZE" . 67331) ("SCR_YSIZE" . 67334) ("SCROLL" . 680514) ("SENSITIVE" . 948276) ("SUPPRESS_VALUE" . 680516) ("TAB_MODE" . 1071832) ("TITLE" . 1071823) ("TRACKING_EVENTS" . 67418) ("UNAME" . 949514) ("UNITS" . 895638) ("UVALUE" . 680519) ("VALUE" . 680523) ("VERTICAL" . 680527) ("XOFFSET" . 680529) ("XSIZE" . 680532) ("YOFFSET" . 680535) ("YSIZE" . 680538)))
1202 ("GetTextDimensions" fun "IDLgrBuffer" (system) "Result = Obj ->[%s::]%s( TextObj)" (("DESCENT") ("PATH"))) 1192 ("WIDGET_TAB" fun nil (system) "Result = %s( Parent)" ("W23.html" ("ALIGN_BOTTOM" . 1012200) ("ALIGN_CENTER" . 1012202) ("ALIGN_LEFT" . 1012204) ("ALIGN_RIGHT" . 1012206) ("ALIGN_TOP" . 1012208) ("EVENT_FUNC" . 1012210) ("EVENT_PRO" . 1012212) ("FUNC_GET_VALUE" . 1012214) ("GROUP_LEADER" . 1012216) ("KILL_NOTIFY" . 1012219) ("LOCATION" . 1012223) ("MULTILINE" . 1012253) ("NO_COPY" . 1012263) ("NOTIFY_REALIZE" . 1012266) ("PRO_SET_VALUE" . 1012268) ("SCR_XSIZE" . 1012270) ("SCR_YSIZE" . 1012272) ("SENSITIVE" . 1012274) ("TAB_MODE" . 1071955) ("TRACKING_EVENTS" . 1018541) ("UNAME" . 1012284) ("UNITS" . 1012290) ("UVALUE" . 1012292) ("XOFFSET" . 1012296) ("XSIZE" . 1012299) ("YOFFSET" . 1012301) ("YSIZE" . 1012304)))
1203 ("Init" fun "IDLgrBuffer" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrBuffer')" (("COLOR_MODEL") ("DIMENSIONS") ("GRAPHICS_TREE") ("N_COLORS") ("PALETTE") ("QUALITY") ("RESOLUTION") ("UNITS") ("UVALUE"))) 1193 ("WIDGET_TABLE" fun nil (system) "Result = %s( Parent)" ("W24.html" ("ALIGNMENT" . 896042) ("ALL_EVENTS" . 941688) ("AM_PM" . 1076926) ("COLUMN_LABELS" . 1076933) ("COLUMN_MAJOR" . 909845) ("COLUMN_WIDTHS" . 896114) ("CONTEXT_EVENTS" . 1074773) ("DAYS_OF_WEEK" . 949838) ("DISJOINT_SELECTION" . 987345) ("EDITABLE" . 987346) ("EVENT_FUNC" . 896120) ("EVENT_PRO" . 896123) ("FONT" . 896126) ("FORMAT" . 896130) ("FRAME" . 896133) ("FUNC_GET_VALUE" . 896136) ("GROUP_LEADER" . 896151) ("IGNORE_ACCELERATORS" . 1097865) ("KBRD_FOCUS_EVENTS" . 911525) ("KILL_NOTIFY" . 896155) ("MONTHS" . 949844) ("NO_COLUMN_HEADERS" . 1074713) ("NO_COPY" . 896163) ("NO_HEADERS" . 909873) ("NO_ROW_HEADERS" . 1074723) ("NOTIFY_REALIZE" . 896166) ("PRO_SET_VALUE" . 896169) ("RESIZEABLE_COLUMNS" . 896172) ("RESIZEABLE_ROWS" . 901244) ("RESOURCE_NAME" . 896175) ("ROW_HEIGHTS" . 909879) ("ROW_LABELS" . 896181) ("ROW_MAJOR" . 909886) ("SCR_XSIZE" . 896187) ("SCR_YSIZE" . 896190) ("SCROLL" . 896193) ("SENSITIVE" . 948291) ("TAB_MODE" . 1072083) ("TRACKING_EVENTS" . 896200) ("UNAME" . 949524) ("UNITS" . 896203) ("UVALUE" . 896207) ("VALUE" . 896212) ("X_SCROLL_SIZE" . 896223) ("XOFFSET" . 896215) ("XSIZE" . 896219) ("Y_SCROLL_SIZE" . 896235) ("YOFFSET" . 896227) ("YSIZE" . 896231)))
1204 ("PickData" fun "IDLgrBuffer" (system) "Result = Obj -> [%s::]%s( View, Object, Location, XYZLocation)" (("DIMENSIONS") ("PATH"))) 1194 ("WIDGET_TEXT" fun nil (system) "Result = %s( Parent)" ("W25.html" ("ALL_EVENTS" . 680556) ("CONTEXT_EVENTS" . 970972) ("EDITABLE" . 886884) ("EVENT_FUNC" . 680561) ("EVENT_PRO" . 680563) ("FONT" . 680565) ("FRAME" . 680567) ("FUNC_GET_VALUE" . 680569) ("GROUP_LEADER" . 680571) ("IGNORE_ACCELERATORS" . 1097921) ("KBRD_FOCUS_EVENTS" . 911545) ("KILL_NOTIFY" . 680574) ("NO_COPY" . 680577) ("NO_NEWLINE" . 680579) ("NOTIFY_REALIZE" . 67670) ("PRO_SET_VALUE" . 680581) ("RESOURCE_NAME" . 724077) ("SCR_XSIZE" . 67343) ("SCR_YSIZE" . 67346) ("SCROLL" . 680583) ("SENSITIVE" . 948305) ("TAB_MODE" . 1072230) ("TRACKING_EVENTS" . 67432) ("UNAME" . 949534) ("UNITS" . 895656) ("UVALUE" . 680586) ("VALUE" . 680590) ("WRAP" . 58056) ("XOFFSET" . 680592) ("XSIZE" . 680595) ("YOFFSET" . 680598) ("YSIZE" . 680601)))
1205 ("Read" fun "IDLgrBuffer" (system) "Result = Obj -> [%s::]%s()" nil) 1195 ("WIDGET_TREE" fun nil (system) "Result = %s( Parent)" ("W26.html" ("ALIGN_BOTTOM" . 1012440) ("ALIGN_CENTER" . 1012442) ("ALIGN_LEFT" . 1012444) ("ALIGN_RIGHT" . 1012446) ("ALIGN_TOP" . 1012448) ("BITMAP" . 1012450) ("CONTEXT_EVENTS" . 1012452) ("EVENT_FUNC" . 1012461) ("EVENT_PRO" . 1012463) ("EXPANDED" . 1012465) ("FOLDER" . 1012468) ("FUNC_GET_VALUE" . 1012472) ("GROUP_LEADER" . 1012474) ("KILL_NOTIFY" . 1012477) ("MULTIPLE" . 1012481) ("NO_COPY" . 1012484) ("NOTIFY_REALIZE" . 1012487) ("PRO_SET_VALUE" . 1012489) ("SCR_XSIZE" . 1012491) ("SCR_YSIZE" . 1012493) ("SENSITIVE" . 1012495) ("TAB_MODE" . 1072351) ("TOP" . 1012505) ("TRACKING_EVENTS" . 1018556) ("UNAME" . 1012508) ("UNITS" . 1012514) ("UVALUE" . 1012516) ("VALUE" . 1012520) ("XOFFSET" . 1012523) ("XSIZE" . 1012526) ("YOFFSET" . 1012528) ("YSIZE" . 1012531)))
1206 ("Select" fun "IDLgrBuffer" (system) "Result = Obj -> [%s::]%s(Picture, XY)" (("DIMENSIONS") ("UNITS"))) 1196 ("WRITE_SYLK" fun nil (system) "Result = %s( File, Data)" ("W39.html" ("STARTCOL" . 67955) ("STARTROW" . 67958)))
1207 ("Cleanup" pro "IDLgrClipboard" (system) "Obj-> [%s::]%s" nil) 1197 ("WTN" fun nil (system) "Result = %s( A, Coef)" ("W46.html" ("COLUMN" . 58787) ("DOUBLE" . 52415) ("INVERSE" . 52418) ("OVERWRITE" . 52421)))
1208 ("Draw" pro "IDLgrClipboard" (system) "Obj -> [%s::]%s [, Picture]" (("FILENAME") ("POSTSCRIPT") ("VECTOR"))) 1198 ("WV_CW_WAVELET" fun nil (system) "Result = %s( [Parent])" ("ref5.html" ("DISCRETE" . 1003928) ("NO_COLOR" . 1015397) ("NO_DRAW_WINDOW" . 1015435) ("TITLE" . 1015385) ("UNAME" . 1004532) ("UVALUE" . 1003932) ("VALUE" . 1015413) ("WAVELETS" . 1008397)))
1209 ("GetDeviceInfo" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" (("ALL") ("MAX_TEXTURE_DIMENSIONS") ("MAX_VIEWPORT_DIMENSIONS") ("NAME") ("NUM_CPUS") ("VENDOR") ("VERSION"))) 1199 ("WV_CWT" fun nil (system) "Result = %s(Array, Family, Order)" ("ref6.html" ("DOUBLE" . 1009356) ("DSCALE" . 1009358) ("NSCALE" . 1009484) ("PAD" . 1009489) ("SCALE" . 1009494) ("START_SCALE" . 1009568)))
1210 ("GetProperty" pro "IDLgrClipboard" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR_MODEL") ("DIMENSIONS") ("GRAPHICS_TREE") ("N_COLORS") ("PALETTE") ("QUALITY") ("RESOLUTION") ("SCREEN_DIMENSIONS") ("UNITS") ("UVALUE"))) 1200 ("WV_DENOISE" fun nil (system) "Result = %s(Array [, Family, Order])" ("ref7.html" ("COEFFICIENTS" . 1010533) ("CUTOFF" . 1010481) ("DENOISE_STATE" . 1010485) ("DOUBLE" . 1010505) ("DWT_FILTERED" . 1010508) ("PERCENT" . 1010511) ("THRESHOLD" . 1010517) ("WPS_FILTERED" . 1010522)))
1211 ("SetProperty" pro "IDLgrClipboard" (system) "Obj -> [%s::]%s" (("DIMENSIONS") ("GRAPHICS_TREE") ("PALETTE") ("QUALITY") ("RESOLUTION") ("UNITS") ("UVALUE"))) 1201 ("WV_DWT" fun nil (system) "Result = %s(Array, Scaling, Wavelet, Ioff, Joff)" ("ref8.html" ("DOUBLE" . 1003349) ("INVERSE" . 1003353) ("N_LEVELS" . 1043639)))
1212 ("GetContiguousPixels" fun "IDLgrClipboard" (system) "Return = Obj ->[%s::]%s()" nil) 1202 ("WV_FN_COIFLET" fun nil (system) "Result = %s( [Order, Scaling, Wavelet, Ioff, Joff] )" ("ref9.html"))
1213 ("GetFontnames" fun "IDLgrClipboard" (system) "Return = Obj -> [%s::]%s( FamilyName)" (("IDL_FONTS") ("STYLES"))) 1203 ("WV_FN_DAUBECHIES" fun nil (system) "Result = %s( [Order, Scaling, Wavelet, Ioff, Joff] )" ("ref10.html"))
1214 ("GetTextDimensions" fun "IDLgrClipboard" (system) "Result = Obj ->[%s::]%s( TextObj)" (("DESCENT") ("PATH"))) 1204 ("WV_FN_GAUSSIAN" fun nil (system) "Result = %s( [Order] [, Scale, N])" ("ref11.html" ("DOUBLE" . 1018338) ("FREQUENCY" . 1018340) ("SPATIAL" . 1018342) ("WAVELET" . 1018344)))
1215 ("Init" fun "IDLgrClipboard" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrClipboard')" (("COLOR_MODEL") ("DIMENSIONS") ("GRAPHICS_TREE") ("N_COLORS") ("PALETTE") ("QUALITY") ("RESOLUTION") ("UNITS") ("UVALUE"))) 1205 ("WV_FN_HAAR" fun nil (system) "Result = %s( [Order, Scaling, Wavelet, Ioff, Joff] )" ("ref12.html"))
1216 ("Cleanup" pro "IDLgrColorbar" (system) "Obj -> [%s::]%s" nil) 1206 ("WV_FN_MORLET" fun nil (system) "Result = %s( [Order] [, Scale, N])" ("ref13.html" ("DOUBLE" . 1009779) ("FREQUENCY" . 1015564) ("SPATIAL" . 1015558) ("WAVELET" . 1009789)))
1217 ("GetProperty" pro "IDLgrColorbar" (system) "Obj -> [%s::]%s" (("ALL") ("BLUE_VALUES") ("COLOR") ("DIMENSIONS") ("GREEN_VALUES") ("HIDE") ("MAJOR") ("MINOR") ("NAME") ("PALETTE") ("PARENT") ("RED_VALUES") ("SHOW_AXIS") ("SHOW_OUTLINE") ("SUBTICKLEN") ("THICK") ("THREED") ("TICKFORMAT") ("TICKFRMTDATA") ("TICKLEN") ("TICKTEXT") ("TICKVALUES") ("TITLE") ("UVALUE") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1207 ("WV_FN_PAUL" fun nil (system) "Result = %s( [Order] [, Scale, N])" ("ref14.html" ("DOUBLE" . 1010078) ("FREQUENCY" . 1015576) ("SPATIAL" . 1010080) ("WAVELET" . 1010082)))
1218 ("SetProperty" pro "IDLgrColorbar" (system) "Obj -> [%s::]%s" (("BLUE_VALUES") ("COLOR") ("DIMENSIONS") ("GREEN_VALUES") ("HIDE") ("MAJOR") ("MINOR") ("NAME") ("PALETTE") ("RED_VALUES") ("SHOW_AXIS") ("SHOW_OUTLINE") ("SUBTICKLEN") ("THICK") ("TICKFORMAT") ("TICKFRMTDATA") ("TICKLEN") ("TICKTEXT") ("TICKVALUES") ("TITLE") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1208 ("WV_FN_SYMLET" fun nil (system) "Result = %s( [Order, Scaling, Wavelet, Ioff, Joff] )" ("ref15.html"))
1219 ("ComputeDimensions" fun "IDLgrColorbar" (system) "Result = Obj ->[%s::]%s( DestinationObj)" (("PATH"))) 1209 ("WV_PLOT3D_WPS" fun nil (system) "Result = %s( Array [, X] [, Y])" ("ref18.html" ("GROUP_LEADER" . 1006236) ("SURFACE_STYLE" . 1015696) ("TITLE" . 1006239) ("UNITS" . 1006241) ("XTITLE" . 1006243) ("XUNITS" . 1006245) ("YTITLE" . 1006247) ("YUNITS" . 1006249)))
1220 ("Init" fun "IDLgrColorbar" (system) "Result = Obj -> [%s::]%s( [aRed, aGreen, aBlue] ) ( 'IDLgrColorbar' [, aRed, aGreen, aBlue])" (("BLUE_VALUES") ("COLOR") ("DIMENSIONS") ("GREEN_VALUES") ("HIDE") ("MAJOR") ("MINOR") ("NAME") ("PALETTE") ("RED_VALUES") ("SHOW_AXIS") ("SHOW_OUTLINE") ("SUBTICKLEN") ("THICK") ("THREED") ("TICKFORMAT") ("TICKFRMTDATA") ("TICKLEN") ("TICKTEXT") ("TICKVALUES") ("TITLE") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1210 ("WV_PLOT_MULTIRES" fun nil (system) "Result = %s( Array [, X] [, Y])" ("ref19.html" ("GROUP_LEADER" . 1008291) ("TITLE" . 1008295) ("UNITS" . 1008298) ("XTITLE" . 1008301) ("XUNITS" . 1008304) ("YTITLE" . 1008307) ("YUNITS" . 1008310)))
1221 ("Cleanup" pro "IDLgrContour" (system) "Obj -> [%s::]%s" nil) 1211 ("WV_PWT" fun nil (system) "Result = %s( A, Scaling, Wavelet, Ioff, Joff)" ("ref20.html" ("DOUBLE" . 1006192) ("INVERSE" . 1006194)))
1222 ("GetProperty" pro "IDLgrContour" (system) "Obj -> [%s::]%s" (("ALL") ("ANISOTROPY") ("C_COLOR") ("C_FILL_PATTERN") ("C_LINESTYLE") ("C_THICK") ("C_VALUE") ("COLOR") ("DATA_VALUES") ("DEPTH_OFFSET") ("DOWNHILL") ("FILL") ("GEOM") ("HIDE") ("MAX_VALUE") ("MIN_VALUE") ("N_LEVELS") ("NAME") ("PALETTE") ("PARENT") ("PLANAR") ("POLYGONS") ("SHADE_RANGE") ("SHADING") ("TICKINTERVAL") ("TICKLEN") ("UVALUE") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1212 ("WV_TOOL_DENOISE" fun nil (system) "Result = %s( Array [, X] [, Y])" ("ref21.html" ("GROUP_LEADER" . 1008330) ("TITLE" . 1008334) ("UNITS" . 1008337) ("XTITLE" . 1008340) ("XUNITS" . 1008343) ("YTITLE" . 1008346) ("YUNITS" . 1008349)))
1223 ("SetProperty" pro "IDLgrContour" (system) "Obj -> [%s::]%s" (("ANISOTROPY") ("C_COLOR") ("C_FILL_PATTERN") ("C_LINESTYLE") ("C_THICK") ("C_VALUE") ("COLOR") ("DATA_VALUES") ("DEPTH_OFFSET") ("DOWNHILL") ("FILL") ("GEOMX") ("GEOMY") ("GEOMZ") ("HIDE") ("MAX_VALUE") ("MIN_VALUE") ("N_LEVELS") ("NAME") ("PALETTE") ("PLANAR") ("POLYGONS") ("SHADE_RANGE") ("SHADING") ("TICKINTERVAL") ("TICKLEN") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1213 ("XFONT" fun nil (system) "Result = %s()" ("X4.html" ("GROUP" . 762100) ("PRESERVE_FONT_INFO" . 762103)))
1224 ("GetCTM" fun "IDLgrContour" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1214 ("XREGISTERED" fun nil (system) "Result = %s(Name)" ("X16.html" ("NOSHOW" . 762898)))
1225 ("Init" fun "IDLgrContour" (system) "Result = Obj -> [%s::]%s( [Values] ) ('IDLgrContour' [, Values])" (("ANISOTROPY") ("C_COLOR") ("C_FILL_PATTERN") ("C_LINESTYLE") ("C_THICK") ("C_VALUE") ("COLOR") ("DATA_VALUES") ("DEPTH_OFFSET") ("DOUBLE_DATA") ("DOUBLE_GEOM") ("DOWNHILL") ("FILL") ("GEOMX") ("GEOMY") ("GEOMZ") ("HIDE") ("MAX_VALUE") ("MIN_VALUE") ("N_LEVELS") ("NAME") ("PALETTE") ("PLANAR") ("POLYGONS") ("SHADE_RANGE") ("SHADING") ("TICKINTERVAL") ("TICKLEN") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1215 ("XSQ_TEST" fun nil (system) "Result = %s( Obfreq, Exfreq)" ("X18.html" ("EXCELL" . 137437) ("OBCELL" . 137440) ("RESIDUAL" . 137443)))
1226 ("Cleanup" pro "IDLgrFont" (system) "Obj -> [%s::]%s" nil) 1216 ("Add" pro "IDL_Container" (system) "Obj->[%s::]%s, Objects" ("objects_misc5.html" ("POSITION" . 1010605)))
1227 ("GetProperty" pro "IDLgrFont" (system) "" (("NAME") ("SIZE") ("SUBSTITUTE") ("THICK") ("UVALUE"))) 1217 ("Cleanup" pro "IDL_Container" (system) "Obj->[%s::]%s" ("objects_misc6.html"))
1228 ("SetProperty" pro "IDLgrFont" (system) "" (("NAME") ("SIZE") ("SUBSTITUTE") ("THICK") ("UVALUE"))) 1218 ("Move" pro "IDL_Container" (system) "Obj->[%s::]%s, Source, Destination" ("objects_misc11.html"))
1229 ("Init" fun "IDLgrFont" (system) "Result = Obj -> [%s::]%s( [Fontname] ) ('IDLgrFont' [, Fontname])" (("NAME") ("SIZE") ("SUBSTITUTE") ("THICK") ("UVALUE"))) 1219 ("Remove" pro "IDL_Container" (system) "Obj->[%s::]%s [, Child_object]" ("objects_misc12.html" ("ALL" . 1010855) ("POSITION" . 1010857)))
1230 ("Cleanup" pro "IDLgrImage" (system) "Obj -> [%s::]%s" nil) 1220 ("Count" fun "IDL_Container" (system) "Result = Obj->[%s::]%s()" ("objects_misc7.html"))
1231 ("GetProperty" pro "IDLgrImage" (system) "Obj -> [%s::]%s" (("ALL") ("BLEND_FUNCTION") ("CHANNEL") ("DATA") ("DIMENSIONS") ("GREYSCALE") ("HIDE") ("INTERLEAVE") ("INTERPOLATE") ("LOCATION") ("NAME") ("NO_COPY") ("ORDER") ("PALETTE") ("PARENT") ("SUB_RECT") ("UVALUE") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1221 ("Get" fun "IDL_Container" (system) "Result = Obj->[%s::]%s ()" ("objects_misc8.html" ("ALL" . 1010708) ("COUNT" . 1010710) ("ISA" . 1010712) ("POSITION" . 1010715)))
1232 ("SetProperty" pro "IDLgrImage" (system) "Obj -> [%s::]%s" (("BLEND_FUNCTION") ("CHANNEL") ("DATA") ("DIMENSIONS") ("GREYSCALE") ("HIDE") ("INTERLEAVE") ("INTERPOLATE") ("LOCATION") ("NAME") ("NO_COPY") ("ORDER") ("PALETTE") ("RESET_DATA") ("SHARE_DATA") ("SUB_RECT") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1222 ("Init" fun "IDL_Container" (system) "Result = Obj->[%s::]%s()" ("objects_misc9.html" ))
1233 ("GetCTM" fun "IDLgrImage" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1223 ("IsContained" fun "IDL_Container" (system) "Result = Obj->[%s::]%s( Object)" ("objects_misc10.html" ("POSITION" . 1010785)))
1234 ("Init" fun "IDLgrImage" (system) "Result = Obj -> [%s::]%s( [ImageData] ) ('IDLgrImage' [, ImageData])" (("BLEND_FUNCTION") ("CHANNEL") ("DATA") ("DIMENSIONS") ("GREYSCALE") ("HIDE") ("INTERLEAVE") ("INTERPOLATE") ("LOCATION") ("NAME") ("NO_COPY") ("ORDER") ("PALETTE") ("RESET_DATA") ("SHARE_DATA") ("SUB_RECT") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1224 ("IDL" pro "IDL_Savefile" (system) "Obj->[IDL_Savefile::]IDL_Savefile::Cleanup" ("objects_misc15.html"))
1235 ("Cleanup" pro "IDLgrLegend" (system) "Obj -> [%s::]%s" nil) 1225 ("Restore" pro "IDL_Savefile" (system) "Obj->[%s::]%s, SaveItem" ("objects_misc19.html" ("COMMON" . 1034877) ("FUNCTION" . 1034881) ("NEW_HEAPVAR" . 1034884) ("OBJECT_HEAPVAR" . 1034892) ("POINTER_HEAPVAR" . 1034898) ("PROCEDURE" . 1034904) ("RESTORED_OBJECTS" . 1034907) ("STRUCTURE_DEFINITION" . 1034910) ("VERBOSE" . 1034913)))
1236 ("GetProperty" pro "IDLgrLegend" (system) "Obj -> [%s::]%s" (("ALL") ("BORDER_GAP") ("COLUMNS") ("FILL_COLOR") ("FONT") ("GAP") ("GLYPH_WIDTH") ("HIDE") ("ITEM_COLOR") ("ITEM_LINESTYLE") ("ITEM_NAME") ("ITEM_OBJECT") ("ITEM_THICK") ("ITEM_TYPE") ("NAME") ("OUTLINE_COLOR") ("OUTLINE_THICK") ("PARENT") ("SHOW_FILL") ("SHOW_OUTLINE") ("TEXT_COLOR") ("TITLE") ("UVALUE") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1226 ("Contents" fun "IDL_Savefile" (system) "Result = Obj->[%s::]%s()" ("objects_misc16.html"))
1237 ("SetProperty" pro "IDLgrLegend" (system) "Obj-> [%s::]%s" (("BORDER_GAP") ("COLUMNS") ("FILL_COLOR") ("FONT") ("GAP") ("GLYPH_WIDTH") ("HIDE") ("ITEM_COLOR") ("ITEM_LINESTYLE") ("ITEM_NAME") ("ITEM_OBJECT") ("ITEM_THICK") ("ITEM_TYPE") ("NAME") ("OUTLINE_COLOR") ("OUTLINE_THICK") ("RECOMPUTE") ("SHOW_FILL") ("SHOW_OUTLINE") ("TEXT_COLOR") ("TITLE") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1227 ("IDL" fun "IDL_Savefile" (system) "Result = Obj->[IDL_Savefile::]IDL_Savefile::Init([, Filename])" ("objects_misc17.html" ("FILENAME" . 1034717) ("RELAXED_STRUCTURE_ASSIGNMENT" . 1034721)))
1238 ("ComputeDimensions" fun "IDLgrLegend" (system) "Result = Obj ->[%s::]%s( DestinationObject)" (("PATH"))) 1228 ("Names" fun "IDL_Savefile" (system) "Result = Obj->[%s::]%s()" ("objects_misc18.html" ("COMMON_BLOCK" . 1034777) ("COMMON_VARIABLE" . 1034780) ("COUNT" . 1034783) ("FUNCTION" . 1034786) ("OBJECT_HEAPVAR" . 1034789) ("POINTER_HEAPVAR" . 1034800) ("PROCEDURE" . 1034811) ("STRUCTURE_DEFINITION" . 1034814) ("SYSTEM_VARIABLE" . 1034817)))
1239 ("Init" fun "IDLgrLegend" (system) "Result = Obj -> [%s::]%s( [aItemNames] ) ('IDLgrLegend' [, aItemNames])" (("BORDER_GAP") ("COLUMNS") ("FILL_COLOR") ("FONT") ("GAP") ("GLYPH_WIDTH") ("HIDE") ("ITEM_COLOR") ("ITEM_LINESTYLE") ("ITEM_NAME") ("ITEM_OBJECT") ("ITEM_THICK") ("ITEM_TYPE") ("NAME") ("OUTLINE_COLOR") ("OUTLINE_THICK") ("SHOW_FILL") ("SHOW_OUTLINE") ("TEXT_COLOR") ("TITLE") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1229 ("Size" fun "IDL_Savefile" (system) "Result = Obj->[%s::]%s(SaveItem [, Keywords])" ("objects_misc20.html"))
1240 ("Cleanup" pro "IDLgrLight" (system) "Obj -> [%s::]%s" nil) 1230 ("AppendData" pro "IDLanROI" (system) "Obj->[%s::]%s, X [, Y] [, Z]" ("objects_an5.html" ("XRANGE" . 1003740) ("YRANGE" . 1003742) ("ZRANGE" . 1003744)))
1241 ("GetProperty" pro "IDLgrLight" (system) "Obj -> [%s::]%s" (("ALL") ("ATTENUATION") ("COLOR") ("CONEANGLE") ("DIRECTION") ("FOCUS") ("HIDE") ("INTENSITY") ("LOCATION") ("NAME") ("PARENT") ("TYPE") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1231 ("Cleanup" pro "IDLanROI" (system) "Obj->[%s::]%s" ("objects_an6.html"))
1242 ("SetProperty" pro "IDLgrLight" (system) "Obj -> [%s::]%s" (("ATTENUATION") ("COLOR") ("CONEANGLE") ("DIRECTION") ("FOCUS") ("HIDE") ("INTENSITY") ("LOCATION") ("NAME") ("TYPE") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1232 ("GetProperty" pro "IDLanROI" (system) "Obj->[%s::]%s" ("objects_an10.html" ) ("objects_an4.html" ("ALL" . 1011351) ("BLOCK_SIZE" . 1011320) ("DATA" . 1011322) ("DOUBLE" . 1011324) ("INTERIOR" . 1011326) ("N_VERTS" . 1011660) ("ROI_XRANGE" . 1011699) ("ROI_YRANGE" . 1011726) ("ROI_ZRANGE" . 1011728) ("TYPE" . 1011328)))
1243 ("GetCTM" fun "IDLgrLight" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1233 ("RemoveData" pro "IDLanROI" (system) "Obj->[%s::]%s" ("objects_an12.html" ("COUNT" . 1004077) ("START" . 1004079) ("XRANGE" . 1004081) ("YRANGE" . 1004083) ("ZRANGE" . 1004085)))
1244 ("Init" fun "IDLgrLight" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrLight')" (("ATTENUATION") ("COLOR") ("CONEANGLE") ("DIRECTION") ("FOCUS") ("HIDE") ("INTENSITY") ("LOCATION") ("NAME") ("TYPE") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1234 ("ReplaceData" pro "IDLanROI" (system) "Obj->[%s::]%s, X[, Y[, Z]]" ("objects_an13.html" ("FINISH" . 1004123) ("START" . 1004130) ("XRANGE" . 1004136) ("YRANGE" . 1004138) ("ZRANGE" . 1004140)))
1245 ("Add" pro "IDLgrModel" (system) "Obj -> [%s::]%s, Object" (("ALIAS") ("POSITION"))) 1235 ("Rotate" pro "IDLanROI" (system) "Obj->[%s::]%s, Axis, Angle" ("objects_an14.html" ("CENTER" . 1004176)))
1246 ("Cleanup" pro "IDLgrModel" (system) "Obj -> [%s::]%s" nil) 1236 ("Scale" pro "IDLanROI" (system) "Obj->[%s::]%s, Sx[, Sy[, Sz]]" ("objects_an15.html"))
1247 ("Draw" pro "IDLgrModel" (system) "Obj -> [%s::]%s, Destination, Picture" nil) 1237 ("SetProperty" pro "IDLanROI" (system) "Obj->[%s::]%s" ("objects_an16.html" ) ("objects_an4.html" ("BLOCK_SIZE" . 1011320) ("DATA" . 1011322) ("DOUBLE" . 1011324) ("INTERIOR" . 1011326)))
1248 ("GetProperty" pro "IDLgrModel" (system) "Obj -> [%s::]%s" (("ALL") ("HIDE") ("LIGHTING") ("NAME") ("PARENT") ("SELECT_TARGET") ("TRANSFORM") ("UVALUE"))) 1238 ("Translate" pro "IDLanROI" (system) "Obj->[%s::]%s, Tx[, Ty[, Tz]]" ("objects_an17.html"))
1249 ("Reset" pro "IDLgrModel" (system) "Obj -> [%s::]%s" nil) 1239 ("ComputeGeometry" fun "IDLanROI" (system) "Result = Obj->[%s::]%s()" ("objects_an7.html" ("AREA" . 1003819) ("CENTROID" . 1003821) ("PERIMETER" . 1003823) ("SPATIAL_OFFSET" . 1003825) ("SPATIAL_SCALE" . 1003827)))
1250 ("Rotate" pro "IDLgrModel" (system) "Obj -> [%s::]%s, Axis, Angle" (("PREMULTIPLY"))) 1240 ("ComputeMask" fun "IDLanROI" (system) "Result = Obj->[%s::]%s()" ("objects_an8.html" ("DIMENSIONS" . 1003872) ("INITIALIZE" . 1003874) ("LOCATION" . 1003879) ("MASK_IN" . 1003881) ("MASK_RULE" . 1003883) ("PIXEL_CENTER" . 1003888) ("PLANE_NORMAL" . 1011165) ("PLANE_XAXIS" . 1003890) ("RUN_LENGTH" . 1003892)))
1251 ("Scale" pro "IDLgrModel" (system) "Obj -> [%s::]%s, Sx, Sy, Sz" (("PREMULTIPLY"))) 1241 ("ContainsPoints" fun "IDLanROI" (system) "Result = Obj->[%s::]%s( X [, Y [, Z]] )" ("objects_an9.html"))
1252 ("SetProperty" pro "IDLgrModel" (system) "Obj -> [%s::]%s" (("HIDE") ("LIGHTING") ("NAME") ("SELECT_TARGET") ("TRANSFORM") ("UVALUE"))) 1242 ("Init" fun "IDLanROI" (system) "Result = Obj->[%s::]%s([, X [, Y [, Z]]])" ("objects_an11.html" ) ("objects_an4.html" ("BLOCK_SIZE" . 1011320) ("DATA" . 1011322) ("DOUBLE" . 1011324) ("INTERIOR" . 1011326) ("TYPE" . 1011328)))
1253 ("Translate" pro "IDLgrModel" (system) "Obj -> [%s::]%s, Tx, Ty, Tz" (("PREMULTIPLY"))) 1243 ("Add" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, ROI" ("objects_an20.html"))
1254 ("GetByName" fun "IDLgrModel" (system) "Result = Obj -> [%s::]%s(Name)" nil) 1244 ("Cleanup" pro "IDLanROIGroup" (system) "Obj->[%s::]%s" ("objects_an21.html"))
1255 ("GetCTM" fun "IDLgrModel" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1245 ("GetProperty" pro "IDLanROIGroup" (system) "Obj->[%s::]%s" ("objects_an25.html" ) ("objects_an19.html" ("ALL" . 1011995) ("ROIGROUP_XRANGE " . 1011998) ("ROIGROUP_YRANGE " . 1012000) ("ROIGROUP_ZRANGE " . 1012002)))
1256 ("Init" fun "IDLgrModel" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrModel')" (("HIDE") ("LIGHTING") ("NAME") ("SELECT_TARGET") ("TRANSFORM") ("UVALUE"))) 1246 ("Rotate" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Axis, Angle" ("objects_an27.html" ("CENTER" . 1004731)))
1257 ("Cleanup" pro "IDLgrMPEG" (system) "Obj -> [%s::]%s" nil) 1247 ("Scale" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Sx[, Sy[, Sz]]" ("objects_an28.html"))
1258 ("GetProperty" pro "IDLgrMPEG" (system) "Obj -> [%s::]%s" (("ALL") ("BITRATE") ("DIMENSIONS") ("FILENAME") ("FORMAT") ("FRAME_RATE") ("IFRAME_GAP") ("INTERLACED") ("MOTION_VEC_LENGTH") ("QUALITY") ("SCALE") ("STATISTICS"))) 1248 ("Translate" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Tx[, Ty[, Tz]]" ("objects_an29.html"))
1259 ("Put" pro "IDLgrMPEG" (system) "Obj -> [%s::]%s, Image[, Frame]" nil) 1249 ("ComputeMask" fun "IDLanROIGroup" (system) "Result = Obj->[%s::]%s()" ("objects_an22.html" ("DIMENSIONS" . 1004482) ("INITIALIZE" . 1004484) ("LOCATION" . 1004489) ("MASK_IN" . 1004491) ("MASK_RULE" . 1004493) ("PLANE_NORMAL" . 1004498) ("PLANE_XAXIS" . 1004500) ("RUN_LENGTH" . 1004502)))
1260 ("Save" pro "IDLgrMPEG" (system) "Obj -> [%s::]%s" (("CREATOR_TYPE") ("FILENAME"))) 1250 ("ComputeMesh" fun "IDLanROIGroup" (system) "Result = Obj->[%s::]%s( Vertices, Conn)" ("objects_an23.html" ("CAPPED" . 1004551) ("SURFACE_AREA" . 1004556)))
1261 ("SetProperty" pro "IDLgrMPEG" (system) "Obj -> [%s::]%s" (("BITRATE") ("DIMENSIONS") ("FILENAME") ("FORMAT") ("FRAME_RATE") ("IFRAME_GAP") ("INTERLACED") ("MOTION_VEC_LENGTH") ("QUALITY") ("SCALE") ("STATISTICS"))) 1251 ("ContainsPoints" fun "IDLanROIGroup" (system) "Result = Obj->[%s::]%s( X[, Y[, Z]] )" ("objects_an24.html"))
1262 ("Init" fun "IDLgrMPEG" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrMPEG')" (("BITRATE") ("DIMENSIONS") ("FILENAME") ("FORMAT") ("FRAME_RATE") ("IFRAME_GAP") ("INTERLACED") ("MOTION_VEC_LENGTH") ("QUALITY") ("SCALE") ("STATISTICS") ("TEMP_DIRECTORY"))) 1252 ("Init" fun "IDLanROIGroup" (system) "Result = Obj->[%s::]%s()" ("objects_an26.html" ))
1263 ("Cleanup" pro "IDLgrPalette" (system) "Obj -> [%s::]%s" nil) 1253 ("GetProperty" pro "IDLcomIDispatch" (system) "Obj->[%s::]%s" ("objects_misc25.html" ("KEYWORD")))
1264 ("GetProperty" pro "IDLgrPalette" (system) "Obj -> [%s::]%s" (("ALL") ("BLUE_VALUES") ("BOTTOM_STRETCH") ("GAMMA") ("GREEN_VALUES") ("N_COLORS") ("NAME") ("RED_VALUES") ("TOP_STRETCH") ("UVALUE"))) 1254 ("SetProperty" pro "IDLcomIDispatch" (system) "Obj->[%s::]%s" ("objects_misc27.html" ("KEYWORD")))
1265 ("LoadCT" pro "IDLgrPalette" (system) "Obj -> [%s::]%s, TableNum" (("FILENAME"))) 1255 ("Init" fun "IDLcomIDispatchCLSID" (system) "Result = Obj -> [%s::]%s()" ("objects_misc26.html"))
1266 ("SetProperty" pro "IDLgrPalette" (system) "Obj -> [%s::]%s" (("BLUE_VALUES") ("BOTTOM_STRETCH") ("GAMMA") ("GREEN_VALUES") ("NAME") ("RED_VALUES") ("TOP_STRETCH") ("UVALUE"))) 1256 ("Init" fun "IDLcomIDispatchPROGID" (system) "Result = Obj -> [%s::]%s()" ("objects_misc26.html"))
1267 ("SetRGB" pro "IDLgrPalette" (system) "Obj -> [%s::]%s, Index, Red, Green, Blue" nil) 1257 ("Connect" pro "IDLdbDatabase" (system) "DBobj -> [%s::]%s" ("api8.html" ("CONNECTION" . 998610) ("DATASOURCE" . 998682) ("PASSWORD" . 998786) ("USER_ID" . 998733)))
1268 ("GetRGB" fun "IDLgrPalette" (system) "Result = Obj -> [%s::]%s(Index)" nil) 1258 ("ExecuteSQL" pro "IDLdbDatabase" (system) "DBobj -> [%s::]%s, strSQL" ("api9.html"))
1269 ("Init" fun "IDLgrPalette" (system) "Result=Obj-> [%s::]%s( [aRed, aGreen, aBlue] ) ('IDLgrPalette', aRed, aGreen, aBlue)" (("BLUE_VALUES") ("BOTTOM_STRETCH") ("GAMMA") ("GREEN_VALUES") ("NAME") ("RED_VALUES") ("TOP_STRETCH") ("UVALUE"))) 1259 ("GetProperty" pro "IDLdbDatabase" (system) "DBobj -> [%s::]%s" ("api11.html" ) ("api7.html" ("CAN_GET_TABLES" . 1029718) ("DBMS_NAME" . 1029721) ("DBMS_VERSION" . 1029727) ("DRIVER_ODBC_LEVEL" . 1029724) ("DRIVER_VERSION" . 1029730) ("IS_CONNECTED" . 1029733) ("IS_READONLY" . 1029736) ("MAX_CONNECTIONS" . 1029739) ("MAX_RECORDSETS" . 1029742) ("ODBC_LEVEL" . 1029745) ("SQL_LEVEL" . 1029748) ("SQL_SERVER_NAME" . 1029751) ("USE_CURSOR_LIB" . 1029754) ("USER_NAME" . 1029760)))
1270 ("NearestColor" fun "IDLgrPalette" (system) "Result = Obj-> [%s::]%s(Red, Green, Blue)" nil) 1260 ("SetProperty" pro "IDLdbDatabase" (system) "DBobj -> [%s::]%s" ("api13.html" ) ("api7.html" ("USE_CURSOR_LIB" . 1029754) ("VERBOSE" . 1029819)))
1271 ("Cleanup" pro "IDLgrPattern" (system) "Obj -> [%s::]%s" nil) 1261 ("GetDatasources" fun "IDLdbDatabase" (system) "Datasources = DBobj -> [%s::]%s()" ("api10.html"))
1272 ("GetProperty" pro "IDLgrPattern" (system) "Obj -> [%s::]%s" (("ALL") ("NAME") ("ORIENTATION") ("PATTERN") ("SPACING") ("STYLE") ("UVALUE"))) 1262 ("GetTables" fun "IDLdbDatabase" (system) "Tables = DBobj -> [%s::]%s()" ("api12.html"))
1273 ("SetProperty" pro "IDLgrPattern" (system) "Obj -> [%s::]%s" (("NAME") ("ORIENTATION") ("PATTERN") ("SPACING") ("STYLE") ("UVALUE"))) 1263 ("AddRecord" pro "IDLdbRecordset" (system) "RSobj -> [%s::]%s[, field1[, field2[, ...[, fieldn]]]]" ("api16.html" ("SET_AUTOINCREMENT" . 1014791)))
1274 ("Init" fun "IDLgrPattern" (system) "Result = Obj -> [%s::]%s( [Style] ) ('IDLgrPattern' [, Style])" (("NAME") ("ORIENTATION") ("PATTERN") ("SPACING") ("STYLE") ("THICK") ("UVALUE"))) 1264 ("DeleteRecord" pro "IDLdbRecordset" (system) "RSobj -> [%s::]%s" ("api18.html"))
1275 ("Cleanup" pro "IDLgrPlot" (system) "Obj -> [%s::]%s" nil) 1265 ("GetProperty" pro "IDLdbRecordset" (system) "RSobj -> [%s::]%s" ("api20.html" ) ("api15.html" ("CAN_MOVE_ABSOLUTE" . 1030659) ("CAN_MOVE_FIRST" . 1030662) ("CAN_MOVE_LAST" . 1030665) ("CAN_MOVE_NEXT" . 1030668) ("CAN_MOVE_PRIOR" . 1030671) ("CAN_MOVE_RELATIVE" . 1030674) ("FIELD_INFO" . 1030677) ("GET_DATABASE" . 1030697) ("IS_READONLY" . 1030700) ("N_BUFFERS" . 1030703) ("RECORDSET_SOURCE" . 1030706)))
1276 ("GetProperty" pro "IDLgrPlot" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR") ("DATA") ("DOUBLE") ("HIDE") ("HISTOGRAM") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NAME") ("NSUM") ("PALETTE") ("PARENT") ("POLAR") ("SYMBOL") ("THICK") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE") ("ZVALUE"))) 1266 ("SetField" pro "IDLdbRecordset" (system) "RSobj -> [%s::]%s, iFieldNumber, Value" ("api24.html" ("NULL" . 1014812)))
1277 ("SetProperty" pro "IDLgrPlot" (system) "Obj -> [%s::]%s" (("COLOR") ("DATAY") ("DOUBLE") ("HIDE") ("HISTOGRAM") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NAME") ("NSUM") ("PALETTE") ("POLAR") ("RESET_DATA") ("SHARE_DATA") ("SYMBOL") ("THICK") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZVALUE"))) 1267 ("CurrentRecord" fun "IDLdbRecordset" (system) "number = RSobj -> [%s::]%s()" ("api17.html"))
1278 ("GetCTM" fun "IDLgrPlot" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1268 ("GetField" fun "IDLdbRecordset" (system) "value = RSobj -> [%s::]%s(iFieldNumber)" ("api19.html" ("IS_NULL" . 1013507) ("NULL_VALUE" . 1013559)))
1279 ("Init" fun "IDLgrPlot" (system) "Result = Obj -> [%s::]%s( [[X,] Y] ) ('IDLgrPlot' [, [X,] Y])" (("COLOR") ("DATAY") ("DOUBLE") ("HIDE") ("HISTOGRAM") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NAME") ("NSUM") ("PALETTE") ("POLAR") ("RESET_DATA") ("SHARE_DATA") ("SYMBOL") ("THICK") ("USE_ZVALUE") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZVALUE"))) 1269 ("GetRecord" fun "IDLdbRecordset" (system) "Result = RSobj -> [%s::]%s()" ("api21.html"))
1280 ("Cleanup" pro "IDLgrPolygon" (system) "Obj -> [%s::]%s" nil) 1270 ("MoveCursor" fun "IDLdbRecordset" (system) "Result = RSobj -> [%s::]%s()" ("api22.html" ("ABSOLUTE" . 1001009) ("FIRST" . 1001067) ("LAST" . 1001125) ("NEXT" . 1001187) ("PRIOR" . 1001255) ("RELATIVE" . 1001313)))
1281 ("GetProperty" pro "IDLgrPolygon" (system) "Obj -> [%s::]%s" (("ALL") ("BOTTOM") ("COLOR") ("DATA") ("DOUBLE") ("FILL_PATTERN") ("HIDE") ("LINESTYLE") ("NAME") ("NORMALS") ("PARENT") ("POLYGONS") ("REJECT") ("SHADE_RANGE") ("SHADING") ("STYLE") ("TEXTURE_COORD") ("TEXTURE_INTERP") ("TEXTURE_MAP") ("THICK") ("VERT_COLORS") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP") ("ZRANGE"))) 1271 ("NFields" fun "IDLdbRecordset" (system) "status = RSobj -> [%s::]%s()" ("api23.html"))
1282 ("SetProperty" pro "IDLgrPolygon" (system) "Obj -> [%s::]%s" (("BOTTOM") ("COLOR") ("DATA") ("DOUBLE") ("FILL_PATTERN") ("HIDE") ("LINESTYLE") ("NAME") ("NORMALS") ("POLYGONS") ("REJECT") ("RESET_DATA") ("SHADE_RANGE") ("SHADING") ("SHARE_DATA") ("STYLE") ("TEXTURE_COORD") ("TEXTURE_INTERP") ("TEXTURE_MAP") ("THICK") ("VERT_COLORS") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP"))) 1272 ("Cleanup" pro "IDLffDICOM" (system) "Obj->[%s::]%s" ("objects_ff6.html"))
1283 ("GetCTM" fun "IDLgrPolygon" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1273 ("DumpElements" pro "IDLffDICOM" (system) "Obj->[%s::]%s [, Filename]" ("objects_ff7.html"))
1284 ("Init" fun "IDLgrPolygon" (system) "Result = Obj -> [%s::]%s( [X, [Y, [Z]]] ) ('IDLgrPolygon' [, X [, Y[, Z]]])" (("BOTTOM") ("COLOR") ("DATA") ("DOUBLE") ("FILL_PATTERN") ("HIDDEN_LINES") ("HIDE") ("LINESTYLE") ("NAME") ("NORMALS") ("PALETTE") ("POLYGONS") ("REJECT") ("RESET_DATA") ("SHADE_RANGE") ("SHADING") ("SHARE_DATA") ("STYLE") ("TEXTURE_COORD") ("TEXTURE_INTERP") ("TEXTURE_MAP") ("THICK") ("VERT_COLORS") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP"))) 1274 ("Reset" pro "IDLffDICOM" (system) "Obj->[%s::]%s" ("objects_ff20.html"))
1285 ("Cleanup" pro "IDLgrPolyline" (system) "Obj -> [%s::]%s" nil) 1275 ("GetChildren" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s(Reference)" ("objects_ff8.html"))
1286 ("GetProperty" pro "IDLgrPolyline" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR") ("DATA") ("DOUBLE") ("HIDE") ("LINESTYLE") ("NAME") ("PALETTE") ("PARENT") ("POLYLINES") ("SHADING") ("SYMBOL") ("THICK") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1276 ("GetDescription" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s([Group [, Element]])" ("objects_ff9.html" ("REFERENCE" . 1004342)))
1287 ("SetProperty" pro "IDLgrPolyline" (system) "Obj -> [%s::]%s" (("COLOR") ("DATA") ("DOUBLE") ("HIDE") ("LINESTYLE") ("NAME") ("PALETTE") ("POLYLINES") ("RESET_DATA") ("SHADING") ("SHARE_DATA") ("SYMBOL") ("THICK") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1277 ("GetGroup" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s([Group[, Element]])" ("objects_ff11.html" ("REFERENCE" . 1004455)))
1288 ("GetCTM" fun "IDLgrPolyline" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1278 ("GetLength" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s([Group [, Element]])" ("objects_ff12.html" ("REFERENCE" . 1004513)))
1289 ("Init" fun "IDLgrPolyline" (system) "Result = Obj -> [%s::]%s( [X, [Y, [Z]]] ) ('IDLgrPolyline' [, X [, Y[, Z]]])" (("COLOR") ("DATA") ("DOUBLE") ("HIDE") ("LINESTYLE") ("NAME") ("PALETTE") ("POLYLINES") ("RESET_DATA") ("SHADING") ("SHARE_DATA") ("SYMBOL") ("THICK") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1279 ("GetParent" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s(ReferenceList)" ("objects_ff13.html"))
1290 ("Cleanup" pro "IDLgrPrinter" (system) "Obj -> [%s::]%s" nil) 1280 ("GetPreamble" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s()" ("objects_ff14.html"))
1291 ("Draw" pro "IDLgrPrinter" (system) "Obj -> [%s::]%s [, Picture]" (("VECTOR"))) 1281 ("GetReference" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s([Group [, Element]])" ("objects_ff15.html" ("DESCRIPTION" . 1004671) ("VR" . 1004673)))
1292 ("GetProperty" pro "IDLgrPrinter" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR_MODEL") ("DIMENSIONS") ("GRAPHICS_TREE") ("LANDSCAPE") ("N_COLORS") ("N_COPIES") ("NAME") ("PALETTE") ("PRINT_QUALITY") ("QUALITY") ("RESOLUTION") ("UNITS") ("UVALUE"))) 1282 ("GetValue" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s([Group [, Element]])" ("objects_ff16.html" ("NO_COPY" . 1004738) ("REFERENCE" . 1004736)))
1293 ("NewDocument" pro "IDLgrPrinter" (system) "Obj -> [%s::]%s" nil) 1283 ("GetVR" fun "IDLffDICOM" (system) "array = Obj->[%s::]%s([Group [, Element]])" ("objects_ff17.html" ("REFERENCE" . 1004843)))
1294 ("NewPage" pro "IDLgrPrinter" (system) "Obj -> [%s::]%s" nil) 1284 ("Init" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s([, Filename])" ("objects_ff18.html" ) ("objects_ff5.html" ("VERBOSE" . 1024027)))
1295 ("SetProperty" pro "IDLgrPrinter" (system) "Obj -> [%s::]%s" (("GRAPHICS_TREE") ("LANDSCAPE") ("N_COPIES") ("PALETTE") ("PRINT_QUALITY") ("QUALITY") ("UNITS") ("UVALUE"))) 1285 ("Read" fun "IDLffDICOM" (system) "Result = Obj->[%s::]%s(Filename)" ("objects_ff19.html" ("ENDIAN" . 1004946)))
1296 ("GetContiguousPixels" fun "IDLgrPrinter" (system) "Return = Obj -> [%s::]%s()" nil) 1286 ("Cleanup" pro "IDLffDXF" (system) "Obj->[%s::]%s" ("objects_ff23.html"))
1297 ("GetFontnames" fun "IDLgrPrinter" (system) "Return = Obj -> [%s::]%s( FamilyName)" (("IDL_FONTS") ("STYLES"))) 1287 ("GetPalette" pro "IDLffDXF" (system) "Obj->[%s::]%s, Red, Green, Blue" ("objects_ff26.html"))
1298 ("GetTextDimensions" fun "IDLgrPrinter" (system) "Result = Obj ->[%s::]%s( TextObj)" (("DESCENT") ("PATH"))) 1288 ("PutEntity" pro "IDLffDXF" (system) "Obj->[%s::]%s, Data" ("objects_ff28.html"))
1299 ("Init" fun "IDLgrPrinter" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrPrinter')" (("COLOR_MODEL") ("GRAPHICS_TREE") ("LANDSCAPE") ("N_COLORS") ("N_COPIES") ("PALETTE") ("PRINT_QUALITY") ("QUALITY") ("UNITS") ("UVALUE"))) 1289 ("RemoveEntity" pro "IDLffDXF" (system) "Obj->[%s::]%s[, Type]" ("objects_ff30.html" ("INDEX" . 1006265)))
1300 ("Cleanup" pro "IDLgrROI" (system) "Obj->[%s::]%s" nil) 1290 ("Reset" pro "IDLffDXF" (system) "Obj->[%s::]%s" ("objects_ff31.html"))
1301 ("GetProperty" pro "IDLgrROI" (system) "Obj->[%s::]%s" (("ALL") ("COLOR") ("DOUBLE") ("HIDE") ("LINESTYLE") ("NAME") ("PALETTE") ("STYLE") ("SYMBOL") ("THICK") ("UVALUE") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1291 ("SetPalette" pro "IDLffDXF" (system) "Obj->[%s::]%s, Red, Green, Blue" ("objects_ff32.html"))
1302 ("SetProperty" pro "IDLgrROI" (system) "Obj->[%s::]%s" (("COLOR") ("DOUBLE") ("HIDE") ("LINESTYLE") ("NAME") ("PALETTE") ("STYLE") ("SYMBOL") ("THICK") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1292 ("GetContents" fun "IDLffDXF" (system) "Result = Obj->[%s::]%s( [Filter])" ("objects_ff24.html" ("BLOCK" . 1005307) ("COUNT" . 1005309) ("LAYER" . 1005311)))
1303 ("Init" fun "IDLgrROI" (system) "Result = Obj->[%s::]%s([X[, Y[, Z]]] ) ( 'IDLgrROI' [, X[, Y[, Z]]])" (("COLOR") ("DOUBLE") ("HIDE") ("LINESTYLE") ("NAME") ("PALETTE") ("STYLE") ("SYMBOL") ("THICK") ("UVALUE") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1293 ("GetEntity" fun "IDLffDXF" (system) "Result = Obj->[%s::]%s(Type)" ("objects_ff25.html" ("BLOCK" . 1005352) ("INDEX" . 1005354) ("LAYER" . 1005356)))
1304 ("PickVertex" fun "IDLgrROI" (system) "Result = Obj->[%s::]%s( Dest, View, Point)" (("PATH"))) 1294 ("Init" fun "IDLffDXF" (system) "Result = Obj->[%s::]%s([, Filename] )" ("objects_ff27.html" ))
1305 ("Add" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s, ROI" nil) 1295 ("Read" fun "IDLffDXF" (system) "Result = Obj->[%s::]%s(Filename)" ("objects_ff29.html"))
1306 ("Cleanup" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" nil) 1296 ("Write" fun "IDLffDXF" (system) "Result = Obj->[%s::]%s(Filename)" ("objects_ff33.html"))
1307 ("GetProperty" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" (("ALL") ("COLOR") ("HIDE") ("NAME") ("PARENT") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1297 ("SetData" pro "IDLffJPEG2000" (system) "Obj->[%s::]%s ([P1, ..., Pn])" ("objects_ff42.html" ("COMPONENT" . 1141582) ("ORDER" . 1141585) ("TILE_INDEX" . 1141588)))
1308 ("SetProperty" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" (("COLOR") ("HIDE") ("NAME") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1298 ("GetData" fun "IDLffJPEG2000" (system) "Result = Obj->[%s::]%s()" ("objects_ff38.html" ("COMPONENT" . 1141336) ("DISCARD_LEVELS" . 1141339) ("MAX_LAYERS" . 1141342) ("N_COMPONENTS" . 1141345) ("ORDER" . 1141348) ("REGION" . 1141351) ("RGB" . 1141355) ("TILE_INDEX" . 1141363)))
1309 ("Init" fun "IDLgrROIGroup" (system) "Result = Obj->[%s::]%s( ) ('IDLgrROIGroup')" (("COLOR") ("HIDE") ("NAME") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1299 ("Init" fun "IDLffJPEG2000" (system) "Result = Obj->[%s::]%s(, Filename)" ("objects_ff41.html" ) ("objects_ff36.html" ("BIT_DEPTH" . 1140492) ("COMMENT" . 1140557) ("DIMENSIONS" . 1140585) ("DISPLAY_RESOLUTION" . 1140613) ("FILENAME" . 1140643) ("N_COMPONENTS" . 1181381) ("N_LAYERS" . 1140729) ("N_LEVELS" . 1140758) ("OFFSET" . 1140815) ("PALETTE" . 1140843) ("PERSISTENT" . 1140875) ("PROGRESSION" . 1140903) ("QUIET" . 1140953) ("READ" . 1140981) ("REVERSIBLE" . 1141009) ("SIGNED" . 1141037) ("TILE_DIMENSIONS" . 1141095) ("TILE_OFFSET" . 1141123) ("WRITE" . 1141181) ("XML" . 1141209) ("YCC" . 1141237)))
1310 ("PickRegion" fun "IDLgrROIGroup" (system) "Result = Obj->[%s::]%s( Dest, View, Point)" (("PATH"))) 1300 ("Cleanup" pro "IDLffLangCat" (system) "Obj->[%s::]%s" ("objects_ff47.html"))
1311 ("Add" pro "IDLgrScene" (system) "Obj -> [%s::]%s, View" (("POSITION"))) 1301 ("GetProperty" pro "IDLffLangCat" (system) "Obj->[%s::]%s" ("objects_ff48.html" ) ("objects_ff45.html" ("APP_NAME" . 1126713) ("APP_PATH" . 1126741) ("AVAILABLE_LANGUAGES" . 1126769) ("DEFAULT_KEYS" . 1126797) ("DEFAULT_LANGUAGE" . 1126825) ("DEFAULT_N_KEYS" . 1126853) ("FILENAME" . 1126881) ("KEYS" . 1126909) ("LANGUAGE" . 1126937) ("N_KEYS" . 1126965) ("VERBOSE" . 1126993)))
1312 ("Cleanup" pro "IDLgrScene" (system) "Obj -> [%s::]%s" nil) 1302 ("SetProperty" pro "IDLffLangCat" (system) "Obj->[%s::]%s" ("objects_ff51.html" ) ("objects_ff45.html" ("LANGUAGE" . 1126937) ("VERBOSE" . 1126993)))
1313 ("GetProperty" pro "IDLgrScene" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR") ("HIDE") ("NAME") ("TRANSPARENT") ("UVALUE"))) 1303 ("AppendCatalog" fun "IDLffLangCat" (system) "Result = Obj->[%s::]%s()" ("objects_ff46.html" ("APP_NAME" . 1127041) ("APP_PATH" . 1127050) ("FILENAME" . 1127056)))
1314 ("SetProperty" pro "IDLgrScene" (system) "Obj -> [%s::]%s" (("COLOR") ("HIDE") ("NAME") ("TRANSPARENT") ("UVALUE"))) 1304 ("Init" fun "IDLffLangCat" (system) "Result = Obj->[%s::]%s" ("objects_ff49.html" ("CONTINUE_ON_ERROR" . 1127135)) ("objects_ff45.html" ("APP_NAME" . 1126713) ("APP_PATH" . 1126741) ("DEFAULT_LANGUAGE" . 1126825) ("FILENAME" . 1126881) ("LANGUAGE" . 1126937) ("VERBOSE" . 1126993)))
1315 ("GetByName" fun "IDLgrScene" (system) "Result = Obj -> [%s::]%s(Name)" nil) 1305 ("Query" fun "IDLffLangCat" (system) "Result = Obj->[%s::]%s( Key)" ("objects_ff50.html" ("DEFAULT_STRING" . 1127154)))
1316 ("Init" fun "IDLgrScene" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrScene')" (("COLOR") ("HIDE") ("NAME") ("TRANSPARENT") ("UVALUE"))) 1306 ("Cleanup" pro "IDLffMrSID" (system) "Obj->[%s::]%s" ("objects_ff54.html"))
1317 ("Cleanup" pro "IDLgrSurface" (system) "Obj -> [%s::]%s" nil) 1307 ("GetProperty" pro "IDLffMrSID" (system) "Obj->[%s::]%s" ("objects_ff57.html" ("CHANNELS" . 1006873) ("DIMENSIONS" . 1006875) ("GEO_ORIGIN" . 1064441) ("GEO_PROJTYPE" . 1064460) ("GEO_RESOLUTION" . 1064466) ("GEO_VALID" . 1064449) ("LEVELS" . 1006877) ("PIXEL_TYPE" . 1006879) ("TYPE" . 1006884)))
1318 ("GetProperty" pro "IDLgrSurface" (system) "Obj -> [%s::]%s" (("ALL") ("BOTTOM") ("COLOR") ("DATA") ("DOUBLE") ("EXTENDED_LEGO") ("HIDDEN_LINES") ("HIDE") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NAME") ("PALETTE") ("PARENT") ("SHADE_RANGE") ("SHADING") ("SHOW_SKIRT") ("SKIRT") ("STYLE") ("TEXTURE_COORD") ("TEXTURE_INTERP") ("TEXTURE_MAP") ("THICK") ("USE_TRIANGLES") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP") ("ZRANGE"))) 1308 ("GetDimsAtLevel" fun "IDLffMrSID" (system) "Result = Obj->[%s::]%s (Level)" ("objects_ff55.html"))
1319 ("SetProperty" pro "IDLgrSurface" (system) "Obj -> [%s::]%s" (("BOTTOM") ("COLOR") ("DATAX") ("DATAY") ("DATAZ") ("DOUBLE") ("EXTENDED_LEGO") ("HIDDEN_LINES") ("HIDE") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NAME") ("PALETTE") ("RESET_DATA") ("SHADE_RANGE") ("SHADING") ("SHARE_DATA") ("SHOW_SKIRT") ("SKIRT") ("STYLE") ("TEXTURE_COORD") ("TEXTURE_INTERP") ("TEXTURE_MAP") ("THICK") ("USE_TRIANGLES") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP"))) 1309 ("GetImageData" fun "IDLffMrSID" (system) "Result = Obj->[%s::]%s ()" ("objects_ff56.html" ("LEVEL" . 1006785) ("SUB_RECT" . 1006788)))
1320 ("GetCTM" fun "IDLgrSurface" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1310 ("Init" fun "IDLffMrSID" (system) "Result = Obj->[%s::]%s(, Filename)" ("objects_ff58.html" ) ("objects_ff53.html" ("QUIET" . 1026758)))
1321 ("Init" fun "IDLgrSurface" (system) "Result = Obj -> [%s::]%s( [Z [, X, Y]] ) ('IDLgrSurface' [, Z [, X, Y]])" (("BOTTOM") ("COLOR") ("DATAX") ("DATAY") ("DATAZ") ("DOUBLE") ("EXTENDED_LEGO") ("HIDDEN_LINES") ("HIDE") ("LINESTYLE") ("MAX_VALUE") ("MIN_VALUE") ("NAME") ("PALETTE") ("RESET_DATA") ("SHADE_RANGE") ("SHADING") ("SHARE_DATA") ("SHOW_SKIRT") ("SKIRT") ("STYLE") ("TEXTURE_COORD") ("TEXTURE_INTERP") ("TEXTURE_MAP") ("THICK") ("USE_TRIANGLES") ("UVALUE") ("VERT_COLORS") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP"))) 1311 ("AddAttribute" pro "IDLffShape" (system) "Obj->[%s::]%s, Name, Type, Width" ("objects_ff62.html" ("PRECISION" . 1007582)))
1322 ("Cleanup" pro "IDLgrSymbol" (system) "Obj -> [%s::]%s" nil) 1312 ("Cleanup" pro "IDLffShape" (system) "Obj->[%s::]%s" ("objects_ff63.html"))
1323 ("GetProperty" pro "IDLgrSymbol" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR") ("DATA") ("NAME") ("SIZE") ("THICK") ("UVALUE"))) 1313 ("Close" pro "IDLffShape" (system) "Obj->[%s::]%s" ("objects_ff64.html"))
1324 ("SetProperty" pro "IDLgrSymbol" (system) "Obj -> [%s::]%s" (("COLOR") ("DATA") ("NAME") ("SIZE") ("THICK") ("UVALUE"))) 1314 ("DestroyEntity" pro "IDLffShape" (system) "Obj->[%s::]%s, Entity" ("objects_ff65.html"))
1325 ("Init" fun "IDLgrSymbol" (system) "Result = Obj -> [%s::]%s( [Data] ) ('IDLgrSymbol' [, Data])" (("COLOR") ("DATA") ("NAME") ("SIZE") ("THICK") ("UVALUE"))) 1315 ("GetProperty" pro "IDLffShape" (system) "Obj->[%s::]%s" ("objects_ff68.html" ) ("objects_ff61.html" ("ATTRIBUTE_INFO" . 1027034) ("ATTRIBUTE_NAMES" . 1027309) ("ENTITY_TYPE" . 1027088) ("FILENAME" . 1027353) ("IS_OPEN" . 1027563) ("N_ATTRIBUTES" . 1027361) ("N_ENTITIES" . 1027330) ("N_RECORDS" . 1027328)))
1326 ("AddPolygon" pro "IDLgrTessellator" (system) "Obj -> [%s::]%s, X [, Y[, Z]]" (("INTERIOR") ("POLYGON"))) 1316 ("PutEntity" pro "IDLffShape" (system) "Obj->[%s::]%s, Data" ("objects_ff71.html"))
1327 ("Cleanup" pro "IDLgrTessellator" (system) "Obj -> [%s::]%s" nil) 1317 ("SetAttributes" pro "IDLffShape" (system) "Obj->[%s::]%s, Index, Attribute_Num, Value or Obj->[%s::]%s, Index, Attributes" ("objects_ff72.html"))
1328 ("Reset" pro "IDLgrTessellator" (system) "Obj -> [%s::]%s" nil) 1318 ("GetAttributes" fun "IDLffShape" (system) "Result = Obj->[%s::]%s([Index])" ("objects_ff66.html" ("ALL" . 1007785) ("ATTRIBUTE_STUCTURE" . 1007787)))
1329 ("Init" fun "IDLgrTessellator" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrTesselator')" nil) 1319 ("GetEntity" fun "IDLffShape" (system) "Result = Obj->[%s::]%s([Index])" ("objects_ff67.html" ("ALL" . 1007853) ("ATTRIBUTES" . 1007855)))
1330 ("Tessellate" fun "IDLgrTessellator" (system) "Result = Obj -> [%s::]%s( Vertices, Poly)" (("QUIET"))) 1320 ("Init" fun "IDLffShape" (system) "Result = Obj->[%s::]%s([, Filename])" ("objects_ff69.html" ) ("objects_ff61.html" ("DBF_ONLY" . 1027319) ("ENTITY_TYPE" . 1027088) ("UPDATE" . 1027071)))
1331 ("Cleanup" pro "IDLgrText" (system) "Obj -> [%s::]%s" nil) 1321 ("Open" fun "IDLffShape" (system) "Result = Obj->[%s::]%s( `Filename')" ("objects_ff70.html" ("DBF_ONLY" . 1008149) ("ENTITY_TYPE" . 1008154) ("UPDATE" . 1054733)))
1332 ("GetProperty" pro "IDLgrText" (system) "Obj -> [%s::]%s" (("ALIGNMENT") ("ALL") ("BASELINE") ("CHAR_DIMENSIONS") ("COLOR") ("ENABLE_FORMATTING") ("FONT") ("HIDE") ("LOCATIONS") ("NAME") ("ONGLASS") ("PALETTE") ("PARENT") ("RECOMPUTE_DIMENSIONS") ("STRINGS") ("UPDIR") ("UVALUE") ("VERTICAL_ALIGNMENT") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZCOORD_CONV") ("ZRANGE"))) 1322 ("SetValue" pro "IDLffXMLDOMAttr" (system) "Obj->[%s::]%s, Value" ("objects_ff81.html"))
1333 ("SetProperty" pro "IDLgrText" (system) "Obj -> [%s::]%s" (("ALIGNMENT") ("BASELINE") ("CHAR_DIMENSIONS") ("COLOR") ("ENABLE_FORMATTING") ("FONT") ("HIDE") ("LOCATIONS") ("NAME") ("ONGLASS") ("PALETTE") ("RECOMPUTE_DIMENSIONS") ("STRINGS") ("UPDIR") ("UVALUE") ("VERTICAL_ALIGNMENT") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1323 ("GetName" fun "IDLffXMLDOMAttr" (system) "Result = Obj->[%s::]%s()" ("objects_ff77.html"))
1334 ("GetCTM" fun "IDLgrText" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1324 ("GetSpecified" fun "IDLffXMLDOMAttr" (system) "Result = Obj->[%s::]%s()" ("objects_ff78.html"))
1335 ("Init" fun "IDLgrText" (system) "Result = Obj -> [%s::]%s( [String or vector of strings] ) ('IDLgrText' [, String or vector of strings])" (("ALIGNMENT") ("BASELINE") ("CHAR_DIMENSIONS") ("COLOR") ("ENABLE_FORMATTING") ("FONT") ("HIDE") ("LOCATIONS") ("NAME") ("ONGLASS") ("PALETTE") ("RECOMPUTE_DIMENSIONS") ("STRINGS") ("UPDIR") ("UVALUE") ("VERTICAL_ALIGNMENT") ("XCOORD_CONV") ("YCOORD_CONV") ("ZCOORD_CONV"))) 1325 ("GetValue" fun "IDLffXMLDOMAttr" (system) "Result = Obj->[%s::]%s()" ("objects_ff79.html"))
1336 ("Add" pro "IDLgrView" (system) "Obj -> [%s::]%s, Model" (("POSITION"))) 1326 ("AppendData" pro "IDLffXMLDOMCharacterData" (system) "Obj->[%s::]%s, String" ("objects_ff88.html"))
1337 ("Cleanup" pro "IDLgrView" (system) "Obj -> [%s::]%s" nil) 1327 ("DeleteData" pro "IDLffXMLDOMCharacterData" (system) "Obj->[%s::]%s, Offset, Count" ("objects_ff90.html"))
1338 ("GetProperty" pro "IDLgrView" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR") ("DEPTH_CUE") ("DIMENSIONS") ("EYE") ("LOCATION") ("PARENT") ("PROJECTION") ("TRANSPARENT") ("UNITS") ("UVALUE") ("VIEWPLANE_RECT") ("ZCLIP"))) 1328 ("InsertData" pro "IDLffXMLDOMCharacterData" (system) "Obj->[%s::]%s, Offset, String" ("objects_ff94.html"))
1339 ("SetProperty" pro "IDLgrView" (system) "Obj -> [%s::]%s" (("COLOR") ("DEPTH_CUE") ("DIMENSIONS") ("EYE") ("LOCATION") ("PROJECTION") ("TRANSPARENT") ("UNITS") ("UVALUE") ("VIEWPLANE_RECT") ("ZCLIP"))) 1329 ("ReplaceData" pro "IDLffXMLDOMCharacterData" (system) "Obj->[%s::]%s, Offset, Count, String" ("objects_ff95.html"))
1340 ("GetByName" fun "IDLgrView" (system) "Result = Obj -> [%s::]%s(Name)" nil) 1330 ("SetData" pro "IDLffXMLDOMCharacterData" (system) "Obj->[%s::]%s, String" ("objects_ff96.html"))
1341 ("Init" fun "IDLgrView" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrView')" (("COLOR") ("DEPTH_CUE") ("DIMENSIONS") ("DOUBLE") ("EYE") ("LOCATION") ("PROJECTION") ("TRANSPARENT") ("UNITS") ("UVALUE") ("VIEWPLANE_RECT") ("ZCLIP"))) 1331 ("GetData" fun "IDLffXMLDOMCharacterData" (system) "Result = Obj->[%s::]%s()" ("objects_ff91.html"))
1342 ("Add" pro "IDLgrViewgroup" (system) "Obj -> [%s::]%s, Object" (("POSITION"))) 1332 ("GetLength" fun "IDLffXMLDOMCharacterData" (system) "Result = Obj->[%s::]%s()" ("objects_ff92.html"))
1343 ("Cleanup" pro "IDLgrViewgroup" (system) "Obj -> [%s::]%s" nil) 1333 ("SubstringData" fun "IDLffXMLDOMCharacterData" (system) "Result = Obj->[%s::]%s( Offset, Count )" ("objects_ff97.html"))
1344 ("GetProperty" pro "IDLgrViewgroup" (system) "Obj -> [%s::]%s" (("ALL") ("HIDE") ("NAME") ("PARENT") ("UVALUE"))) 1334 ("Cleanup" pro "IDLffXMLDOMDocument" (system) "Obj->[%s::]%s" ("objects_ff104.html"))
1345 ("SetProperty" pro "IDLgrViewgroup" (system) "Obj -> [%s::]%s" (("HIDE") ("NAME") ("UVALUE"))) 1335 ("Load" pro "IDLffXMLDOMDocument" (system) "Obj->[%s::]%s" ("objects_ff117.html" ("EXCLUDE_IGNORABLE_WHITESPACE" . 1128132) ("EXPAND_ENTITY_REFERENCES" . 1128141) ("FILENAME" . 1128144) ("MSG_ERROR" . 1128147) ("MSG_FATAL" . 1128154) ("MSG_WARNING" . 1128160) ("QUIET" . 1128166) ("VALIDATION_MODE" . 1128169)))
1346 ("GetByName" fun "IDLgrViewgroup" (system) "Result = Obj -> [%s::]%s(Name)" nil) 1336 ("Save" pro "IDLffXMLDOMDocument" (system) "Obj->[%s::]%s" ("objects_ff118.html" ("EXPAND_ENTITY_REFERENCES" . 1128198) ("FILENAME" . 1128201) ("PRETTY_PRINT" . 1128204)))
1347 ("Init" fun "IDLgrViewgroup" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrViewgroup')" (("HIDE") ("NAME") ("UVALUE"))) 1337 ("CreateAttribute" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s( Name )" ("objects_ff105.html"))
1348 ("Cleanup" pro "IDLgrVolume" (system) "Obj -> [%s::]%s" nil) 1338 ("CreateCDATASection" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s( String )" ("objects_ff106.html"))
1349 ("ComputeBounds" pro "IDLgrVolume" (system) "Obj -> [%s::]%s" (("OPACITY") ("RESET") ("VOLUMES"))) 1339 ("CreateComment" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s( String )" ("objects_ff107.html"))
1350 ("GetProperty" pro "IDLgrVolume" (system) "Obj -> [%s::]%s" (("ALL") ("AMBIENT") ("BOUNDS") ("COMPOSITE_FUNCTION") ("CUTTING_PLANES") ("DATA0") ("DATA1") ("DATA2") ("DATA3") ("DEPTH_CUE") ("HIDE") ("HINTS") ("INTERPOLATE") ("LIGHTING_MODEL") ("NAME") ("NO_COPY") ("OPACITY_TABLE0") ("OPACITY_TABLE1") ("PARENT") ("RENDER_STEP") ("RGB_TABLE0") ("RGB_TABLE1") ("TWO_SIDED") ("UVALUE") ("VALID_DATA") ("VOLUME_SELECT") ("XCOORD_CONV") ("XRANGE") ("YCOORD_CONV") ("YRANGE") ("ZBUFFER") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP") ("ZRANGE"))) 1340 ("CreateDocumentFragment" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s()" ("objects_ff108.html"))
1351 ("SetProperty" pro "IDLgrVolume" (system) "Obj -> [%s::]%s" (("AMBIENT") ("BOUNDS") ("COMPOSITE_FUNCTION") ("CUTTING_PLANES") ("DATA0") ("DATA1") ("DATA2") ("DATA3") ("DEPTH_CUE") ("HIDE") ("HINTS") ("INTERPOLATE") ("LIGHTING_MODEL") ("NAME") ("NO_COPY") ("OPACITY_TABLE0") ("OPACITY_TABLE1") ("RENDER_STEP") ("RGB_TABLE0") ("RGB_TABLE1") ("TWO_SIDED") ("UVALUE") ("VOLUME_SELECT") ("XCOORD_CONV") ("YCOORD_CONV") ("ZBUFFER") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP"))) 1341 ("CreateElement" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s( TagName )" ("objects_ff109.html"))
1352 ("GetCTM" fun "IDLgrVolume" (system) "Result = Obj -> [%s::]%s()" (("DESTINATION") ("PATH") ("TOP"))) 1342 ("CreateEntityReference" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s( Name )" ("objects_ff110.html"))
1353 ("Init" fun "IDLgrVolume" (system) "Result = Obj -> [%s::]%s( [vol0 [, vol1 [, vol2 [, vol3]]]] ) ('IDLgrVolume' [, vol0 [, vol1 [, vol2 [, vol3]]]])" (("AMBIENT") ("BOUNDS") ("COMPOSITE_FUNCTION") ("CUTTING_PLANES") ("DATA0") ("DATA1") ("DATA2") ("DATA3") ("DEPTH_CUE") ("HIDE") ("HINTS") ("INTERPOLATE") ("LIGHTING_MODEL") ("NAME") ("NO_COPY") ("OPACITY_TABLE0") ("OPACITY_TABLE1") ("RENDER_STEP") ("RGB_TABLE0") ("RGB_TABLE1") ("TWO_SIDED") ("UVALUE") ("VOLUME_SELECT") ("XCOORD_CONV") ("YCOORD_CONV") ("ZBUFFER") ("ZCOORD_CONV") ("ZERO_OPACITY_SKIP"))) 1343 ("CreateProcessingInstruction" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s( Target, Data )" ("objects_ff111.html"))
1354 ("PickVoxel" fun "IDLgrVolume" (system) "Result = Obj -> [%s::]%s ( Win, View, Point)" (("PATH"))) 1344 ("CreateTextNode" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s( String )" ("objects_ff112.html"))
1355 ("Cleanup" pro "IDLgrVRML" (system) "Obj -> [%s::]%s" nil) 1345 ("GetDoctype" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s()" ("objects_ff113.html"))
1356 ("Draw" pro "IDLgrVRML" (system) "Obj -> [%s::]%s [, Picture]" nil) 1346 ("GetDocumentElement" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s()" ("objects_ff114.html"))
1357 ("GetDeviceInfo" pro "IDLgrVRML" (system) "Obj->[%s::]%s" (("ALL") ("MAX_TEXTURE_DIMENSIONS") ("MAX_VIEWPORT_DIMENSIONS") ("NAME") ("NUM_CPUS") ("VENDOR") ("VERSION"))) 1347 ("GetElementsByTagName" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s( TagName )" ("objects_ff115.html"))
1358 ("GetProperty" pro "IDLgrVRML" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR_MODEL") ("DIMENSIONS") ("FILENAME") ("GRAPHICS_TREE") ("N_COLORS") ("PALETTE") ("QUALITY") ("RESOLUTION") ("SCREEN_DIMENSIONS") ("UNITS") ("UVALUE"))) 1348 ("Init" fun "IDLffXMLDOMDocument" (system) "Result = Obj->[%s::]%s()" ("objects_ff116.html" ("EXCLUDE_IGNORABLE_WHITESPACE" . 1128039) ("EXPAND_ENTITY_REFERENCES" . 1128048) ("FILENAME" . 1128051) ("MSG_ERROR" . 1128054) ("MSG_FATAL" . 1128061) ("MSG_WARNING" . 1128067) ("QUIET" . 1128073) ("VALIDATION_MODE" . 1128076)))
1359 ("SetProperty" pro "IDLgrVRML" (system) "Obj -> [%s::]%s" (("DIMENSIONS") ("FILENAME") ("GRAPHICS_TREE") ("PALETTE") ("QUALITY") ("RESOLUTION") ("UNITS") ("UVALUE"))) 1349 ("GetEntities" fun "IDLffXMLDOMDocumentType" (system) "Result = Obj->[%s::]%s()" ("objects_ff126.html"))
1360 ("GetFontnames" fun "IDLgrVRML" (system) "Return = Obj ->[%s::]%s( FamilyName)" (("IDL_FONTS") ("STYLES"))) 1350 ("GetName" fun "IDLffXMLDOMDocumentType" (system) "Result = Obj->[%s::]%s()" ("objects_ff127.html"))
1361 ("GetTextDimensions" fun "IDLgrVRML" (system) "Result = Obj ->[%s::]%s( TextObj)" (("DESCENT") ("PATH"))) 1351 ("GetNotations" fun "IDLffXMLDOMDocumentType" (system) "Result = Obj->[%s::]%s()" ("objects_ff128.html"))
1362 ("Init" fun "IDLgrVRML" (system) "Result = Obj -> [%s::]%s( ) ('IDLgrVRML')" (("COLOR_MODEL") ("DIMENSIONS") ("FILENAME") ("GRAPHICS_TREE") ("N_COLORS") ("PALETTE") ("QUALITY") ("RESOLUTION") ("UNITS") ("UVALUE") ("WORLDINFO") ("WORLDTITLE"))) 1352 ("SetAttribute" pro "IDLffXMLDOMElement" (system) "Obj->[%s::]%s, Name, Value" ("objects_ff140.html"))
1363 ("Cleanup" pro "IDLgrWindow" (system) "Obj -> [%s::]%s" nil) 1353 ("GetAttribute" fun "IDLffXMLDOMElement" (system) "Result = Obj->[%s::]%s( Name )" ("objects_ff133.html"))
1364 ("Draw" pro "IDLgrWindow" (system) "Obj -> [%s::]%s [, Picture]" (("CREATE_INSTANCE") ("DRAW_INSTANCE"))) 1354 ("GetAttributeNode" fun "IDLffXMLDOMElement" (system) "Result = Obj->[%s::]%s( Name )" ("objects_ff134.html"))
1365 ("Erase" pro "IDLgrWindow" (system) "Obj -> [%s::]%s" (("COLOR"))) 1355 ("GetElementsByTagName" fun "IDLffXMLDOMElement" (system) "Result = Obj->[%s::]%s( TagName )" ("objects_ff135.html"))
1366 ("GetDeviceInfo" pro "IDLgrWindow" (system) "Obj->[%s::]%s" (("ALL") ("MAX_TEXTURE_DIMENSIONS") ("MAX_VIEWPORT_DIMENSIONS") ("NAME") ("NUM_CPUS") ("VENDOR") ("VERSION"))) 1356 ("GetTagName" fun "IDLffXMLDOMElement" (system) "Result = Obj->[%s::]%s()" ("objects_ff136.html"))
1367 ("GetProperty" pro "IDLgrWindow" (system) "Obj -> [%s::]%s" (("ALL") ("COLOR_MODEL") ("DIMENSIONS") ("DISPLAY_NAME") ("GRAPHICS_TREE") ("IMAGE_DATA") ("LOCATION") ("N_COLORS") ("PALETTE") ("QUALITY") ("RENDERER") ("RESOLUTION") ("RETAIN") ("SCREEN_DIMENSIONS") ("TITLE") ("UNITS") ("UVALUE") ("ZBUFFER_DATA"))) 1357 ("RemoveAttribute" fun "IDLffXMLDOMElement" (system) "Result = Obj->[%s::]%s( Name )" ("objects_ff138.html"))
1368 ("Iconify" pro "IDLgrWindow" (system) "Obj -> [%s::]%s, IconFlag" nil) 1358 ("RemoveAttributeNode" fun "IDLffXMLDOMElement" (system) "Result = Obj->[%s::]%s( OldAttr )" ("objects_ff139.html"))
1369 ("SetCurrentCursor" pro "IDLgrWindow" (system) "Obj-> [%s::]%s [, CursorName]" (("HOTSPOT") ("IMAGE") ("MASK") ("STANDARD"))) 1359 ("SetAttributeNode" fun "IDLffXMLDOMElement" (system) "Result = Obj->[%s::]%s( NewAttr )" ("objects_ff141.html"))
1370 ("SetProperty" pro "IDLgrWindow" (system) "Obj -> [%s::]%s" (("DIMENSIONS") ("GRAPHICS_TREE") ("LOCATION") ("PALETTE") ("QUALITY") ("TITLE") ("UNITS") ("UVALUE"))) 1360 ("GetNotationName" fun "IDLffXMLDOMEntity" (system) "Result = Obj->[%s::]%s()" ("objects_ff145.html"))
1371 ("Show" pro "IDLgrWindow" (system) "Obj -> [%s::]%s, Position" nil) 1361 ("GetPublicId" fun "IDLffXMLDOMEntity" (system) "Result = Obj->[%s::]%s()" ("objects_ff146.html"))
1372 ("GetContiguousPixels" fun "IDLgrWindow" (system) "Return = Obj -> [%s::]%s()" nil) 1362 ("GetSystemId" fun "IDLffXMLDOMEntity" (system) "Result = Obj->[%s::]%s()" ("objects_ff147.html"))
1373 ("GetFontnames" fun "IDLgrWindow" (system) "Return = Obj -> [%s::]%s(FamilyName)" (("IDL_FONTS") ("STYLES"))) 1363 ("GetLength" fun "IDLffXMLDOMNamedNodeMap" (system) "Result = Obj->[%s::]%s()" ("objects_ff156.html"))
1374 ("GetTextDimensions" fun "IDLgrWindow" (system) "Result = Obj ->[%s::]%s( TextObj)" (("DESCENT") ("PATH"))) 1364 ("GetNamedItem" fun "IDLffXMLDOMNamedNodeMap" (system) "Result = Obj->[%s::]%s( Name )" ("objects_ff157.html"))
1375 ("Init" fun "IDLgrWindow" (system) "Result = Obj -> [%s::]%s( )" (("COLOR_MODEL") ("DIMENSIONS") ("DISPLAY_NAME") ("GRAPHICS_TREE") ("LOCATION") ("N_COLORS") ("PALETTE") ("QUALITY") ("RENDERER") ("RETAIN") ("TITLE") ("UNITS") ("UVALUE"))) 1365 ("Item" fun "IDLffXMLDOMNamedNodeMap" (system) "Result = Obj->[%s::]%s( Index )" ("objects_ff159.html"))
1376 ("PickData" fun "IDLgrWindow" (system) "Result = Obj -> [%s::]%s( View, Object, Location, XYZLocation)" (("PATH"))) 1366 ("RemoveNamedItem" fun "IDLffXMLDOMNamedNodeMap" (system) "Result = Obj->[%s::]%s( Name )" ("objects_ff160.html"))
1377 ("Read" fun "IDLgrWindow" (system) "Result = Obj -> [%s::]%s()" nil) 1367 ("SetNamedItem" fun "IDLffXMLDOMNamedNodeMap" (system) "Result = Obj->[%s::]%s( Node )" ("objects_ff161.html"))
1378 ("Select" fun "IDLgrWindow" (system) "Result = Obj -> [%s::]%s( Picture, XY)" (("DIMENSIONS") ("UNITS"))) 1368 ("SetNodeValue" pro "IDLffXMLDOMNode" (system) "Obj->[%s::]%s( NodeValue )" ("objects_ff183.html"))
1379 ("Reset" pro "TrackBall" (system) "Obj -> [%s::]%s, Center, Radius" (("AXIS") ("CONSTRAIN") ("MOUSE"))) 1369 ("AppendChild" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s( NewChild )" ("objects_ff164.html"))
1380 ("Init" fun "TrackBall" (system) "Result = Obj -> [%s::]%s( Center, Radius ) ('TrackBall', Center, Radius)" (("AXIS") ("CONSTRAIN") ("MOUSE"))) 1370 ("CloneNode" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff166.html" ("DEEP" . 1129314)))
1381 ("Update" fun "TrackBall" (system) "Result = Obj -> [%s::]%s( sEvent)" (("MOUSE") ("TRANSFORM") ("TRANSLATE"))) 1371 ("GetAttributes" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff167.html"))
1372 ("GetChildNodes" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff168.html"))
1373 ("GetFirstChild" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff169.html"))
1374 ("GetLastChild" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff170.html"))
1375 ("GetNextSibling" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff171.html"))
1376 ("GetNodeName" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff172.html"))
1377 ("GetNodeType" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff173.html"))
1378 ("GetNodeValue" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff174.html"))
1379 ("GetOwnerDocument" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff175.html"))
1380 ("GetParentNode" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff176.html"))
1381 ("GetPreviousSibling" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff177.html"))
1382 ("HasChildNodes" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s()" ("objects_ff178.html"))
1383 ("InsertBefore" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s( NewChild [, RefChild] )" ("objects_ff180.html"))
1384 ("RemoveChild" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s( OldChild )" ("objects_ff181.html"))
1385 ("ReplaceChild" fun "IDLffXMLDOMNode" (system) "Result = Obj->[%s::]%s( NewChild, OldChild )" ("objects_ff182.html"))
1386 ("GetLength" fun "IDLffXMLDOMNodeList" (system) "Result = Obj->[%s::]%s()" ("objects_ff187.html"))
1387 ("Item" fun "IDLffXMLDOMNodeList" (system) "Result = Obj->[%s::]%s( Index )" ("objects_ff189.html"))
1388 ("GetPublicId" fun "IDLffXMLDOMNotation" (system) "Result = Obj->[%s::]%s()" ("objects_ff193.html"))
1389 ("GetSystemId" fun "IDLffXMLDOMNotation" (system) "Result = Obj->[%s::]%s()" ("objects_ff194.html"))
1390 ("SetData" pro "IDLffXMLDOMProcessingInstruction" (system) "Obj->[%s::]%s, Content" ("objects_ff202.html"))
1391 ("GetData" fun "IDLffXMLDOMProcessingInstruction" (system) "Result = Obj->[%s::]%s()" ("objects_ff199.html"))
1392 ("GetTarget" fun "IDLffXMLDOMProcessingInstruction" (system) "Result = Obj->[%s::]%s()" ("objects_ff200.html"))
1393 ("IsIgnorableWhitespace" fun "IDLffXMLDOMText" (system) "Result = Obj->[%s::]%s()" ("objects_ff207.html"))
1394 ("SplitText" fun "IDLffXMLDOMText" (system) "Result = Obj->[%s::]%s( Offset )" ("objects_ff208.html"))
1395 ("AttributeDecl" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, eName, aName, Type, Mode, Value" ("objects_ff211.html"))
1396 ("Characters" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Chars" ("objects_ff212.html"))
1397 ("Cleanup" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff213.html"))
1398 ("Comment" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Comment" ("objects_ff214.html"))
1399 ("ElementDecl" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name, Model" ("objects_ff215.html"))
1400 ("EndCDATA" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff216.html"))
1401 ("EndDocument" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff217.html"))
1402 ("EndDTD" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff218.html"))
1403 ("EndElement" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, URI, Local, qName" ("objects_ff219.html"))
1404 ("EndEntity" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name" ("objects_ff220.html"))
1405 ("EndPrefixMapping" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Prefix" ("objects_ff221.html"))
1406 ("Error" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, SystemID, LineNumber, ColumnNumber, Message" ("objects_ff222.html"))
1407 ("ExternalEntityDecl" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name, PublicID, SystemID" ("objects_ff223.html"))
1408 ("FatalError" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, SystemID, LineNumber, ColumnNumber, Message" ("objects_ff224.html"))
1409 ("GetProperty" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff225.html" ) ("objects_ff210.html" ("FILENAME" . 1027975) ("NAMESPACE_PREFIXES" . 1028045) ("PARSER_LOCATION" . 1028043) ("PARSER_PUBLICID" . 1027979) ("PARSER_URI" . 1027981) ("SCHEMA_CHECKING" . 1027990) ("VALIDATION_MODE" . 1028403)))
1410 ("IgnorableWhitespace" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Chars" ("objects_ff226.html"))
1411 ("InternalEntityDecl" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name, Value" ("objects_ff228.html"))
1412 ("NotationDecl" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name, PublicID, SystemID" ("objects_ff229.html"))
1413 ("ParseFile" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Filename" ("objects_ff230.html"))
1414 ("ProcessingInstruction" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Target, Data" ("objects_ff231.html"))
1415 ("SetProperty" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff232.html" ) ("objects_ff210.html" ("NAMESPACE_PREFIXES" . 1028045) ("SCHEMA_CHECKING" . 1027990) ("VALIDATION_MODE" . 1028403)))
1416 ("SkippedEntity" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name" ("objects_ff233.html"))
1417 ("StartCDATA" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff234.html"))
1418 ("StartDocument" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff235.html"))
1419 ("StartDTD" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name, PublicID, SystemID" ("objects_ff236.html"))
1420 ("StartElement" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, URI, Local, qName [, attName, attValue]" ("objects_ff237.html"))
1421 ("StartEntity" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name" ("objects_ff238.html"))
1422 ("StartPrefixmapping" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Prefix, URI" ("objects_ff239.html"))
1423 ("StopParsing" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s" ("objects_ff240.html"))
1424 ("UnparsedEntityDecl" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, Name, PublicID, SystemID, Notation" ("objects_ff241.html"))
1425 ("Warning" pro "IDLffXMLSAX" (system) "Obj->[%s::]%s, SystemID, LineNumber, ColumnNumber, Message" ("objects_ff242.html"))
1426 ("Init" fun "IDLffXMLSAX" (system) "Result = Obj->[%s::]%s()" ("objects_ff227.html" ) ("objects_ff210.html" ("NAMESPACE_PREFIXES" . 1028045) ("SCHEMA_CHECKING" . 1027990) ("VALIDATION_MODE" . 1028403)))
1427 ("Cleanup" pro "IDLgrAxis" (system) "Obj->[%s::]%s" ("objects_gr5.html"))
1428 ("GetProperty" pro "IDLgrAxis" (system) "Obj->[%s::]%s" ("objects_gr7.html" ) ("objects_gr4.html" ("ALL" . 1045686) ("ALPHA_CHANNEL" . 1486818) ("AM_PM" . 1045715) ("CLIP_PLANES" . 1045717) ("COLOR" . 1045723) ("CRANGE" . 1047485) ("DAYS_OF_WEEK" . 1045725) ("DEPTH_TEST_DISABLE" . 1045727) ("DEPTH_TEST_FUNCTION" . 1093233) ("DEPTH_WRITE_DISABLE" . 1093333) ("DIRECTION" . 1093366) ("EXACT" . 1045730) ("EXTEND" . 1045732) ("GRIDSTYLE" . 1045735) ("HIDE" . 1048340) ("LOCATION" . 1048266) ("LOG" . 1045756) ("MAJOR" . 1045758) ("MINOR" . 1045760) ("MONTHS" . 1045762) ("NOTEXT" . 1045766) ("PALETTE" . 1045768) ("PARENT" . 1047517) ("RANGE" . 1045770) ("SUBTICKLEN" . 1093445) ("TEXTALIGNMENTS" . 1045774) ("TEXTBASELINE" . 1048408) ("TEXTPOS" . 1045782) ("TEXTUPDIR" . 1045815) ("THICK" . 1045821) ("TICKDIR" . 1045823) ("TICKFORMAT" . 1565506) ("TICKFRMTDATA" . 1565556) ("TICKINTERVAL" . 1045845) ("TICKLAYOUT" . 1045848) ("TICKLEN" . 1045855) ("TICKTEXT" . 1362754) ("TICKUNITS" . 1362791) ("TICKVALUES" . 1281692) ("TITLE" . 1045882) ("USE_TEXT_COLOR" . 1045887) ("XCOORD_CONV" . 1045891) ("XRANGE" . 1047679) ("YCOORD_CONV" . 1045897) ("YRANGE" . 1047646) ("ZCOORD_CONV" . 1045903) ("ZRANGE" . 1047606)))
1429 ("SetProperty" pro "IDLgrAxis" (system) "Obj->[%s::]%s" ("objects_gr9.html" ) ("objects_gr4.html" ("ALPHA_CHANNEL" . 1486818) ("AM_PM" . 1045715) ("CLIP_PLANES" . 1045717) ("COLOR" . 1045723) ("DAYS_OF_WEEK" . 1045725) ("DEPTH_TEST_DISABLE" . 1045727) ("DEPTH_TEST_FUNCTION" . 1093233) ("DEPTH_WRITE_DISABLE" . 1093333) ("DIRECTION" . 1093366) ("EXACT" . 1045730) ("EXTEND" . 1045732) ("GRIDSTYLE" . 1045735) ("HIDE" . 1048340) ("LOCATION" . 1048266) ("LOG" . 1045756) ("MAJOR" . 1045758) ("MINOR" . 1045760) ("MONTHS" . 1045762) ("NOTEXT" . 1045766) ("RANGE" . 1045770) ("SUBTICKLEN" . 1093445) ("TEXTALIGNMENTS" . 1045774) ("TEXTBASELINE" . 1048408) ("TEXTPOS" . 1045782) ("TEXTUPDIR" . 1045815) ("THICK" . 1045821) ("TICKDIR" . 1045823) ("TICKFORMAT" . 1565506) ("TICKFRMTDATA" . 1565556) ("TICKINTERVAL" . 1045845) ("TICKLAYOUT" . 1045848) ("TICKLEN" . 1045855) ("TICKTEXT" . 1362754) ("TICKUNITS" . 1362791) ("TICKVALUES" . 1281692) ("TITLE" . 1045882) ("USE_TEXT_COLOR" . 1045887) ("XCOORD_CONV" . 1045891) ("YCOORD_CONV" . 1045897) ("ZCOORD_CONV" . 1045903)))
1430 ("GetCTM" fun "IDLgrAxis" (system) "Result = Obj->[%s::]%s()" ("objects_gr6.html" ("DESTINATION" . 1092556) ("PATH" . 1007341) ("TOP" . 1007347)))
1431 ("Init" fun "IDLgrAxis" (system) "Result = Obj->[%s::]%s([, Direction])" ("objects_gr8.html" ) ("objects_gr4.html" ("ALPHA_CHANNEL" . 1486818) ("AM_PM" . 1045715) ("CLIP_PLANES" . 1045717) ("COLOR" . 1045723) ("DAYS_OF_WEEK" . 1045725) ("DEPTH_TEST_DISABLE" . 1045727) ("DEPTH_TEST_FUNCTION" . 1093233) ("DEPTH_WRITE_DISABLE" . 1093333) ("DIRECTION" . 1093366) ("EXACT" . 1045730) ("EXTEND" . 1045732) ("GRIDSTYLE" . 1045735) ("HIDE" . 1048340) ("LOCATION" . 1048266) ("LOG" . 1045756) ("MAJOR" . 1045758) ("MINOR" . 1045760) ("MONTHS" . 1045762) ("NOTEXT" . 1045766) ("RANGE" . 1045770) ("REGISTER_PROPERTIES" . 1045772) ("SUBTICKLEN" . 1093445) ("TEXTALIGNMENTS" . 1045774) ("TEXTBASELINE" . 1048408) ("TEXTPOS" . 1045782) ("TEXTUPDIR" . 1045815) ("THICK" . 1045821) ("TICKDIR" . 1045823) ("TICKFORMAT" . 1565506) ("TICKFRMTDATA" . 1565556) ("TICKINTERVAL" . 1045845) ("TICKLAYOUT" . 1045848) ("TICKLEN" . 1045855) ("TICKTEXT" . 1362754) ("TICKUNITS" . 1362791) ("TICKVALUES" . 1281692) ("TITLE" . 1045882) ("USE_TEXT_COLOR" . 1045887) ("XCOORD_CONV" . 1045891) ("YCOORD_CONV" . 1045897) ("ZCOORD_CONV" . 1045903)))
1432 ("Cleanup" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr12.html"))
1433 ("Draw" pro "IDLgrBuffer" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr13.html" ("CREATE_INSTANCE" . 1007844) ("DRAW_INSTANCE" . 1007846)))
1434 ("Erase" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr14.html" ("COLOR" . 1007879)))
1435 ("GetDeviceInfo" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr16.html" ("ALL" . 1007957) ("MAX_NUM_CLIP_PLANES" . 1007959) ("MAX_TEXTURE_DIMENSIONS" . 1007961) ("MAX_VIEWPORT_DIMENSIONS" . 1007963) ("NAME" . 1007965) ("NUM_CPUS" . 1007967) ("VENDOR" . 1007970) ("VERSION" . 1007972)))
1436 ("GetProperty" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr18.html" ) ("objects_gr11.html" ("ALL" . 1050118) ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("IMAGE_DATA" . 1050202) ("N_COLORS" . 1092707) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("RESOLUTION " . 1093499) ("SCREEN_DIMENSIONS" . 1050191) ("UNITS " . 1050189) ("ZBUFFER_DATA" . 1050181)))
1437 ("SetProperty" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr24.html" ) ("objects_gr11.html" ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("RESOLUTION " . 1093499) ("UNITS " . 1050189)))
1438 ("GetContiguousPixels" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s()" ("objects_gr15.html"))
1439 ("GetFontnames" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s( FamilyName)" ("objects_gr17.html" ("IDL_FONTS" . 1008013) ("STYLES" . 1008015)))
1440 ("GetTextDimensions" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr19.html" ("DESCENT" . 1008088) ("PATH" . 1008090)))
1441 ("Init" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s()" ("objects_gr20.html" ) ("objects_gr11.html" ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("N_COLORS" . 1092707) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("REGISTER_PROPERTIES" . 1050154) ("RESOLUTION " . 1093499) ("UNITS " . 1050189)))
1442 ("PickData" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s( View, Object, Location, XYZLocation)" ("objects_gr21.html" ("DIMENSIONS" . 1008204) ("PATH" . 1008208) ("PICK_STATUS" . 1008214)))
1443 ("Read" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s()" ("objects_gr22.html"))
1444 ("Select" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s(Picture, XY)" ("objects_gr23.html" ("DIMENSIONS" . 1008316) ("ORDER" . 1008320) ("SUB_SELECTION" . 1343723) ("UNITS" . 1008323)))
1445 ("Cleanup" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr27.html"))
1446 ("Draw" pro "IDLgrClipboard" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr28.html" ("CMYK" . 1345463) ("FILENAME" . 1008514) ("POSTSCRIPT" . 1008516) ("VECT_SHADING" . 1340124) ("VECT_SORTING" . 1340189) ("VECT_TEXT_RENDER_METHOD" . 1340235) ("VECTOR" . 1008518)))
1447 ("GetDeviceInfo" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr30.html" ("ALL" . 1008688) ("MAX_NUM_CLIP_PLANES" . 1008690) ("MAX_TEXTURE_DIMENSIONS" . 1008692) ("MAX_VIEWPORT_DIMENSIONS" . 1008694) ("NAME" . 1008696) ("NUM_CPUS" . 1008698) ("VENDOR" . 1008701) ("VERSION" . 1008703)))
1448 ("GetProperty" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr32.html" ) ("objects_gr26.html" ("ALL" . 1050377) ("COLOR_MODEL" . 1050391) ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("N_COLORS" . 1050399) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("RESOLUTION " . 1093541) ("SCREEN_DIMENSIONS" . 1050442) ("UNITS" . 1050439)))
1449 ("SetProperty" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr35.html" ) ("objects_gr26.html" ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("RESOLUTION " . 1093541) ("UNITS" . 1050439)))
1450 ("GetContiguousPixels" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s()" ("objects_gr29.html"))
1451 ("GetFontnames" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s( FamilyName)" ("objects_gr31.html" ("IDL_FONTS" . 1008744) ("STYLES" . 1008746)))
1452 ("GetTextDimensions" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr33.html" ("DESCENT" . 1008820) ("PATH" . 1008822)))
1453 ("Init" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s()" ("objects_gr34.html" ) ("objects_gr26.html" ("COLOR_MODEL" . 1050391) ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("N_COLORS" . 1050399) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("REGISTER_PROPERTIES" . 1050408) ("RESOLUTION " . 1093541) ("UNITS" . 1050439)))
1454 ("Cleanup" pro "IDLgrColorbar" (system) "Obj->[%s::]%s" ("objects_gr38.html"))
1455 ("GetProperty" pro "IDLgrColorbar" (system) "Obj->[%s::]%s" ("objects_gr40.html" ) ("objects_gr37.html" ("ALL" . 1050584) ("BLUE_VALUES " . 1050601) ("COLOR " . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("PARENT" . 1050728) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED " . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE " . 1050651) ("XCOORD_CONV" . 1050655) ("XRANGE" . 1050718) ("YCOORD_CONV" . 1050716) ("YRANGE" . 1050708) ("ZCOORD_CONV " . 1050706) ("ZRANGE" . 1050697)))
1456 ("SetProperty" pro "IDLgrColorbar" (system) "Obj->[%s::]%s" ("objects_gr42.html" ) ("objects_gr37.html" ("BLUE_VALUES " . 1050601) ("COLOR " . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED " . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE " . 1050651) ("XCOORD_CONV" . 1050655) ("YCOORD_CONV" . 1050716) ("ZCOORD_CONV " . 1050706)))
1457 ("ComputeDimensions" fun "IDLgrColorbar" (system) "Result = Obj->[%s::]%s( DestinationObj)" ("objects_gr39.html" ("PATH" . 1009084)))
1458 ("Init" fun "IDLgrColorbar" (system) "Result = Obj->[%s::]%s([, aRed, aGreen, aBlue])" ("objects_gr41.html" ) ("objects_gr37.html" ("BLUE_VALUES " . 1050601) ("COLOR " . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED " . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE " . 1050651) ("XCOORD_CONV" . 1050655) ("YCOORD_CONV" . 1050716) ("ZCOORD_CONV " . 1050706)))
1459 ("AdjustLabelOffsets" pro "IDLgrContour" (system) "Obj->[%s::]%s, LevelIndex, LabelOffsets" ("objects_gr45.html"))
1460 ("Cleanup" pro "IDLgrContour" (system) "Obj->[%s::]%s" ("objects_gr46.html"))
1461 ("GetLabelInfo" pro "IDLgrContour" (system) "Obj->[%s::]%s, Destination, LevelIndex" ("objects_gr48.html" ("LABEL_OBJECTS" . 1009508) ("LABEL_OFFSETS" . 1009503) ("LABEL_POLYLINES" . 1009505)))
1462 ("GetProperty" pro "IDLgrContour" (system) "Obj->[%s::]%s" ("objects_gr49.html" ) ("objects_gr44.html" ("ALL" . 1050990) ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET " . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL " . 1051085) ("FILL" . 1051087) ("GEOM" . 1051284) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS " . 1051132) ("N_LEVELS" . 1051138) ("PARENT" . 1051274) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("SHADE_RANGE " . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL " . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("XRANGE" . 1051264) ("YCOORD_CONV" . 1051168) ("YRANGE " . 1051250) ("ZCOORD_CONV " . 1051174) ("ZRANGE" . 1051240)))
1463 ("SetProperty" pro "IDLgrContour" (system) "Obj->[%s::]%s" ("objects_gr51.html" ) ("objects_gr44.html" ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET " . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL " . 1051085) ("FILL" . 1051087) ("GEOMX" . 1051282) ("GEOMY" . 1051091) ("GEOMZ" . 1051093) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS " . 1051132) ("N_LEVELS" . 1051138) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("SHADE_RANGE " . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL " . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("YCOORD_CONV" . 1051168) ("ZCOORD_CONV " . 1051174)))
1464 ("GetCTM" fun "IDLgrContour" (system) "Result = Obj->[%s::]%s()" ("objects_gr47.html" ("DESTINATION" . 1009456) ("PATH" . 1009458) ("TOP" . 1009464)))
1465 ("Init" fun "IDLgrContour" (system) "Result = Obj->[%s::]%s([, Values])" ("objects_gr50.html" ) ("objects_gr44.html" ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET " . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL " . 1051085) ("FILL" . 1051087) ("GEOMX" . 1051282) ("GEOMY" . 1051091) ("GEOMZ" . 1051093) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_FRMTDATA " . 1051113) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS " . 1051132) ("N_LEVELS" . 1051138) ("PALETTE " . 1051140) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("REGISTER_PROPERTIES" . 1051147) ("SHADE_RANGE " . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL " . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("YCOORD_CONV" . 1051168) ("ZCOORD_CONV " . 1051174)))
1466 ("Cleanup" pro "IDLgrFont" (system) "Obj->[%s::]%s" ("objects_gr54.html"))
1467 ("GetProperty" pro "IDLgrFont" (system) "Obj->[%s::]%s" ("objects_gr55.html" ) ("objects_gr53.html" ("ALL" . 1051913) ("SIZE" . 1051936) ("SUBSTITUTE" . 1051938) ("THICK" . 1051940)))
1468 ("SetProperty" pro "IDLgrFont" (system) "Obj->[%s::]%s" ("objects_gr57.html" ) ("objects_gr53.html" ("SIZE" . 1051936) ("SUBSTITUTE" . 1051938) ("THICK" . 1051940)))
1469 ("Init" fun "IDLgrFont" (system) "Result = Obj->[%s::]%s([, Fontname])" ("objects_gr56.html" ) ("objects_gr53.html" ("SIZE" . 1051936) ("SUBSTITUTE" . 1051938) ("THICK" . 1051940)))
1470 ("Cleanup" pro "IDLgrImage" (system) "Obj->[%s::]%s" ("objects_gr60.html"))
1471 ("GetProperty" pro "IDLgrImage" (system) "Obj->[%s::]%s" ("objects_gr62.html" ) ("objects_gr59.html" ("ALL " . 1052050) ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE " . 1052160) ("PARENT" . 1052253) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("XRANGE" . 1052243) ("YCOORD_CONV" . 1052181) ("YRANGE" . 1052233) ("ZCOORD_CONV" . 1052187) ("ZRANGE" . 1052223)))
1472 ("SetProperty" pro "IDLgrImage" (system) "Obj->[%s::]%s" ("objects_gr64.html" ) ("objects_gr59.html" ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE " . 1052160) ("RESET_DATA " . 1093772) ("SHARE_DATA" . 1052169) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("YCOORD_CONV" . 1052181) ("ZCOORD_CONV" . 1052187)))
1473 ("GetCTM" fun "IDLgrImage" (system) "Result = Obj->[%s::]%s()" ("objects_gr61.html" ("DESTINATION" . 1010164) ("PATH" . 1010166) ("TOP" . 1010172)))
1474 ("Init" fun "IDLgrImage" (system) "Result = Obj->[%s::]%s([, ImageData])" ("objects_gr63.html" ) ("objects_gr59.html" ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE " . 1052160) ("REGISTER_PROPERTIES" . 1052251) ("RESET_DATA " . 1093772) ("SHARE_DATA" . 1052169) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("YCOORD_CONV" . 1052181) ("ZCOORD_CONV" . 1052187)))
1475 ("Cleanup" pro "IDLgrLegend" (system) "Obj->[%s::]%s" ("objects_gr67.html"))
1476 ("GetProperty" pro "IDLgrLegend" (system) "Obj->[%s::]%s" ("objects_gr69.html" ) ("objects_gr66.html" ("ALL " . 1053896) ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE " . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT " . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR " . 1053948) ("OUTLINE_THICK" . 1053950) ("PARENT" . 1055362) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE " . 1053956) ("TEXT_COLOR " . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV " . 1053966) ("XRANGE " . 1055399) ("YCOORD_CONV " . 1053972) ("YRANGE " . 1055389) ("ZCOORD_CONV" . 1053978) ("ZRANGE" . 1070059)))
1477 ("SetProperty" pro "IDLgrLegend" (system) "Obj->[%s::]%s" ("objects_gr71.html" ) ("objects_gr66.html" ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE " . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT " . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR " . 1053948) ("OUTLINE_THICK" . 1053950) ("RECOMPUTE " . 1055360) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE " . 1053956) ("TEXT_COLOR " . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV " . 1053966) ("YCOORD_CONV " . 1053972) ("ZCOORD_CONV" . 1053978)))
1478 ("ComputeDimensions" fun "IDLgrLegend" (system) "Result = Obj->[%s::]%s( DestinationObject)" ("objects_gr68.html" ("PATH" . 1010563)))
1479 ("Init" fun "IDLgrLegend" (system) "Result = Obj->[%s::]%s([, aItemNames])" ("objects_gr70.html" ) ("objects_gr66.html" ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE " . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT " . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR " . 1053948) ("OUTLINE_THICK" . 1053950) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE " . 1053956) ("TEXT_COLOR " . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV " . 1053966) ("YCOORD_CONV " . 1053972) ("ZCOORD_CONV" . 1053978)))
1480 ("Cleanup" pro "IDLgrLight" (system) "Obj->[%s::]%s" ("objects_gr74.html"))
1481 ("GetProperty" pro "IDLgrLight" (system) "Obj->[%s::]%s" ("objects_gr76.html" ) ("objects_gr73.html" ("ALL" . 1055555) ("ATTENUATION " . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("PARENT" . 1055635) ("TYPE" . 1093801) ("XCOORD_CONV " . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV " . 1055621)))
1482 ("SetProperty" pro "IDLgrLight" (system) "Obj->[%s::]%s" ("objects_gr78.html" ) ("objects_gr73.html" ("ATTENUATION " . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("TYPE" . 1093801) ("XCOORD_CONV " . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV " . 1055621)))
1483 ("GetCTM" fun "IDLgrLight" (system) "Result = Obj->[%s::]%s()" ("objects_gr75.html" ("DESTINATION" . 1010900) ("PATH" . 1010902) ("TOP" . 1010908)))
1484 ("Init" fun "IDLgrLight" (system) "Result = Obj->[%s::]%s()" ("objects_gr77.html" ) ("objects_gr73.html" ("ATTENUATION " . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("REGISTER_PROPERTIES" . 1088158) ("TYPE" . 1093801) ("XCOORD_CONV " . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV " . 1055621)))
1485 ("Add" pro "IDLgrModel" (system) "Obj->[%s::]%s, Object" ("objects_gr81.html" ("ALIAS" . 1011206) ("POSITION" . 1011208)))
1486 ("Cleanup" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr82.html"))
1487 ("Draw" pro "IDLgrModel" (system) "Obj->[%s::]%s, Destination, Picture" ("objects_gr83.html"))
1488 ("GetProperty" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr86.html" ) ("objects_gr80.html" ("ALL " . 1055726) ("CLIP_PLANES " . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE " . 1088312) ("LIGHTING" . 1055751) ("PARENT " . 1055781) ("SELECT_TARGET " . 1093831) ("TRANSFORM " . 1055764)))
1489 ("Reset" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr88.html"))
1490 ("Rotate" pro "IDLgrModel" (system) "Obj->[%s::]%s, Axis, Angle" ("objects_gr89.html" ("PREMULTIPLY" . 1011584)))
1491 ("Scale" pro "IDLgrModel" (system) "Obj->[%s::]%s, Sx, Sy, Sz" ("objects_gr90.html" ("PREMULTIPLY" . 1011618)))
1492 ("SetProperty" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr91.html" ) ("objects_gr80.html" ("CLIP_PLANES " . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE " . 1088312) ("LIGHTING" . 1055751) ("SELECT_TARGET " . 1093831) ("TRANSFORM " . 1055764)))
1493 ("Translate" pro "IDLgrModel" (system) "Obj->[%s::]%s, Tx, Ty, Tz" ("objects_gr92.html" ("PREMULTIPLY" . 1011687)))
1494 ("GetByName" fun "IDLgrModel" (system) "Result = Obj->[%s::]%s(Name)" ("objects_gr84.html"))
1495 ("GetCTM" fun "IDLgrModel" (system) "Result = Obj->[%s::]%s()" ("objects_gr85.html" ("DESTINATION" . 1011369) ("PATH" . 1011371) ("TOP" . 1011377)))
1496 ("Init" fun "IDLgrModel" (system) "Result = Obj->[%s::]%s()" ("objects_gr87.html" ) ("objects_gr80.html" ("CLIP_PLANES " . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE " . 1088312) ("LIGHTING" . 1055751) ("REGISTER_PROPERTIES" . 1055779) ("SELECT_TARGET " . 1093831) ("TRANSFORM " . 1055764)))
1497 ("Cleanup" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr95.html"))
1498 ("GetProperty" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr96.html" ) ("objects_gr94.html" ("ALL " . 1055838) ("BITRATE " . 1055845) ("FILENAME" . 1055875) ("FORMAT " . 1055877) ("FRAME_RATE " . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969)))
1499 ("Put" pro "IDLgrMPEG" (system) "Obj->[%s::]%s, Image[, Frame]" ("objects_gr98.html"))
1500 ("Save" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr99.html" ("FILENAME" . 1012062)))
1501 ("SetProperty" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr100.html" ) ("objects_gr94.html" ("BITRATE " . 1055845) ("FILENAME" . 1055875) ("FORMAT " . 1055877) ("FRAME_RATE " . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969)))
1502 ("Init" fun "IDLgrMPEG" (system) "Result = Obj->[%s::]%s()" ("objects_gr97.html" ) ("objects_gr94.html" ("BITRATE " . 1055845) ("FILENAME" . 1055875) ("FORMAT " . 1055877) ("FRAME_RATE " . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969) ("TEMP_DIRECTORY " . 1055971)))
1503 ("Cleanup" pro "IDLgrPalette" (system) "Obj->[%s::]%s" ("objects_gr103.html"))
1504 ("GetProperty" pro "IDLgrPalette" (system) "Obj->[%s::]%s" ("objects_gr105.html" ) ("objects_gr102.html" ("ALL" . 1056048) ("BLUE_VALUES " . 1056069) ("BOTTOM_STRETCH " . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("N_COLORS" . 1056093) ("RED_VALUES" . 1056079) ("TOP_STRETCH " . 1056081)))
1505 ("LoadCT" pro "IDLgrPalette" (system) "Obj->[%s::]%s, TableNum" ("objects_gr107.html" ("FILE" . 1012379)))
1506 ("SetProperty" pro "IDLgrPalette" (system) "Obj->[%s::]%s" ("objects_gr110.html" ) ("objects_gr102.html" ("BLUE_VALUES " . 1056069) ("BOTTOM_STRETCH " . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("RED_VALUES" . 1056079) ("TOP_STRETCH " . 1056081)))
1507 ("SetRGB" pro "IDLgrPalette" (system) "Obj->[%s::]%s, Index, Red, Green, Blue" ("objects_gr109.html"))
1508 ("GetRGB" fun "IDLgrPalette" (system) "Result = Obj->[%s::]%s(Index)" ("objects_gr104.html"))
1509 ("Init" fun "IDLgrPalette" (system) "Result = Obj->[%s::]%s(, aRed, aGreen, aBlue)" ("objects_gr106.html" ) ("objects_gr102.html" ("BLUE_VALUES " . 1056069) ("BOTTOM_STRETCH " . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("RED_VALUES" . 1056079) ("TOP_STRETCH " . 1056081)))
1510 ("NearestColor" fun "IDLgrPalette" (system) "Result = Obj->[%s::]%s(Red, Green, Blue)" ("objects_gr108.html"))
1511 ("Cleanup" pro "IDLgrPattern" (system) "Obj->[%s::]%s" ("objects_gr113.html"))
1512 ("GetProperty" pro "IDLgrPattern" (system) "Obj->[%s::]%s" ("objects_gr114.html" ) ("objects_gr112.html" ("ALL" . 1056154) ("ORIENTATION " . 1056165) ("PATTERN" . 1056169) ("SPACING " . 1056171) ("STYLE" . 1056173)))
1513 ("SetProperty" pro "IDLgrPattern" (system) "Obj->[%s::]%s" ("objects_gr116.html" ) ("objects_gr112.html" ("ORIENTATION " . 1056165) ("PATTERN" . 1056169) ("SPACING " . 1056171) ("STYLE" . 1056173)))
1514 ("Init" fun "IDLgrPattern" (system) "Result = Obj->[%s::]%s([, Style])" ("objects_gr115.html" ) ("objects_gr112.html" ("ORIENTATION " . 1056165) ("PATTERN" . 1056169) ("SPACING " . 1056171) ("STYLE" . 1056173) ("THICK " . 1056179)))
1515 ("Cleanup" pro "IDLgrPlot" (system) "Obj->[%s::]%s" ("objects_gr119.html"))
1516 ("GetProperty" pro "IDLgrPlot" (system) "Obj->[%s::]%s" ("objects_gr121.html" ) ("objects_gr118.html" ("ALL" . 1056243) ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES " . 1314217) ("COLOR " . 1056263) ("DATA" . 1056381) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE " . 1056269) ("HIDE " . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE " . 1056290) ("MIN_VALUE " . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("PARENT " . 1056392) ("POLAR " . 1056389) ("SYMBOL " . 1056306) ("THICK" . 1056311) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE " . 1056325) ("YCOORD_CONV " . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZRANGE" . 1074286) ("ZVALUE" . 1056400)))
1517 ("SetProperty" pro "IDLgrPlot" (system) "Obj->[%s::]%s" ("objects_gr123.html" ) ("objects_gr118.html" ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES " . 1314217) ("COLOR " . 1056263) ("DATAX" . 1056378) ("DATAY" . 1056267) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE " . 1056269) ("HIDE " . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE " . 1056290) ("MIN_VALUE " . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("POLAR " . 1056389) ("RESET_DATA " . 1093845) ("SHARE_DATA " . 1056304) ("SYMBOL " . 1056306) ("THICK" . 1056311) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE " . 1056325) ("YCOORD_CONV " . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZVALUE" . 1056400)))
1518 ("GetCTM" fun "IDLgrPlot" (system) "Result = Obj->[%s::]%s()" ("objects_gr120.html" ("DESTINATION" . 1012838) ("PATH" . 1012840) ("TOP" . 1012846)))
1519 ("Init" fun "IDLgrPlot" (system) "Result = Obj->[%s::]%s([, [X,] Y])" ("objects_gr122.html" ) ("objects_gr118.html" ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES " . 1314217) ("COLOR " . 1056263) ("DATAX" . 1056378) ("DATAY" . 1056267) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE " . 1056269) ("HIDE " . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE " . 1056290) ("MIN_VALUE " . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("POLAR " . 1056389) ("REGISTER_PROPERTIES" . 1056302) ("RESET_DATA " . 1093845) ("SHARE_DATA " . 1056304) ("SYMBOL " . 1056306) ("THICK" . 1056311) ("USE_ZVALUE" . 1056313) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE " . 1056325) ("YCOORD_CONV " . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZVALUE" . 1056400)))
1520 ("Cleanup" pro "IDLgrPolygon" (system) "Obj->[%s::]%s" ("objects_gr126.html"))
1521 ("GetProperty" pro "IDLgrPolygon" (system) "Obj->[%s::]%s" ("objects_gr128.html" ) ("objects_gr125.html" ("ALL" . 1056563) ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR " . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET " . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE " . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN " . 1056598) ("HIDE " . 1056602) ("LINESTYLE " . 1056606) ("NORMALS" . 1056621) ("PARENT " . 1056792) ("POLYGONS" . 1056790) ("REJECT " . 1093870) ("SHADE_RANGE " . 1056643) ("SHADING " . 1056645) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE " . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP " . 1056664) ("TEXTURE_MAP " . 1056666) ("THICK " . 1056674) ("VERT_COLORS " . 1056679) ("XCOORD_CONV " . 1088401) ("XRANGE" . 1056808) ("YCOORD_CONV " . 1075980) ("YRANGE" . 1056822) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP " . 1056700) ("ZRANGE" . 1056834)))
1522 ("SetProperty" pro "IDLgrPolygon" (system) "Obj->[%s::]%s" ("objects_gr130.html" ) ("objects_gr125.html" ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR " . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET " . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE " . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN " . 1056598) ("HIDE " . 1056602) ("LINESTYLE " . 1056606) ("NORMALS" . 1056621) ("POLYGONS" . 1056790) ("REJECT " . 1093870) ("RESET_DATA " . 1056641) ("SHADE_RANGE " . 1056643) ("SHADING " . 1056645) ("SHARE_DATA " . 1056650) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE " . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP " . 1056664) ("TEXTURE_MAP " . 1056666) ("THICK " . 1056674) ("VERT_COLORS " . 1056679) ("XCOORD_CONV " . 1088401) ("YCOORD_CONV " . 1075980) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP " . 1056700)))
1523 ("GetCTM" fun "IDLgrPolygon" (system) "Result = Obj->[%s::]%s()" ("objects_gr127.html" ("DESTINATION" . 1013188) ("PATH" . 1013190) ("TOP" . 1013196)))
1524 ("Init" fun "IDLgrPolygon" (system) "Result = Obj->[%s::]%s([, X [, Y[, Z]]])" ("objects_gr129.html" ) ("objects_gr125.html" ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR " . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET " . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE " . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN " . 1056598) ("HIDDEN_LINES" . 1056600) ("HIDE " . 1056602) ("LINESTYLE " . 1056606) ("NORMALS" . 1056621) ("PALETTE" . 1056629) ("POLYGONS" . 1056790) ("REGISTER_PROPERTIES" . 1327262) ("REJECT " . 1093870) ("RESET_DATA " . 1056641) ("SHADE_RANGE " . 1056643) ("SHADING " . 1056645) ("SHARE_DATA " . 1056650) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE " . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP " . 1056664) ("TEXTURE_MAP " . 1056666) ("THICK " . 1056674) ("VERT_COLORS " . 1056679) ("XCOORD_CONV " . 1088401) ("YCOORD_CONV " . 1075980) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP " . 1056700)))
1525 ("Cleanup" pro "IDLgrPolyline" (system) "Obj->[%s::]%s" ("objects_gr133.html"))
1526 ("GetProperty" pro "IDLgrPolyline" (system) "Obj->[%s::]%s" ("objects_gr135.html" ) ("objects_gr132.html" ("ALL" . 1056980) ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES " . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS " . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE " . 1057044) ("PARENT" . 1057101) ("POLYLINES" . 1057099) ("SHADING" . 1057051) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS " . 1057073) ("XCOORD_CONV " . 1057075) ("XRANGE" . 1057143) ("YCOORD_CONV" . 1057081) ("YRANGE " . 1057133) ("ZCOORD_CONV" . 1077892) ("ZRANGE" . 1057121)))
1527 ("SetProperty" pro "IDLgrPolyline" (system) "Obj->[%s::]%s" ("objects_gr137.html" ) ("objects_gr132.html" ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES " . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS " . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE " . 1057044) ("POLYLINES" . 1057099) ("RESET_DATA" . 1093906) ("SHADING" . 1057051) ("SHARE_DATA " . 1057056) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS " . 1057073) ("XCOORD_CONV " . 1057075) ("YCOORD_CONV" . 1057081) ("ZCOORD_CONV" . 1077892)))
1528 ("GetCTM" fun "IDLgrPolyline" (system) "Result = Obj->[%s::]%s()" ("objects_gr134.html" ("DESTINATION" . 1013579) ("PATH" . 1013581) ("TOP" . 1013587)))
1529 ("Init" fun "IDLgrPolyline" (system) "Result = Obj->[%s::]%s([, X [, Y[, Z]]])" ("objects_gr136.html" ) ("objects_gr132.html" ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES " . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS " . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE " . 1057044) ("POLYLINES" . 1057099) ("REGISTER_PROPERTIES" . 1057049) ("RESET_DATA" . 1093906) ("SHADING" . 1057051) ("SHARE_DATA " . 1057056) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS " . 1057073) ("XCOORD_CONV " . 1057075) ("YCOORD_CONV" . 1057081) ("ZCOORD_CONV" . 1077892)))
1530 ("Cleanup" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr140.html"))
1531 ("Draw" pro "IDLgrPrinter" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr141.html" ("VECT_SORTING" . 1340440) ("VECT_TEXT_RENDER_METHOD" . 1340452) ("VECTOR" . 1013979)))
1532 ("GetProperty" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr144.html" ) ("objects_gr139.html" ("ALL " . 1057354) ("COLOR_MODEL" . 1057403) ("DIMENSIONS" . 1057476) ("GAMMA" . 1057474) ("GRAPHICS_TREE " . 1057413) ("LANDSCAPE" . 1057415) ("N_COLORS " . 1057418) ("N_COPIES" . 1057420) ("NAME " . 1344875) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("RESOLUTION " . 1093938) ("UNITS" . 1057441)))
1533 ("NewDocument" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr147.html"))
1534 ("NewPage" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr148.html"))
1535 ("SetProperty" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr149.html" ) ("objects_gr139.html" ("GAMMA" . 1057474) ("GRAPHICS_TREE " . 1057413) ("LANDSCAPE" . 1057415) ("N_COPIES" . 1057420) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("UNITS" . 1057441)))
1536 ("GetContiguousPixels" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s()" ("objects_gr142.html"))
1537 ("GetFontnames" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s( FamilyName)" ("objects_gr143.html" ("IDL_FONTS" . 1014147) ("STYLES" . 1014149)))
1538 ("GetTextDimensions" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr145.html" ("DESCENT" . 1014231) ("PATH" . 1014233)))
1539 ("Init" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s()" ("objects_gr146.html" ) ("objects_gr139.html" ("COLOR_MODEL" . 1057403) ("GAMMA" . 1057474) ("GRAPHICS_TREE " . 1057413) ("LANDSCAPE" . 1057415) ("N_COLORS " . 1057418) ("N_COPIES" . 1057420) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("REGISTER_PROPERTIES" . 1057456) ("UNITS" . 1057441)))
1540 ("Cleanup" pro "IDLgrROI" (system) "Obj->[%s::]%s" ("objects_gr152.html"))
1541 ("GetProperty" pro "IDLgrROI" (system) "Obj->[%s::]%s" ("objects_gr153.html" ) ("objects_gr151.html" ("ALL" . 1057567) ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR " . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE " . 1057600) ("PALETTE " . 1057611) ("PARENT " . 1345141) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("XRANGE" . 1057656) ("YCOORD_CONV" . 1057636) ("YRANGE" . 1057668) ("ZCOORD_CONV" . 1057666) ("ZRANGE" . 1057574)))
1542 ("SetProperty" pro "IDLgrROI" (system) "Obj->[%s::]%s" ("objects_gr156.html" ) ("objects_gr151.html" ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR " . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE " . 1057600) ("PALETTE " . 1057611) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("YCOORD_CONV" . 1057636) ("ZCOORD_CONV" . 1057666)))
1543 ("Init" fun "IDLgrROI" (system) "Result = Obj->[%s::]%s([, X[, Y[, Z]]])" ("objects_gr154.html" ) ("objects_gr151.html" ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR " . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE " . 1057600) ("PALETTE " . 1057611) ("REGISTER_PROPERTIES" . 1057616) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("YCOORD_CONV" . 1057636) ("ZCOORD_CONV" . 1057666)))
1544 ("PickVertex" fun "IDLgrROI" (system) "Result = Obj->[%s::]%s( Dest, View, Point)" ("objects_gr155.html" ("PATH" . 1014753)))
1545 ("Add" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s, ROI" ("objects_gr159.html"))
1546 ("Cleanup" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" ("objects_gr160.html"))
1547 ("GetProperty" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" ("objects_gr161.html" ) ("objects_gr158.html" ("ALL" . 1057772) ("CLIP_PLANES" . 1057798) ("COLOR " . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("PARENT " . 1057863) ("XCOORD_CONV" . 1057861) ("XRANGE " . 1057853) ("YCOORD_CONV" . 1057851) ("YRANGE" . 1080305) ("ZCOORD_CONV" . 1057839) ("ZRANGE" . 1057781)))
1548 ("SetProperty" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" ("objects_gr164.html" ) ("objects_gr158.html" ("CLIP_PLANES" . 1057798) ("COLOR " . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("XCOORD_CONV" . 1057861) ("YCOORD_CONV" . 1057851) ("ZCOORD_CONV" . 1057839)))
1549 ("Init" fun "IDLgrROIGroup" (system) "Result = Obj->[%s::]%s()" ("objects_gr162.html" ) ("objects_gr158.html" ("CLIP_PLANES" . 1057798) ("COLOR " . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("XCOORD_CONV" . 1057861) ("YCOORD_CONV" . 1057851) ("ZCOORD_CONV" . 1057839)))
1550 ("PickRegion" fun "IDLgrROIGroup" (system) "Result = Obj->[%s::]%s( Dest, View, Point)" ("objects_gr163.html" ("PATH" . 1015096)))
1551 ("Add" pro "IDLgrScene" (system) "Obj->[%s::]%s, View" ("objects_gr167.html" ("POSITION" . 1015243)))
1552 ("Cleanup" pro "IDLgrScene" (system) "Obj->[%s::]%s" ("objects_gr168.html"))
1553 ("GetProperty" pro "IDLgrScene" (system) "Obj->[%s::]%s" ("objects_gr170.html" ) ("objects_gr166.html" ("ALL" . 1057953) ("COLOR" . 1080480) ("TRANSPARENT" . 1093982)))
1554 ("SetProperty" pro "IDLgrScene" (system) "Obj->[%s::]%s" ("objects_gr172.html" ) ("objects_gr166.html" ("COLOR" . 1080480) ("TRANSPARENT" . 1093982)))
1555 ("GetByName" fun "IDLgrScene" (system) "Result = Obj->[%s::]%s(Name)" ("objects_gr169.html"))
1556 ("Init" fun "IDLgrScene" (system) "Result = Obj->[%s::]%s()" ("objects_gr171.html" ) ("objects_gr166.html" ("COLOR" . 1080480) ("HIDE" . 1057961) ("REGISTER_PROPERTIES" . 1057969)))
1557 ("Cleanup" pro "IDLgrSurface" (system) "Obj->[%s::]%s" ("objects_gr175.html"))
1558 ("GetProperty" pro "IDLgrSurface" (system) "Obj->[%s::]%s" ("objects_gr177.html" ) ("objects_gr174.html" ("ALL" . 1058014) ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATA" . 1339889) ("DEPTH_OFFSET " . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE " . 1058067) ("MAX_VALUE " . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE " . 1058086) ("PARENT " . 1058283) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK " . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("XRANGE " . 1058297) ("YCOORD_CONV" . 1058295) ("YRANGE" . 1058309) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163) ("ZRANGE" . 1082521)))
1559 ("SetProperty" pro "IDLgrSurface" (system) "Obj->[%s::]%s" ("objects_gr179.html" ) ("objects_gr174.html" ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATAX" . 1339826) ("DATAY" . 1058046) ("DATAZ" . 1058048) ("DEPTH_OFFSET " . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE " . 1058067) ("MAX_VALUE " . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE " . 1058086) ("RESET_DATA" . 1094044) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHARE_DATA" . 1082385) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK " . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("YCOORD_CONV" . 1058295) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163)))
1560 ("GetCTM" fun "IDLgrSurface" (system) "Result = Obj->[%s::]%s()" ("objects_gr176.html" ("DESTINATION" . 1015591) ("PATH" . 1015593) ("TOP" . 1015599)))
1561 ("Init" fun "IDLgrSurface" (system) "Result = Obj->[%s::]%s([, Z [, X, Y]])" ("objects_gr178.html" ) ("objects_gr174.html" ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATAX" . 1339826) ("DATAY" . 1058046) ("DATAZ" . 1058048) ("DEPTH_OFFSET " . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE " . 1058067) ("MAX_VALUE " . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE " . 1058086) ("REGISTER_PROPERTIES" . 1094041) ("RESET_DATA" . 1094044) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHARE_DATA" . 1082385) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK " . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("YCOORD_CONV" . 1058295) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163)))
1562 ("Cleanup" pro "IDLgrSymbol" (system) "Obj->[%s::]%s" ("objects_gr182.html"))
1563 ("GetProperty" pro "IDLgrSymbol" (system) "Obj->[%s::]%s" ("objects_gr183.html" ) ("objects_gr181.html" ("ALL" . 1058799) ("ALPHA_CHANNEL" . 1315142) ("COLOR" . 1058811) ("DATA" . 1058813) ("SIZE" . 1058817) ("THICK" . 1058823)))
1564 ("SetProperty" pro "IDLgrSymbol" (system) "Obj->[%s::]%s" ("objects_gr185.html" ) ("objects_gr181.html" ("ALPHA_CHANNEL" . 1315142) ("COLOR" . 1058811) ("DATA" . 1058813) ("SIZE" . 1058817) ("THICK" . 1058823)))
1565 ("Init" fun "IDLgrSymbol" (system) "Result = Obj->[%s::]%s([, Data])" ("objects_gr184.html" ) ("objects_gr181.html" ("ALPHA_CHANNEL" . 1315142) ("COLOR" . 1058811) ("DATA" . 1058813) ("SIZE" . 1058817) ("THICK" . 1058823)))
1566 ("AddPolygon" pro "IDLgrTessellator" (system) "Obj->[%s::]%s, X [, Y[, Z]]" ("objects_gr188.html" ("AUXDATA" . 1016227) ("INTERIOR" . 1016232) ("POLYGON" . 1308631)))
1567 ("Cleanup" pro "IDLgrTessellator" (system) "Obj->[%s::]%s" ("objects_gr189.html"))
1568 ("Reset" pro "IDLgrTessellator" (system) "Obj->[%s::]%s" ("objects_gr191.html"))
1569 ("Init" fun "IDLgrTessellator" (system) "Result = Obj->[%s::]%s()" ("objects_gr190.html" ))
1570 ("Tessellate" fun "IDLgrTessellator" (system) "Result = Obj->[%s::]%s( Vertices, Poly)" ("objects_gr192.html" ("AUXDATA" . 1016374) ("QUIET" . 1016376)))
1571 ("Cleanup" pro "IDLgrText" (system) "Obj->[%s::]%s" ("objects_gr195.html"))
1572 ("GetProperty" pro "IDLgrText" (system) "Obj->[%s::]%s" ("objects_gr197.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALL" . 1058984) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES " . 1058910) ("COLOR " . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("PARENT" . 1058996) ("RECOMPUTE_DIMENSIONS " . 1058994) ("RENDER_METHOD" . 1096891) ("STRINGS " . 1096894) ("UPDIR " . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("XRANGE" . 1059010) ("YCOORD_CONV" . 1059008) ("YRANGE" . 1059022) ("ZCOORD_CONV" . 1058968) ("ZRANGE" . 1058890)))
1573 ("SetProperty" pro "IDLgrText" (system) "Obj->[%s::]%s" ("objects_gr199.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES " . 1058910) ("COLOR " . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("RECOMPUTE_DIMENSIONS " . 1058994) ("RENDER_METHOD" . 1096891) ("STRINGS " . 1096894) ("UPDIR " . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("YCOORD_CONV" . 1059008) ("ZCOORD_CONV" . 1058968)))
1574 ("GetCTM" fun "IDLgrText" (system) "Result = Obj->[%s::]%s()" ("objects_gr196.html" ("DESTINATION" . 1016508) ("PATH" . 1016510) ("TOP" . 1016516)))
1575 ("Init" fun "IDLgrText" (system) "Result = Obj->[%s::]%s([, String or vector of strings])" ("objects_gr198.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES " . 1058910) ("COLOR " . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("RECOMPUTE_DIMENSIONS " . 1058994) ("REGISTER_PROPERTIES" . 1058946) ("RENDER_METHOD" . 1096891) ("STRINGS " . 1096894) ("UPDIR " . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("YCOORD_CONV" . 1059008) ("ZCOORD_CONV" . 1058968)))
1576 ("Add" pro "IDLgrView" (system) "Obj->[%s::]%s, Model" ("objects_gr202.html" ("POSITION" . 1016823)))
1577 ("Cleanup" pro "IDLgrView" (system) "Obj->[%s::]%s" ("objects_gr203.html"))
1578 ("GetProperty" pro "IDLgrView" (system) "Obj->[%s::]%s" ("objects_gr205.html" ) ("objects_gr201.html" ("ALL " . 1059162) ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PARENT " . 1092817) ("PROJECTION" . 1059231) ("TRANSPARENT" . 1094108) ("UNITS " . 1059207) ("VIEWPLANE_RECT " . 1059216) ("ZCLIP " . 1059219)))
1579 ("SetProperty" pro "IDLgrView" (system) "Obj->[%s::]%s" ("objects_gr207.html" ) ("objects_gr201.html" ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PROJECTION" . 1059231) ("TRANSPARENT" . 1094108) ("UNITS " . 1059207) ("VIEWPLANE_RECT " . 1059216) ("ZCLIP " . 1059219)))
1580 ("GetByName" fun "IDLgrView" (system) "Result = Obj->[%s::]%s(Name)" ("objects_gr204.html"))
1581 ("Init" fun "IDLgrView" (system) "Result = Obj->[%s::]%s()" ("objects_gr206.html" ) ("objects_gr201.html" ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PROJECTION" . 1059231) ("REGISTER_PROPERTIES" . 1059205) ("TRANSPARENT" . 1094108) ("UNITS " . 1059207) ("VIEWPLANE_RECT " . 1059216) ("ZCLIP " . 1059219)))
1582 ("Add" pro "IDLgrViewgroup" (system) "Obj->[%s::]%s, Object" ("objects_gr210.html" ("POSITION" . 1017170)))
1583 ("Cleanup" pro "IDLgrViewgroup" (system) "Obj->[%s::]%s" ("objects_gr211.html"))
1584 ("GetProperty" pro "IDLgrViewgroup" (system) "Obj->[%s::]%s" ("objects_gr213.html" ) ("objects_gr209.html" ("ALL" . 1077311) ("HIDE" . 1059327) ("PARENT" . 1084394)))
1585 ("SetProperty" pro "IDLgrViewgroup" (system) "Obj->[%s::]%s" ("objects_gr215.html" ) ("objects_gr209.html" ("HIDE" . 1059327)))
1586 ("GetByName" fun "IDLgrViewgroup" (system) "Result = Obj->[%s::]%s(Name)" ("objects_gr212.html"))
1587 ("Init" fun "IDLgrViewgroup" (system) "Result = Obj->[%s::]%s()" ("objects_gr214.html" ) ("objects_gr209.html" ("HIDE" . 1059327) ("REGISTER_PROPERTIES" . 1059341)))
1588 ("Cleanup" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr218.html"))
1589 ("ComputeBounds" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr219.html" ("OPACITY" . 1017518) ("RESET" . 1017520) ("VOLUMES" . 1017522)))
1590 ("GetProperty" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr221.html" ) ("objects_gr217.html" ("ALL" . 1059382) ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1 " . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("PARENT" . 1088485) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED " . 1059474) ("VALID_DATA" . 1059634) ("VOLUME_SELECT " . 1059632) ("XCOORD_CONV" . 1059489) ("XRANGE" . 1059648) ("YCOORD_CONV" . 1059495) ("YRANGE" . 1059660) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509) ("ZRANGE" . 1059393)))
1591 ("SetProperty" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr224.html" ) ("objects_gr217.html" ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1 " . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED " . 1059474) ("VOLUME_SELECT " . 1059632) ("XCOORD_CONV" . 1059489) ("YCOORD_CONV" . 1059495) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509)))
1592 ("GetCTM" fun "IDLgrVolume" (system) "Result = Obj->[%s::]%s()" ("objects_gr220.html" ("DESTINATION" . 1017555) ("PATH" . 1017557) ("TOP" . 1017563)))
1593 ("Init" fun "IDLgrVolume" (system) "Result = Obj->[%s::]%s([, vol0 [, vol1 [, vol2 [, vol3]]]])" ("objects_gr222.html" ) ("objects_gr217.html" ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1 " . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("REGISTER_PROPERTIES" . 1059616) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED " . 1059474) ("VOLUME_SELECT " . 1059632) ("XCOORD_CONV" . 1059489) ("YCOORD_CONV" . 1059495) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509)))
1594 ("PickVoxel" fun "IDLgrVolume" (system) "Result = Obj->[%s::]%s ( Win, View, Point)" ("objects_gr223.html" ("PATH" . 1017818)))
1595 ("Cleanup" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr227.html"))
1596 ("Draw" pro "IDLgrVRML" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr228.html"))
1597 ("GetDeviceInfo" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr229.html" ("ALL" . 1018053) ("MAX_NUM_CLIP_PLANES" . 1018055) ("MAX_TEXTURE_DIMENSIONS" . 1018057) ("MAX_VIEWPORT_DIMENSIONS" . 1018059) ("NAME" . 1018061) ("NUM_CPUS" . 1018063) ("VENDOR" . 1018066) ("VERSION" . 1018068)))
1598 ("GetProperty" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr231.html" ) ("objects_gr226.html" ("ALL" . 1059804) ("COLOR_MODEL" . 1059817) ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE " . 1059826) ("N_COLORS" . 1059828) ("PALETTE" . 1059830) ("QUALITY " . 1059832) ("RESOLUTION" . 1094159) ("SCREEN_DIMENSIONS" . 1059862) ("UNITS" . 1059860)))
1599 ("SetProperty" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr234.html" ) ("objects_gr226.html" ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE " . 1059826) ("PALETTE" . 1059830) ("QUALITY " . 1059832) ("RESOLUTION" . 1094159) ("UNITS" . 1059860)))
1600 ("GetFontnames" fun "IDLgrVRML" (system) "Result = Obj->[%s::]%s( FamilyName)" ("objects_gr230.html" ("IDL_FONTS" . 1018109) ("STYLES" . 1018111)))
1601 ("GetTextDimensions" fun "IDLgrVRML" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr232.html" ("DESCENT" . 1018185) ("PATH" . 1018187)))
1602 ("Init" fun "IDLgrVRML" (system) "Result = Obj->[%s::]%s()" ("objects_gr233.html" ) ("objects_gr226.html" ("COLOR_MODEL" . 1059817) ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE " . 1059826) ("N_COLORS" . 1059828) ("PALETTE" . 1059830) ("QUALITY " . 1059832) ("REGISTER_PROPERTIES" . 1059837) ("RESOLUTION" . 1094159) ("UNITS" . 1059860) ("WORLDINFO " . 1059848) ("WORLDTITLE" . 1059850)))
1603 ("Cleanup" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr237.html"))
1604 ("Draw" pro "IDLgrWindow" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr238.html" ("CREATE_INSTANCE" . 1018509) ("DRAW_INSTANCE" . 1018511)))
1605 ("Erase" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr239.html" ("COLOR" . 1018544)))
1606 ("GetDeviceInfo" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr241.html" ("ALL" . 1018622) ("MAX_NUM_CLIP_PLANES" . 1018624) ("MAX_TEXTURE_DIMENSIONS" . 1018626) ("MAX_VIEWPORT_DIMENSIONS" . 1018628) ("NAME" . 1018630) ("NUM_CPUS" . 1018632) ("VENDOR" . 1018635) ("VERSION" . 1018637)))
1607 ("GetProperty" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr244.html" ) ("objects_gr236.html" ("ALL" . 1059951) ("COLOR_MODEL" . 1059974) ("CURRENT_ZOOM" . 1249228) ("DIMENSIONS " . 1249231) ("DISPLAY_NAME (X Only)" . 1059985) ("GRAPHICS_TREE" . 1059987) ("IMAGE_DATA " . 1060084) ("LOCATION " . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("N_COLORS" . 1059992) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("RENDERER" . 1094184) ("RESOLUTION" . 1060060) ("RETAIN" . 1060058) ("SCREEN_DIMENSIONS " . 1060073) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZBUFFER_DATA" . 1091007) ("ZOOM_BASE" . 1342797) ("ZOOM_NSTEP" . 1342953)))
1608 ("Iconify" pro "IDLgrWindow" (system) "Obj->[%s::]%s, IconFlag" ("objects_gr246.html"))
1609 ("SetCurrentCursor" pro "IDLgrWindow" (system) "Obj->[%s::]%s [, CursorName]" ("objects_gr251.html" ("HOTSPOT" . 1019148) ("IMAGE" . 1019144) ("MASK" . 1019146) ("STANDARD" . 1019150)))
1610 ("SetCurrentZoom" pro "IDLgrWindow" (system) "Obj-> [%s::]%s, ZoomFactor" ("objects_gr252.html" ("RESET" . 1360383)))
1611 ("SetProperty" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr253.html" ) ("objects_gr236.html" ("DIMENSIONS " . 1249231) ("DISPLAY_NAME (X Only)" . 1059985) ("GRAPHICS_TREE" . 1059987) ("LOCATION " . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZOOM_BASE" . 1342797)))
1612 ("Show" pro "IDLgrWindow" (system) "Obj->[%s::]%s, Position" ("objects_gr254.html"))
1613 ("ZoomIn" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr255.html"))
1614 ("ZoomOut" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr256.html"))
1615 ("GetContiguousPixels" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s()" ("objects_gr240.html"))
1616 ("GetDimensions" fun "IDLgrWindow" (system) "Result = Obj -> [%s::]%s ()" ("objects_gr242.html" ("MINIMUM_VIRTUAL_DIMENSIONS" . 1360348) ("ORIGINAL_VIRTUAL_DIMENSIONS" . 1360355) ("VIRTUAL_DIMENSIONS" . 1360358) ("VISIBLE_LOCATION" . 1360361)))
1617 ("GetFontnames" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s(FamilyName)" ("objects_gr243.html" ("IDL_FONTS" . 1018678) ("STYLES" . 1018680)))
1618 ("GetTextDimensions" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr245.html" ("DESCENT" . 1018765) ("PATH" . 1018767)))
1619 ("Init" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s()" ("objects_gr247.html" ) ("objects_gr236.html" ("COLOR_MODEL" . 1059974) ("DIMENSIONS " . 1249231) ("GRAPHICS_TREE" . 1059987) ("LOCATION " . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("N_COLORS" . 1059992) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("REGISTER_PROPERTIES" . 1060008) ("RENDERER" . 1094184) ("RETAIN" . 1060058) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZOOM_BASE" . 1342797)))
1620 ("PickData" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s( View, Object, Location, XYZLocation)" ("objects_gr248.html" ("DIMENSIONS" . 1018957) ("PATH" . 1018961) ("PICK_STATUS" . 1018967)))
1621 ("Read" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s()" ("objects_gr249.html"))
1622 ("Select" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s( Picture, XY)" ("objects_gr250.html" ("DIMENSIONS" . 1019069) ("ORDER" . 1019073) ("SUB_SELECTION" . 1343670) ("UNITS" . 1019076)))
1623 ("Cleanup" pro "IDLitCommand" (system) "Obj->[%s::]%s" ("objects_it6.html"))
1624 ("GetProperty" pro "IDLitCommand" (system) "Obj->[%s::]%s" ("objects_it8.html" ) ("objects_it4.html" ("OPERATION_IDENTIFIER" . 1042072) ("TARGET_IDENTIFIER" . 1042044)))
1625 ("SetProperty" pro "IDLitCommand" (system) "Obj->[%s::]%s" ("objects_it11.html" ) ("objects_it4.html" ("OPERATION_IDENTIFIER" . 1042072) ("TARGET_IDENTIFIER" . 1042044)))
1626 ("AddItem" fun "IDLitCommand" (system) "Result = Obj->[%s::]%s(StrItem, Item)" ("objects_it5.html" ("OVERWRITE" . 1042134)))
1627 ("GetItem" fun "IDLitCommand" (system) "Result = Obj->[%s::]%s(StrItem, Item)" ("objects_it7.html"))
1628 ("GetSize" fun "IDLitCommand" (system) "Result = Obj->[%s::]%s()" ("objects_it9.html" ("KILOBYTES" . 1042275)))
1629 ("Init" fun "IDLitCommand" (system) "Result = Obj->[%s::]%s()" ("objects_it10.html" ) ("objects_it4.html" ("OPERATION_IDENTIFIER" . 1042072) ("TARGET_IDENTIFIER" . 1042044)))
1630 ("Cleanup" pro "IDLitCommandSet" (system) "Obj->[%s::]%s" ("objects_it14.html"))
1631 ("Init" fun "IDLitCommandSet" (system) "Result = Obj->[%s::]%s()" ("objects_it16.html" ))
1632 ("Cleanup" pro "IDLitComponent" (system) "Obj->[%s::]%s" ("objects_it19.html"))
1633 ("GetProperty" pro "IDLitComponent" (system) "Obj->[%s::]%s" ("objects_it22.html" ) ("objects_it18.html" ("COMPONENT_VERSION" . 1068963) ("DESCRIPTION" . 1286379) ("HELP" . 1069022) ("ICON" . 1281308) ("IDENTIFIER" . 1069050) ("NAME" . 1069084) ("PRIVATE" . 1069111) ("UVALUE" . 1069139)))
1634 ("GetPropertyAttribute" pro "IDLitComponent" (system) "Obj->[%s::]%s, PropertyIdentifier" ("objects_it23.html" ("TYPE" . 1069368)))
1635 ("RegisterProperty" pro "IDLitComponent" (system) "Obj->[%s::]%s, PropertyIdentifier[, Type]" ("objects_it27.html" ("BOOLEAN" . 1069541) ("COLOR" . 1069543) ("DESCRIPTION" . 1069545) ("ENUMLIST" . 1069547) ("FLOAT" . 1069549) ("HIDE" . 1069551) ("INTEGER" . 1069553) ("LINESTYLE" . 1069555) ("NAME" . 1069563) ("SENSITIVE" . 1069565) ("STRING" . 1069567) ("SYMBOL" . 1069569) ("THICKNESS" . 1069574) ("UNDEFINED" . 1069576) ("USERDEF" . 1069579) ("VALID_RANGE" . 1069581)))
1636 ("Restore" pro "IDLitComponent" (system) "Obj->[%s::]%s" ("objects_it28.html"))
1637 ("SetProperty" pro "IDLitComponent" (system) "Obj->[%s::]%s" ("objects_it29.html" ) ("objects_it18.html" ("DESCRIPTION" . 1286379) ("HELP" . 1069022) ("ICON" . 1281308) ("IDENTIFIER" . 1069050) ("NAME" . 1069084) ("PRIVATE" . 1069111) ("UVALUE" . 1069139)))
1638 ("SetPropertyAttribute" pro "IDLitComponent" (system) "Obj->[%s::]%s , PropertyIdentifier" ("objects_it30.html"))
1639 ("SetPropertyByIdentifier" pro "IDLitComponent" (system) "Obj->[%s::]%s, PropertyIdentifier, Value" ("objects_it31.html"))
1640 ("UpdateComponentVersion" pro "IDLitComponent" (system) "Obj->[%s::]%s" ("objects_it32.html"))
1641 ("EditUserDefProperty" fun "IDLitComponent" (system) "Result = Obj->[%s::]%s(iTool, PropertyIdentifier)" ("objects_it20.html"))
1642 ("GetFullIdentifier" fun "IDLitComponent" (system) "Result = Obj->[%s::]%s([Objref])" ("objects_it21.html"))
1643 ("GetPropertyByIdentifier" fun "IDLitComponent" (system) "Result = Obj->[%s::]%s(PropertyIdentifier, Value)" ("objects_it24.html"))
1644 ("Init" fun "IDLitComponent" (system) "Result = Obj->[%s::]%s()" ("objects_it25.html" ) ("objects_it18.html" ("DESCRIPTION" . 1286379) ("HELP" . 1069022) ("ICON" . 1281308) ("IDENTIFIER" . 1069050) ("NAME" . 1069084) ("PRIVATE" . 1069111) ("UVALUE" . 1069139)))
1645 ("QueryProperty" fun "IDLitComponent" (system) "Result = Obj->[%s::]%s([PropertyIdentifier])" ("objects_it26.html"))
1646 ("Add" pro "IDLitContainer" (system) "Obj->[%s::]%s, Components" ("objects_it35.html" ("NO_NOTIFY" . 1070004)))
1647 ("AddByIdentifier" pro "IDLitContainer" (system) "Obj->[%s::]%s, Identifier, Item" ("objects_it36.html"))
1648 ("Cleanup" pro "IDLitContainer" (system) "Obj->[%s::]%s" ("objects_it37.html"))
1649 ("Remove" pro "IDLitContainer" (system) "Obj->[%s::]%s, Components" ("objects_it42.html" ("NO_NOTIFY" . 1070225)))
1650 ("Get" fun "IDLitContainer" (system) "Result = Obj->[%s::]%s()" ("objects_it39.html" ("ALL" . 1070110) ("COUNT" . 1070112) ("ISA" . 1070114) ("POSITION" . 1070117) ("SKIP_PRIVATE" . 1070119)))
1651 ("GetByIdentifier" fun "IDLitContainer" (system) "Result = Obj->[%s::]%s(Identifier)" ("objects_it40.html"))
1652 ("IDLitContainer" fun "IDLitContainer" (system) "Result = Obj->[%s::]%s::FindIdentifiers([Pattern])" ("objects_it38.html" ("COUNT" . 1297331) ("LEAF_NODES" . 1297334)))
1653 ("Init" fun "IDLitContainer" (system) "Result = Obj->[%s::]%s()" ("objects_it41.html" ))
1654 ("RemoveByIdentifier" fun "IDLitContainer" (system) "Result = Obj->[%s::]%s(Identifier)" ("objects_it43.html"))
1655 ("AddDataObserver" pro "IDLitData" (system) "Obj->[%s::]%s, Observer" ("objects_it46.html"))
1656 ("Cleanup" pro "IDLitData" (system) "Obj->[%s::]%s" ("objects_it47.html"))
1657 ("GetProperty" pro "IDLitData" (system) "Obj->[%s::]%s" ("objects_it51.html" ) ("objects_it45.html" ("HIDE" . 1070552) ("READ_ONLY" . 1070608) ("TYPE" . 1070636)))
1658 ("NotifyDataChange" pro "IDLitData" (system) "Obj->[%s::]%s" ("objects_it54.html"))
1659 ("NotifyDataComplete" pro "IDLitData" (system) "Obj->[%s::]%s" ("objects_it55.html"))
1660 ("RemoveDataObserver" pro "IDLitData" (system) "Obj->[%s::]%s, Observer" ("objects_it56.html"))
1661 ("SetProperty" pro "IDLitData" (system) "Obj->[%s::]%s" ("objects_it58.html" ) ("objects_it45.html" ("HIDE" . 1070552) ("READ_ONLY" . 1070608)))
1662 ("Copy" fun "IDLitData" (system) "Result = Obj->[%s::]%s()" ("objects_it48.html"))
1663 ("GetByType" fun "IDLitData" (system) "Result = Obj->[%s::]%s(Type)" ("objects_it49.html" ("COUNT" . 1070828)))
1664 ("GetData" fun "IDLitData" (system) "Result = Obj->[%s::]%s(Data[, Identifier])" ("objects_it50.html" ("NAN" . 1070867) ("NO_COPY" . 1154511)))
1665 ("GetSize" fun "IDLitData" (system) "Result = Obj->[%s::]%s()" ("objects_it52.html"))
1666 ("Init" fun "IDLitData" (system) "Result = Obj->[%s::]%s([, Data])" ("objects_it53.html" ) ("objects_it45.html" ("HIDE" . 1070552) ("NO_COPY" . 1070580) ("READ_ONLY" . 1070608) ("TYPE" . 1070636)))
1667 ("SetData" fun "IDLitData" (system) "Result = Obj->[%s::]%s(Data[, Identifier])" ("objects_it57.html" ("NO_COPY" . 1071158) ("NULL" . 1071160)))
1668 ("Add" pro "IDLitDataContainer" (system) "Obj->[%s::]%s, Data" ("objects_it61.html" ("NO_NOTIFY" . 1275026)))
1669 ("Cleanup" pro "IDLitDataContainer" (system) "Obj->[%s::]%s" ("objects_it62.html"))
1670 ("GetProperty" pro "IDLitDataContainer" (system) "Obj->[%s::]%s" ("objects_it65.html" ))
1671 ("SetProperty" pro "IDLitDataContainer" (system) "Obj->[%s::]%s" ("objects_it68.html" ))
1672 ("GetData" fun "IDLitDataContainer" (system) "Result = Obj->[%s::]%s(Data [, Identifier])" ("objects_it63.html" ("NO_COPY" . 1071642)))
1673 ("GetIdentifiers" fun "IDLitDataContainer" (system) "Result = Obj->[%s::]%s([Pattern])" ("objects_it64.html" ("LEAF" . 1071682)))
1674 ("Init" fun "IDLitDataContainer" (system) "Result = Obj->[%s::]%s([, Data])" ("objects_it66.html" ))
1675 ("SetData" fun "IDLitDataContainer" (system) "Result = Obj->[%s::]%s(Data, Identifier)" ("objects_it67.html" ("NO_COPY" . 1071799) ("NULL" . 1071801)))
1676 ("GetProperty" pro "IDLitDataOperation" (system) "Obj->[%s::]%s" ("objects_it74.html" ))
1677 ("SetProperty" pro "IDLitDataOperation" (system) "Obj->[%s::]%s" ("objects_it76.html" ))
1678 ("DoExecuteUI" fun "IDLitDataOperation" (system) "Result = Obj->[%s::]%s()" ("objects_it72.html"))
1679 ("Execute" fun "IDLitDataOperation" (system) "Result = Obj->[%s::]%s(Data)" ("objects_it73.html"))
1680 ("Init" fun "IDLitDataOperation" (system) "Result = Obj->[%s::]%s()" ("objects_it75.html" ))
1681 ("UndoExecute" fun "IDLitDataOperation" (system) "Result = Obj->[%s::]%s(Data)" ("objects_it77.html"))
1682 ("AddOnNotifyObserver" pro "IDLitIMessaging" (system) "Obj->[%s::]%s, IdObserver, IdSubject" ("objects_it80.html"))
1683 ("DoOnNotify" pro "IDLitIMessaging" (system) "Obj->[%s::]%s, IdOriginator, IdMessage, Value" ("objects_it81.html"))
1684 ("ErrorMessage" pro "IDLitIMessaging" (system) "Obj->[%s::]%s, StrMessage" ("objects_it82.html" ("SEVERITY" . 1079859) ("TITLE" . 1079864) ("USE_LAST_ERROR" . 1079866)))
1685 ("ProbeStatusMessage" pro "IDLitIMessaging" (system) "Obj->[%s::]%s, StrMessage" ("objects_it84.html"))
1686 ("RemoveOnNotifyObserver" pro "IDLitIMessaging" (system) "Obj->[%s::]%s, IdObserver, IdSubject" ("objects_it88.html"))
1687 ("SignalError" pro "IDLitIMessaging" (system) "Obj->[%s::]%s, StrMessage" ("objects_it89.html" ("CODE" . 1080072) ("SEVERITY" . 1080074)))
1688 ("StatusMessage" pro "IDLitIMessaging" (system) "Obj->[%s::]%s, StrMessage" ("objects_it90.html" ("SEGMENT_IDENTIFIER" . 1287131)))
1689 ("GetTool" fun "IDLitIMessaging" (system) "Result = Obj->[%s::]%s()" ("objects_it83.html"))
1690 ("ProgressBar" fun "IDLitIMessaging" (system) "Result = Obj->[%s::]%s(StrMessage)" ("objects_it85.html" ("CANCEL" . 1270494) ("PERCENT" . 1079974) ("SHUTDOWN" . 1079976)))
1691 ("PromptUserText" fun "IDLitIMessaging" (system) "Result = Obj->[%s::]%s(StrPrompt, Answer)" ("objects_it86.html" ("TITLE" . 1080016)))
1692 ("PromptUserYesNo" fun "IDLitIMessaging" (system) "Result = Obj->[%s::]%s(StrPrompt, Answer)" ("objects_it87.html" ("TITLE" . 1080036)))
1693 ("Cleanup" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it93.html"))
1694 ("GetProperty" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it96.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DESCRIPTION" . 1080417) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT " . 1080617) ("TRANSIENT_MOTION" . 1080650) ("TYPES" . 1080678) ("VISUAL_TYPE" . 1080735)))
1695 ("OnKeyboard" pro "IDLitManipulator" (system) "Obj->[%s::]%s, Win, IsASCII, Character, KeyValue, X, Y, Press, Release, KeyMods" ("objects_it98.html"))
1696 ("OnLoseCurrentManipulator" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it99.html"))
1697 ("OnMouseDown" pro "IDLitManipulator" (system) "Obj->[%s::]%s, Win, X, Y, IButton, KeyMods, NClicks" ("objects_it100.html"))
1698 ("OnMouseMotion" pro "IDLitManipulator" (system) "Obj->[%s::]%s, Win, X, Y, KeyMods" ("objects_it101.html"))
1699 ("OnMouseUp" pro "IDLitManipulator" (system) "Obj->[%s::]%s, Win, X, Y, IButton" ("objects_it102.html"))
1700 ("RegisterCursor" pro "IDLitManipulator" (system) "Obj->[%s::]%s, ArrCursor, Name" ("objects_it104.html" ("DEFAULT" . 1281810)))
1701 ("SetCurrentManipulator" pro "IDLitManipulator" (system) "Obj->[%s::]%s [, Item]" ("objects_it105.html"))
1702 ("SetProperty" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it120.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DESCRIPTION" . 1080417) ("DISABLE" . 1080445) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT " . 1080617) ("TRANSIENT_MOTION" . 1080650) ("VISUAL_TYPE" . 1080735)))
1703 ("CommitUndoValues" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s()" ("objects_it94.html" ("UNCOMMIT" . 1080828)))
1704 ("GetCursorType" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s(TypeIn, KeyMods)" ("objects_it95.html"))
1705 ("Init" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s()" ("objects_it97.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DEFAULT_CURSOR" . 1080389) ("DESCRIPTION" . 1080417) ("DISABLE" . 1080445) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT " . 1080617) ("TRANSIENT_MOTION" . 1080650) ("TYPES" . 1080678) ("VIEWS_ONLY" . 1080706) ("VISUAL_TYPE" . 1080735)))
1706 ("RecordUndoValues" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s()" ("objects_it103.html"))
1707 ("Add" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s, Manipulator" ("objects_it109.html"))
1708 ("GetProperty" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s" ("objects_it112.html" ))
1709 ("OnMouseDown" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s, Win, X, Y, IButton, KeyMods, NClicks" ("objects_it115.html"))
1710 ("OnMouseMotion" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s, Win, X, Y, KeyMods" ("objects_it116.html"))
1711 ("OnMouseUp" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s, Win, X, Y, IButton" ("objects_it117.html"))
1712 ("SetCurrent" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s, Manipulator" ("objects_it118.html"))
1713 ("SetCurrentManipulator" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s, Identifier" ("objects_it119.html"))
1714 ("GetCurrent" fun "IDLitManipulatorContainer" (system) "Result = Obj->[%s::]%s()" ("objects_it110.html"))
1715 ("GetCurrentManipulator" fun "IDLitManipulatorContainer" (system) "Result = Obj->[%s::]%s()" ("objects_it111.html" ("IDENTIFIER" . 1081635)))
1716 ("Init" fun "IDLitManipulatorContainer" (system) "Result = Obj->[%s::]%s()" ("objects_it113.html" ) ("objects_it108.html" ("AUTO_SWITCH" . 1081512)))
1717 ("Add" pro "IDLitManipulatorManager" (system) "Obj->[%s::]%s, Manipulator" ("objects_it123.html" ("DEFAULT" . 1082187)))
1718 ("AddManipulatorObserver" pro "IDLitManipulatorManager" (system) "Obj->[%s::]%s, Observer" ("objects_it124.html"))
1719 ("RemoveManipulatorObserver" pro "IDLitManipulatorManager" (system) "Obj->[%s::]%s, Observer" ("objects_it127.html"))
1720 ("Init" fun "IDLitManipulatorManager" (system) "Result = Obj->[%s::]%s()" ("objects_it126.html" ))
1721 ("Cleanup" pro "IDLitManipulatorVisual" (system) "Obj->[%s::]%s" ("objects_it130.html"))
1722 ("GetProperty" pro "IDLitManipulatorVisual" (system) "Obj->[%s::]%s" ("objects_it131.html" ) ("objects_it129.html" ("UNIFORM_SCALE" . 1082429) ("VISUAL_TYPE" . 1082457)))
1723 ("SetProperty" pro "IDLitManipulatorVisual" (system) "Obj->[%s::]%s" ("objects_it133.html" ) ("objects_it129.html" ("UNIFORM_SCALE" . 1082429) ("VISUAL_TYPE" . 1082457)))
1724 ("Init" fun "IDLitManipulatorVisual" (system) "Result = Obj->[%s::]%s()" ("objects_it132.html" ) ("objects_it129.html" ("UNIFORM_SCALE" . 1082429) ("VISUAL_TYPE" . 1082457)))
1725 ("Cleanup" pro "IDLitOperation" (system) "Obj->[%s::]%s" ("objects_it71.html"))
1726 ("GetProperty" pro "IDLitOperation" (system) "Obj->[%s::]%s" ("objects_it138.html" ) ("objects_it135.html" ("EXPENSIVE_COMPUTATION" . 1072559) ("REVERSIBLE_OPERATION" . 1072587) ("SHOW_EXECUTION_UI" . 1072615) ("TYPES" . 1072643)))
1727 ("SetProperty" pro "IDLitOperation" (system) "Obj->[%s::]%s" ("objects_it143.html" ))
1728 ("DoAction" fun "IDLitOperation" (system) "Result = Obj->[%s::]%s(Tool)" ("objects_it137.html"))
1729 ("Init" fun "IDLitOperation" (system) "Result = Obj->[%s::]%s()" ("objects_it139.html" ) ("objects_it135.html" ("EXPENSIVE_COMPUTATION" . 1072559) ("REVERSIBLE_OPERATION" . 1072587) ("SHOW_EXECUTION_UI" . 1072615) ("TYPES" . 1072643)))
1730 ("RecordFinalValues" fun "IDLitOperation" (system) "Result = Obj->[%s::]%s(CommandSet, Targets [, IdProperty] )" ("objects_it140.html"))
1731 ("RecordInitialValues" fun "IDLitOperation" (system) "Result = Obj->[%s::]%s(CommandSet, Targets [, IdProperty])" ("objects_it141.html"))
1732 ("RedoOperation" fun "IDLitOperation" (system) "Result = Obj->[%s::]%s(CommandSet)" ("objects_it142.html"))
1733 ("UndoOperation" fun "IDLitOperation" (system) "Result = Obj->[%s::]%s(CommandSet)" ("objects_it144.html"))
1734 ("Cleanup" pro "IDLitParameter" (system) "Obj->[%s::]%s" ("objects_it147.html"))
1735 ("IDLitParameter" pro "IDLitParameter" (system) "Obj->[%s::]%s::SetParameterAttribute(ParamName)" ("objects_it157.html" ("KEYWORD")))
1736 ("OnDataChangeUpdate" pro "IDLitParameter" (system) "Obj->[%s::]%s, Data, ParameterName" ("objects_it152.html"))
1737 ("OnDataDisconnect" pro "IDLitParameter" (system) "Obj->[%s::]%s, ParameterName" ("objects_it153.html"))
1738 ("RegisterParameter" pro "IDLitParameter" (system) "Obj->[%s::]%s, Name" ("objects_it155.html" ("BY_VALUE" . 1083371) ("DESCRIPTION" . 1083373) ("INPUT" . 1083375) ("OPTARGET" . 1083377) ("OPTIONAL" . 1083379) ("OUTPUT" . 1083381) ("TYPES" . 1083383)))
1739 ("GetParameter" fun "IDLitParameter" (system) "Result = Obj->[%s::]%s(Name)" ("objects_it148.html" ("ALL" . 1083021) ("COUNT" . 1083023)))
1740 ("GetParameterSet" fun "IDLitParameter" (system) "Result = Obj->[%s::]%s()" ("objects_it150.html" ("DEEP_COPY" . 1083153)))
1741 ("IDLitParameter" fun "IDLitParameter" (system) "Result = Obj->[%s::]%s::QueryParameter([ParamName])" ("objects_it154.html" ("COUNT" . 1297407)))
1742 ("Init" fun "IDLitParameter" (system) "Result = Obj->[%s::]%s()" ("objects_it151.html" ))
1743 ("SetData" fun "IDLitParameter" (system) "Result = Obj->[%s::]%s(Data)" ("objects_it156.html" ("BY_VALUE" . 1083428) ("NO_UPDATE" . 1083430) ("PARAMETER_NAME" . 1083433)))
1744 ("SetParameterSet" fun "IDLitParameter" (system) "Result = Obj->[%s::]%s(ParamSet)" ("objects_it158.html"))
1745 ("Add" pro "IDLitParameterSet" (system) "Obj->[%s::]%s, Data" ("objects_it161.html" ("PARAMETER_NAME" . 1083838) ("PRESERVE_LOCATION" . 1083840)))
1746 ("Cleanup" pro "IDLitParameterSet" (system) "Obj->[%s::]%s" ("objects_it162.html"))
1747 ("Remove" pro "IDLitParameterSet" (system) "Obj->[%s::]%s [, Items]" ("objects_it168.html" ("ALL" . 1084212) ("POSITION" . 1084214)))
1748 ("Copy" fun "IDLitParameterSet" (system) "Result = Obj->[%s::]%s()" ("objects_it163.html"))
1749 ("Get" fun "IDLitParameterSet" (system) "Result = Obj->[%s::]%s()" ("objects_it164.html" ("ALL" . 1083998) ("COUNT" . 1084000) ("NAME" . 1084002) ("POSITION" . 1084004)))
1750 ("GetByName" fun "IDLitParameterSet" (system) "Result = Obj->[%s::]%s( Names)" ("objects_it165.html" ("COUNT" . 1228440) ("NAME" . 1084087)))
1751 ("GetParameterName" fun "IDLitParameterSet" (system) "Result = Obj->[%s::]%s(Data, Name)" ("objects_it166.html"))
1752 ("Init" fun "IDLitParameterSet" (system) "Result = Obj->[%s::]%s()" ("objects_it167.html" ))
1753 ("Cleanup" pro "IDLitReader" (system) "Obj->[%s::]%s" ("objects_it171.html"))
1754 ("GetProperty" pro "IDLitReader" (system) "Obj->[%s::]%s" ("objects_it175.html" ))
1755 ("SetFilename" pro "IDLitReader" (system) "Obj->[%s::]%s, Filename" ("objects_it178.html"))
1756 ("SetProperty" pro "IDLitReader" (system) "Obj->[%s::]%s" ("objects_it179.html" ))
1757 ("GetData" fun "IDLitReader" (system) "Result = Obj->[%s::]%s(Data)" ("objects_it172.html"))
1758 ("GetFileExtensions" fun "IDLitReader" (system) "Result = Obj->[%s::]%s()" ("objects_it173.html" ("COUNT" . 1084646)))
1759 ("GetFilename" fun "IDLitReader" (system) "Result = Obj->[%s::]%s()" ("objects_it174.html"))
1760 ("Init" fun "IDLitReader" (system) "Result = Obj->[%s::]%s(, Extensions)" ("objects_it176.html" ))
1761 ("IsA" fun "IDLitReader" (system) "Result = Obj->[%s::]%s(Filename)" ("objects_it177.html"))
1762 ("ActivateManipulator" pro "IDLitTool" (system) "Obj->[%s::]%s, Identifier" ("objects_it182.html" ("DEFAULT" . 1265856)))
1763 ("Add" pro "IDLitTool" (system) "Obj->[%s::]%s, Item" ("objects_it183.html"))
1764 ("AddService" pro "IDLitTool" (system) "Obj->[%s::]%s, Service" ("objects_it184.html"))
1765 ("Cleanup" pro "IDLitTool" (system) "Obj->[%s::]%s" ("objects_it185.html"))
1766 ("CommitActions" pro "IDLitTool" (system) "Obj->[%s::]%s" ("objects_it186.html"))
1767 ("DisableUpdates" pro "IDLitTool" (system) "Obj->[%s::]%s ()" ("objects_it187.html" ("PREVIOUSLY_DISABLED" . 1078152)))
1768 ("EnableUpdates" pro "IDLitTool" (system) "Obj->[%s::]%s" ("objects_it191.html"))
1769 ("GetProperty" pro "IDLitTool" (system) "Obj->[%s::]%s" ("objects_it198.html" ) ("objects_it181.html" ("DESCRIPTION" . 1123541) ("ICON" . 1077825) ("NAME" . 1077853) ("VERBOSE" . 1077937) ("VERSION" . 1077965)))
1770 ("RefreshCurrentWindow" pro "IDLitTool" (system) "Obj->[%s::]%s" ("objects_it203.html"))
1771 ("Register" pro "IDLitTool" (system) "Obj->[%s::]%s, Name, ClassName" ("objects_it204.html" ("DEFAULT" . 1363277) ("DESCRIPTION" . 1078812) ("ICON" . 1078814) ("IDENTIFIER" . 1078816) ("PROXY" . 1078824)))
1772 ("RegisterCustomization" pro "IDLitTool" (system) "Obj->[%s::]%s, Name, ClassName" ("objects_it205.html"))
1773 ("RegisterFileReader" pro "IDLitTool" (system) "Obj->[%s::]%s, Name, ClassName" ("objects_it206.html" ("DEFAULT" . 1363382) ("DESCRIPTION" . 1078859) ("ICON" . 1078861) ("IDENTIFIER" . 1078863) ("PROXY" . 1078866)))
1774 ("RegisterFileWriter" pro "IDLitTool" (system) "Obj->[%s::]%s, Name, ClassName" ("objects_it207.html" ("DEFAULT" . 1363460) ("DESCRIPTION" . 1078901) ("ICON" . 1078903) ("IDENTIFIER" . 1078905) ("PROXY" . 1078908)))
1775 ("RegisterManipulator" pro "IDLitTool" (system) "Obj->[%s::]%s, Name, ClassName" ("objects_it208.html" ("DEFAULT" . 1078943) ("DESCRIPTION" . 1078945) ("ICON" . 1078947) ("IDENTIFIER" . 1078949)))
1776 ("RegisterOperation" pro "IDLitTool" (system) "Obj->[%s::]%s, Name, ClassName" ("objects_it209.html" ("ACCELERATOR" . 1247195) ("CHECKED" . 1247213) ("DESCRIPTION" . 1078985) ("DISABLE" . 1247231) ("DROPLIST_EDIT" . 1292076) ("DROPLIST_INDEX" . 1292079) ("DROPLIST_ITEMS" . 1292082) ("ICON" . 1078987) ("IDENTIFIER" . 1078989) ("PROXY" . 1078992) ("SEPARATOR" . 1247249)))
1777 ("RegisterStatusBarSegment" pro "IDLitTool" (system) "Obj->[%s::]%s, Name" ("objects_it210.html" ("IDENTIFIER" . 1286948) ("NORMALIZED_WIDTH" . 1286951)))
1778 ("RegisterVisualization" pro "IDLitTool" (system) "Obj->[%s::]%s, Name, ClassName" ("objects_it211.html" ("DEFAULT" . 1079028) ("DESCRIPTION" . 1079030) ("ICON" . 1079032) ("IDENTIFIER" . 1079034) ("PROXY" . 1079037)))
1779 ("SetProperty" pro "IDLitTool" (system) "Obj->[%s::]%s" ("objects_it212.html" ) ("objects_it181.html" ("DESCRIPTION" . 1123541) ("ICON" . 1077825) ("NAME" . 1077853) ("TYPE" . 1077881) ("UPDATE_BYTYPE" . 1077909) ("VERBOSE" . 1077937)))
1780 ("UnRegister" pro "IDLitTool" (system) "Obj->[%s::]%s, Identifier" ("objects_it213.html"))
1781 ("UnRegisterCustomization" pro "IDLitTool" (system) "Obj->[%s::]%s" ("objects_it214.html"))
1782 ("UnRegisterFileReader" pro "IDLitTool" (system) "Obj->[%s::]%s, Identifier" ("objects_it215.html"))
1783 ("UnRegisterFileWriter" pro "IDLitTool" (system) "Obj->[%s::]%s, Identifier" ("objects_it216.html"))
1784 ("UnRegisterManipulator" pro "IDLitTool" (system) "Obj->[%s::]%s, Identifier" ("objects_it217.html"))
1785 ("UnRegisterOperation" pro "IDLitTool" (system) "Obj->[%s::]%s, Identifier" ("objects_it218.html"))
1786 ("UnRegisterStatusBarSegment" pro "IDLitTool" (system) "Obj->[%s::]%s, Identifier" ("objects_it219.html"))
1787 ("UnRegisterVisualization" pro "IDLitTool" (system) "Obj->[%s::]%s, Identifier" ("objects_it220.html"))
1788 ("DoAction" fun "IDLitTool" (system) "Result = Obj->[%s::]%s(Identifier)" ("objects_it188.html"))
1789 ("DoSetProperty" fun "IDLitTool" (system) "Result = Obj->[%s::]%s(TargetIdentifier, PropertyIdentifier, Value)" ("objects_it189.html"))
1790 ("DoUIService" fun "IDLitTool" (system) "Result = Obj->[%s::]%s(ServiceIdentifier, Requestor)" ("objects_it190.html"))
1791 ("GetCurrentManipulator" fun "IDLitTool" (system) "Result = Obj->[%s::]%s()" ("objects_it193.html"))
1792 ("GetFileReaders" fun "IDLitTool" (system) "Result = Obj->[%s::]%s(Identifier)" ("objects_it194.html" ("ALL" . 1078392) ("COUNT" . 1078394)))
1793 ("GetFileWriters" fun "IDLitTool" (system) "Result = Obj->[%s::]%s(Identifier)" ("objects_it195.html" ("ALL" . 1078432) ("COUNT" . 1078434)))
1794 ("GetManipulators" fun "IDLitTool" (system) "Result = Obj->[%s::]%s()" ("objects_it196.html" ("COUNT" . 1078470)))
1795 ("GetOperations" fun "IDLitTool" (system) "Result = Obj->[%s::]%s()" ("objects_it197.html" ("COUNT" . 1228547) ("IDENTIFIER" . 1078507)))
1796 ("GetSelectedItems" fun "IDLitTool" (system) "Result = Obj->[%s::]%s()" ("objects_it199.html" ("COUNT" . 1078577)))
1797 ("GetService" fun "IDLitTool" (system) "Result = Obj->[%s::]%s(IdService)" ("objects_it200.html"))
1798 ("GetVisualizations" fun "IDLitTool" (system) "Result = Obj->[%s::]%s(Identifier)" ("objects_it201.html" ("ALL" . 1078651) ("COUNT" . 1078653)))
1799 ("IDLitTool" fun "IDLitTool" (system) "Result = Obj->[%s::]%s::FindIdentifiers([Pattern])" ("objects_it192.html" ("ANNOTATIONS" . 1297756) ("COUNT" . 1297759) ("DATA_MANAGER" . 1297762) ("FILE_READERS" . 1297765) ("FILE_WRITERS" . 1297768) ("LEAF_NODES" . 1297771) ("MANIPULATORS" . 1297775) ("OPERATIONS" . 1297778) ("VISUALIZATIONS" . 1297781)))
1800 ("Init" fun "IDLitTool" (system) "Result = Obj->[%s::]%s()" ("objects_it202.html" ) ("objects_it181.html" ("DESCRIPTION" . 1123541) ("ICON" . 1077825) ("NAME" . 1077853) ("TYPE" . 1077881) ("UPDATE_BYTYPE" . 1077909) ("VERBOSE" . 1077937) ("VERSION" . 1077965)))
1801 ("AddOnNotifyObserver" pro "IDLitUI" (system) "Obj->[%s::]%s, IdObserver, IdSubject" ("objects_it224.html"))
1802 ("Cleanup" pro "IDLitUI" (system) "Obj->[%s::]%s" ("objects_it225.html"))
1803 ("GetProperty" pro "IDLitUI" (system) "Obj->[%s::]%s" ("objects_it227.html" ) ("objects_it223.html" ("GROUP_LEADER" . 1085364)))
1804 ("RemoveOnNotifyObserver" pro "IDLitUI" (system) "Obj->[%s::]%s, IdObserver, IdSubject" ("objects_it233.html"))
1805 ("SetProperty" pro "IDLitUI" (system) "Obj->[%s::]%s" ("objects_it234.html" ))
1806 ("UnRegisterUIService" pro "IDLitUI" (system) "Obj->[%s::]%s, Name" ("objects_it235.html"))
1807 ("UnRegisterWidget" pro "IDLitUI" (system) "Obj->[%s::]%s, Name" ("objects_it236.html"))
1808 ("DoAction" fun "IDLitUI" (system) "Result = Obj->[%s::]%s(Identifier)" ("objects_it226.html"))
1809 ("GetTool" fun "IDLitUI" (system) "Result = Obj->[%s::]%s()" ("objects_it228.html"))
1810 ("GetWidgetByName" fun "IDLitUI" (system) "Result = Obj->[%s::]%s(Name)" ("objects_it229.html"))
1811 ("Init" fun "IDLitUI" (system) "Result = Obj->[%s::]%s(, oTool)" ("objects_it230.html" ))
1812 ("RegisterUIService" fun "IDLitUI" (system) "Restult = Obj->[%s::]%s(Name, Callback)" ("objects_it231.html"))
1813 ("RegisterWidget" fun "IDLitUI" (system) "Result = Obj->[%s::]%s(wID, Name, Callback)" ("objects_it232.html" ("FLOATING" . 1085752)))
1814 ("Add" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Objects" ("objects_it239.html" ("AGGREGATE" . 1086521) ("NO_UPDATE" . 1086525) ("POSITION" . 1086527)))
1815 ("Aggregate" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Objects" ("objects_it240.html"))
1816 ("BeginManipulation" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Manipulator" ("objects_it241.html"))
1817 ("Cleanup" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it242.html"))
1818 ("EndManipulation" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Manipulator" ("objects_it243.html"))
1819 ("GetProperty" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it251.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE " . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET " . 1086407) ("PROPERTY_INTERSECTION" . 1153078)))
1820 ("Move" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Source, Destination" ("objects_it261.html"))
1821 ("On2DRotate" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier, IsRotated" ("objects_it262.html"))
1822 ("OnAxesRequestChange" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier, AxesRequest" ("objects_it263.html"))
1823 ("OnAxesStyleRequestChange" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier, StyleRequest" ("objects_it264.html"))
1824 ("OnDataChange" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier" ("objects_it265.html"))
1825 ("OnDataComplete" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier" ("objects_it266.html"))
1826 ("OnDataRangeChange" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier, XRange, YRange, Zrange" ("objects_it267.html"))
1827 ("OnDimensionChange" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier, Is3D" ("objects_it268.html"))
1828 ("OnWorldDimensionChange" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier, Is3D" ("objects_it269.html"))
1829 ("Remove" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Object" ("objects_it270.html" ("NO_UPDATE" . 1087640)))
1830 ("Restore" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it272.html"))
1831 ("Rotate" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Axis, Angle" ("objects_it273.html" ("CENTER_OF_ROTATION" . 1257870) ("PREMULTIPLY" . 1257943)))
1832 ("Scale" pro "IDLitVisualization" (system) "Obj->[%s::]%s, SX, SY, SZ" ("objects_it274.html" ("CENTER_OF_ROTATION" . 1087711) ("PREMULTIPLY" . 1087713)))
1833 ("Select" pro "IDLitVisualization" (system) "Obj->[%s::]%s[, Mode]" ("objects_it275.html" ("ADDITIVE" . 1087748) ("NO_NOTIFY" . 1087750) ("SELECT" . 1087752) ("TOGGLE" . 1087754) ("UNSELECT" . 1087756)))
1834 ("Set3D" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Is3D" ("objects_it276.html" ("ALWAYS" . 1087787) ("AUTO_COMPUTE" . 1087789)))
1835 ("SetAxesRequest" pro "IDLitVisualization" (system) "Obj->[%s::]%s [, AxesRequest]" ("objects_it277.html" ("ALWAYS" . 1264542) ("AUTO_COMPUTE" . 1264612) ("NO_NOTIFY" . 1264617)))
1836 ("SetAxesStyleRequest" pro "IDLitVisualization" (system) "Obj->[%s::]%s, StyleRequest" ("objects_it278.html" ("NO_NOTIFY" . 1264441)))
1837 ("SetCurrentSelectionVisual" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Manipulator" ("objects_it279.html"))
1838 ("SetDefaultSelectionVisual" pro "IDLitVisualization" (system) "Obj->[%s::]%s, SelectionVisual" ("objects_it281.html" ("POSITION" . 1087891)))
1839 ("SetProperty" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it283.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE " . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET " . 1086407) ("TYPE" . 1086465)))
1840 ("UpdateSelectionVisual" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it284.html"))
1841 ("VisToWindow" pro "IDLitVisualization" (system) "Obj->[%s::]%s, InX, InY, InZ, OutX, OutY, OutZ" ("objects_it285.html" ("NO_TRANSFORM" . 1157092)))
1842 ("WindowToVis" pro "IDLitVisualization" (system) "Obj->[%s::]%s, InX, InY, InZ, OutX, OutY, OutZ or Obj->[%s::]%s, InX, InY, OutX, OutY or Obj->[%s::]%s, InVerts, OutVerts" ("objects_it286.html"))
1843 ("Get" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it244.html" ("ALL" . 1086723) ("COUNT" . 1086725) ("ISA" . 1086727) ("POSITION" . 1086730) ("SKIP_PRIVATE" . 1086732)))
1844 ("GetCenterRotation" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it245.html" ("NO_TRANSFORM" . 1086773) ("XRANGE" . 1086775) ("YRANGE" . 1086777) ("ZRANGE" . 1086779)))
1845 ("GetCurrentSelectionVisual" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it246.html"))
1846 ("GetDataSpace" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it247.html" ("UNNORMALIZED" . 1154562)))
1847 ("GetDataString" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s(XYZLocation)" ("objects_it248.html"))
1848 ("GetDefaultSelectionVisual" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it249.html"))
1849 ("GetManipulatorTarget" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it250.html"))
1850 ("GetRequestedAxesStyle" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s( )" ("objects_it252.html"))
1851 ("GetSelectionVisual" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s(Manipulator)" ("objects_it253.html"))
1852 ("GetTypes" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it254.html"))
1853 ("GetXYZRange" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s(XRange,YRange, ZRange)" ("objects_it255.html" ("DATA" . 1087296) ("NO_TRANSFORM" . 1087298)))
1854 ("Init" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it256.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE " . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET " . 1086407) ("PROPERTY_INTERSECTION" . 1153078) ("TYPE" . 1086465)))
1855 ("Is3D" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it257.html"))
1856 ("IsIsotropic" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it258.html"))
1857 ("IsManipulatorTarget" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it259.html"))
1858 ("IsSelected" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it260.html"))
1859 ("RequestsAxes" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s( )" ("objects_it271.html"))
1860 ("SetData" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s(Data)" ("objects_it280.html"))
1861 ("SetParameterSet" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s(ParameterSet)" ("objects_it282.html"))
1862 ("Add" pro "IDLitWindow" (system) "Obj->[%s::]%s, Objects" ("objects_it289.html" ("POSITION" . 1092060)))
1863 ("AddWindowEventObserver" pro "IDLitWindow" (system) "Obj->[%s::]%s, Objects" ("objects_it290.html"))
1864 ("Cleanup" pro "IDLitWindow" (system) "Obj->[%s::]%s" ("objects_it291.html"))
1865 ("ClearSelections" pro "IDLitWindow" (system) "Obj->[%s::]%s" ("objects_it292.html"))
1866 ("OnKeyboard" pro "IDLitWindow" (system) "Obj->[%s::]%s, IsASCII, Character, KeySymbol, X, Y, Press, Release, Modifiers" ("objects_it298.html"))
1867 ("OnMouseDown" pro "IDLitWindow" (system) "Obj->[%s::]%s, X, Y, ButtonMask, Modifiers, NumClicks" ("objects_it299.html"))
1868 ("OnMouseMotion" pro "IDLitWindow" (system) "Obj->[%s::]%s, X, Y, Modifiers" ("objects_it300.html"))
1869 ("OnMouseUp" pro "IDLitWindow" (system) "Obj->[%s::]%s, X, Y, ButtonMask" ("objects_it301.html"))
1870 ("OnScroll" pro "IDLitWindow" (system) "Obj->[%s::]%s, X, Y" ("objects_it302.html"))
1871 ("Remove" pro "IDLitWindow" (system) "Obj->[%s::]%s, Object" ("objects_it303.html" ("ALL" . 1092903) ("POSITION" . 1092905)))
1872 ("RemoveWindowEventObserver" pro "IDLitWindow" (system) "Obj->[%s::]%s, Objects" ("objects_it304.html"))
1873 ("SetCurrentZoom" pro "IDLitWindow" (system) "Obj->[%s::]%s, ZoomFactor" ("objects_it305.html" ("RESET" . 1092996)))
1874 ("SetEventMask" pro "IDLitWindow" (system) "Obj->[%s::]%s([EventMask])" ("objects_it306.html" ("BUTTON_EVENTS" . 1093069) ("KEYBOARD_EVENTS" . 1093071) ("MOTION_EVENTS" . 1093073) ("TRACKING_EVENTS" . 1093075)))
1875 ("SetManipulatorManager" pro "IDLitWindow" (system) "Obj->[%s::]%s, Manager" ("objects_it307.html"))
1876 ("SetProperty" pro "IDLitWindow" (system) "Obj->[%s::]%s" ("objects_it308.html" ))
1877 ("ZoomIn" pro "IDLitWindow" (system) "Obj->[%s::]%s" ("objects_it309.html"))
1878 ("ZoomOut" pro "IDLitWindow" (system) "Obj->[%s::]%s" ("objects_it310.html"))
1879 ("DoHitTest" fun "IDLitWindow" (system) "Result = Obj->[%s::]%s(X, Y)" ("objects_it293.html" ("DIMENSIONS" . 1092195) ("ORDER" . 1247287) ("SUB_HIT" . 1092197) ("UNITS" . 1092202)))
1880 ("GetEventMask" fun "IDLitWindow" (system) "Result = Obj->[%s::]%s()" ("objects_it294.html" ("BUTTON_EVENTS" . 1092316) ("KEYBOARD_EVENTS" . 1092318) ("MOTION_EVENTS" . 1092320) ("TRACKING_EVENTS" . 1092322)))
1881 ("GetSelectedItems" fun "IDLitWindow" (system) "Result = Obj->[%s::]%s()" ("objects_it296.html" ("ALL" . 1247360) ("COUNT" . 1154724)))
1882 ("Init" fun "IDLitWindow" (system) "Result = Obj->[%s::]%s()" ("objects_it297.html" ))
1883 ("Cleanup" pro "IDLitWriter" (system) "Obj->[%s::]%s" ("objects_it313.html"))
1884 ("GetProperty" pro "IDLitWriter" (system) "Obj->[%s::]%s" ("objects_it316.html" ) ("objects_it312.html" ("TYPES" . 1394697)))
1885 ("SetFilename" pro "IDLitWriter" (system) "Obj->[%s::]%s, Filename" ("objects_it320.html"))
1886 ("SetProperty" pro "IDLitWriter" (system) "Obj->[%s::]%s" ("objects_it321.html" ))
1887 ("GetFileExtensions" fun "IDLitWriter" (system) "Result = Obj->[%s::]%s()" ("objects_it314.html" ("COUNT" . 1093562)))
1888 ("GetFilename" fun "IDLitWriter" (system) "Result = Obj->[%s::]%s()" ("objects_it315.html"))
1889 ("Init" fun "IDLitWriter" (system) "Result = Obj->[%s::]%s(, Extensions)" ("objects_it317.html" ) ("objects_it312.html" ("TYPES" . 1394697)))
1890 ("IsA" fun "IDLitWriter" (system) "Result = Obj->[%s::]%s(Filename)" ("objects_it318.html"))
1891 ("SetData" fun "IDLitWriter" (system) "Result = Obj->[%s::]%s(Data)" ("objects_it319.html"))
1892 ("GetProperty" pro "IDLjavaObject" (system) "Obj->[%s::]%s" ("objects_misc30.html" ))
1893 ("SetProperty" pro "IDLjavaObject" (system) "Obj->[%s::]%s" ("objects_misc32.html" ))
1894 ("Init" fun "IDLjavaObject" (system) "Result = Obj -> [%s::]%s(, JavaClassName[, Arg1, ...])" ("objects_misc31.html" ))
1895 ("Reset" pro "TrackBall" (system) "Obj->[%s::]%s, Center, Radius" ("objects_misc36.html" ("AXIS" . 1004145) ("CONSTRAIN" . 1004150) ("MOUSE" . 1004152)))
1896 ("Init" fun "TrackBall" (system) "Result = Obj->[%s::]%s(, Center, Radius)" ("objects_misc35.html" ("AXIS") ("CONSTRAIN") ("MOUSE")) ("objects_misc34.html" ("AXIS" . 1010189) ("CONSTRAIN" . 1010194) ("MOUSE" . 1010196)))
1897 ("Update" fun "TrackBall" (system) "Result = Obj->[%s::]%s( sEvent)" ("objects_misc37.html" ("MOUSE" . 1004192) ("TRANSFORM" . 1004197) ("TRANSLATE" . 1004199)))
1382 ) 1898 )
1383 "1324 builtin routines with 6129 keywords for IDL version 5.5.") 1899 "1850 builtin routines with 7685 keywords for IDL version 6.1.")
1384 1900
1385(setq idlwave-system-variables-alist 1901(setq idlwave-system-variables-alist
1386 '( 1902 '(
1387 ("C") 1903 ("C" (link "sysvars7.html#wp997337"))
1388 ("CPU" ("HW_VECTOR") ("VECTOR_ENABLE") ("HW_NCPU") ("TPOOL_NTHREADS") ("TPOOL_MIN_ELTS") ("TPOOL_MAX_ELTS")) 1904 ("CPU" (tags ("HW_VECTOR") ("VECTOR_ENABLE") ("HW_NCPU") ("TPOOL_NTHREADS") ("TPOOL_MIN_ELTS") ("TPOOL_MAX_ELTS")) (link "sysvars6.html#wp1014201"))
1389 ("D" ("NAME") ("X_SIZE") ("Y_SIZE") ("X_VSIZE") ("Y_VSIZE") ("X_CH_SIZE") ("Y_CH_SIZE") ("X_PX_CM") ("Y_PX_CM") ("N_COLORS") ("TABLE_SIZE") ("FILL_DIST") ("WINDOW") ("UNIT") ("FLAGS") ("ORIGIN") ("ZOOM")) 1905 ("D" (tags ("NAME" . 997486) ("X_SIZE" . 997529) ("Y_SIZE" . 997529) ("X_VSIZE" . 997534) ("Y_VSIZE" . 997534) ("X_CH_SIZE" . 997518) ("Y_CH_SIZE" . 997518) ("X_PX_CM" . 997524) ("Y_PX_CM" . 997524) ("N_COLORS" . 997482) ("TABLE_SIZE" . 997494) ("FILL_DIST" . 997350) ("WINDOW" . 997514) ("UNIT" . 1008156) ("FLAGS" . 997354) ("ORIGIN" . 997490) ("ZOOM" . 997538)) (link "sysvars7.html#wp997347"))
1390 ("DIR") 1906 ("DIR" (link "sysvars6.html#wp997072"))
1391 ("DLM_PATH") 1907 ("DLM_PATH" (link "sysvars6.html#wp1004032"))
1392 ("DPI") 1908 ("DPI" (link "sysvars4.html#wp996942"))
1393 ("DTOR") 1909 ("DTOR" (link "sysvars4.html#wp996946"))
1394 ("EDIT_INPUT") 1910 ("EDIT_INPUT" (link "sysvars6.html#wp1004047"))
1395 ("ERROR_STATE" ("NAME") ("BLOCK") ("CODE") ("SYS_CODE") ("SYS_CODE_TYPE") ("MSG") ("SYS_MSG") ("MSG_PREFIX")) 1911 ("ERROR_STATE" (tags ("NAME") ("BLOCK") ("CODE") ("SYS_CODE") ("SYS_CODE_TYPE") ("MSG") ("SYS_MSG") ("MSG_PREFIX")) (link "sysvars5.html#wp1003013"))
1396 ("EXCEPT") 1912 ("EXCEPT" (link "sysvars5.html#wp1002623"))
1397 ("HELP_PATH") 1913 ("HELP_PATH" (link "sysvars6.html#wp1000204"))
1398 ("JOURNAL") 1914 ("JOURNAL" (link "sysvars6.html#wp997085"))
1399 ("MAKE_DLL" ("COMPILE_DIRECTORY") ("COMPILER_NAME") ("CC") ("LD")) 1915 ("MAKE_DLL" (tags ("COMPILE_DIRECTORY") ("COMPILER_NAME") ("CC") ("LD")) (link "sysvars6.html#wp1009307"))
1400 ("MAP" ("PROJECTION") ("SIMPLE") ("FILL_METHOD") ("UP_FLAGS") ("UP_NAME") ("P0LON") ("P0LAT") ("U0") ("V0") ("SINO") ("COSO") ("ROTATION") ("SINR") ("COSR") ("UV") ("POLE") ("UV_BOX") ("LL_BOX") ("SEGMENT_LENGTH") ("P") ("PIPELINE")) 1916 ("MAP" (tags ("PROJECTION") ("SIMPLE") ("FILL_METHOD") ("UP_FLAGS") ("UP_NAME") ("P0LON") ("P0LAT") ("U0") ("V0") ("SINO") ("COSO") ("ROTATION") ("SINR") ("COSR") ("A") ("E2") ("UV") ("POLE") ("UV_BOX") ("LL_BOX") ("SEGMENT_LENGTH") ("P") ("PIPELINE")) (link "sysvars4.html#wp996950"))
1401 ("MORE") 1917 ("MORE" (link "sysvars6.html#wp997090"))
1402 ("MOUSE" ("X") ("Y") ("BUTTON") ("TIME")) 1918 ("MOUSE" (tags ("X") ("Y") ("BUTTON") ("TIME")) (link "sysvars5.html#wp1000051"))
1403 ("ORDER") 1919 ("ORDER" (link "sysvars7.html#wp997544"))
1404 ("P" ("BACKGROUND") ("CHARSIZE") ("CHARTHICK") ("CLIP") ("COLOR") ("FONT") ("LINESTYLE") ("MULTI") ("NOCLIP") ("NOERASE") ("NSUM") ("POSITION") ("PSYM") ("REGION") ("SUBTITLE") ("SYMSIZE") ("T") ("T3D") ("THICK") ("TITLE") ("TICKLEN") ("CHANNEL")) 1920 ("P" (tags ("BACKGROUND" . 997554) ("CHARSIZE" . 997560) ("CHARTHICK" . 997563) ("CLIP" . 997566) ("COLOR" . 997569) ("FONT" . 997572) ("LINESTYLE" . 997575) ("MULTI" . 1004014) ("NOCLIP" . 997613) ("NOERASE" . 997616) ("NSUM" . 997619) ("POSITION" . 1006945) ("PSYM" . 997627) ("REGION" . 997633) ("SUBTITLE" . 997636) ("SYMSIZE") ("T" . 997639) ("T3D" . 997642) ("THICK" . 997645) ("TITLE" . 997648) ("TICKLEN" . 997651) ("CHANNEL" . 997557)) (link "sysvars7.html#wp997551"))
1405 ("PATH") 1921 ("PATH" (link "sysvars6.html#wp997094"))
1406 ("PI") 1922 ("PI" (link "sysvars4.html#wp996954"))
1407 ("PROMPT") 1923 ("PROMPT" (link "sysvars6.html#wp997101"))
1408 ("QUIET") 1924 ("QUIET" (link "sysvars6.html#wp997106"))
1409 ("RADEG") 1925 ("RADEG" (link "sysvars4.html#wp996958"))
1410 ("VALUES" ("F_INFINITY") ("F_NAN") ("D_INFINITY") ("D_NAN")) 1926 ("VALUES" (tags ("F_INFINITY") ("F_NAN") ("D_INFINITY") ("D_NAN")) (link "sysvars4.html#wp996962"))
1411 ("VERSION" ("ARCH") ("OS") ("OS_FAMILY") ("OS_NAME") ("RELEASE") ("BUILD_DATE") ("MEMORY_BITS") ("FILE_OFFSET_BITS")) 1927 ("VERSION" (tags ("ARCH") ("OS") ("OS_FAMILY") ("OS_NAME") ("RELEASE") ("BUILD_DATE") ("MEMORY_BITS") ("FILE_OFFSET_BITS")) (link "sysvars6.html#wp997111"))
1412 ("WARN" ("OBS_ROUTINES") ("OBS_SYSVARS") ("PARENS")) 1928 ("WARN" (tags ("OBS_ROUTINES") ("OBS_SYSVARS") ("PARENS")) (link "sysvars5.html#wp1000387"))
1413 ("X" ("TITLE") ("TYPE") ("STYLE") ("TICKS") ("TICKLEN") ("THICK") ("RANGE") ("CRANGE") ("S") ("MARGIN") ("OMARGIN") ("WINDOW") ("REGION") ("CHARSIZE") ("MINOR") ("TICKV") ("TICKNAME") ("GRIDSTYLE") ("TICKFORMAT") ("TICKINTERVAL") ("TICKLAYOUT") ("TICKUNITS")) 1929 ("X" (tags ("TITLE" . 997839) ("TYPE" . 997842) ("STYLE" . 997742) ("TICKS" . 999577) ("TICKLEN" . 1012793) ("THICK" . 997798) ("RANGE" . 997713) ("CRANGE" . 997670) ("S" . 997736) ("MARGIN" . 997689) ("OMARGIN" . 997702) ("WINDOW" . 997845) ("REGION" . 997724) ("CHARSIZE" . 1012787) ("MINOR" . 997699) ("TICKV" . 997833) ("TICKNAME" . 997811) ("GRIDSTYLE" . 998134) ("TICKFORMAT" . 997801) ("TICKINTERVAL" . 997808) ("TICKLAYOUT" . 1012924) ("TICKUNITS" . 1012962)) (link "sysvars7.html#wp997657"))
1414 ("Y" ("TITLE") ("TYPE") ("STYLE") ("TICKS") ("TICKLEN") ("THICK") ("RANGE") ("CRANGE") ("S") ("MARGIN") ("OMARGIN") ("WINDOW") ("REGION") ("CHARSIZE") ("MINOR") ("TICKV") ("TICKNAME") ("GRIDSTYLE") ("TICKFORMAT") ("TICKINTERVAL") ("TICKLAYOUT") ("TICKUNITS")) 1930 ("Y" (tags ("TITLE" . 997839) ("TYPE" . 997842) ("STYLE" . 997742) ("TICKS" . 999577) ("TICKLEN" . 1012793) ("THICK" . 997798) ("RANGE" . 997713) ("CRANGE" . 997670) ("S" . 997736) ("MARGIN" . 997689) ("OMARGIN" . 997702) ("WINDOW" . 997845) ("REGION" . 997724) ("CHARSIZE" . 1012787) ("MINOR" . 997699) ("TICKV" . 997833) ("TICKNAME" . 997811) ("GRIDSTYLE" . 998134) ("TICKFORMAT" . 997801) ("TICKINTERVAL" . 997808) ("TICKLAYOUT" . 1012924) ("TICKUNITS" . 1012962)) (link "sysvars7.html#wp997657"))
1415 ("Z" ("TITLE") ("TYPE") ("STYLE") ("TICKS") ("TICKLEN") ("THICK") ("RANGE") ("CRANGE") ("S") ("MARGIN") ("OMARGIN") ("WINDOW") ("REGION") ("CHARSIZE") ("MINOR") ("TICKV") ("TICKNAME") ("GRIDSTYLE") ("TICKFORMAT") ("TICKINTERVAL") ("TICKLAYOUT") ("TICKUNITS")))) 1931 ("Z" (tags ("TITLE" . 997839) ("TYPE" . 997842) ("STYLE" . 997742) ("TICKS" . 999577) ("TICKLEN" . 1012793) ("THICK" . 997798) ("RANGE" . 997713) ("CRANGE" . 997670) ("S" . 997736) ("MARGIN" . 997689) ("OMARGIN" . 997702) ("WINDOW" . 997845) ("REGION" . 997724) ("CHARSIZE" . 1012787) ("MINOR" . 997699) ("TICKV" . 997833) ("TICKNAME" . 997811) ("GRIDSTYLE" . 998134) ("TICKFORMAT" . 997801) ("TICKINTERVAL" . 997808) ("TICKLAYOUT" . 1012924) ("TICKUNITS" . 1012962)) (link "sysvars7.html#wp997657"))))
1416 1932
1417 1933
1418(setq idlwave-system-class-info 1934(setq idlwave-system-class-info
1419 '( 1935 '(
1420 ("IDLgrAxis" 1936 ("IDLgrContour" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRCONTOUR_TOP" "IDLGRCONTOURVERSION" "AM_PM" "ANISOTROPY" "DATA_FORMAT" "DATA" "DAYS_OF_WEEK" "GEOM_FORMAT" "GEOM" "CONTOURFLAGS" "C_COLOR" "C_FILLPATTERN" "C_LABEL_INTERVAL" "C_LABEL_NOGAPS" "C_LABEL_OBJECTS" "C_LABEL_SHOW" "C_LINESTYLE" "C_THICK" "C_USE_LABEL_COLOR" "C_USE_LABEL_ORIENTATION" "C_VALUE" "LABEL_DEFAULTS" "LABEL_FONT" "LABEL_FORMAT" "LABEL_FRMTDATA" "LABEL_UNITS" "LABEL_UNIT_CODE" "MAXVAL" "MINVAL" "MONTHS" "NLEVELS" "POLYGONS" "SHADERANGE" "SHADING" "TICKINTERVAL" "TICKLEN" "PRECISIONDATA" "PRECISIONGEOM" "PRECISIONGRAPH" "LEVELINFO" "CFILL1" "DEPTHOFFSET" "MAPINFO" "IDLGRCONTOUR_BOTTOM") (inherits "IDLitComponent") (link "objects_gr43.html"))
1421 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRAXIS_TOP" "IDLGRAXISVERSION" "AM_PM" "AXIS_TYPE" "CALCFLAGS" "DAYS_OF_WEEK" "DIRECTION" "AXISFLAGS" "GRIDSTYLE" "LOCATION" "MAJOR" "MINOR" "MONTHS" "OUTRANGE" "RANGE" "SUBTICKLEN" "TEXTALIGNMENTS" "TEXTBASELINE" "TEXTUPDIR" "THICK" "TICKDIR" "TICKFORMAT" "ARRAY_TICKFORMAT" "TICKFRMTDATA" "TICKINTERVAL" "TICKLAYOUT" "TICKLEN" "TICKTEXT" "TICKUNITCODES" "TICKUNITS" "TICKVALUES" "TITLE" "CURRENT_LEVEL" "LEVEL_DATA" "STEPRANGEUNITS" "STEPRANGE") 1937 ("IDLgrAxis" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRAXIS_TOP" "IDLGRAXISVERSION" "AM_PM" "AXIS_TYPE" "CALCFLAGS" "DAYS_OF_WEEK" "DIRECTION" "AXISFLAGS" "GRIDSTYLE" "LOCATION" "MAJOR" "MINOR" "MONTHS" "OUTRANGE" "RANGE" "SUBTICKLEN" "TEXTALIGNMENTS" "TEXTBASELINE" "TEXTUPDIR" "THICK" "TICKDIR" "TICKFORMAT" "ARRAY_TICKFORMAT" "TICKFRMTDATA" "TICKINTERVAL" "TICKLAYOUT" "TICKLEN" "TICKTEXT" "TICKUNITCODES" "TICKUNITS" "TICKVALUES" "TITLE" "CURRENT_LEVEL" "LEVEL_DATA" "STEPRANGEUNITS" "STEPRANGE" "IDLGRAXIS_BOTTOM") (inherits "IDLitComponent") (link "objects_gr3.html"))
1422 (inherits)) 1938 ("IDLitWindow" (tags "IDLITWINDOW_TOP" "IDLITWINDOWFLAGS" "EVENTMASK" "EVENTNOTIFIER" "SCENE" "PEVENTS" "IDLITWIN_FILL1" "PEVENTTAIL" "IDLITWIN_FILL2" "IDLITWINDOW_BOTTOM") (inherits "IDLgrWindow") (link "objects_it287.html"))
1423 ("IDLgrContour" 1939 ("IDLitVisualization" (tags "_BISMESSAGER" "_CLASSNAME" "_OCHILDREN" "_OPROPINTERSECTION" "_OAGGCHILDREN" "__$$__" "GEOMREFCOUNT" "CENTERROTATION" "IHAVECENTERROTATION" "IMPACTSRANGE" "ISSELECTED" "IS3D" "DIMMETHOD" "ISOTROPIC" "ISMANIPULATORTARGET" "_SELECTIONPAD" "OGROUPPARENT" "OCURRSELECTIONVISUAL" "_CREATEDDURINGINIT" "_OSELECTIONVISUAL" "_PSTRTYPE" "AXESREQUEST" "AXESMETHOD" "AXESSTYLEREQUEST" "DOREQUESTAXESSTYLE" "_BISDELETED") (inherits "IDLgrModel" "IDLitParameter" "IDLitIMessaging") (link "objects_it237.html"))
1424 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRCONTOURTOP" "IDLGRCONTOURVERSION" "ANISOTROPY" "DATA_FORMAT" "DATA" "GEOM_FORMAT" "GEOM" "CONTOURFLAGS" "C_COLOR" "C_FILLPATTERN" "C_LINESTYLE" "C_THICK" "C_VALUE" "MAXVAL" "MINVAL" "NLEVELS" "POLYGONS" "SHADERANGE" "SHADING" "TICKINTERVAL" "TICKLEN" "PRECISIONDATA" "PRECISIONGEOM" "PRECISIONGRAPH" "LEVELINFO" "CFILL1" "DEPTHOFFSET" "IDLGRCONTOURBOTTOM") 1940 ("IDLitManipulatorVisual" (tags "_BISMESSAGER" "_CLASSNAME" "_OCHILDREN" "_OPROPINTERSECTION" "_OAGGCHILDREN" "__$$__" "GEOMREFCOUNT" "CENTERROTATION" "IHAVECENTERROTATION" "IMPACTSRANGE" "ISSELECTED" "IS3D" "DIMMETHOD" "ISOTROPIC" "ISMANIPULATORTARGET" "_SELECTIONPAD" "OGROUPPARENT" "OCURRSELECTIONVISUAL" "_CREATEDDURINGINIT" "_OSELECTIONVISUAL" "_PSTRTYPE" "AXESREQUEST" "AXESMETHOD" "AXESSTYLEREQUEST" "DOREQUESTAXESSTYLE" "_STRVISUALTYPE" "_UNIFORMSCALE") (inherits "IDLgrModel" "IDLitIMessaging") (link "objects_it128.html"))
1425 (inherits)) 1941 ("IDLgrSurface" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRSURFACE_TOP" "IDLGRSURFACEVERSION" "DATA" "PRECISION" "SKIRT" "VERTCOLORS" "BTMCOLOR" "AMBIENT" "DIFFUSE" "SPECULAR" "EMISSION" "SHININESS" "SURFACEFLAGS" "LINESTYLE" "MAXVALUE" "MINVALUE" "SHADING" "SHADERANGE" "STYLE" "NORMALS" "TXTRCOORD" "TXTRMAP" "TXTRHIGHRES" "THICK" "DEPTHOFFSET" "IDLGRSURFACE_BOTTOM") (inherits "IDLitComponent") (link "objects_gr173.html"))
1426 ("IDLgrLegend" 1942 ("IDLgrLegend" (tags "OSCALENODE" "BORDER_GAP" "COLUMNS" "OOUTLINE" "OFILL" "OFONT" "GAP" "GLYPHWIDTH" "PITEM_COLOR" "PITEM_LINESTYLE" "PITEM_NAME" "PITEM_OBJECT" "PITEM_THICK" "PITEM_TYPE" "OTITLE" "PTEXT_COLOR" "BRECOMPUTE" "PGLYPHS" "PTEXTS" "HGLYPHWIDTH" "VGLYPHWIDTH" "COLORMODE" "CLEANLEAVE" "CLEANGLYPHS" "IDLGRLEGENDVERSION") (inherits "IDLgrModel") (link "objects_gr65.html"))
1427 (tags "OSCALENODE" "BORDER_GAP" "COLUMNS" "OOUTLINE" "OFILL" "OFONT" "GAP" "GLYPHWIDTH" "PITEM_COLOR" "PITEM_LINESTYLE" "PITEM_NAME" "PITEM_OBJECT" "PITEM_THICK" "PITEM_TYPE" "OTITLE" "PTEXT_COLOR" "BRECOMPUTE" "PGLYPHS" "PTEXTS" "HGLYPHWIDTH" "VGLYPHWIDTH" "COLORMODE" "CLEANLEAVE" "CLEANGLYPHS" "IDLGRLEGENDVERSION") 1943 ("IDLgrPolygon" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPOLYGON_TOP" "IDLGRPOLYGONVERSION" "DATA" "PRECISION" "FILLPATTERN" "POLYGONS" "NORMALS" "POLYGONFLAGS" "SHADING" "SHADERANGE" "STYLE" "TXTRCOORD" "TXTRMAP" "VERTCOLORS" "BTMCOLOR" "AMBIENT" "DIFFUSE" "SPECULAR" "EMISSION" "SHININESS" "LINESTYLE" "THICK" "DEPTHOFFSET" "IDLGRPOLYGON_BOTTOM") (inherits "IDLitComponent") (link "objects_gr124.html"))
1428 (inherits "IDLgrModel")) 1944 ("IDLgrWindow" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRWINDOW_TOP" "IDLGRWINDOWVERSION" "WINDOWFLAGS" "CURRENT_ZOOM" "DIMENSIONS" "DISPLAYNAME" "INDEX" "LOCATION" "MINIMUM_VIRTUAL_DIMENSIONS" "ORIGINAL_VIRTUAL_DIMENSIONS" "RENDERER" "RETAIN" "SCREENDIMENSIONS" "SELF" "TITLE" "UNITS" "VIRTUAL_DIMENSIONS" "VISIBLE_LOCATION" "ZOOM_BASE" "ZOOM_NSTEP" "EXTERNAL_WINDOW" "NEXT" "WFILL1" "PARENT" "WFILL2" "IDLGRWINDOW_BOTTOM") (inherits "IDLitComponent") (link "objects_gr235.html"))
1429 ("IDLgrROI" 1945 ("IDLgrROI" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRROI_TOP" "IDLGRROIVERSION" "LINESTYLE" "STYLE" "SYMBOL" "THICK" "IDLGRROI_BOTTOM") (inherits "IDLanROI" "IDLitComponent") (link "objects_gr150.html"))
1430 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRROI_TOP" "IDLGRROIVERSION" "LINESTYLE" "STYLE" "SYMBOL" "THICK" "IDLGRROI_BOTTOM") 1946 ("IDLgrPolyline" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPOLYLINE_TOP" "IDLGRPOLYLINEVERSION" "POLYLINEFLAGS" "DATA" "PRECISION" "LABEL_NOGAPS" "LABEL_OBJECTS" "LABEL_OFFSETS" "LABEL_POLYLINES" "LINESTYLE" "POLYLINES" "SYMBOL" "PSYMBOL" "THICK" "SHADING" "USE_LABEL_COLOR" "USE_LABEL_ORIENTATION" "VERTCOLORS" "LABEL_INFO" "FILL1" "IDLGRPOLYLINE_BOTTOM") (inherits "IDLitComponent") (link "objects_gr131.html"))
1431 (inherits "IDLanROI")) 1947 ("IDLitManipulatorManager" (tags "_OOLDCURR" "_ODEFAULT" "_OWINCURR" "_CURROBS") (inherits "IDLitManipulatorContainer") (link "objects_it121.html"))
1432 ("IDLgrSurface" 1948 ("IDLgrPlot" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPLOT_TOP" "IDLGRPLOTVERSION" "DATA" "PLOTFLAGS" "LINESTYLE" "PRECISION" "MAXVAL" "MINVAL" "NSUM" "SYMBOL" "PSYMBOL" "THICK" "VERTCOLORS" "ZVALUE" "LINEDATA" "PFILL1" "IDLGRPLOT_BOTTOM") (inherits "IDLitComponent") (link "objects_gr117.html"))
1433 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRSURFACETOP" "IDLGRSURFACEVERSION" "DATA" "PRECISION" "SKIRT" "VERTCOLORS" "BTMCOLOR" "SURFACEFLAGS" "LINESTYLE" "MAXVALUE" "MINVALUE" "SHADING" "SHADERANGE" "STYLE" "NORMALS" "TXTRCOORD" "TXTRMAP" "THICK" "DEPTHOFFSET" "IDLGRSURFACEBOTTOM") 1949 ("IDLgrVolume" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRVOLUME_TOP" "IDLGRVOLUMEVERSION" "AMBIENT" "BOUNDS" "LIMITS" "DIMENSIONS" "COLORTABLE" "COMPOSITEFUNC" "CUTPLANES" "NUMCUTPLANES" "DEPTH_CUE" "OPACITYTABLE" "RENDERSTEP" "DATA" "EDM_VOLUME" "VOLUMEFLAGS" "IDLGRVOLUME_BOTTOM") (inherits "IDLitComponent") (link "objects_gr216.html"))
1434 (inherits)) 1950 ("IDLgrROIGroup" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRROIGROUP_TOP" "IDLGRROIGROUPVERSION" "IDLGRROIGROUP_BOTTOM") (inherits "IDLanROIGroup" "IDLitComponent") (link "objects_gr157.html"))
1435 ("IDLgrPolygon" 1951 ("IDLgrText" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRTEXT_TOP" "IDLGRTEXTVERSION" "TEXTFLAGS" "ALIGNMENT" "BASELINE" "CHAR_DIMENSIONS" "RECOMP_CTM" "FONT" "LOCATIONS" "STRINGS" "SUBPARENT" "UPDIR" "VERTICAL_ALIGNMENT" "FILL_COLOR" "RENDER_MODE" "IDLGRTEXT_BOTTOM") (inherits "IDLitComponent") (link "objects_gr193.html"))
1436 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPOLYGONTOP" "IDLGRPOLYGONVERSION" "DATA" "PRECISION" "FILLPATTERN" "POLYGONS" "NORMALS" "POLYGONFLAGS" "SHADING" "SHADERANGE" "STYLE" "TXTRCOORD" "TXTRMAP" "VERTCOLORS" "BTMCOLOR" "LINESTYLE" "THICK" "DEPTHOFFSET" "IDLGRPOLYGONBOTTOM") 1952 ("IDLitManipulatorContainer" (tags "_BISMESSAGER" "_CLASSNAME" "_OCHILDREN" "M_BAUTOSWITCH" "M_CURRMANIP") (inherits "IDLitManipulator" "IDL_Container") (link "objects_it107.html"))
1437 (inherits)) 1953 ("IDLgrColorbar" (tags "OCOORDCONVNODE" "OSCALENODE" "MAXDIM" "DIMENSIONS" "OAXIS" "OPOLY" "OSURF" "OIMAGE" "OPALETTE" "FREE_PALETTE" "SHOW_AXIS" "IDLGRCOLORBARVERSION") (inherits "IDLgrModel") (link "objects_gr36.html"))
1438 ("IDLgrWindow" 1954 ("IDLitTool" (tags "__VOID" "_STRTOOLNAME" "_STRFILENAME" "_IDCURRENT" "_STRVERSION" "_STRWORKINGDIRECTORY" "_OSYSTEM" "_MANIPULATORS" "_OUISERVICECONN" "_OUICONNECTION" "_OWINDOW" "_COMMANDBUFFER" "_OLASTERROR" "_PDISPATCHTABLE" "_TYPES" "_STATUSBAR" "_IBUFFERLOCATION" "_IDISABLEUPDATES" "_NSELCHANGE" "_CURRSTATUSSEGMENTID" "_BNOREDRAW" "_BDIRTY" "_NOSAVEPROMPT" "_BUPDATEBYTYPE" "_BCHANGEDIRECTORY") (inherits "IDLitContainer" "IDLitIMessaging") (link "objects_it180.html"))
1439 (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "UVALUE" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRWINDOW_TOP" "IDLGRWINDOWVERSION" "WINDOWFLAGS" "DIMENSIONS" "DISPLAYNAME" "INDEX" "LOCATION" "RENDERER" "RETAIN" "SCREENDIMENSIONS" "SELF" "TITLE" "UNITS" "NEXT" "WFILL1" "PARENT" "WFILL2" "IDLGRWINDOW_BOTTOM") 1955 ("IDLgrImage" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRIMAGE_TOP" "IDLGRIMAGEVERSION" "CHANNEL" "DATA" "DIMENSIONS" "SUB_RECT" "IMAGEFLAGS" "LOCATION" "INTERLEAVE" "INTERPOLATE" "BLEND_FUNCTIONS" "IDLGRIMAGE_BOTTOM") (inherits "IDLitComponent") (link "objects_gr58.html"))
1440 (inherits)) 1956 ("IDLgrLight" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRLIGHT_TOP" "IDLGRLIGHTVERSION" "ATTENUATION" "CONEANGLE" "DIRECTION" "FOCUS" "INTENSITY" "LOCATION" "TYPE" "IDLGRLIGHT_BOTTOM") (inherits "IDLitComponent") (link "objects_gr72.html"))
1441 ("IDLgrPlot" 1957 ("IDLgrView" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRVIEW_TOP" "IDLGRVIEWVERSION" "VIEWFLAGS" "COLOR" "DEPTH_CUE" "DIMENSIONS" "PRECISION" "EYE" "LOCATION" "OBLIQUE" "PROJECTION" "TRANSPARENT" "UNITS" "VIEW" "ZCLIP" "IDLGRVIEW_BOTTOM") (inherits "IDLitComponent" "IDL_Container") (link "objects_gr200.html"))
1442 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPLOT_TOP" "IDLGRPLOTVERSION" "DATA" "PLOTFLAGS" "LINESTYLE" "PRECISION" "MAXVAL" "MINVAL" "NSUM" "SYMBOL" "PSYMBOL" "THICK" "VERTCOLORS" "ZVALUE" "LINEDATA" "PFILL1" "IDLGRPLOT_BOTTOM") 1958 ("IDLgrClipboard" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRCLIPBOARD_TOP" "IDLGRCLIPBOARDVERSION" "UNITS" "DIMENSIONS" "FILENAME" "VECTOR" "POSTSCRIPT" "IDLGRCLIPBOARD_BOTTOM") (inherits "IDLitComponent") (link "objects_gr25.html"))
1443 (inherits)) 1959 ("IDLgrVRML" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRVRML_TOP" "IDLGRVRMLVERSION" "UNITS" "DIMENSIONS" "FILENAME" "WORLDINFO" "WORLDTITLE" "IDLGRVRML_BOTTOM") (inherits "IDLitComponent") (link "objects_gr225.html"))
1444 ("IDLgrVolume" 1960 ("IDLitManipulator" (tags "PSELECTIONLIST" "NSELECTIONLIST" "BUTTONPRESS" "_OCMDSET" "_TYPES" "_OHITVIS" "_OHITVIEWGROUP" "_PSUBHITLIST" "_STRVISUALTYPE" "_IDOPERATION" "_IDPARAMETER" "_DEFAULTCURSOR" "_SUBTYPE" "_STRTMPMSG" "_SKIPMACROHISTORY" "_TRANSMOTION" "_INTRANSMOTION" "_TRANSIENT" "_KEYTRANSIENT" "_DISABLE" "_VIEWMODE" "_UIEVENTMASK" "_OLDQUALITY" "_DRAQQUAL" "_NORMALIZEDZ") (inherits "IDLitComponent" "IDLitIMessaging") (link "objects_it91.html"))
1445 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRVOLUMETOP" "IDLGRVOLUMEVERSION" "AMBIENT" "BOUNDS" "LIMITS" "DIMENSIONS" "COLORTABLE" "COMPOSITEFUNC" "CUTPLANES" "NUMCUTPLANES" "DEPTH_CUE" "OPACITYTABLE" "RENDERSTEP" "DATA" "EDM_VOLUME" "VOLUMEFLAGS" "IDLGRVOLUMEBOTTOM") 1961 ("IDLgrPrinter" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRPRINTER_TOP" "IDLGRPRINTERVERSION" "PRINTERFLAGS" "NCOPIES" "UNITS" "GAMMA" "IDLGRPRINTER_BOTTOM") (inherits "IDLitComponent") (link "objects_gr138.html"))
1446 (inherits)) 1962 ("IDLgrModel" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRMODEL_TOP" "IDLGRMODELVERSION" "MODELFLAGS" "CLIP_PLANES" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "TRANSFORM" "IDLGRMODEL_BOTTOM") (inherits "IDLitComponent" "IDL_Container") (link "objects_gr79.html"))
1447 ("IDLgrROIGroup" 1963 ("IDLgrBuffer" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRBUFFER_TOP" "IDLGRBUFFERVERSION" "UNITS" "DIMENSIONS" "IDLGRBUFFER_BOTTOM") (inherits "IDLitComponent") (link "objects_gr10.html"))
1448 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRROIGROUP_TOP" "IDLGRROIGROUPVERSION" "IDLGRROI_BOTTOM") 1964 ("IDLitParameterSet" (tags "_PNAMES") (inherits "IDLitDataContainer") (link "objects_it159.html"))
1449 (inherits "IDLanROIGroup")) 1965 ("IDLitDataContainer" (tags "_BISMESSAGER" "_CLASSNAME" "_OCHILDREN" "_IDISABLE" "_IUPDATES" "_BINSEARCH") (inherits "IDLitData" "IDL_Container") (link "objects_it59.html"))
1450 ("IDLgrColorbar" 1966 ("IDLgrScene" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRSCENE_TOP" "IDLGRSCENEVERSION" "COLOR" "TRANSPARENT" "IDLGRSCENE_BOTTOM") (inherits "IDLitComponent" "IDL_Container") (link "objects_gr165.html"))
1451 (tags "OCOORDCONVNODE" "OSCALENODE" "MAXDIM" "DIMENSIONS" "OAXIS" "OPOLY" "OSURF" "OIMAGE" "OPALETTE" "FREE_PALETTE" "SHOW_AXIS" "IDLGRCOLORBARVERSION") 1967 ("IDLitUI" (tags "_MENUBARS" "_TOOLBARS" "_STATUSBAR" "_UISERVICES" "_PDISPATCHSUBJECT" "_PDISPATCHOBSERVER" "_OTOOL" "_IDISPATCH" "_WBASE") (inherits "IDLitContainer") (link "objects_it222.html"))
1452 (inherits "IDLgrModel")) 1968 ("IDLgrViewgroup" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRVIEWGROUP_TOP" "IDLGRVIEWGROUPVERSION" "IDLGRVIEWGROUP_BOTTOM") (inherits "IDLitComponent" "IDL_Container") (link "objects_gr208.html"))
1453 ("IDLgrText" 1969 ("IDLitDataOperation" (tags "_NAN" "_WITHINUI" "_RECORDPROPERTIES") (inherits "IDLitOperation") (link "objects_it69.html"))
1454 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRTEXT_TOP" "IDLGRTEXTVERSION" "TEXTFLAGS" "ALIGNMENT" "BASELINE" "CHAR_DIMENSIONS" "RECOMP_CTM" "FONT" "LOCATIONS" "STRINGS" "SUBPARENT" "UPDIR" "VERTICAL_ALIGNMENT" "IDLGRTEXT_BOTTOM") 1970 ("IDLgrMPEG" (tags "IDLGRMPEG_TOP" "IDLGRMPEGVERSION" "DIMENSIONS" "FILENAME" "FORMAT" "FRAMERATE" "INTERLACED" "QUALITY" "SCALE" "STATISTICS" "DISPLAYDIMS" "FIRSTFRAME" "LASTFRAME" "MPEGID" "TEMPNODE" "TEMPNODEFILLER" "TEMP_DIRECTORY" "BITRATE" "IFRAME_GAP" "MOTION_LENGTH" "FLAGS" "IDLGRMPEG_BOTTOM") (link "objects_gr93.html"))
1455 (inherits)) 1971 ("IDLitCommandSet" (inherits "IDLitCommand" "IDL_Container") (link "objects_it12.html"))
1456 ("IDLgrImage" 1972 ("IDLitData" (tags "_ONOTIFIER" "_PDATA" "_PMETADATA" "_TYPE" "_AUTODELETE" "_NREF" "_PDESTRUCT" "_HIDE" "_READ_ONLY") (inherits "IDLitComponent") (link "objects_it44.html"))
1457 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRIMAGE_TOP" "IDLGRIMAGEVERSION" "CHANNEL" "DATA" "DIMENSIONS" "SUB_RECT" "IMAGEFLAGS" "LOCATION" "INTERLEAVE" "INTERPOLATE" "BLEND_FUNCTIONS" "IDLGRIMAGE_BOTTOM") 1973 ("IDLitOperation" (tags "_BEXPENSIVE" "_REVERSIBLE" "_BSHOWEXECUTIONUI" "_BSKIPHISTORY" "_BSKIPMACRO" "_BMACROSHOWUIIFNULLCMD" "_BMACROSUPPRESSREFRESH" "_TYPES") (inherits "IDLitComponent" "IDLitIMessaging") (link "objects_it134.html"))
1458 (inherits)) 1974 ("IDLitContainer" (tags "_BISMESSAGER" "_CLASSNAME" "_OCHILDREN") (inherits "IDLitComponent" "IDL_Container") (link "objects_it33.html"))
1459 ("IDLgrView" 1975 ("IDLitWriter" (tags "_TYPES" "_BITDEPTH" "_GRAPHICSFORMAT" "_SCALEFACTOR") (inherits "IDLitReader") (link "objects_it311.html"))
1460 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRVIEW_TOP" "IDLGRVIEWVERSION" "COLOR" "DEPTH_CUE" "DIMENSIONS" "PRECISION" "EYE" "LOCATION" "OBLIQUE" "PROJECTION" "TRANSPARENT" "UNITS" "VIEW" "ZCLIP" "IDLGRVIEW_BOTTOM") 1976 ("IDLdbRecordset" (tags "IDLDBRECORDSET_TOP" "IDLDBRECORDSETVERSION" "ISTABLE" "PDBOBJ" "ISREADONLY" "NFIELDS" "CURROW" "SOURCE" "CURSORTYPE" "PFIELDS" "PSDEF" "ROWSTATUS" "ROWSET" "ROWPOS" "HSTMT" "HDBC" "IDLDBRECORDSET_BOTTOM") (link "api14.html"))
1461 (inherits "IDL_Container")) 1977 ("IDLdbDatabase" (tags "IDLDBDATABASE_TOP" "IDLDBDATABASEVERSION" "READONLY" "ISCONNECTED" "FETCHDIR" "POSOPS" "POSSTATEMENTS" "SCROLLCONCUR" "SCROLLOPTIONS" "STATICSENSE" "GETDATAEXT" "USINGCURSOR" "NSTATEMENTS" "P_RECOBJS" "HDBC" "IDLDBDATABASE_BOTTOM") (link "api6.html"))
1462 ("IDLgrPolyline" 1978 ("IDLitCommand" (tags "_PDATADICTIONARY" "_SIZEITEMS" "_STRIDTARGET" "_STRIDOPERATION") (inherits "IDLitComponent") (link "objects_it3.html"))
1463 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPOLYLINETOP" "IDLGRPOLYLINEVERSION" "DATA" "PRECISION" "LINESTYLE" "POLYLINES" "SYMBOL" "PSYMBOL" "THICK" "SHADING" "VERTCOLORS" "IDLGRPOLYLINEBOTTOM") 1979 ("IDLffLangCat" (tags "FILENAMES" "_AVAILABLE_FILES" "LANGUAGE" "DEFAULT_LANGUAGE" "APPLICATIONS" "APPLICATION_PATH" "KEYS" "N_KEYS" "STRINGS" "DEF_KEYS" "N_DEF_KEYS" "DEF_STRINGS" "AVAILABLE_LANGUAGES" "VERBOSE" "STRICT" "IDLFFLANGCATVERSION") (link "objects_ff44.html"))
1464 (inherits)) 1980 ("IDLitReader" (tags "_STRFILENAME" "_PEXTENSIONS") (inherits "IDLitComponent" "IDLitIMessaging") (link "objects_it169.html"))
1465 ("IDLgrLight" 1981 ("IDLanROI" (tags "IDLANROI_TOP" "IDLANROIVERSION" "IDLANROIFLAGS" "NALLOCVERTS" "NUSEDVERTS" "BLOCKSIZE" "DATA" "TYPE" "PRECISION" "PLANE" "ROI_XRANGE" "ROI_YRANGE" "ROI_ZRANGE" "IDLANROI_BOTTOM") (link "objects_an3.html"))
1466 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "COLOR" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRLIGHT_TOP" "IDLGRLIGHTVERSION" "ATTENUATION" "CONEANGLE" "DIRECTION" "FOCUS" "INTENSITY" "LOCATION" "TYPE" "IDLGRLIGHT_BOTTOM") 1982 ("IDLgrPalette" (tags "IDLGRPALETTE_TOP" "IDLGRPALETTE_SERIALNUM" "IDLGRPALETTEVERSION" "GAMMA" "BOTTOMSTRETCH" "TOPSTRETCH" "NENTRIES" "ORIGLUT" "CURRLUT" "INVTABLE" "UVALUE" "NAME" "IDLGRPALETTE_BOTTOM") (link "objects_gr101.html"))
1467 (inherits)) 1983 ("IDLanROIGroup" (tags "IDLANROIGROUP_TOP" "IDLANROIGROUPVERSION" "IDLANROIGROUPFLAGS" "ROIGROUP_XRANGE" "ROIGROUP_YRANGE" "ROIGROUP_ZRANGE" "IDLANROIGROUP_BOTTOM") (inherits "IDL_Container") (link "objects_an18.html"))
1468 ("IDLgrVRML" 1984 ("IDLffXMLDOMDocument" (tags "IDLFFXMLDOMDOCUMENT_TOP" "_DOM_IMPLEMENTATION" "_DOM_PARSER" "_DOM_ERROR_REPORTER" "_DOM_MEMORY_MANAGER" "IDLFFXMLDOMDOCUMENT_BOTTOM") (inherits "IDLffXMLDOMNode") (link "objects_ff102.html"))
1469 (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "UVALUE" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRVRMLTOP" "IDLGRVRMLVERSION" "UNITS" "DIMENSIONS" "FILENAME" "WORLDINFO" "WORLDTITLE" "IDLGRVRMLBOTTOM") 1985 ("IDLitComponent" (tags "IDLITCOMPONENT_TOP" "IDLITCOMPONENTVERSION" "DESCRIPTION" "NAME" "ICON" "IDENTIFIER" "HELP" "UVALUE" "_PARENT" "PROPERTYDESCRIPTORS" "_FLAGS" "IDLITCOMPONENT_BOTTOM") (link "objects_it17.html"))
1470 (inherits)) 1986 ("IDLgrSymbol" (tags "IDLGRSYMBOL_TOP" "IDLGRSYMBOLVERSION" "COLOR" "DATA" "SIZE" "THICK" "FLAGS" "UVALUE" "NAME" "ALPHA_CHANNEL" "IDLGRSYMBOL_BOTTOM") (link "objects_gr180.html"))
1471 ("IDLgrClipboard" 1987 ("IDLgrFont" (tags "IDLGRFONT_TOP" "IDLGRFONTVERSION" "FONTFLAGS" "HERSHEY" "NAME" "SIZE" "SUBSTITUTE" "THICK" "ID" "UVALUE" "IDLGRFONT_BOTTOM") (link "objects_gr52.html"))
1472 (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "UVALUE" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRCLIPBOARDTOP" "IDLGRCLIPBOARDVERSION" "UNITS" "DIMENSIONS" "FILENAME" "VECTOR" "POSTSCRIPT" "IDLGRCLIPBOARDBOTTOM") 1988 ("IDLgrPattern" (tags "IDLGRPATTERN_TOP" "IDLGRPATTERNVERSION" "ORIENTATION" "PATTERN" "SPACING" "STYLE" "THICK" "UVALUE" "NAME" "IDLGRPATTERN_BOTTOM") (link "objects_gr111.html"))
1473 (inherits)) 1989 ("IDLffDXF" (tags "IDLFFDXF_TOP" "IDLFFDXFVERSION" "DXFREADVALID" "DXFHANDLEVALID" "DXFLUT" "SERIAL" "DXFHANDLE" "DXFHANDLEFILLER" "IDLFFDXF_BOTTOM") (link "objects_ff21.html"))
1474 ("IDLgrPrinter" 1990 ("IDLffShape" (tags "IDLFFSHAPE_TOP" "IDLFFSHAPEVERSION" "FILENAME" "ISOPEN" "SHPTYPE" "PATTRIBUTE" "SHAPEHANDLE" "DBFHANDLE" "IDLFFSHAPE_BOTTOM") (link "objects_ff59.html"))
1475 (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "UVALUE" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRPRINTER_TOP" "IDLGRPRINTERVERSION" "PRINTERFLAGS" "NAME" "NCOPIES" "UNITS" "GAMMA" "IDLGRPRINTER_BOTTOM") 1991 ("IDLffXMLSAX" (tags "IDLFFXMLSAX_TOP" "IDLFFXMLSAXVERSION" "VALIDATION_MODE" "HALT_PROCESSING" "FILENAME" "_XML_PARSER" "_XML_LOCATOR" "IDLFFXMLSAX_BOTTOM") (link "objects_ff209.html"))
1476 (inherits)) 1992 ("IDLffDICOM" (tags "IDLFFDICOM_TOP" "IDLFFDICOMVERSION" "DICOMFLAGS" "DICOMELEMENTS" "DICOMPREAMBLE" "DICOMHANDLE" "DICOMHANDLEFILLER" "IDLFFDICOM_BOTTOM") (link "objects_ff3.html"))
1477 ("IDLgrBuffer" 1993 ("TrackBall" (tags "BTNDOWN" "AXIS" "CONSTRAIN" "MOUSE" "CENTER" "RADIUS" "PT0" "PT1") (link "objects_misc33.html"))
1478 (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "UVALUE" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRBUFFERTOP" "IDLGRBUFFERVERSION" "UNITS" "DIMENSIONS" "IDLGRBUFFERBOTTOM") 1994 ("IDLgrTessellator" (tags "IDLGRTESSELLATOR_TOP" "IDLGRTESSELLATORVERSION" "ITESSFLAGS" "IVERTS" "HVIDLIST" "IAUXSIZE" "IAUXTYPE" "IDLGRTESSELLATOR_BOTTOM") (link "objects_gr186.html"))
1479 (inherits)) 1995 ("IDLffXMLDOMNode" (inherits "IDLffXMLDOMDocumentType") (link "objects_ff162.html"))
1480 ("IDLgrMPEG" 1996 ("IDLffXMLDOMDocumentType" (inherits "IDLffXMLDOMElement") (link "objects_ff123.html"))
1481 (tags "IDLGRMPEG_TOP" "IDLGRMPEGVERSION" "DIMENSIONS" "FILENAME" "FORMAT" "FRAMERATE" "INTERLACED" "QUALITY" "SCALE" "STATISTICS" "DISPLAYDIMS" "FIRSTFRAME" "LASTFRAME" "MPEGID" "TEMPNODE" "TEMPNODEFILLER" "TEMP_DIRECTORY" "BITRATE" "IFRAME_GAP" "MOTION_LENGTH" "FLAGS" "IDLGRMPEG_BOTTOM") 1997 ("IDLffXMLDOMNamedNodeMap" (tags "IDLFFXMLDOMNAMEDNODEMAP_TOP" "IDLFFXMLDOMNAMEDNODEMAPVERSION" "_IDLFFXMLDOMNAMEDNODEMAPNODE" "_IDLFFXMLDOMNAMEDNODEMAPOWNEDNODES" "_IDLFFXMLDOMNAMEDNODEMAPOWNER" "_IDLFFXMLDOMNAMEDNODEMAPDOCUMENT" "IDLFFXMLDOMNAMEDNODEMAP_BOTTOM") (link "objects_ff153.html"))
1482 (inherits)) 1998 ("IDLffXMLDOMElement" (inherits "IDLffXMLDOMNotation") (link "objects_ff130.html"))
1483 ("IDLgrScene" 1999 ("IDLffXMLDOMNotation" (inherits "IDLffXMLDOMEntity") (link "objects_ff190.html"))
1484 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRSCENE_TOP" "IDLGRSCENEVERSION" "COLOR" "TRANSPARENT" "IDLGRSCENE_BOTTOM") 2000 ("IDLffXMLDOMEntity" (inherits "IDLffXMLDOMCharacterData") (link "objects_ff142.html"))
1485 (inherits "IDL_Container")) 2001 ("IDLffXMLDOMCharacterData" (inherits "IDLffXMLDOMProcessingInstruction") (link "objects_ff86.html"))
1486 ("IDLgrModel" 2002 ("IDLffXMLDOMProcessingInstruction" (inherits "IDLffXMLDOMText") (link "objects_ff196.html"))
1487 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRMODEL_TOP" "IDLGRMODELVERSION" "MODELFLAGS" "TRANSFORM" "IDLGRMODEL_BOTTOM") 2003 ("IDLffXMLDOMText" (inherits "IDLffXMLDOMAttr") (link "objects_ff203.html"))
1488 (inherits "IDL_Container")) 2004 ("IDLffXMLDOMAttr" (tags "IDLFFXMLDOMNODE_TOP" "IDLFFXMLDOMNODEVERSION" "_IDLFFXMLDOMNODEDOMNODE" "_IDLFFXMLDOMNODEOWNEDNODES" "_IDLFFXMLDOMNODEOWNER" "_IDLFFXMLDOMNODEDOCUMENT" "IDLFFXMLDOMNODE_BOTTOM") (link "objects_ff74.html"))
1489 ("IDLgrViewgroup" 2005 ("IDLffXMLDOMNodeList" (tags "IDLFFXMLDOMNODELIST_TOP" "IDLFFXMLDOMNODELISTVERSION" "_IDLFFXMLDOMNODELISTNODE" "_IDLFFXMLDOMNODELISTOWNEDNODES" "_IDLFFXMLDOMNODELISTOWNER" "_IDLFFXMLDOMNODELISTDOCUMENT" "IDLFFXMLDOMNODELIST_BOTTOM") (link "objects_ff184.html"))
1490 (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "NAME" "PARENT" "UVALUE" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRVIEWGROUPTOP" "IDLGRVIEWGROUPVERSION" "IDLGRVIEWGROUPBOTTOM") 2006 ("IDL_Container" (tags "IDL_CONTAINER_TOP" "IDLCONTAINERVERSION" "PHEAD" "PTAIL" "NLIST" "IDL_CONTAINER_BOTTOM") (link "objects_misc3.html"))
1491 (inherits "IDL_Container")) 2007 ("IDLffJPEG2000" (tags "IDLFFJPEG2000_TOP" "CJPEG2000PTR" "IDLFFJPEG2000_BOTTOM") (link "objects_ff34.html"))
1492 ("IDLdbRecordset" 2008 ("IDLitParameter" (tags "_OPARAMETERDESCRIPTORS" "_OPARAMETERSET" "_PPARAMNAMES") (link "objects_it145.html"))
1493 (tags "DTOPPAD" "IDLDBRECORDSETVERSION" "ISTABLE" "PDBOBJ" "ISREADONLY" "NFIELDS" "CURROW" "SOURCE" "CURSORTYPE" "PFIELDS" "PSDEF" "ROWSTATUS" "ROWSET" "ROWPOS" "HSTMT" "HDBC" "DBOTTOMPAD") 2009 ("IDL_Savefile" (tags "IDL_SAVEFILE_FILENAME" "IDL_SAVEFILE_RELAXED_STRUCTURE_ASSIGNMENT") (link "objects_misc13.html"))
1494 (inherits)) 2010 ("IDLitIMessaging" (tags "__OTOOL") (link "objects_it78.html"))
1495 ("IDLdbDatabase" 2011 ("IDLjavaObject" (link "objects_misc28.html"))
1496 (tags "DTOPPAD" "IDLDBDATABASEVERSION" "READONLY" "ISCONNECTED" "FETCHDIR" "POSOPS" "POSSTATEMENTS" "SCROLLCONCUR" "SCROLLOPTIONS" "STATICSENSE" "GETDATAEXT" "USINGCURSOR" "NSTATEMENTS" "P_RECOBJS" "HDBC" "DBOTTOMPAD") 2012 ("IDLcomIDispatch" (link "objects_misc23.html"))
1497 (inherits)) 2013 ("IDLffMrSID" (link "objects_ff52.html"))))
1498 ("IDLanROI" 2014
1499 (tags "IDLANROI_TOP" "IDLANROIVERSION" "IDLANROIFLAGS" "NALLOCVERTS" "NUSEDVERTS" "BLOCKSIZE" "DATA" "TYPE" "PRECISION" "PLANE" "ROI_XRANGE" "ROI_YRANGE" "ROI_ZRANGE" "IDLANROI_BOTTOM") 2015
1500 (inherits)) 2016(setq idlwave-executive-commands-alist '(
1501 ("IDLanROIGroup" 2017 ("GO" . "symbols6.html")
1502 (tags "IDLANROIGROUP_TOP" "IDLANROIGROUPVERSION" "IDLANROIGROUPFLAGS" "ROIGROUP_XRANGE" "ROIGROUP_YRANGE" "ROIGROUP_ZRANGE" "IDLANROIGROUP_BOTTOM") 2018 ("OUT" . "symbols7.html")
1503 (inherits "IDL_Container")) 2019 ("RETURN" . "symbols9.html")
1504 ("IDLgrPalette" 2020 ("TRACE" . "symbols15.html")
1505 (tags "IDLGRPALETTE_SERIALNUM" "IDLGRPALETTEVERSION" "GAMMA" "BOTTOMSTRETCH" "TOPSTRETCH" "NENTRIES" "ORIGLUT" "CURRLUT" "INVTABLE" "UVALUE" "NAME" "IDLGRPALETTE_BOTTOM") 2021 ("RUN" . "symbols11.html")
1506 (inherits)) 2022 ("SKIP" . "symbols12.html")
1507 ("IDLgrFont" 2023 ("COMPILE" . "symbols2.html")
1508 (tags "IDLGRFONT_TOP" "IDLGRFONTVERSION" "FONTFLAGS" "HERSHEY" "NAME" "SIZE" "SUBSTITUTE" "THICK" "ID" "UVALUE" "IDLGRFONT_BOTTOM") 2024 ("CONTINUE" . "symbols3.html")
1509 (inherits)) 2025 ("RESET_SESSION" . "symbols8.html")
1510 ("IDLgrSymbol" 2026 ("STEP" . "symbols13.html")
1511 (tags "IDLGRSYMBOLTOP" "IDLGRSYMBOLVERSION" "COLOR" "DATA" "SIZE" "THICK" "FLAGS" "UVALUE" "NAME" "IDLGRSYMBOLBOTTOM") 2027 ("RNEW" . "symbols10.html")
1512 (inherits)) 2028 ("FULL_RESET_SESSION" . "symbols5.html")
1513 ("IDLgrPattern" 2029 ("EDIT" . "symbols4.html")
1514 (tags "IDLGRPATTERN_TOP" "IDLGRPATTERNVERSION" "ORIENTATION" "PATTERN" "SPACING" "STYLE" "THICK" "UVALUE" "NAME" "IDLGRPATTERN_BOTTOM") 2030 ("STEPOVER" . "symbols14.html")
1515 (inherits)) 2031))
1516 ("IDLffShape" 2032
1517 (tags "IDLFFSHAPE_TOP" "IDLFFSHAPEVERSION" "FILENAME" "ISOPEN" "SHPTYPE" "PATTRIBUTE" "SHAPEHANDLE" "DBFHANDLE" "IDLFFSHAPE_BOTTOM") 2033;; Special words with associated help topic files
1518 (inherits)) 2034(defconst idlwave-help-special-topic-words
1519 ("IDLffDXF" 2035 '(
1520 (tags "IDLFFDXF_TOP" "IDLFFDXFVERSION" "DXFREADVALID" "DXFHANDLEVALID" "DXFLUT" "SERIAL" "DXFHANDLE" "DXFHANDLEFILLER" "IDLFFDXF_BOTTOM") 2036 ("begin" . "B2.html")
1521 (inherits)) 2037 ("case" . "C8.html")
1522 ("IDLffDICOM" 2038 ("endcase" . "C8.html")
1523 (tags "IDLFFDICOM_TOP" "IDLFFDICOMVERSION" "DICOMFLAGS" "DICOMELEMENTS" "DICOMPREAMBLE" "DICOMHANDLE" "DICOMHANDLEFILLER" "IDLFFDICOM_BOTTOM") 2039 ("of" . "C8.html")
1524 (inherits)) 2040 ("common" . "C29.html")
1525 ("TrackBall" 2041 ("compile_opt" . "C30.html")
1526 (tags "BTNDOWN" "AXIS" "CONSTRAIN" "MOUSE" "CENTER" "RADIUS" "PT0" "PT1") 2042 ("continue" . "C39.html")
1527 (inherits)) 2043 ("endfor" . "F31.html")
1528 ("IDL_Container" 2044 ("for" . "F31.html")
1529 (tags "IDL_CONTAINER_TOP" "IDLCONTAINERVERSION" "PHEAD" "PTAIL" "NLIST" "IDL_CONTAINER_BOTTOM") 2045 ("else" . "I6.html")
1530 (inherits)) 2046 ("endelse" . "I6.html")
1531 ("IDLgrTessellator" 2047 ("endif" . "I6.html")
1532 (tags "IDLGRTESSELLATORTOP" "IDLGRTESSELLATORVERSION" "ITESSFLAGS" "IVERTS" "HVIDLIST" "IDLGRTESSELLATORBOTTOM") 2048 ("if" . "I6.html")
1533 (inherits)))) 2049 ("then" . "I6.html")
2050 ("end" . "P28.html")
2051 ("pro" . "P28.html")
2052 ("endrep" . "R41.html")
2053 ("repeat" . "R41.html")
2054 ("until" . "R41.html")
2055 ("return" . "R48.html")
2056 ("endswitch" . "S82.html")
2057 ("switch" . "S82.html")
2058 ("do" . "W8.html")
2059 ("endwhile" . "W8.html")
2060 ("while" . "W8.html")
2061)
2062 "Association list of help files for special context words.")
1534 2063
1535(provide 'idlw-rinfo) 2064(provide 'idlw-rinfo)
1536(provide 'idlwave-rinfo) 2065(provide 'idlwave-rinfo)
1537 2066
1538;;; arch-tag: d0b65da3-7f5e-4992-b8dd-885800b5cd6b
1539;;; idlw-rinfo.el ends here 2067;;; idlw-rinfo.el ends here
diff --git a/lisp/progmodes/idlw-shell.el b/lisp/progmodes/idlw-shell.el
index 6720014ed31..85a568ac680 100644
--- a/lisp/progmodes/idlw-shell.el
+++ b/lisp/progmodes/idlw-shell.el
@@ -1,10 +1,12 @@
1;; idlw-shell.el --- run IDL as an inferior process of Emacs. 1;; idlw-shell.el --- run IDL as an inferior process of Emacs.
2;; Copyright (c) 1999, 2000, 2001,2002 Free Software Foundation 2;; Copyright (c) 1999,2000,2001,2002,2003,2004 Free Software Foundation
3 3
4;; Author: Carsten Dominik <dominik@astro.uva.nl> 4;; Authors: J.D. Smith <jdsmith@as.arizona.edu>
5;; Chris Chase <chase@att.com> 5;; Carsten Dominik <dominik@astro.uva.nl>
6;; Chris Chase <chase@att.com>
6;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu> 7;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
7;; Version: 4.15 8;; Version: 5.5
9;; Date: $Date: 2004/11/17 05:37:18 $
8;; Keywords: processes 10;; Keywords: processes
9 11
10;; This file is part of GNU Emacs. 12;; This file is part of GNU Emacs.
@@ -44,7 +46,7 @@
44;; 46;;
45;; INSTALLATION: 47;; INSTALLATION:
46;; ============= 48;; =============
47;; 49;;
48;; Follow the instructions in the INSTALL file of the distribution. 50;; Follow the instructions in the INSTALL file of the distribution.
49;; In short, put this file on your load path and add the following 51;; In short, put this file on your load path and add the following
50;; lines to your .emacs file: 52;; lines to your .emacs file:
@@ -57,9 +59,9 @@
57;; 59;;
58;; The newest version of this file can be found on the maintainers 60;; The newest version of this file can be found on the maintainers
59;; web site. 61;; web site.
60;; 62;;
61;; http://idlwave.org 63;; http://idlwave.org
62;; 64;;
63;; DOCUMENTATION 65;; DOCUMENTATION
64;; ============= 66;; =============
65;; 67;;
@@ -76,7 +78,7 @@
76;; it is a bug in XEmacs. 78;; it is a bug in XEmacs.
77;; The Debug menu in source buffers *does* display the bindings correctly. 79;; The Debug menu in source buffers *does* display the bindings correctly.
78;; 80;;
79;; 81;;
80;; CUSTOMIZATION VARIABLES 82;; CUSTOMIZATION VARIABLES
81;; ======================= 83;; =======================
82;; 84;;
@@ -100,12 +102,12 @@
100 (condition-case () (require 'custom) (error nil)) 102 (condition-case () (require 'custom) (error nil))
101 (if (and (featurep 'custom) 103 (if (and (featurep 'custom)
102 (fboundp 'custom-declare-variable) 104 (fboundp 'custom-declare-variable)
103 (fboundp 'defface)) 105 (fboundp 'defface))
104 ;; We've got what we needed 106 ;; We've got what we needed
105 (setq idlwave-shell-have-new-custom t) 107 (setq idlwave-shell-have-new-custom t)
106 ;; We have the old or no custom-library, hack around it! 108 ;; We have the old or no custom-library, hack around it!
107 (defmacro defgroup (&rest args) nil) 109 (defmacro defgroup (&rest args) nil)
108 (defmacro defcustom (var value doc &rest args) 110 (defmacro defcustom (var value doc &rest args)
109 `(defvar ,var ,value ,doc)))) 111 `(defvar ,var ,value ,doc))))
110 112
111;;; Customizations: idlwave-shell group 113;;; Customizations: idlwave-shell group
@@ -117,10 +119,10 @@
117 :group 'idlwave) 119 :group 'idlwave)
118 120
119(defcustom idlwave-shell-prompt-pattern "^ ?IDL> " 121(defcustom idlwave-shell-prompt-pattern "^ ?IDL> "
120 "*Regexp to match IDL prompt at beginning of a line. 122 "*Regexp to match IDL prompt at beginning of a line.
121For example, \"^IDL> \" or \"^WAVE> \". 123For example, \"^IDL> \" or \"^WAVE> \".
122The \"^\" means beginning of line. 124The \"^\" means beginning of line, and is required.
123This variable is used to initialise `comint-prompt-regexp' in the 125This variable is used to initialize `comint-prompt-regexp' in the
124process buffer. 126process buffer.
125 127
126This is a fine thing to set in your `.emacs' file." 128This is a fine thing to set in your `.emacs' file."
@@ -208,6 +210,24 @@ So by default setting a breakpoint will be on C-c C-d C-b."
208 :group 'idlwave-shell-general-setup 210 :group 'idlwave-shell-general-setup
209 :type 'boolean) 211 :type 'boolean)
210 212
213(defcustom idlwave-shell-automatic-electric-debug 'breakpoint
214 "Enter the electric-debug minor mode automatically.
215This occurs at a breakpoint or any other halt. The mode is exited
216upon return to the main level. Can be set to 'breakpoint to enter
217electric debug mode only when breakpoints are tripped."
218 :group 'idlwave-shell-general-setup
219 :type '(choice
220 (const :tag "never" nil)
221 (const :tag "always" t)
222 (const :tag "for breakpoints only" breakpoint)))
223
224(defcustom idlwave-shell-electric-zap-to-file t
225 "When entering electric debug mode, select the window displaying the
226file at which point is stopped. This takes point away from the shell
227window, but is useful for stepping, etc."
228 :group 'idlwave-shell-general-setup
229 :type 'boolean)
230
211;; (defcustom idlwave-shell-debug-modifiers... See idlwave.el 231;; (defcustom idlwave-shell-debug-modifiers... See idlwave.el
212 232
213(defvar idlwave-shell-activate-alt-keybindings nil 233(defvar idlwave-shell-activate-alt-keybindings nil
@@ -247,13 +267,14 @@ A command like `WINDOW,N,xsize=XX,ysize=YY' is sent to IDL."
247 (integer :tag "x size") 267 (integer :tag "x size")
248 (integer :tag "y size"))) 268 (integer :tag "y size")))
249 269
270
250;; Commands Sent to Shell... etc. 271;; Commands Sent to Shell... etc.
251(defgroup idlwave-shell-command-setup nil 272(defgroup idlwave-shell-command-setup nil
252 "Setup for command parameters of the Shell interaction for IDLWAVE." 273 "Setup for command parameters of the Shell interaction for IDLWAVE."
253 :prefix "idlwave-shell" 274 :prefix "idlwave-shell"
254 :group 'idlwave) 275 :group 'idlwave)
255 276
256(defcustom idlwave-shell-initial-commands "!more=0" 277(defcustom idlwave-shell-initial-commands "!more=0 & defsysv,'!ERROR_STATE',EXISTS=__e & if __e then begin & !ERROR_STATE.MSG_PREFIX=\"% \" & delvar,__e & endif"
257 "Initial commands, separated by newlines, to send to IDL. 278 "Initial commands, separated by newlines, to send to IDL.
258This string is sent to the IDL process by `idlwave-shell-mode' which is 279This string is sent to the IDL process by `idlwave-shell-mode' which is
259invoked by `idlwave-shell'." 280invoked by `idlwave-shell'."
@@ -267,7 +288,7 @@ the history."
267 :group 'idlwave-shell-command-setup 288 :group 'idlwave-shell-command-setup
268 :type 'boolean) 289 :type 'boolean)
269 290
270(defcustom idlwave-shell-command-history-file "~/.idlwhist" 291(defcustom idlwave-shell-command-history-file "idlwhist"
271 "The file in which the command history of the idlwave shell is saved. 292 "The file in which the command history of the idlwave shell is saved.
272In order to change the size of the history, see the variable 293In order to change the size of the history, see the variable
273`comint-input-ring-size'. 294`comint-input-ring-size'.
@@ -275,23 +296,23 @@ The history is only saved if the variable `idlwave-shell-save-command-history'
275is non-nil." 296is non-nil."
276 :group 'idlwave-shell-command-setup 297 :group 'idlwave-shell-command-setup
277 :type 'file) 298 :type 'file)
278 299
279(defcustom idlwave-shell-show-commands 300(defcustom idlwave-shell-show-commands
280 '(run misc breakpoint) 301 '(run misc breakpoint)
281 "*A list of command types to show output from in the shell. 302 "*A list of command types to show output from in the shell.
282Possibilities are 'run, 'debug, 'breakpoint, and 'misc . Unlisted 303Possibilities are 'run, 'debug, 'breakpoint, and 'misc. Unselected
283types are not displayed in the shell. The single type 'everything 304types are not displayed in the shell. The type 'everything causes all
284causes all the copious shell traffic to be displayed." 305the copious shell traffic to be displayed."
285 :group 'idlwave-shell-command-setup 306 :group 'idlwave-shell-command-setup
286 :type '(choice 307 :type '(choice
287 (const everything) 308 (const everything)
288 (set :tag "Checklist" :greedy t 309 (set :tag "Checklist" :greedy t
289 (const :tag "All .run and .compile commands" run) 310 (const :tag "All .run and .compile commands" run)
290 (const :tag "All breakpoint commands" breakpoint) 311 (const :tag "All breakpoint commands" breakpoint)
291 (const :tag "All debug and stepping commands" debug) 312 (const :tag "All debug and stepping commands" debug)
292 (const :tag "Return, close, etc. commands" misc)))) 313 (const :tag "Close, window, retall, etc. commands" misc))))
293 314
294(defcustom idlwave-shell-examine-alist 315(defcustom idlwave-shell-examine-alist
295 '(("Print" . "print,___") 316 '(("Print" . "print,___")
296 ("Help" . "help,___") 317 ("Help" . "help,___")
297 ("Structure Help" . "help,___,/STRUCTURE") 318 ("Structure Help" . "help,___,/STRUCTURE")
@@ -302,14 +323,14 @@ causes all the copious shell traffic to be displayed."
302 ("Ptr Valid" . "print,ptr_valid(___)") 323 ("Ptr Valid" . "print,ptr_valid(___)")
303 ("Widget Valid" . "print,widget_info(___,/VALID)") 324 ("Widget Valid" . "print,widget_info(___,/VALID)")
304 ("Widget Geometry" . "help,widget_info(___,/GEOMETRY)")) 325 ("Widget Geometry" . "help,widget_info(___,/GEOMETRY)"))
305 "Alist of special examine commands for popup selection. 326 "Alist of special examine commands for popup selection.
306The keys are used in the selection popup created by 327The keys are used in the selection popup created by
307`idlwave-shell-examine-select', and the corresponding value is sent as 328`idlwave-shell-examine-select', and the corresponding value is sent as
308a command to the shell, with special sequence `___' replaced by the 329a command to the shell, with special sequence `___' replaced by the
309expression being examined." 330expression being examined."
310 :group 'idlwave-shell-command-setup 331 :group 'idlwave-shell-command-setup
311 :type '(repeat 332 :type '(repeat
312 (cons 333 (cons
313 (string :tag "Label ") 334 (string :tag "Label ")
314 (string :tag "Command")))) 335 (string :tag "Command"))))
315 336
@@ -320,7 +341,7 @@ expression being examined."
320 "*Non-nil mean, put output of examine commands in their own buffer." 341 "*Non-nil mean, put output of examine commands in their own buffer."
321 :group 'idlwave-shell-command-setup 342 :group 'idlwave-shell-command-setup
322 :type 'boolean) 343 :type 'boolean)
323 344
324(defcustom idlwave-shell-comint-settings 345(defcustom idlwave-shell-comint-settings
325 '((comint-scroll-to-bottom-on-input . t) 346 '((comint-scroll-to-bottom-on-input . t)
326 (comint-scroll-to-bottom-on-output . t) 347 (comint-scroll-to-bottom-on-output . t)
@@ -353,7 +374,7 @@ back, respectively. See `idlwave-shell-input-mode-spells' for details."
353 '("^<onechar>$" "^<chars>$" "^</chars>$") 374 '("^<onechar>$" "^<chars>$" "^</chars>$")
354 "The three regular expressions which match the magic spells for input modes. 375 "The three regular expressions which match the magic spells for input modes.
355 376
356When the first regexp matches in the output streem of IDL, IDLWAVE 377When the first regexp matches in the output stream of IDL, IDLWAVE
357prompts for a single character and sends it immediately to IDL, similar 378prompts for a single character and sends it immediately to IDL, similar
358to the command \\[idlwave-shell-send-char]. 379to the command \\[idlwave-shell-send-char].
359 380
@@ -383,14 +404,14 @@ strings. Here is some example code which makes use of the default spells.
383 answer = GET_KBRD(1) 404 answer = GET_KBRD(1)
384 405
385Since the IDLWAVE shell defines the system variable `!IDLWAVE_VERSION', 406Since the IDLWAVE shell defines the system variable `!IDLWAVE_VERSION',
386you could actually check if you are running under Emacs before printing 407you could actually check if you are running under Emacs before printing
387the magic strings. Here is a procedure which uses this. 408the magic strings. Here is a procedure which uses this.
388 409
389Usage: 410Usage:
390====== 411======
391idlwave_char_input ; Make IDLWAVE send one character 412idlwave_char_input ; Make IDLWAVE send one character
392idlwave_char_input,/on ; Start the loop to send characters 413idlwave_char_input,/on ; Start the loop to send characters
393idlwave_char_input,/off ; End the loop to send chracters 414idlwave_char_input,/off ; End the loop to send characters
394 415
395 416
396pro idlwave_char_input,on=on,off=off 417pro idlwave_char_input,on=on,off=off
@@ -400,7 +421,7 @@ pro idlwave_char_input,on=on,off=off
400 if keyword_set(on) then print,'<chars>' $ 421 if keyword_set(on) then print,'<chars>' $
401 else if keyword_set(off) then print,'</chars>' $ 422 else if keyword_set(off) then print,'</chars>' $
402 else print,'<onechar>' 423 else print,'<onechar>'
403 endif 424 endif
404end" 425end"
405 :group 'idlwave-shell-command-setup 426 :group 'idlwave-shell-command-setup
406 :type '(list 427 :type '(list
@@ -453,6 +474,25 @@ line where IDL is stopped. See also `idlwave-shell-mark-stop-line'."
453 :group 'idlwave-shell-highlighting-and-faces 474 :group 'idlwave-shell-highlighting-and-faces
454 :type 'symbol) 475 :type 'symbol)
455 476
477(defcustom idlwave-shell-electric-stop-color "Violet"
478 "*The color for the default face or overlay arrow when stopped."
479 :group 'idlwave-shell-highlighting-and-faces
480 :type 'string)
481
482(defcustom idlwave-shell-electric-stop-line-face
483 (prog1
484 (copy-face 'modeline 'idlwave-shell-electric-stop-line-face)
485 (set-face-background 'idlwave-shell-electric-stop-line-face
486 idlwave-shell-electric-stop-color)
487 (condition-case nil
488 (set-face-foreground 'idlwave-shell-electric-stop-line-face nil)
489 (error nil)))
490 "*The face for `idlwave-shell-stop-line-overlay' when in electric debug mode.
491Allows you to choose the font, color and other properties for the line
492where IDL is stopped, when in Electric Debug Mode."
493 :group 'idlwave-shell-highlighting-and-faces
494 :type 'symbol)
495
456(defcustom idlwave-shell-mark-breakpoints t 496(defcustom idlwave-shell-mark-breakpoints t
457 "*Non-nil means, mark breakpoints in the source files. 497 "*Non-nil means, mark breakpoints in the source files.
458Legal values are: 498Legal values are:
@@ -483,11 +523,30 @@ lines which have a breakpoint. See also `idlwave-shell-mark-breakpoints'."
483 (defface idlwave-shell-bp-face 523 (defface idlwave-shell-bp-face
484 '((((class color)) (:foreground "Black" :background "Pink")) 524 '((((class color)) (:foreground "Black" :background "Pink"))
485 (t (:underline t))) 525 (t (:underline t)))
486 "Face for highlighting lines-with-breakpoints." 526 "Face for highlighting lines with breakpoints."
487 :group 'idlwave-shell-highlighting-and-faces) 527 :group 'idlwave-shell-highlighting-and-faces)
488 ;; Just copy the underline face to be on the safe side. 528 ;; Just copy the underline face to be on the safe side.
489 (copy-face 'underline 'idlwave-shell-bp-face)) 529 (copy-face 'underline 'idlwave-shell-bp-face))
490 530
531(defcustom idlwave-shell-disabled-breakpoint-face
532 'idlwave-shell-disabled-bp-face
533 "*The face for disabled breakpoint lines in the source code.
534Allows you to choose the font, color and other properties for
535lines which have a breakpoint. See also `idlwave-shell-mark-breakpoints'."
536 :group 'idlwave-shell-highlighting-and-faces
537 :type 'symbol)
538
539(if idlwave-shell-have-new-custom
540 ;; We have the new customize - use it to define a customizable face
541 (defface idlwave-shell-disabled-bp-face
542 '((((class color)) (:foreground "Black" :background "gray"))
543 (t (:underline t)))
544 "Face for highlighting lines with breakpoints."
545 :group 'idlwave-shell-highlighting-and-faces)
546 ;; Just copy the underline face to be on the safe side.
547 (copy-face 'underline 'idlwave-shell-disabled-bp-face))
548
549
491(defcustom idlwave-shell-expression-face 'secondary-selection 550(defcustom idlwave-shell-expression-face 'secondary-selection
492 "*The face for `idlwave-shell-expression-overlay'. 551 "*The face for `idlwave-shell-expression-overlay'.
493Allows you to choose the font, color and other properties for 552Allows you to choose the font, color and other properties for
@@ -508,31 +567,23 @@ the expression output by IDL."
508(defvar comint-last-input-start) 567(defvar comint-last-input-start)
509(defvar comint-last-input-end) 568(defvar comint-last-input-end)
510 569
511(defvar idlwave-shell-temp-pro-file nil
512 "Absolute pathname for temporary IDL file for compiling regions")
513
514(defvar idlwave-shell-temp-rinfo-save-file nil
515 "Absolute pathname for temporary IDL file save file for routine_info.
516This is used to speed up the reloading of the routine info procedure
517before use by the shell.")
518
519(defun idlwave-shell-temp-file (type) 570(defun idlwave-shell-temp-file (type)
520 "Return a temp file, creating it if necessary. 571 "Return a temp file, creating it if necessary.
521 572
522TYPE is either `pro' or `rinfo', and `idlwave-shell-temp-pro-file' or 573TYPE is either 'pro or 'rinfo, and idlwave-shell-temp-pro-file or
523`idlwave-shell-temp-rinfo-save-file' is set (respectively)." 574idlwave-shell-temp-rinfo-save-file is set (respectively)."
524 (cond 575 (cond
525 ((eq type 'rinfo) 576 ((eq type 'rinfo)
526 (or idlwave-shell-temp-rinfo-save-file 577 (or idlwave-shell-temp-rinfo-save-file
527 (setq idlwave-shell-temp-rinfo-save-file 578 (setq idlwave-shell-temp-rinfo-save-file
528 (idlwave-shell-make-temp-file idlwave-shell-temp-pro-prefix)))) 579 (idlwave-shell-make-temp-file idlwave-shell-temp-pro-prefix))))
529 ((eq type 'pro) 580 ((eq type 'pro)
530 (or idlwave-shell-temp-pro-file 581 (or idlwave-shell-temp-pro-file
531 (setq idlwave-shell-temp-pro-file 582 (setq idlwave-shell-temp-pro-file
532 (idlwave-shell-make-temp-file idlwave-shell-temp-pro-prefix)))) 583 (idlwave-shell-make-temp-file idlwave-shell-temp-pro-prefix))))
533 (t (error "Wrong argument (idlwave-shell-temp-file): %s" 584 (t (error "Wrong argument (idlwave-shell-temp-file): %s"
534 (symbol-name type))))) 585 (symbol-name type)))))
535 586
536 587
537(defun idlwave-shell-make-temp-file (prefix) 588(defun idlwave-shell-make-temp-file (prefix)
538 "Create a temporary file." 589 "Create a temporary file."
@@ -558,15 +609,27 @@ TYPE is either `pro' or `rinfo', and `idlwave-shell-temp-pro-file' or
558 nil) 609 nil)
559 file))) 610 file)))
560 611
612;; Other variables
613(defvar idlwave-shell-temp-pro-file
614 nil
615 "Absolute pathname for temporary IDL file for compiling regions")
616
617(defvar idlwave-shell-temp-rinfo-save-file
618 nil
619 "Absolute pathname for temporary IDL file save file for routine_info.
620This is used to speed up the reloading of the routine info procedure
621before use by the shell.")
622
561(defvar idlwave-shell-dirstack-query "cd,current=___cur & print,___cur" 623(defvar idlwave-shell-dirstack-query "cd,current=___cur & print,___cur"
562 "Command used by `idlwave-shell-resync-dirs' to query IDL for 624 "Command used by `idlwave-shell-resync-dirs' to query IDL for
563the directory stack.") 625the directory stack.")
564 626
565(defvar idlwave-shell-path-query "__pa=expand_path(!path,/array)&for i=0,n_elements(__pa)-1 do print,'PATH:<'+__pa[i]+'>'&print,'SYSDIR:<'+!dir+'>'" 627(defvar idlwave-shell-path-query "print,'PATH:<'+transpose(expand_path(!PATH,/ARRAY))+'>' & print,'SYSDIR:<'+!dir+'>'"
566 "The command which gets !PATH and !DIR infor from the shell.") 628
629 "The command which gets !PATH and !DIR info from the shell.")
567 630
568(defvar idlwave-shell-mode-line-info nil 631(defvar idlwave-shell-mode-line-info nil
569 "Additional info displayed in the mode line") 632 "Additional info displayed in the mode line")
570 633
571(defvar idlwave-shell-default-directory nil 634(defvar idlwave-shell-default-directory nil
572 "The default directory in the idlwave-shell buffer, of outside use.") 635 "The default directory in the idlwave-shell buffer, of outside use.")
@@ -617,7 +680,7 @@ the directory stack.")
617 window-system) ; Window systems always 680 window-system) ; Window systems always
618 (progn 681 (progn
619 (setq idlwave-shell-stop-line-overlay (make-overlay 1 1)) 682 (setq idlwave-shell-stop-line-overlay (make-overlay 1 1))
620 (overlay-put idlwave-shell-stop-line-overlay 683 (overlay-put idlwave-shell-stop-line-overlay
621 'face idlwave-shell-stop-line-face)))) 684 'face idlwave-shell-stop-line-face))))
622 685
623 (t 686 (t
@@ -625,7 +688,7 @@ the directory stack.")
625 (if window-system 688 (if window-system
626 (progn 689 (progn
627 (setq idlwave-shell-stop-line-overlay (make-overlay 1 1)) 690 (setq idlwave-shell-stop-line-overlay (make-overlay 1 1))
628 (overlay-put idlwave-shell-stop-line-overlay 691 (overlay-put idlwave-shell-stop-line-overlay
629 'face idlwave-shell-stop-line-face))))) 692 'face idlwave-shell-stop-line-face)))))
630 693
631;; Now the expression and output overlays 694;; Now the expression and output overlays
@@ -652,7 +715,11 @@ This is evaluated if it is a list or called with funcall.")
652 715
653(defvar idlwave-shell-hide-output nil 716(defvar idlwave-shell-hide-output nil
654 "If non-nil the process output is not inserted into the output 717 "If non-nil the process output is not inserted into the output
655 buffer.") 718buffer.")
719
720(defvar idlwave-shell-show-if-error nil
721 "If non-nil the process output is inserted into the output buffer if
722it contains an error message, even if hide-output is non-nil.")
656 723
657(defvar idlwave-shell-accumulation nil 724(defvar idlwave-shell-accumulation nil
658 "Accumulate last line of output.") 725 "Accumulate last line of output.")
@@ -682,7 +749,7 @@ with `*'s."
682 749
683;;; The following are the types of messages we attempt to catch to 750;;; The following are the types of messages we attempt to catch to
684;;; resync our idea of where IDL execution currently is. 751;;; resync our idea of where IDL execution currently is.
685;;; 752;;;
686 753
687(defvar idlwave-shell-halt-frame nil 754(defvar idlwave-shell-halt-frame nil
688 "The frame associated with halt/breakpoint messages.") 755 "The frame associated with halt/breakpoint messages.")
@@ -694,26 +761,25 @@ with `*'s."
694 "The frame associated with trace messages.") 761 "The frame associated with trace messages.")
695 762
696(defconst idlwave-shell-halt-messages 763(defconst idlwave-shell-halt-messages
697 '("^% Execution halted at" 764 '("^% Interrupted at:"
698 "^% Interrupted at:"
699 "^% Stepped to:" 765 "^% Stepped to:"
700 "^% At " 766 "^% Skipped to:"
701 "^% Stop encountered:" 767 "^% Stop encountered:"
702 ) 768 )
703 "*A list of regular expressions matching IDL messages. 769 "*A list of regular expressions matching IDL messages.
704These are the messages containing file and line information where 770These are the messages containing file and line information where
705IDL is currently stopped.") 771IDL is currently stopped.")
706 772
773
707(defconst idlwave-shell-halt-messages-re 774(defconst idlwave-shell-halt-messages-re
708 (mapconcat 'identity idlwave-shell-halt-messages "\\|") 775 (mapconcat 'identity idlwave-shell-halt-messages "\\|")
709 "The regular expression computed from idlwave-shell-halt-messages") 776 "The regular expression computed from idlwave-shell-halt-messages")
710 777
711(defconst idlwave-shell-trace-messages 778(defconst idlwave-shell-trace-message-re
712 '("^% At " ;; First line of a trace message 779 "^% At " ;; First line of a trace message
713 ) 780 "*A regular expression matching IDL trace messages. These are the
714 "*A list of regular expressions matching IDL trace messages. 781messages containing file and line information of a current
715These are the messages containing file and line information where 782traceback.")
716IDL will begin looking for the next statement to execute.")
717 783
718(defconst idlwave-shell-step-messages 784(defconst idlwave-shell-step-messages
719 '("^% Stepped to:" 785 '("^% Stepped to:"
@@ -725,6 +791,43 @@ IDL has currently stepped.")
725(defvar idlwave-shell-break-message "^% Breakpoint at:" 791(defvar idlwave-shell-break-message "^% Breakpoint at:"
726 "*Regular expression matching an IDL breakpoint message line.") 792 "*Regular expression matching an IDL breakpoint message line.")
727 793
794(defconst idlwave-shell-electric-debug-help
795 " ==> IDLWAVE Electric Debug Mode Help <==
796
797 Break Point Setting and Clearing:
798 b Set breakpoint ([C-u b] for conditional, [C-n b] nth hit, etc.).
799 d Clear nearby breakpoint.
800 a Clear all breakpoints.
801 i Set breakpoint in routine named here.
802 j Set breakpoint at beginning of containing routine.
803 \\ Toggle breakpoint disable
804 ] Go to next breakpoint in file.
805 [ Go to previous breakpoint in file.
806
807 Stepping, Continuing, and the Stack:
808 s or SPACE Step, into function calls.
809 n Step, over function calls.
810 k Skip one statement.
811 m Continue to end of function.
812 o Continue past end of function.
813 u Continue to end of block.
814 h Continue to line at cursor position.
815 r Continue execution to next breakpoint, if any.
816 + or = Show higher level in calling stack.
817 - or _ Show lower level in calling stack.
818
819 Examining Expressions (with prefix for examining the region):
820 p Print expression near point or in region ([C-u p]).
821 ? Help on expression near point or in region ([C-u ?]).
822 x Examine expression near point or in region ([C-u x]) with
823 letter completion of the examine type.
824
825 Miscellaneous:
826 q Quit - end debugging session and return to the Shell's main level.
827 v Turn Electric Debugging Mode off (C-c C-d C-v to return).
828 t Print a calling-level traceback in the shell.
829 z Reset IDL.
830 C-? Show this help menu.")
728 831
729(defvar idlwave-shell-bp-alist) 832(defvar idlwave-shell-bp-alist)
730;(defvar idlwave-shell-post-command-output) 833;(defvar idlwave-shell-post-command-output)
@@ -768,18 +871,18 @@ IDL has currently stepped.")
768 `\\[idlwave-routine-info]' displays information about an IDL routine near point, 871 `\\[idlwave-routine-info]' displays information about an IDL routine near point,
769 just like in `idlwave-mode'. The module used is the one at point or 872 just like in `idlwave-mode'. The module used is the one at point or
770 the one whose argument list is being edited. 873 the one whose argument list is being edited.
771 To update IDLWAVE's knowledge about compiled or edited modules, use 874 To update IDLWAVE's knowledge about compiled or edited modules, use
772 \\[idlwave-update-routine-info]. 875 \\[idlwave-update-routine-info].
773 \\[idlwave-find-module] find the source of a module. 876 \\[idlwave-find-module] find the source of a module.
774 \\[idlwave-resolve] tells IDL to compile an unresolved module. 877 \\[idlwave-resolve] tells IDL to compile an unresolved module.
775 \\[idlwave-context-help] shows the online help on the item at 878 \\[idlwave-context-help] shows the online help on the item at
776 point, if online help has been installed. 879 point, if online help has been installed.
777 880
778 881
7794. Debugging 8824. Debugging
780 --------- 883 ---------
781 A complete set of commands for compiling and debugging IDL programs 884 A complete set of commands for compiling and debugging IDL programs
782 is available from the menu. Also keybindings starting with a 885 is available from the menu. Also keybindings starting with a
783 `C-c C-d' prefix are available for most commands in the *idl* buffer 886 `C-c C-d' prefix are available for most commands in the *idl* buffer
784 and also in source buffers. The best place to learn about the 887 and also in source buffers. The best place to learn about the
785 keybindings is again the menu. 888 keybindings is again the menu.
@@ -794,12 +897,24 @@ IDL has currently stepped.")
794 \\[idlwave-shell-resync-dirs] queries IDL in order to change Emacs current directory 897 \\[idlwave-shell-resync-dirs] queries IDL in order to change Emacs current directory
795 to correspond to the IDL process current directory. 898 to correspond to the IDL process current directory.
796 899
7975. Hooks 9005. Expression Examination
901 ----------------------
902
903 Expressions near point can be examined with print,
904 \\[idlwave-shell-print] or \\[idlwave-shell-mouse-print] with the
905 mouse, help, \\[idlwave-shell-help-expression] or
906 \\[idlwave-shell-mouse-help] with the mouse, or with a
907 configureable set of custom examine commands using
908 \\[idlwave-shell-examine-select]. The mouse examine commands can
909 also work by click and drag, to select an expression for
910 examination.
911
9126. Hooks
798 ----- 913 -----
799 Turning on `idlwave-shell-mode' runs `comint-mode-hook' and 914 Turning on `idlwave-shell-mode' runs `comint-mode-hook' and
800 `idlwave-shell-mode-hook' (in that order). 915 `idlwave-shell-mode-hook' (in that order).
801 916
8026. Documentation and Customization 9177. Documentation and Customization
803 ------------------------------- 918 -------------------------------
804 Info documentation for this package is available. Use \\[idlwave-info] 919 Info documentation for this package is available. Use \\[idlwave-info]
805 to display (complain to your sysadmin if that does not work). 920 to display (complain to your sysadmin if that does not work).
@@ -807,15 +922,22 @@ IDL has currently stepped.")
807 homepage at `http://idlwave.org'. 922 homepage at `http://idlwave.org'.
808 IDLWAVE has customize support - see the group `idlwave'. 923 IDLWAVE has customize support - see the group `idlwave'.
809 924
8107. Keybindings 9258. Keybindings
811 ----------- 926 -----------
812\\{idlwave-shell-mode-map}" 927\\{idlwave-shell-mode-map}"
813 928
814 (interactive) 929 (interactive)
930 (idlwave-setup) ; Make sure config files and paths, etc. are available.
931 (unless (file-name-absolute-p idlwave-shell-command-history-file)
932 (setq idlwave-shell-command-history-file
933 (expand-file-name idlwave-shell-command-history-file
934 idlwave-config-directory)))
935
815 ;; We don't do `kill-all-local-variables' here, because this is done by 936 ;; We don't do `kill-all-local-variables' here, because this is done by
816 ;; comint - idlwave-shell-mode only add on top of that. 937 ;; comint
817 (setq comint-prompt-regexp idlwave-shell-prompt-pattern) 938 (setq comint-prompt-regexp idlwave-shell-prompt-pattern)
818 (setq comint-process-echoes t) 939 (setq comint-process-echoes t)
940
819 ;; Can not use history expansion because "!" is used for system variables. 941 ;; Can not use history expansion because "!" is used for system variables.
820 (setq comint-input-autoexpand nil) 942 (setq comint-input-autoexpand nil)
821; (setq comint-input-ring-size 64) 943; (setq comint-input-ring-size 64)
@@ -851,6 +973,10 @@ IDL has currently stepped.")
851 idlwave-shell-step-frame nil) 973 idlwave-shell-step-frame nil)
852 (idlwave-shell-display-line nil) 974 (idlwave-shell-display-line nil)
853 (setq idlwave-shell-calling-stack-index 0) 975 (setq idlwave-shell-calling-stack-index 0)
976 (setq idlwave-shell-only-prompt-pattern
977 (concat "\\`[ \t\n]*"
978 (substring idlwave-shell-prompt-pattern 1)
979 "[ \t\n]*\\'"))
854 980
855 (when idlwave-shell-query-for-class 981 (when idlwave-shell-query-for-class
856 (add-to-list (make-local-variable 'idlwave-determine-class-special) 982 (add-to-list (make-local-variable 'idlwave-determine-class-special)
@@ -884,6 +1010,29 @@ IDL has currently stepped.")
884 (while (setq entry (pop list)) 1010 (while (setq entry (pop list))
885 (set (make-local-variable (car entry)) (cdr entry))))) 1011 (set (make-local-variable (car entry)) (cdr entry)))))
886 1012
1013
1014 (unless (memq 'comint-carriage-motion
1015 (default-value 'comint-output-filter-functions))
1016 ;; Strip those pesky ctrl-m's.
1017 (add-hook 'comint-output-filter-functions
1018 (lambda (string)
1019 (when (string-match "\r" string)
1020 (let ((pmark (process-mark (get-buffer-process
1021 (current-buffer)))))
1022 (save-excursion
1023 ;; bare CR -> delete preceding line
1024 (goto-char comint-last-output-start)
1025 (while (search-forward "\r" pmark t)
1026 (delete-region (point) (line-beginning-position)))))))
1027 'append 'local)
1028 (add-hook 'comint-output-filter-functions 'comint-strip-ctrl-m nil 'local))
1029
1030 ;; Python-mode, bundled with many Emacs installs, quite cavalierly
1031 ;; adds this function to the global default hook. It interferes
1032 ;; with overlay-arrows.
1033 (remove-hook 'comint-output-filter-functions 'py-pdbtrack-track-stack-file)
1034
1035
887 ;; IDLWAVE syntax, and turn on abbreviations 1036 ;; IDLWAVE syntax, and turn on abbreviations
888 (setq local-abbrev-table idlwave-mode-abbrev-table) 1037 (setq local-abbrev-table idlwave-mode-abbrev-table)
889 (set-syntax-table idlwave-mode-syntax-table) 1038 (set-syntax-table idlwave-mode-syntax-table)
@@ -902,26 +1051,51 @@ IDL has currently stepped.")
902 (if (file-regular-p idlwave-shell-command-history-file) 1051 (if (file-regular-p idlwave-shell-command-history-file)
903 (comint-read-input-ring))) 1052 (comint-read-input-ring)))
904 1053
1054 ;; Turn off the non-debug toolbar buttons (open,save,etc.)
1055 (set (make-local-variable 'tool-bar-map) nil)
1056
905 ;; Run the hooks. 1057 ;; Run the hooks.
906 (run-hooks 'idlwave-shell-mode-hook) 1058 (run-hooks 'idlwave-shell-mode-hook)
907 (idlwave-shell-send-command idlwave-shell-initial-commands nil 'hide) 1059 (idlwave-shell-send-command idlwave-shell-initial-commands nil 'hide)
908 ;; Define a system variable which knows the version of IDLWAVE 1060 ;; Turn off IDL's ^d interpreting, and define a system
909 (idlwave-shell-send-command 1061 ;; variable which knows the version of IDLWAVE
910 (format "defsysv,'!idlwave_version','%s',1" idlwave-mode-version) 1062 (idlwave-shell-send-command
1063 (format "defsysv,'!idlwave_version','%s',1"
1064 idlwave-mode-version)
911 nil 'hide) 1065 nil 'hide)
1066 ;; Get the paths if they weren't read in from file
912 (if (and (not idlwave-path-alist) 1067 (if (and (not idlwave-path-alist)
913 (not idlwave-sys-dir)) 1068 (or (not (stringp idlwave-system-directory))
1069 (eq (length idlwave-system-directory) 0)))
914 (idlwave-shell-send-command idlwave-shell-path-query 1070 (idlwave-shell-send-command idlwave-shell-path-query
915 'idlwave-shell-get-path-info 1071 'idlwave-shell-get-path-info
916 'hide))) 1072 'hide)))
917 1073
918(defun idlwave-shell-get-path-info () 1074(defun idlwave-shell-get-path-info (&optional no-write)
1075 "Get the path lists, writing to file unless NO-WRITE is set."
919 (let* ((rpl (idlwave-shell-path-filter)) 1076 (let* ((rpl (idlwave-shell-path-filter))
920 (sysdir (car rpl)) 1077 (sysdir (car rpl))
921 (dirs (cdr rpl))) 1078 (dirs (cdr rpl))
922 (setq idlwave-sys-dir sysdir) 1079 (old-path-alist idlwave-path-alist))
923 (setq idlwave-path-alist (mapcar (lambda(x) (cons x nil)) 1080 (when sysdir
924 dirs)))) 1081 (setq idlwave-system-directory sysdir)
1082 (put 'idlwave-system-directory 'from-shell t))
1083 ;; Preserve any existing flags
1084 (setq idlwave-path-alist
1085 (mapcar (lambda (x)
1086 (let ((old-entry (assoc x old-path-alist)))
1087 (if old-entry
1088 (cons x (cdr old-entry))
1089 (list x))))
1090 dirs))
1091 (put 'idlwave-path-alist 'from-shell t)
1092 (if idlwave-path-alist
1093 (if (and idlwave-auto-write-paths
1094 (not idlwave-library-path)
1095 (not no-write) )
1096 (idlwave-write-paths))
1097 ;; Fall back
1098 (setq idlwave-path-alist old-path-alist))))
925 1099
926(if (not (fboundp 'idl-shell)) 1100(if (not (fboundp 'idl-shell))
927 (fset 'idl-shell 'idlwave-shell)) 1101 (fset 'idl-shell 'idlwave-shell))
@@ -951,8 +1125,8 @@ IDL has currently stepped.")
951 (frame (selected-frame))) 1125 (frame (selected-frame)))
952 (catch 'exit 1126 (catch 'exit
953 (while flist 1127 (while flist
954 (if (not (eq (car flist) 1128 (if (not (eq (car flist)
955 idlwave-shell-idl-wframe)) 1129 idlwave-shell-idl-wframe))
956 (throw 'exit (car flist)) 1130 (throw 'exit (car flist))
957 (setq flist (cdr flist)))))) 1131 (setq flist (cdr flist))))))
958 (make-frame)) 1132 (make-frame))
@@ -970,9 +1144,9 @@ IDL has currently stepped.")
970 ;; We do not have a source frame, so we use this one. 1144 ;; We do not have a source frame, so we use this one.
971 (setq idlwave-shell-display-wframe (selected-frame))) 1145 (setq idlwave-shell-display-wframe (selected-frame)))
972 ;; Return a new frame 1146 ;; Return a new frame
973 (setq idlwave-shell-idl-wframe 1147 (setq idlwave-shell-idl-wframe
974 (make-frame idlwave-shell-frame-parameters))))) 1148 (make-frame idlwave-shell-frame-parameters)))))
975 1149
976;;;###autoload 1150;;;###autoload
977(defun idlwave-shell (&optional arg quick) 1151(defun idlwave-shell (&optional arg quick)
978 "Run an inferior IDL, with I/O through buffer `(idlwave-shell-buffer)'. 1152 "Run an inferior IDL, with I/O through buffer `(idlwave-shell-buffer)'.
@@ -999,14 +1173,14 @@ See also the variable `idlwave-shell-prompt-pattern'.
999 (delete-other-windows)) 1173 (delete-other-windows))
1000 (and idlwave-shell-use-dedicated-frame 1174 (and idlwave-shell-use-dedicated-frame
1001 (setq idlwave-shell-idl-wframe (selected-frame))) 1175 (setq idlwave-shell-idl-wframe (selected-frame)))
1002 (add-hook 'idlwave-shell-sentinel-hook 1176 (add-hook 'idlwave-shell-sentinel-hook
1003 'save-buffers-kill-emacs t)) 1177 'save-buffers-kill-emacs t))
1004 1178
1005 ;; A non-nil arg means, we want a dedicated frame. This will last 1179 ;; A non-nil arg means, we want a dedicated frame. This will last
1006 ;; for the current editing session. 1180 ;; for the current editing session.
1007 (if arg (setq idlwave-shell-use-dedicated-frame t)) 1181 (if arg (setq idlwave-shell-use-dedicated-frame t))
1008 (if (equal arg '(16)) (setq idlwave-shell-use-dedicated-frame nil)) 1182 (if (equal arg '(16)) (setq idlwave-shell-use-dedicated-frame nil))
1009 1183
1010 ;; Check if the process still exists. If not, create it. 1184 ;; Check if the process still exists. If not, create it.
1011 (unless (comint-check-proc (idlwave-shell-buffer)) 1185 (unless (comint-check-proc (idlwave-shell-buffer))
1012 (let* ((prg (or idlwave-shell-explicit-file-name "idl")) 1186 (let* ((prg (or idlwave-shell-explicit-file-name "idl"))
@@ -1031,8 +1205,16 @@ See also the variable `idlwave-shell-prompt-pattern'.
1031 (if idlwave-shell-ready 1205 (if idlwave-shell-ready
1032 (raise-frame (window-frame window))) 1206 (raise-frame (window-frame window)))
1033 (if (eq (selected-frame) (window-frame window)) 1207 (if (eq (selected-frame) (window-frame window))
1034 (select-window window)) 1208 (select-window window))))
1035 ))) 1209 ;; Save the paths at the end
1210 (add-hook 'idlwave-shell-sentinel-hook
1211 (lambda ()
1212 (if (and
1213 idlwave-auto-write-paths
1214 idlwave-path-alist
1215 (not idlwave-library-path)
1216 (get 'idlwave-path-alist 'from-shell))
1217 (idlwave-write-paths)))))
1036 1218
1037(defun idlwave-shell-recenter-shell-window (&optional arg) 1219(defun idlwave-shell-recenter-shell-window (&optional arg)
1038 "Run `idlwave-shell', but make sure the current window stays selected." 1220 "Run `idlwave-shell', but make sure the current window stays selected."
@@ -1041,34 +1223,56 @@ See also the variable `idlwave-shell-prompt-pattern'.
1041 (idlwave-shell arg) 1223 (idlwave-shell arg)
1042 (select-window window))) 1224 (select-window window)))
1043 1225
1044(defun idlwave-shell-hide-p (type) 1226(defun idlwave-shell-hide-p (type &optional list)
1045 "Whether to hide this type of command. 1227 "Whether to hide this type of command.
1046Return either nil or 'hide." 1228Return either nil or 'hide."
1229 (let ((list (or list idlwave-shell-show-commands)))
1230 (if (listp list)
1231 (if (not (memq type list)) 'hide))))
1232
1233(defun idlwave-shell-add-or-remove-show (type)
1234 "Add or remove a show command from the list."
1047 (if (listp idlwave-shell-show-commands) 1235 (if (listp idlwave-shell-show-commands)
1048 (if (not (memq type idlwave-shell-show-commands)) 'hide))) 1236 (setq idlwave-shell-show-commands
1237 (if (memq type idlwave-shell-show-commands)
1238 (delq type idlwave-shell-show-commands)
1239 (add-to-list'idlwave-shell-show-commands type)))
1240 (setq idlwave-shell-show-commands (list type))))
1241
1049 1242
1050(defun idlwave-shell-send-command (&optional cmd pcmd hide preempt) 1243(defun idlwave-shell-send-command (&optional cmd pcmd hide preempt
1244 show-if-error)
1051 "Send a command to IDL process. 1245 "Send a command to IDL process.
1052 1246
1053\(CMD PCMD HIDE\) are placed at the end of 1247\(CMD PCMD HIDE\) are placed at the end of `
1054` idlwave-shell-pending-commands'. If IDL is ready the first command, 1248idlwave-shell-pending-commands'. If IDL is ready the first command,
1055CMD, in `idlwave-shell-pending-commands' is sent to the IDL process. 1249CMD, in `idlwave-shell-pending-commands' is sent to the IDL process.
1250
1056If optional second argument PCMD is non-nil it will be placed on 1251If optional second argument PCMD is non-nil it will be placed on
1057`idlwave-shell-post-command-hook' when CMD is executed. If the 1252`idlwave-shell-post-command-hook' when CMD is executed.
1058optional third argument HIDE is non-nil, then hide output from CMD. 1253
1254If the optional third argument HIDE is non-nil, then hide output from
1255CMD, unless it is the symbol 'mostly, in which case only output
1256beginning with \"%\" is hidden, and all other output (i.e., the
1257results of a PRINT command), is shown. This helps with, e.g.,
1258stepping through code with output.
1259
1059If optional fourth argument PREEMPT is non-nil CMD is put at front of 1260If optional fourth argument PREEMPT is non-nil CMD is put at front of
1060`idlwave-shell-pending-commands'. If PREEMPT is 'wait, wait for all 1261`idlwave-shell-pending-commands'. If PREEMPT is 'wait, wait for all
1061output to complete and the next prompt to arrive before returning 1262output to complete and the next prompt to arrive before returning
1062\(useful if you need an answer now\). IDL is considered ready if the 1263\(useful if you need an answer now\). IDL is considered ready if the
1063prompt is present and if `idlwave-shell-ready' is non-nil." 1264prompt is present and if `idlwave-shell-ready' is non-nil.
1265
1266If SHOW-IF-ERROR is non-nil, show the output it it contains an error
1267message, independent of what HIDE is set to."
1064 1268
1065; (setq hide nil) ; FIXME: turn this on for debugging only 1269; (setq hide nil) ; FIXME: turn this on for debugging only
1066; (if (null cmd) 1270; (if (null cmd)
1067; (progn 1271; (progn
1068; (message "SENDING Pending commands: %s" 1272; (message "SENDING Pending commands: %s"
1069; (prin1-to-string idlwave-shell-pending-commands))) 1273; (prin1-to-string idlwave-shell-pending-commands)))
1070; (message "SENDING %s|||%s" cmd pcmd)) 1274; (message "SENDING %s|||%s" cmd pcmd))
1071 (if (and (symbolp idlwave-shell-show-commands) 1275 (if (and (symbolp idlwave-shell-show-commands)
1072 (eq idlwave-shell-show-commands 'everything)) 1276 (eq idlwave-shell-show-commands 'everything))
1073 (setq hide nil)) 1277 (setq hide nil))
1074 (let ((save-buffer (current-buffer)) 1278 (let ((save-buffer (current-buffer))
@@ -1093,11 +1297,11 @@ prompt is present and if `idlwave-shell-ready' is non-nil."
1093 (setq idlwave-shell-pending-commands 1297 (setq idlwave-shell-pending-commands
1094 (if preempt 1298 (if preempt
1095 ;; Put at front. 1299 ;; Put at front.
1096 (append (list (list cmd pcmd hide)) 1300 (append (list (list cmd pcmd hide show-if-error))
1097 idlwave-shell-pending-commands) 1301 idlwave-shell-pending-commands)
1098 ;; Put at end. 1302 ;; Put at end.
1099 (append idlwave-shell-pending-commands 1303 (append idlwave-shell-pending-commands
1100 (list (list cmd pcmd hide)))))) 1304 (list (list cmd pcmd hide show-if-error))))))
1101 ;; Check if IDL ready 1305 ;; Check if IDL ready
1102 (let ((save-point (point-marker))) 1306 (let ((save-point (point-marker)))
1103 (goto-char (process-mark proc)) 1307 (goto-char (process-mark proc))
@@ -1112,7 +1316,8 @@ prompt is present and if `idlwave-shell-ready' is non-nil."
1112 (let* ((lcmd (car idlwave-shell-pending-commands)) 1316 (let* ((lcmd (car idlwave-shell-pending-commands))
1113 (cmd (car lcmd)) 1317 (cmd (car lcmd))
1114 (pcmd (nth 1 lcmd)) 1318 (pcmd (nth 1 lcmd))
1115 (hide (nth 2 lcmd))) 1319 (hide (nth 2 lcmd))
1320 (show-if-error (nth 3 lcmd)))
1116 ;; If this is an executive command, reset the stack pointer 1321 ;; If this is an executive command, reset the stack pointer
1117 (if (eq (string-to-char cmd) ?.) 1322 (if (eq (string-to-char cmd) ?.)
1118 (setq idlwave-shell-calling-stack-index 0)) 1323 (setq idlwave-shell-calling-stack-index 0))
@@ -1120,6 +1325,8 @@ prompt is present and if `idlwave-shell-ready' is non-nil."
1120 (setq idlwave-shell-post-command-hook pcmd) 1325 (setq idlwave-shell-post-command-hook pcmd)
1121 ;; Output hiding 1326 ;; Output hiding
1122 (setq idlwave-shell-hide-output hide) 1327 (setq idlwave-shell-hide-output hide)
1328 ;;Showing errors
1329 (setq idlwave-shell-show-if-error show-if-error)
1123 ;; Pop command 1330 ;; Pop command
1124 (setq idlwave-shell-pending-commands 1331 (setq idlwave-shell-pending-commands
1125 (cdr idlwave-shell-pending-commands)) 1332 (cdr idlwave-shell-pending-commands))
@@ -1142,7 +1349,7 @@ prompt is present and if `idlwave-shell-ready' is non-nil."
1142 (if (or (not (setq buf (get-buffer (idlwave-shell-buffer)))) 1349 (if (or (not (setq buf (get-buffer (idlwave-shell-buffer))))
1143 (not (setq proc (get-buffer-process buf)))) 1350 (not (setq proc (get-buffer-process buf))))
1144 (funcall errf "Shell is not running")) 1351 (funcall errf "Shell is not running"))
1145 (if (equal c ?\C-g) 1352 (if (equal c ?\C-g)
1146 (funcall errf "Abort") 1353 (funcall errf "Abort")
1147 (comint-send-string proc (char-to-string c))))) 1354 (comint-send-string proc (char-to-string c)))))
1148 1355
@@ -1183,7 +1390,7 @@ when the IDL prompt gets displayed again after the current IDL command."
1183 (if idlwave-shell-ready 1390 (if idlwave-shell-ready
1184 (funcall errf "No IDL program seems to be waiting for input")) 1391 (funcall errf "No IDL program seems to be waiting for input"))
1185 1392
1186 ;; OK, start the loop 1393 ;; OK, start the loop
1187 (message "Character mode on: Sending single chars (`C-g' to exit)") 1394 (message "Character mode on: Sending single chars (`C-g' to exit)")
1188 (message 1395 (message
1189 (catch 'exit 1396 (catch 'exit
@@ -1224,8 +1431,9 @@ Otherwise just move the line. Move down unless UP is non-nil."
1224 (if (and idlwave-shell-arrows-do-history 1431 (if (and idlwave-shell-arrows-do-history
1225 (>= (1+ (save-excursion (end-of-line) (point))) proc-pos)) 1432 (>= (1+ (save-excursion (end-of-line) (point))) proc-pos))
1226 (progn 1433 (progn
1227 (goto-char proc-pos) 1434 ;;(goto-char proc-pos)
1228 (and (not (eolp)) (kill-line nil)) 1435 (goto-char (point-max))
1436 ;;(and (not (eolp)) (kill-line nil))
1229 (comint-previous-input arg)) 1437 (comint-previous-input arg))
1230 (previous-line arg)))) 1438 (previous-line arg))))
1231 1439
@@ -1252,44 +1460,46 @@ Otherwise just move the line. Move down unless UP is non-nil."
1252 "Return t if the shell process is running." 1460 "Return t if the shell process is running."
1253 (eq (process-status idlwave-shell-process-name) 'run)) 1461 (eq (process-status idlwave-shell-process-name) 'run))
1254 1462
1463(defvar idlwave-shell-only-prompt-pattern nil)
1464(defun idlwave-shell-filter-hidden-output (output)
1465 "Filter hidden output, leaving the good stuff.
1466
1467Remove everything to the first newline, and all lines with % in front
1468of them, with optional follow-on lines starting with two spaces. This
1469works well enough, since any print output typically arrives before
1470error messages, etc."
1471 (setq output (substring output (string-match "\n" output)))
1472 (while (string-match "\\(\n\\|\\`\\)%.*\\(\n .*\\)*" output)
1473 (setq output (replace-match "" nil t output)))
1474 (unless
1475 (string-match idlwave-shell-only-prompt-pattern output)
1476 output))
1477
1255(defvar idlwave-shell-hidden-output-buffer " *idlwave-shell-hidden-output*" 1478(defvar idlwave-shell-hidden-output-buffer " *idlwave-shell-hidden-output*"
1256 "Buffer containing hidden output from IDL commands.") 1479 "Buffer containing hidden output from IDL commands.")
1257 1480
1258(defun idlwave-shell-filter (proc string) 1481(defun idlwave-shell-filter (proc string)
1259 "Replace Carriage returns in output. Watch for prompt. 1482 "Watch for IDL prompt and filter incoming text.
1260When the IDL prompt is received executes `idlwave-shell-post-command-hook' 1483When the IDL prompt is received executes `idlwave-shell-post-command-hook'
1261and then calls `idlwave-shell-send-command' for any pending commands." 1484and then calls `idlwave-shell-send-command' for any pending commands."
1262 ;; We no longer do the cleanup here - this is done by the process sentinel 1485 ;; We no longer do the cleanup here - this is done by the process sentinel
1263 (when (eq (process-status idlwave-shell-process-name) 'run) 1486 (when (eq (process-status idlwave-shell-process-name) 'run)
1264 ;; OK, process is still running, so we can use it. 1487 ;; OK, process is still running, so we can use it.
1265 (let ((data (match-data)) p) 1488 (let ((data (match-data)) p full-output)
1266 (unwind-protect 1489 (unwind-protect
1267 (progn 1490 (progn
1268 ;; May change the original match data. 1491 ;; Ring the bell if necessary
1269 (while (setq p (string-match "\C-M" string))
1270 (aset string p ?\ ))
1271
1272 ;;
1273 ;; Keep output
1274
1275; Should not keep output because the concat is costly. If hidden put
1276; the output in a hide-buffer. Then when the output is needed in post
1277; processing can access either the hide buffer or the idlwave-shell
1278; buffer. Then watching for the prompt is easier. Furthermore, if it
1279; is hidden and there is no post command, could throw away output.
1280; (setq idlwave-shell-command-output
1281; (concat idlwave-shell-command-output string))
1282 ;; Insert the string. Do this before getting the
1283 ;; state.
1284 (while (setq p (string-match "\C-G" string)) 1492 (while (setq p (string-match "\C-G" string))
1285 (ding) 1493 (ding)
1286 (aset string p ?\C-j )) 1494 (aset string p ?\C-j ))
1287 (if idlwave-shell-hide-output 1495 (if idlwave-shell-hide-output
1288 (save-excursion 1496 (save-excursion
1289 (set-buffer 1497 (while (setq p (string-match "\C-M" string))
1290 (get-buffer-create idlwave-shell-hidden-output-buffer)) 1498 (aset string p ?\ ))
1291 (goto-char (point-max)) 1499 (set-buffer
1292 (insert string)) 1500 (get-buffer-create idlwave-shell-hidden-output-buffer))
1501 (goto-char (point-max))
1502 (insert string))
1293 (idlwave-shell-comint-filter proc string)) 1503 (idlwave-shell-comint-filter proc string))
1294 ;; Watch for magic - need to accumulate the current line 1504 ;; Watch for magic - need to accumulate the current line
1295 ;; since it may not be sent all at once. 1505 ;; since it may not be sent all at once.
@@ -1299,39 +1509,35 @@ and then calls `idlwave-shell-send-command' for any pending commands."
1299 (idlwave-shell-input-mode-magic 1509 (idlwave-shell-input-mode-magic
1300 (concat idlwave-shell-accumulation string))) 1510 (concat idlwave-shell-accumulation string)))
1301 (setq idlwave-shell-accumulation 1511 (setq idlwave-shell-accumulation
1302 (substring string 1512 (substring string
1303 (progn (string-match "\\(.*\n\\)*" string) 1513 (progn (string-match "\\(.*[\n\r]+\\)*"
1514 string)
1304 (match-end 0))))) 1515 (match-end 0)))))
1305 (setq idlwave-shell-accumulation 1516 (setq idlwave-shell-accumulation
1306 (concat idlwave-shell-accumulation string))) 1517 (concat idlwave-shell-accumulation string)))
1307 1518
1308 1519
1309;;; Test/Debug code 1520;;; Test/Debug code
1310; (save-excursion (set-buffer 1521; (save-excursion (set-buffer
1311; (get-buffer-create "*idlwave-shell-output*")) 1522; (get-buffer-create "*idlwave-shell-output*"))
1312; (goto-char (point-max)) 1523; (goto-char (point-max))
1313; (insert "\nSTRING===>\n" string "\n<====\n")) 1524; (insert "\nSTRING===>\n" string "\n<====\n"))
1314 1525
1315 ;; Check for prompt in current accumulating output 1526 ;; Check for prompt in current accumulating output
1316 (if (setq idlwave-shell-ready 1527 (if (setq idlwave-shell-ready
1317 (string-match idlwave-shell-prompt-pattern 1528 (string-match idlwave-shell-prompt-pattern
1318 idlwave-shell-accumulation)) 1529 idlwave-shell-accumulation))
1319 (progn 1530 (progn
1531 ;; Gather the command output
1320 (if idlwave-shell-hide-output 1532 (if idlwave-shell-hide-output
1321 (save-excursion 1533 (save-excursion
1322 (set-buffer idlwave-shell-hidden-output-buffer) 1534 (set-buffer idlwave-shell-hidden-output-buffer)
1535 (setq full-output (buffer-string))
1323 (goto-char (point-max)) 1536 (goto-char (point-max))
1324 (re-search-backward idlwave-shell-prompt-pattern nil t) 1537 (re-search-backward idlwave-shell-prompt-pattern nil t)
1325 (goto-char (match-end 0)) 1538 (goto-char (match-end 0))
1326 (setq idlwave-shell-command-output 1539 (setq idlwave-shell-command-output
1327 (buffer-substring (point-min) (point))) 1540 (buffer-substring (point-min) (point)))
1328
1329;;; Test/Debug
1330; (save-excursion (set-buffer
1331; (get-buffer-create "*idlwave-shell-output*"))
1332; (goto-char (point-max))
1333; (insert "\nOUPUT===>\n" idlwave-shell-command-output "\n<===\n"))
1334
1335 (delete-region (point-min) (point))) 1541 (delete-region (point-min) (point)))
1336 (setq idlwave-shell-command-output 1542 (setq idlwave-shell-command-output
1337 (with-current-buffer (process-buffer proc) 1543 (with-current-buffer (process-buffer proc)
@@ -1342,22 +1548,42 @@ and then calls `idlwave-shell-send-command' for any pending commands."
1342 (point)) 1548 (point))
1343 comint-last-input-end)))) 1549 comint-last-input-end))))
1344 1550
1345 ;; Scan for state and do post command - bracket them 1551 ;; Scan for state and do post commands - bracket
1346 ;; with idlwave-shell-ready=nil since they 1552 ;; them with idlwave-shell-ready=nil since they may
1347 ;; may call idlwave-shell-send-command. 1553 ;; call idlwave-shell-send-command themselves.
1348 (let ((idlwave-shell-ready nil)) 1554 (let ((idlwave-shell-ready nil))
1349 (idlwave-shell-scan-for-state) 1555 (idlwave-shell-scan-for-state)
1350 ;; Unset idlwave-shell-ready to prevent sending 1556 ;; Show the output in the shell if it contains an error
1351 ;; commands to IDL while running hook. 1557 (if idlwave-shell-hide-output
1558 (if (and idlwave-shell-show-if-error
1559 (eq idlwave-shell-current-state 'error))
1560 (idlwave-shell-comint-filter proc full-output)
1561 ;; If it's only *mostly* hidden, filter % lines,
1562 ;; and show anything that remains
1563 (if (eq idlwave-shell-hide-output 'mostly)
1564 (let ((filtered
1565 (idlwave-shell-filter-hidden-output
1566 full-output)))
1567 (if filtered
1568 (idlwave-shell-comint-filter
1569 proc filtered))))))
1570
1571 ;; Call the post-command hook
1352 (if (listp idlwave-shell-post-command-hook) 1572 (if (listp idlwave-shell-post-command-hook)
1353 (eval idlwave-shell-post-command-hook) 1573 (progn
1574 ;(message "Calling list")
1575 ;(prin1 idlwave-shell-post-command-hook)
1576 (eval idlwave-shell-post-command-hook))
1577 ;(message "Calling command function")
1354 (funcall idlwave-shell-post-command-hook)) 1578 (funcall idlwave-shell-post-command-hook))
1355 ;; Reset to default state for next command. 1579
1580 ;; Reset to default state for next command.
1356 ;; Also we do not want to find this prompt again. 1581 ;; Also we do not want to find this prompt again.
1357 (setq idlwave-shell-accumulation nil 1582 (setq idlwave-shell-accumulation nil
1358 idlwave-shell-command-output nil 1583 idlwave-shell-command-output nil
1359 idlwave-shell-post-command-hook nil 1584 idlwave-shell-post-command-hook nil
1360 idlwave-shell-hide-output nil 1585 idlwave-shell-hide-output nil
1586 idlwave-shell-show-if-error nil
1361 idlwave-shell-wait-for-output nil)) 1587 idlwave-shell-wait-for-output nil))
1362 ;; Done with post command. Do pending command if 1588 ;; Done with post command. Do pending command if
1363 ;; any. 1589 ;; any.
@@ -1369,7 +1595,7 @@ and then calls `idlwave-shell-send-command' for any pending commands."
1369; (get-buffer-create "*idlwave-shell-output*")) 1595; (get-buffer-create "*idlwave-shell-output*"))
1370; (goto-char (point-max)) 1596; (goto-char (point-max))
1371; (insert "\n<=== WAITING ON OUTPUT ==>\n")) 1597; (insert "\n<=== WAITING ON OUTPUT ==>\n"))
1372 (accept-process-output proc nil 100)))) 1598 (accept-process-output proc 1))))
1373 (store-match-data data))))) 1599 (store-match-data data)))))
1374 1600
1375(defun idlwave-shell-sentinel (process event) 1601(defun idlwave-shell-sentinel (process event)
@@ -1386,7 +1612,7 @@ and then calls `idlwave-shell-send-command' for any pending commands."
1386 (condition-case nil 1612 (condition-case nil
1387 (comint-write-input-ring) 1613 (comint-write-input-ring)
1388 (error nil))))) 1614 (error nil)))))
1389 1615
1390 (when (and (> (length (frame-list)) 1) 1616 (when (and (> (length (frame-list)) 1)
1391 (frame-live-p idlwave-shell-idl-wframe)) 1617 (frame-live-p idlwave-shell-idl-wframe))
1392 (delete-frame idlwave-shell-idl-wframe) 1618 (delete-frame idlwave-shell-idl-wframe)
@@ -1403,68 +1629,99 @@ and then calls `idlwave-shell-send-command' for any pending commands."
1403 (run-hooks 'idlwave-shell-sentinel-hook)) 1629 (run-hooks 'idlwave-shell-sentinel-hook))
1404 (run-hooks 'idlwave-shell-sentinel-hook)))) 1630 (run-hooks 'idlwave-shell-sentinel-hook))))
1405 1631
1632(defvar idlwave-shell-current-state nil)
1406(defun idlwave-shell-scan-for-state () 1633(defun idlwave-shell-scan-for-state ()
1407 "Scan for state info. 1634 "Scan for state info. Looks for messages in output from last IDL
1408Looks for messages in output from last IDL command indicating where 1635command indicating where IDL has stopped. The types of messages we are
1409IDL has stopped. The types of messages we are interested in are 1636interested in are execution halted, stepped, breakpoint, interrupted
1410execution halted, stepped, breakpoint, interrupted at and trace 1637at and trace messages. For breakpoint messages process any attached
1411messages. We ignore error messages otherwise. 1638count or command parameters. Update the stop line if a message is
1412For breakpoint messages process any attached count or command 1639found. The variable `idlwave-shell-current-state' is set to 'error,
1413parameters. 1640'halt, or 'breakpoint, which describes the status, or nil for none of
1414Update the windows if a message is found." 1641the above."
1415 (cond 1642 (let (trace)
1416 ;; Make sure we have output 1643 (cond
1417 ((not idlwave-shell-command-output)) 1644 ;; Make sure we have output
1418 1645 ((not idlwave-shell-command-output))
1419 ;; First Priority: Syntax and other errors 1646
1420 ((or 1647 ;; First Priority: Syntax and other errors
1421 (string-match idlwave-shell-syntax-error idlwave-shell-command-output) 1648 ((or
1422 (string-match idlwave-shell-other-error idlwave-shell-command-output)) 1649 (string-match idlwave-shell-syntax-error
1423 (save-excursion 1650 idlwave-shell-command-output)
1424 (set-buffer 1651 (string-match idlwave-shell-other-error
1425 (get-buffer-create idlwave-shell-error-buffer)) 1652 idlwave-shell-command-output))
1426 (erase-buffer) 1653 (save-excursion
1427 (insert idlwave-shell-command-output) 1654 (set-buffer
1428 (goto-char (point-min)) 1655 (get-buffer-create idlwave-shell-error-buffer))
1429 (setq idlwave-shell-error-last (point))) 1656 (erase-buffer)
1430 (idlwave-shell-goto-next-error)) 1657 (insert idlwave-shell-command-output)
1431 1658 (goto-char (point-min))
1432 ;; Second Priority: Various types of HALT messages. 1659 (setq idlwave-shell-error-last (point)))
1433 ((string-match idlwave-shell-halt-messages-re 1660 (setq idlwave-shell-current-state 'error)
1434 idlwave-shell-command-output) 1661 (idlwave-shell-goto-next-error))
1435 ;; Grab the file and line state info. 1662
1436 (setq idlwave-shell-calling-stack-index 0) 1663 ;; Second Priority: Halting errors
1437 (setq idlwave-shell-halt-frame 1664 ((string-match idlwave-shell-halting-error
1438 (idlwave-shell-parse-line 1665 idlwave-shell-command-output)
1439 (substring idlwave-shell-command-output (match-end 0)))) 1666 ;; Grab the file and line state info.
1440 (idlwave-shell-display-line (idlwave-shell-pc-frame))) 1667 (setq idlwave-shell-calling-stack-index 0)
1441 1668 (setq idlwave-shell-halt-frame
1442 ;; Last Priority: Breakpoints 1669 (idlwave-shell-parse-line
1443 ((string-match idlwave-shell-break-message 1670 (substring idlwave-shell-command-output
1444 idlwave-shell-command-output) 1671 (match-beginning 2)))
1445 (setq idlwave-shell-calling-stack-index 0) 1672 idlwave-shell-current-state 'error)
1446 (setq idlwave-shell-halt-frame 1673 (idlwave-shell-display-line (idlwave-shell-pc-frame)))
1447 (idlwave-shell-parse-line 1674
1448 (substring idlwave-shell-command-output (match-end 0)))) 1675 ;; Third Priority: Various types of innocuous HALT and
1449 ;; We used to count hits on breakpoints 1676 ;; TRACEBACK messages.
1450 ;; this is no longer supported since IDL breakpoints 1677 ((or (setq trace (string-match idlwave-shell-trace-message-re
1451 ;; have learned counting. 1678 idlwave-shell-command-output))
1452 ;; Do breakpoint command processing 1679 (string-match idlwave-shell-halt-messages-re
1453 (let ((bp (assoc 1680 idlwave-shell-command-output))
1454 (list 1681 ;; Grab the file and line state info.
1455 (nth 0 idlwave-shell-halt-frame) 1682 (setq idlwave-shell-calling-stack-index 0)
1456 (nth 1 idlwave-shell-halt-frame)) 1683 (setq idlwave-shell-halt-frame
1457 idlwave-shell-bp-alist))) 1684 (idlwave-shell-parse-line
1458 (if bp 1685 (substring idlwave-shell-command-output (match-end 0))))
1459 (let ((cmd (idlwave-shell-bp-get bp 'cmd))) 1686 (setq idlwave-shell-current-state 'halt)
1460 (if cmd 1687 ;; Don't debug trace messages
1461 ;; Execute command 1688 (idlwave-shell-display-line (idlwave-shell-pc-frame) nil
1462 (if (listp cmd) (eval cmd) (funcall cmd)))) 1689 (if trace 'no-debug)))
1463 ;; A breakpoint that we did not know about - perhaps it was 1690
1464 ;; set by the user or IDL isn't reporting breakpoints like 1691 ;; Fourth Priority: Breakpoints
1465 ;; we expect. Lets update our list. 1692 ((string-match idlwave-shell-break-message
1466 (idlwave-shell-bp-query))) 1693 idlwave-shell-command-output)
1467 (idlwave-shell-display-line (idlwave-shell-pc-frame))))) 1694 (setq idlwave-shell-calling-stack-index 0)
1695 (setq idlwave-shell-halt-frame
1696 (idlwave-shell-parse-line
1697 (substring idlwave-shell-command-output (match-end 0))))
1698 ;; We used to count hits on breakpoints
1699 ;; this is no longer supported since IDL breakpoints
1700 ;; have learned counting.
1701 ;; Do breakpoint command processing
1702 (let ((bp (assoc
1703 (list
1704 (nth 0 idlwave-shell-halt-frame)
1705 (nth 1 idlwave-shell-halt-frame))
1706 idlwave-shell-bp-alist)))
1707 ;(message "Scanning with %s" bp)
1708 (if bp
1709 (let ((cmd (idlwave-shell-bp-get bp 'cmd)))
1710 (if cmd ;; Execute any breakpoint command
1711 (if (listp cmd) (eval cmd) (funcall cmd))))
1712 ;; A breakpoint that we did not know about - perhaps it was
1713 ;; set by the user... Let's update our list.
1714 (idlwave-shell-bp-query)))
1715 (setq idlwave-shell-current-state 'breakpoint)
1716 (idlwave-shell-display-line (idlwave-shell-pc-frame)))
1717
1718 ;; Last Priority: Can't Step errors
1719 ((string-match idlwave-shell-cant-continue-error
1720 idlwave-shell-command-output)
1721 (setq idlwave-shell-current-state 'breakpoint))
1722
1723 ;; Otherwise, no particular state
1724 (t (setq idlwave-shell-current-state nil)))))
1468 1725
1469(defvar idlwave-shell-error-buffer " *idlwave-shell-errors*" 1726(defvar idlwave-shell-error-buffer " *idlwave-shell-errors*"
1470 "Buffer containing syntax errors from IDL compilations.") 1727 "Buffer containing syntax errors from IDL compilations.")
@@ -1473,21 +1730,28 @@ Update the windows if a message is found."
1473;; in module and file names. I am not sure if it will be necessary to 1730;; in module and file names. I am not sure if it will be necessary to
1474;; change this. Currently it seems to work the way it is. 1731;; change this. Currently it seems to work the way it is.
1475(defvar idlwave-shell-syntax-error 1732(defvar idlwave-shell-syntax-error
1476 "^% Syntax error.\\s-*\n\\s-*At:\\s-*\\(.*\\),\\s-*Line\\s-*\\(.*\\)" 1733 "^% Syntax error.\\s-*\n\\s-*At:\\s-*\\(.*\\),\\s-*Line\\s-*\\(.*\\)"
1477 "A regular expression to match an IDL syntax error. 1734 "A regular expression to match an IDL syntax error.
1478The first \(..\) pair should match the file name. The second pair 1735The 1st pair matches the file name, the second pair matches the line
1479should match the line number.") 1736number.")
1480 1737
1481(defvar idlwave-shell-other-error 1738(defvar idlwave-shell-other-error
1482 "^% .*\n\\s-*At:\\s-*\\(.*\\),\\s-*Line\\s-*\\(.*\\)" 1739 "^% .*\n\\s-*At:\\s-*\\(.*\\),\\s-*Line\\s-*\\(.*\\)"
1483 "A regular expression to match any IDL error. 1740 "A regular expression to match any IDL error.")
1484The first \(..\) pair should match the file name. The second pair 1741
1485should match the line number.") 1742(defvar idlwave-shell-halting-error
1743 "^% .*\n\\([^%].*\n\\)*% Execution halted at:\\(\\s-*\\S-+\\s-*[0-9]+\\s-*.*\\)\n"
1744 "A regular expression to match errors which halt execution.")
1745
1746(defvar idlwave-shell-cant-continue-error
1747 "^% Can't continue from this point.\n"
1748 "A regular expression to match errors stepping errors.")
1486 1749
1487(defvar idlwave-shell-file-line-message 1750(defvar idlwave-shell-file-line-message
1488 (concat 1751 (concat
1489 "\\(" ; program name group (1) 1752 "\\(" ; program name group (1)
1490 "\\<[a-zA-Z][a-zA-Z0-9_$:]*" ; start with a letter, followed by [..] 1753 "\\$MAIN\\$\\|" ; main level routine
1754 "\\<[a-zA-Z][a-zA-Z0-9_$:]*" ; start with a letter followed by [..]
1491 "\\([ \t]*\n[ \t]*[a-zA-Z0-9_$:]+\\)*"; continuation lines program name (2) 1755 "\\([ \t]*\n[ \t]*[a-zA-Z0-9_$:]+\\)*"; continuation lines program name (2)
1492 "\\)" ; end program name group (1) 1756 "\\)" ; end program name group (1)
1493 "[ \t\n]+" ; white space 1757 "[ \t\n]+" ; white space
@@ -1502,19 +1766,19 @@ should match the line number.")
1502 "\\)" ; end line number group (5) 1766 "\\)" ; end line number group (5)
1503 ) 1767 )
1504 "*A regular expression to parse out the file name and line number. 1768 "*A regular expression to parse out the file name and line number.
1505The 1st group should match the subroutine name. 1769The 1st group should match the subroutine name.
1506The 3rd group is the line number. 1770The 3rd group is the line number.
1507The 5th group is the file name. 1771The 5th group is the file name.
1508All parts may contain linebreaks surrounded by spaces. This is important 1772All parts may contain linebreaks surrounded by spaces. This is important
1509in IDL5 which inserts random linebreaks in long module and file names.") 1773in IDL5 which inserts random linebreaks in long module and file names.")
1510 1774
1511(defun idlwave-shell-parse-line (string) 1775(defun idlwave-shell-parse-line (string &optional skip-main)
1512 "Parse IDL message for the subroutine, file name and line number. 1776 "Parse IDL message for the subroutine, file name and line number.
1513We need to work hard here to remove the stupid line breaks inserted by 1777We need to work hard here to remove the stupid line breaks inserted by
1514IDL5. These line breaks can be right in the middle of procedure 1778IDL5. These line breaks can be right in the middle of procedure
1515or file names. 1779or file names.
1516It is very difficult to come up with a robust solution. This one seems 1780It is very difficult to come up with a robust solution. This one seems
1517to be pretty good though. 1781to be pretty good though.
1518 1782
1519Here is in what ways it improves over the previous solution: 1783Here is in what ways it improves over the previous solution:
1520 1784
@@ -1528,15 +1792,18 @@ the first part of that garbage will be added to the file name.
1528However, the function checks the existence of the files with and 1792However, the function checks the existence of the files with and
1529without this last part - thus the function only breaks if file name 1793without this last part - thus the function only breaks if file name
1530plus garbage match an existing regular file. This is hopefully very 1794plus garbage match an existing regular file. This is hopefully very
1531unlikely." 1795unlikely.
1796
1797If optional arg SKIP-MAIN is non-nil, don't parse $MAIN$ routine stop
1798statements."
1532 1799
1533 (let (number procedure file) 1800 (let (number procedure file)
1534 (when (and (not (string-match ":\\s-*\\$MAIN" string)) 1801 (when (and (not (if skip-main (string-match ":\\s-*\\$MAIN" string)))
1535 (string-match idlwave-shell-file-line-message string)) 1802 (string-match idlwave-shell-file-line-message string))
1536 (setq procedure (match-string 1 string) 1803 (setq procedure (match-string 1 string)
1537 number (match-string 3 string) 1804 number (match-string 3 string)
1538 file (match-string 5 string)) 1805 file (match-string 5 string))
1539 1806
1540 ;; Repair the strings 1807 ;; Repair the strings
1541 (setq procedure (idlwave-shell-repair-string procedure)) 1808 (setq procedure (idlwave-shell-repair-string procedure))
1542 (setq number (idlwave-shell-repair-string number)) 1809 (setq number (idlwave-shell-repair-string number))
@@ -1562,7 +1829,7 @@ The last line of STRING may be garbage - we check which one makes a valid
1562file name." 1829file name."
1563 (let ((file1 "") (file2 "") (start 0)) 1830 (let ((file1 "") (file2 "") (start 0))
1564 ;; We scan no further than to the next "^%" line 1831 ;; We scan no further than to the next "^%" line
1565 (if (string-match "^%" file) 1832 (if (string-match "^%" file)
1566 (setq file (substring file 0 (match-beginning 0)))) 1833 (setq file (substring file 0 (match-beginning 0))))
1567 ;; Take out the line breaks 1834 ;; Take out the line breaks
1568 (while (string-match "[ \t]*\n[ \t]*" file start) 1835 (while (string-match "[ \t]*\n[ \t]*" file start)
@@ -1617,10 +1884,10 @@ file name."
1617The size is given by `idlwave-shell-graphics-window-size'." 1884The size is given by `idlwave-shell-graphics-window-size'."
1618 (interactive "P") 1885 (interactive "P")
1619 (let ((n (if n (prefix-numeric-value n) 0))) 1886 (let ((n (if n (prefix-numeric-value n) 0)))
1620 (idlwave-shell-send-command 1887 (idlwave-shell-send-command
1621 (apply 'format "window,%d,xs=%d,ys=%d" 1888 (apply 'format "window,%d,xs=%d,ys=%d"
1622 n idlwave-shell-graphics-window-size) 1889 n idlwave-shell-graphics-window-size)
1623 nil (idlwave-shell-hide-p 'misc)))) 1890 nil (idlwave-shell-hide-p 'misc) nil t)))
1624 1891
1625(defun idlwave-shell-resync-dirs () 1892(defun idlwave-shell-resync-dirs ()
1626 "Resync the buffer's idea of the current directory. 1893 "Resync the buffer's idea of the current directory.
@@ -1633,14 +1900,21 @@ directory."
1633 'hide 'wait)) 1900 'hide 'wait))
1634 1901
1635(defun idlwave-shell-retall (&optional arg) 1902(defun idlwave-shell-retall (&optional arg)
1636 "Return from the entire calling stack." 1903 "Return from the entire calling stack.
1904Also get rid of widget events in the queue."
1637 (interactive "P") 1905 (interactive "P")
1638 (idlwave-shell-send-command "retall" nil (idlwave-shell-hide-p 'misc))) 1906 (save-selected-window
1907 ;;if (widget_info(/MANAGED))[0] gt 0 then for i=0,n_elements(widget_info(/MANAGED))-1 do widget_control,(widget_info(/MANAGED))[i],/clear_events &
1908 (idlwave-shell-send-command "retall" nil
1909 (if (idlwave-shell-hide-p 'misc) 'mostly)
1910 nil t)
1911 (idlwave-shell-display-line nil)))
1639 1912
1640(defun idlwave-shell-closeall (&optional arg) 1913(defun idlwave-shell-closeall (&optional arg)
1641 "Close all open files." 1914 "Close all open files."
1642 (interactive "P") 1915 (interactive "P")
1643 (idlwave-shell-send-command "close,/all" nil (idlwave-shell-hide-p 'misc))) 1916 (idlwave-shell-send-command "close,/all" nil
1917 (idlwave-shell-hide-p 'misc) nil t))
1644 1918
1645(defun idlwave-shell-quit (&optional arg) 1919(defun idlwave-shell-quit (&optional arg)
1646 "Exit the idl process after confirmation. 1920 "Exit the idl process after confirmation.
@@ -1655,7 +1929,7 @@ With prefix ARG, exit without confirmation."
1655 1929
1656(defun idlwave-shell-reset (&optional hidden) 1930(defun idlwave-shell-reset (&optional hidden)
1657 "Reset IDL. Return to main level and destroy the leftover variables. 1931 "Reset IDL. Return to main level and destroy the leftover variables.
1658This issues the following commands: 1932This issues the following commands:
1659RETALL 1933RETALL
1660WIDGET_CONTROL,/RESET 1934WIDGET_CONTROL,/RESET
1661CLOSE, /ALL 1935CLOSE, /ALL
@@ -1691,7 +1965,7 @@ HEAP_GC, /VERBOSE"
1691 (let ((text idlwave-shell-command-output) 1965 (let ((text idlwave-shell-command-output)
1692 (start 0) 1966 (start 0)
1693 sep sep-re file type spec specs name cs key keys class entry) 1967 sep sep-re file type spec specs name cs key keys class entry)
1694; (message "GOT: %s" text) ;?????????????????????? 1968 ;; (message "GOT: %s" text) ;??????????????????????
1695 ;; Initialize variables 1969 ;; Initialize variables
1696 (setq idlwave-compiled-routines nil 1970 (setq idlwave-compiled-routines nil
1697 idlwave-unresolved-routines nil) 1971 idlwave-unresolved-routines nil)
@@ -1704,12 +1978,16 @@ HEAP_GC, /VERBOSE"
1704 text (substring text (match-end 0))) 1978 text (substring text (match-end 0)))
1705 ;; Set dummy values and kill the text 1979 ;; Set dummy values and kill the text
1706 (setq sep "@" sep-re "@ *" text "") 1980 (setq sep "@" sep-re "@ *" text "")
1707 (message "Routine Info warning: No match for BEGIN line in \n>>>>\n%s\n<<<<\n" 1981 (if idlwave-idlwave_routine_info-compiled
1708 idlwave-shell-command-output)) 1982 (message
1983 "Routine Info warning: No match for BEGIN line in \n>>>\n%s\n<<<\n"
1984 idlwave-shell-command-output)))
1709 (if (string-match "^>>>END OF IDLWAVE ROUTINE INFO.*" text) 1985 (if (string-match "^>>>END OF IDLWAVE ROUTINE INFO.*" text)
1710 (setq text (substring text 0 (match-beginning 0))) 1986 (setq text (substring text 0 (match-beginning 0)))
1711 (message "Routine Info warning: No match for END line in \n>>>>\n%s\n<<<<\n" 1987 (if idlwave-idlwave_routine_info-compiled
1712 idlwave-shell-command-output)) 1988 (message
1989 "Routine Info warning: No match for END line in \n>>>\n%s\n<<<\n"
1990 idlwave-shell-command-output)))
1713 (if (string-match "\\S-" text) 1991 (if (string-match "\\S-" text)
1714 ;; Obviously, the pro worked. Make a note that we have it now. 1992 ;; Obviously, the pro worked. Make a note that we have it now.
1715 (setq idlwave-idlwave_routine_info-compiled t)) 1993 (setq idlwave-idlwave_routine_info-compiled t))
@@ -1726,55 +2004,61 @@ HEAP_GC, /VERBOSE"
1726 key (nth 4 specs) 2004 key (nth 4 specs)
1727 keys (if (and (stringp key) 2005 keys (if (and (stringp key)
1728 (not (string-match "\\` *\\'" key))) 2006 (not (string-match "\\` *\\'" key)))
1729 (mapcar 'list 2007 (mapcar 'list
1730 (delete "" (idlwave-split-string key " +"))))) 2008 (delete "" (idlwave-split-string key " +")))))
1731 (setq name (idlwave-sintern-routine-or-method name class t) 2009 (setq name (idlwave-sintern-routine-or-method name class t)
1732 class (idlwave-sintern-class class t) 2010 class (idlwave-sintern-class class t)
1733 file (if (equal file "") nil file) 2011 file (if (equal file "") nil file)
1734 keys (mapcar (lambda (x) 2012 keys (mapcar (lambda (x)
1735 (list (idlwave-sintern-keyword (car x) t))) keys)) 2013 (list (idlwave-sintern-keyword (car x) t))) keys))
1736 ;; Make sure we use the same string object for the same file 2014
1737 (setq file (idlwave-sintern-file file t))
1738 ;; FIXME: What should I do with routines from the temp file???
1739 ;; Maybe just leave it in - there is a chance that the
1740 ;; routine is still in there.
1741 ;; (if (equal file idlwave-shell-temp-pro-file)
1742 ;; (setq file nil))
1743
1744 ;; In the following ignore routines already defined in buffers, 2015 ;; In the following ignore routines already defined in buffers,
1745 ;; assuming that if the buffer stuff differs, it is a "new" 2016 ;; assuming that if the buffer stuff differs, it is a "new"
1746 ;; version. 2017 ;; version, not yet compiled, and should take precedence.
1747 ;; We could do the same for the library to avoid duplicates - 2018 ;; We could do the same for the library to avoid duplicates -
1748 ;; but I think frequently a user might have several versions of 2019 ;; but I think frequently a user might have several versions of
1749 ;; the same function in different programs, and in this case the 2020 ;; the same function in different programs, and in this case the
1750 ;; compiled one will be the best guess of all version. 2021 ;; compiled one will be the best guess of all versions.
1751 ;; Therefore, we leave duplicates of library routines in. 2022 ;; Therefore, we leave duplicates of library routines in.
1752
1753 (cond ((string= name "$MAIN$")) ; ignore this one 2023 (cond ((string= name "$MAIN$")) ; ignore this one
1754 ((and (string= type "PRO") 2024 ((and (string= type "PRO")
1755 ;; FIXME: is it OK to make the buffer routines dominate? 2025 ;; FIXME: is it OK to make the buffer routines dominate?
1756 (or t (null file) 2026 (or t (null file)
1757 (not (idlwave-rinfo-assq name 'pro class 2027 (not (idlwave-rinfo-assq name 'pro class
1758 idlwave-buffer-routines))) 2028 idlwave-buffer-routines)))
1759 ;; FIXME: is it OK to make the library routines dominate? 2029 ;; FIXME: is it OK to make the library routines dominate?
1760 ;;(not (idlwave-rinfo-assq name 'pro class 2030 ;;(not (idlwave-rinfo-assq name 'pro class
1761 ;; idlwave-library-routines)) 2031 ;; idlwave-library-routines))
1762 ) 2032 )
1763 (setq entry (list name 'pro class (cons 'compiled file) cs keys)) 2033 (setq entry (list name 'pro class
1764 (if file 2034 (cons 'compiled
2035 (if file
2036 (list
2037 (file-name-nondirectory file)
2038 (idlwave-sintern-dir
2039 (file-name-directory file)))))
2040 cs (cons nil keys)))
2041 (if file
1765 (push entry idlwave-compiled-routines) 2042 (push entry idlwave-compiled-routines)
1766 (push entry idlwave-unresolved-routines))) 2043 (push entry idlwave-unresolved-routines)))
1767 2044
1768 ((and (string= type "FUN") 2045 ((and (string= type "FUN")
1769 ;; FIXME: is it OK to make the buffer routines dominate? 2046 ;; FIXME: is it OK to make the buffer routines dominate?
1770 (or t (not file) 2047 (or t (not file)
1771 (not (idlwave-rinfo-assq name 'fun class 2048 (not (idlwave-rinfo-assq name 'fun class
1772 idlwave-buffer-routines))) 2049 idlwave-buffer-routines)))
1773 ;; FIXME: is it OK to make the library routines dominate? 2050 ;; FIXME: is it OK to make the library routines dominate?
1774 ;; (not (idlwave-rinfo-assq name 'fun class 2051 ;; (not (idlwave-rinfo-assq name 'fun class
1775 ;; idlwave-library-routines)) 2052 ;; idlwave-library-routines))
1776 ) 2053 )
1777 (setq entry (list name 'fun class (cons 'compiled file) cs keys)) 2054 (setq entry (list name 'fun class
2055 (cons 'compiled
2056 (if file
2057 (list
2058 (file-name-nondirectory file)
2059 (idlwave-sintern-dir
2060 (file-name-directory file)))))
2061 cs (cons nil keys)))
1778 (if file 2062 (if file
1779 (push entry idlwave-compiled-routines) 2063 (push entry idlwave-compiled-routines)
1780 (push entry idlwave-unresolved-routines)))))) 2064 (push entry idlwave-unresolved-routines))))))
@@ -1789,7 +2073,7 @@ Change the default directory for the process buffer to concur."
1789 (set-buffer (idlwave-shell-buffer)) 2073 (set-buffer (idlwave-shell-buffer))
1790 (if (string-match ",___cur[\n\r]\\(\\S-*\\) *[\n\r]" 2074 (if (string-match ",___cur[\n\r]\\(\\S-*\\) *[\n\r]"
1791 idlwave-shell-command-output) 2075 idlwave-shell-command-output)
1792 (let ((dir (substring idlwave-shell-command-output 2076 (let ((dir (substring idlwave-shell-command-output
1793 (match-beginning 1) (match-end 1)))) 2077 (match-beginning 1) (match-end 1))))
1794; (message "Setting Emacs working dir to %s" dir) 2078; (message "Setting Emacs working dir to %s" dir)
1795 (setq idlwave-shell-default-directory dir) 2079 (setq idlwave-shell-default-directory dir)
@@ -1803,10 +2087,10 @@ Change the default directory for the process buffer to concur."
1803 expression) 2087 expression)
1804 (save-excursion 2088 (save-excursion
1805 (goto-char apos) 2089 (goto-char apos)
1806 (setq expression (buffer-substring 2090 (setq expression (buffer-substring
1807 (catch 'exit 2091 (catch 'exit
1808 (while t 2092 (while t
1809 (if (not (re-search-backward 2093 (if (not (re-search-backward
1810 "[^][.A-Za-z0-9_() ]" bos t)) 2094 "[^][.A-Za-z0-9_() ]" bos t))
1811 (throw 'exit bos)) ;ran into bos 2095 (throw 'exit bos)) ;ran into bos
1812 (if (not (idlwave-is-pointer-dereference bol)) 2096 (if (not (idlwave-is-pointer-dereference bol))
@@ -1820,23 +2104,25 @@ Change the default directory for the process buffer to concur."
1820 'hide 'wait) 2104 'hide 'wait)
1821 ;; If we don't know anything about the class, update shell routines 2105 ;; If we don't know anything about the class, update shell routines
1822 (if (and idlwave-shell-get-object-class 2106 (if (and idlwave-shell-get-object-class
1823 (not (assoc-string idlwave-shell-get-object-class 2107 (not (assoc-ignore-case idlwave-shell-get-object-class
1824 (idlwave-class-alist) t))) 2108 (idlwave-class-alist))))
1825 (idlwave-shell-maybe-update-routine-info)) 2109 (idlwave-shell-maybe-update-routine-info))
1826 idlwave-shell-get-object-class))) 2110 idlwave-shell-get-object-class)))
1827 2111
1828(defun idlwave-shell-parse-object-class () 2112(defun idlwave-shell-parse-object-class ()
1829 "Parse the output of the obj_class command." 2113 "Parse the output of the obj_class command."
1830 (let ((match "print,obj_class([^\n\r]+[\n\r ]+")) 2114 (let ((match "print,obj_class([^\n\r]+[\n\r ]"))
1831 (if (and 2115 (if (and
1832 (not (string-match (concat match match "\\s-*^[\n\r]+" 2116 (not (string-match (concat match match "\\s-*^[\n\r]+"
1833 "% Syntax error") 2117 "% Syntax error")
1834 idlwave-shell-command-output)) 2118 idlwave-shell-command-output))
1835 (string-match (concat match "\\([A-Za-z_0-9]+\\)") 2119 (string-match (concat match "\\([A-Za-z_0-9]+\\)")
1836 idlwave-shell-command-output)) 2120 idlwave-shell-command-output))
1837 (setq idlwave-shell-get-object-class 2121 (setq idlwave-shell-get-object-class
1838 (match-string 1 idlwave-shell-command-output))))) 2122 (match-string 1 idlwave-shell-command-output)))))
1839 2123
2124(defvar idlwave-sint-sysvars nil)
2125(idlwave-new-sintern-type 'execcomm)
1840 2126
1841(defun idlwave-shell-complete (&optional arg) 2127(defun idlwave-shell-complete (&optional arg)
1842 "Do completion in the idlwave-shell buffer. 2128 "Do completion in the idlwave-shell buffer.
@@ -1844,36 +2130,59 @@ Calls `idlwave-shell-complete-filename' after some executive commands or
1844in strings. Otherwise, calls `idlwave-complete' to complete modules and 2130in strings. Otherwise, calls `idlwave-complete' to complete modules and
1845keywords." 2131keywords."
1846 (interactive "P") 2132 (interactive "P")
1847 (let (cmd) 2133 (let (exec-cmd)
1848 (cond 2134 (cond
1849 ((setq cmd (idlwave-shell-executive-command)) 2135 ((and
2136 (setq exec-cmd (idlwave-shell-executive-command))
2137 (cdr exec-cmd)
2138 (member (upcase (cdr exec-cmd))
2139 '(".R" ".RU" ".RUN" ".RN" ".RNE" ".RNEW"
2140 ".COM" ".COMP" ".COMPI" ".COMPIL" ".COMPILE")))
1850 ;; We are in a command line with an executive command 2141 ;; We are in a command line with an executive command
1851 (if (member (upcase cmd) 2142 (idlwave-shell-complete-filename))
1852 '(".R" ".RU" ".RUN" ".RN" ".RNE" ".RNEW" 2143
1853 ".COM" ".COMP" ".COMPI" ".COMPIL" ".COMPILE")) 2144 ((car-safe exec-cmd)
1854 ;; This command expects file names 2145 (setq idlwave-completion-help-info
1855 (idlwave-shell-complete-filename))) 2146 '(idlwave-shell-complete-execcomm-help))
2147 (idlwave-complete-in-buffer 'execcomm 'execcomm
2148 idlwave-executive-commands-alist nil
2149 "Select an executive command"
2150 "system variable"))
1856 2151
1857 ((idlwave-shell-batch-command) 2152 ((idlwave-shell-batch-command)
1858 (idlwave-shell-complete-filename)) 2153 (idlwave-shell-complete-filename))
1859 2154
2155 ((idlwave-shell-shell-command)
2156 (idlwave-shell-complete-filename))
2157
1860 ((and (idlwave-shell-filename-string) 2158 ((and (idlwave-shell-filename-string)
1861 (save-excursion 2159 (save-excursion
1862 (beginning-of-line) 2160 (beginning-of-line)
1863 (let ((case-fold-search t)) 2161 (let ((case-fold-search t))
1864 (not (looking-at ".*obj_new"))))) 2162 (not (looking-at ".*obj_new")))))
1865 (idlwave-shell-complete-filename)) 2163 (idlwave-shell-complete-filename))
1866 2164
1867 (t 2165 (t
1868 ;; Default completion of modules and keywords 2166 ;; Default completion of modules and keywords
1869 (idlwave-complete arg))))) 2167 (idlwave-complete arg)))))
1870 2168
2169;; Get rid of opaque dynamic variable passing of link?
2170(defun idlwave-shell-complete-execcomm-help (mode word)
2171 (let ((word (or (nth 1 idlwave-completion-help-info) word))
2172 (entry (assoc-ignore-case word idlwave-executive-commands-alist)))
2173 (cond
2174 ((eq mode 'test)
2175 (and (stringp word) entry (cdr entry)))
2176 ((eq mode 'set)
2177 (if entry (setq link (cdr entry)))) ;; setting dynamic variable!!!
2178 (t (error "This should not happen")))))
2179
1871(defun idlwave-shell-complete-filename (&optional arg) 2180(defun idlwave-shell-complete-filename (&optional arg)
1872 "Complete a file name at point if after a file name. 2181 "Complete a file name at point if after a file name.
1873We assume that we are after a file name when completing one of the 2182We assume that we are after a file name when completing one of the
1874args of an executive .run, .rnew or .compile." 2183args of an executive .run, .rnew or .compile."
1875 ;; CWD might have changed, resync, to set default directory 2184 ;; CWD might have changed, resync, to set default directory
1876 (idlwave-shell-resync-dirs) 2185 (idlwave-shell-resync-dirs)
1877 (let ((comint-file-name-chars idlwave-shell-file-name-chars)) 2186 (let ((comint-file-name-chars idlwave-shell-file-name-chars))
1878 (comint-dynamic-complete-as-filename))) 2187 (comint-dynamic-complete-as-filename)))
1879 2188
@@ -1881,8 +2190,9 @@ args of an executive .run, .rnew or .compile."
1881 "Return the name of the current executive command, if any." 2190 "Return the name of the current executive command, if any."
1882 (save-excursion 2191 (save-excursion
1883 (idlwave-beginning-of-statement) 2192 (idlwave-beginning-of-statement)
1884 (if (looking-at "[ \t]*\\([.][^ \t\n\r]+\\)") 2193 (cons (looking-at "[ \t]*\\.")
1885 (match-string 1)))) 2194 (if (looking-at "[ \t]*[.]\\([^ \t\n\r]+\\)[ \t]")
2195 (match-string 1)))))
1886 2196
1887(defun idlwave-shell-filename-string () 2197(defun idlwave-shell-filename-string ()
1888 "Return t if in a string and after what could be a file name." 2198 "Return t if in a string and after what could be a file name."
@@ -1902,13 +2212,17 @@ args of an executive .run, .rnew or .compile."
1902 (skip-chars-backward " \t" limit) 2212 (skip-chars-backward " \t" limit)
1903 (and (eq (preceding-char) ?@) (not (idlwave-in-quote)))))) 2213 (and (eq (preceding-char) ?@) (not (idlwave-in-quote))))))
1904 2214
1905;;; 2215(defun idlwave-shell-shell-command ()
1906;;; This section contains code for debugging IDL programs. -------------------- 2216 "Returns t if we're in a shell command statement like $ls"
1907;;; 2217 (save-excursion
2218 (idlwave-beginning-of-statement)
2219 (looking-at "\\$")))
2220
2221;; Debugging Commands ------------------------------------------------------
1908 2222
1909(defun idlwave-shell-redisplay (&optional hide) 2223(defun idlwave-shell-redisplay (&optional hide)
1910 "Tries to resync the display with where execution has stopped. 2224 "Tries to resync the display with where execution has stopped.
1911Issues a \"help,/trace\" command followed by a call to 2225Issues a \"help,/trace\" command followed by a call to
1912`idlwave-shell-display-line'. Also updates the breakpoint 2226`idlwave-shell-display-line'. Also updates the breakpoint
1913overlays." 2227overlays."
1914 (interactive) 2228 (interactive)
@@ -1921,7 +2235,7 @@ overlays."
1921 (idlwave-shell-bp-query)) 2235 (idlwave-shell-bp-query))
1922 2236
1923(defun idlwave-shell-display-level-in-calling-stack (&optional hide) 2237(defun idlwave-shell-display-level-in-calling-stack (&optional hide)
1924 (idlwave-shell-send-command 2238 (idlwave-shell-send-command
1925 "help,/trace" 2239 "help,/trace"
1926 `(progn 2240 `(progn
1927 ;; scanning for the state will reset the stack level - restore it 2241 ;; scanning for the state will reset the stack level - restore it
@@ -1952,11 +2266,14 @@ overlays."
1952 (setq idlwave-shell-calling-stack-index nmin 2266 (setq idlwave-shell-calling-stack-index nmin
1953 message (format "%d is the current calling stack level - can't go further down" 2267 message (format "%d is the current calling stack level - can't go further down"
1954 (- nmin))))) 2268 (- nmin)))))
1955 (setq idlwave-shell-calling-stack-routine 2269 (setq idlwave-shell-calling-stack-routine
1956 (nth 2 (nth idlwave-shell-calling-stack-index stack))) 2270 (nth 2 (nth idlwave-shell-calling-stack-index stack)))
1957 (idlwave-shell-display-line 2271
1958 (nth idlwave-shell-calling-stack-index stack)) 2272 ;; only edebug if in that mode already
1959 (message (or message 2273 (idlwave-shell-display-line
2274 (nth idlwave-shell-calling-stack-index stack) nil
2275 (unless idlwave-shell-electric-debug-mode 'no-debug))
2276 (message (or message
1960 (format "In routine %s (stack level %d)" 2277 (format "In routine %s (stack level %d)"
1961 idlwave-shell-calling-stack-routine 2278 idlwave-shell-calling-stack-routine
1962 (- idlwave-shell-calling-stack-index)))))) 2279 (- idlwave-shell-calling-stack-index))))))
@@ -1987,7 +2304,7 @@ used. Does nothing if the resulting frame is nil."
1987(defun idlwave-shell-pc-frame () 2304(defun idlwave-shell-pc-frame ()
1988 "Returns the frame for IDL execution." 2305 "Returns the frame for IDL execution."
1989 (and idlwave-shell-halt-frame 2306 (and idlwave-shell-halt-frame
1990 (list (nth 0 idlwave-shell-halt-frame) 2307 (list (nth 0 idlwave-shell-halt-frame)
1991 (nth 1 idlwave-shell-halt-frame) 2308 (nth 1 idlwave-shell-halt-frame)
1992 (nth 2 idlwave-shell-halt-frame)))) 2309 (nth 2 idlwave-shell-halt-frame))))
1993 2310
@@ -1995,19 +2312,26 @@ used. Does nothing if the resulting frame is nil."
1995 "Check that frame is for an existing file." 2312 "Check that frame is for an existing file."
1996 (file-readable-p (car frame))) 2313 (file-readable-p (car frame)))
1997 2314
1998(defun idlwave-shell-display-line (frame &optional col) 2315(defvar idlwave-shell-suppress-electric-debug nil)
2316(defun idlwave-shell-display-line (frame &optional col no-debug)
1999 "Display FRAME file in other window with overlay arrow. 2317 "Display FRAME file in other window with overlay arrow.
2000 2318
2001FRAME is a list of file name, line number, and subroutine name. 2319FRAME is a list of file name, line number, and subroutine name. If
2002If FRAME is nil then remove overlay." 2320FRAME is nil then remove overlay. If COL is set, move point to that
2321column in the line. If NO-DEBUG is non-nil, do *not* toggle the electric
2322debug mode."
2003 (if (not frame) 2323 (if (not frame)
2004 ;; Remove stop-line overlay from old position 2324 ;; Remove stop-line overlay from old position
2005 (progn 2325 (progn
2006 (setq overlay-arrow-string nil) 2326 (setq overlay-arrow-string nil)
2007 (setq idlwave-shell-mode-line-info nil) 2327 (setq idlwave-shell-mode-line-info nil)
2008 (setq idlwave-shell-is-stopped nil) 2328 (setq idlwave-shell-is-stopped nil)
2009 (if idlwave-shell-stop-line-overlay 2329 (if idlwave-shell-stop-line-overlay
2010 (delete-overlay idlwave-shell-stop-line-overlay))) 2330 (delete-overlay idlwave-shell-stop-line-overlay))
2331 ;; Turn off electric debug everywhere, if it's on
2332 (if (and (not no-debug)
2333 idlwave-shell-automatic-electric-debug)
2334 (idlwave-shell-electric-debug-all-off)))
2011 (if (not (idlwave-shell-valid-frame frame)) 2335 (if (not (idlwave-shell-valid-frame frame))
2012 ;; FIXME: errors are dangerous in shell filters. But I think I 2336 ;; FIXME: errors are dangerous in shell filters. But I think I
2013 ;; have never encountered this one. 2337 ;; have never encountered this one.
@@ -2015,15 +2339,15 @@ If FRAME is nil then remove overlay."
2015;;; 2339;;;
2016;;; buffer : the buffer to display a line in. 2340;;; buffer : the buffer to display a line in.
2017;;; select-shell: current buffer is the shell. 2341;;; select-shell: current buffer is the shell.
2018;;; 2342;;;
2019 (setq idlwave-shell-mode-line-info 2343 (setq idlwave-shell-mode-line-info
2020 (if (nth 2 frame) 2344 (if (nth 2 frame)
2021 (format "[%d:%s]" 2345 (format "[%d:%s]"
2022 (- idlwave-shell-calling-stack-index) 2346 (- idlwave-shell-calling-stack-index)
2023 (nth 2 frame)))) 2347 (nth 2 frame))))
2024 (let* ((buffer (idlwave-find-file-noselect (car frame) 'shell)) 2348 (let* ((buffer (idlwave-find-file-noselect (car frame) 'shell))
2025 (select-shell (equal (buffer-name) (idlwave-shell-buffer))) 2349 (select-shell (equal (buffer-name) (idlwave-shell-buffer)))
2026 window pos) 2350 window pos electric)
2027 2351
2028 ;; First make sure the shell window is visible 2352 ;; First make sure the shell window is visible
2029 (idlwave-display-buffer (idlwave-shell-buffer) 2353 (idlwave-display-buffer (idlwave-shell-buffer)
@@ -2039,8 +2363,10 @@ If FRAME is nil then remove overlay."
2039 (save-restriction 2363 (save-restriction
2040 (widen) 2364 (widen)
2041 (goto-line (nth 1 frame)) 2365 (goto-line (nth 1 frame))
2366 (forward-line 0)
2042 (setq pos (point)) 2367 (setq pos (point))
2043 (setq idlwave-shell-is-stopped t) 2368 (setq idlwave-shell-is-stopped t)
2369
2044 (if idlwave-shell-stop-line-overlay 2370 (if idlwave-shell-stop-line-overlay
2045 ;; Move overlay 2371 ;; Move overlay
2046 (move-overlay idlwave-shell-stop-line-overlay 2372 (move-overlay idlwave-shell-stop-line-overlay
@@ -2051,7 +2377,7 @@ If FRAME is nil then remove overlay."
2051 (setq overlay-arrow-string idlwave-shell-overlay-arrow)) 2377 (setq overlay-arrow-string idlwave-shell-overlay-arrow))
2052 (or overlay-arrow-position ; create the marker if necessary 2378 (or overlay-arrow-position ; create the marker if necessary
2053 (setq overlay-arrow-position (make-marker))) 2379 (setq overlay-arrow-position (make-marker)))
2054 (set-marker overlay-arrow-position (point) buffer))) 2380 (set-marker overlay-arrow-position (point) buffer)))
2055 2381
2056 ;; If the point is outside the restriction, widen the buffer. 2382 ;; If the point is outside the restriction, widen the buffer.
2057 (if (or (< pos (point-min)) (> pos (point-max))) 2383 (if (or (< pos (point-min)) (> pos (point-max)))
@@ -2061,15 +2387,29 @@ If FRAME is nil then remove overlay."
2061 2387
2062 ;; If we have the column of the error, move the cursor there. 2388 ;; If we have the column of the error, move the cursor there.
2063 (if col (move-to-column col)) 2389 (if col (move-to-column col))
2064 (setq pos (point))) 2390 (setq pos (point))
2065 2391
2392 ;; Enter electric debug mode, if not prohibited and not in
2393 ;; it already
2394 (when (and (or
2395 (eq idlwave-shell-automatic-electric-debug t)
2396 (and
2397 (eq idlwave-shell-automatic-electric-debug 'breakpoint)
2398 (not (eq idlwave-shell-current-state 'error))))
2399 (not no-debug)
2400 (not idlwave-shell-suppress-electric-debug)
2401 (not idlwave-shell-electric-debug-mode))
2402 (idlwave-shell-electric-debug-mode)
2403 (setq electric t)))
2404
2066 ;; Make sure pos is really displayed in the window. 2405 ;; Make sure pos is really displayed in the window.
2067 (set-window-point window pos) 2406 (set-window-point window pos)
2068 2407
2069 ;; If we came from the shell, go back there. Otherwise select 2408 ;; If we came from the shell, go back there. Otherwise select
2070 ;; the window where the error is displayed. 2409 ;; the window where the error is displayed.
2071 (if (and (equal (buffer-name) (idlwave-shell-buffer)) 2410 (if (or (and idlwave-shell-electric-zap-to-file electric)
2072 (not select-shell)) 2411 (and (equal (buffer-name) (idlwave-shell-buffer))
2412 (not select-shell)))
2073 (select-window window)))))) 2413 (select-window window))))))
2074 2414
2075 2415
@@ -2078,42 +2418,43 @@ If FRAME is nil then remove overlay."
2078 (interactive "p") 2418 (interactive "p")
2079 (or (not arg) (< arg 1) 2419 (or (not arg) (< arg 1)
2080 (setq arg 1)) 2420 (setq arg 1))
2081 (idlwave-shell-send-command 2421 (idlwave-shell-send-command
2082 (concat ".s " (if (integerp arg) (int-to-string arg) arg)) 2422 (concat ".s " (if (integerp arg) (int-to-string arg) arg))
2083 nil (idlwave-shell-hide-p 'debug))) 2423 nil (if (idlwave-shell-hide-p 'debug) 'mostly) nil t))
2084 2424
2085(defun idlwave-shell-stepover (arg) 2425(defun idlwave-shell-stepover (arg)
2086 "Stepover one source line. 2426 "Stepover one source line.
2087If given prefix argument ARG, step ARG source lines. 2427If given prefix argument ARG, step ARG source lines.
2088Uses IDL's stepover executive command which does not enter called functions." 2428Uses IDL's stepover executive command which does not enter called functions."
2089 (interactive "p") 2429 (interactive "p")
2090 (or (not arg) (< arg 1) 2430 (or (not arg) (< arg 1)
2091 (setq arg 1)) 2431 (setq arg 1))
2092 (idlwave-shell-send-command 2432 (idlwave-shell-send-command
2093 (concat ".so " (if (integerp arg) (int-to-string arg) arg)) 2433 (concat ".so " (if (integerp arg) (int-to-string arg) arg))
2094 nil (idlwave-shell-hide-p 'debug))) 2434 nil (if (idlwave-shell-hide-p 'debug) 'mostly) nil t))
2095 2435
2096(defun idlwave-shell-break-here (&optional count cmd condition) 2436(defun idlwave-shell-break-here (&optional count cmd condition no-show)
2097 "Set breakpoint at current line. 2437 "Set breakpoint at current line.
2098 2438
2099If Count is nil then an ordinary breakpoint is set. We treat a count 2439If Count is nil then an ordinary breakpoint is set. We treat a count
2100of 1 as a temporary breakpoint using the ONCE keyword. Counts greater 2440of 1 as a temporary breakpoint using the ONCE keyword. Counts greater
2101than 1 use the IDL AFTER=count keyword to break only after reaching 2441than 1 use the IDL AFTER=count keyword to break only after reaching
2102the statement count times. 2442the statement count times.
2103 2443
2104Optional argument CMD is a list or function to evaluate upon reaching 2444Optional argument CMD is a list or function to evaluate upon reaching
2105the breakpoint." 2445the breakpoint."
2106 2446
2107 (interactive "P") 2447 (interactive "P")
2108 (when (listp count) 2448 (when (listp count)
2109 (if (equal (car count) 4) 2449 (if (equal (car count) 4)
2110 (setq condition (read-string "Break Condition: "))) 2450 (setq condition (read-string "Break Condition: ")))
2111 (setq count nil)) 2451 (setq count nil))
2112 (idlwave-shell-set-bp 2452 (idlwave-shell-set-bp
2113 ;; Create breakpoint 2453 ;; Create breakpoint
2114 (idlwave-shell-bp (idlwave-shell-current-frame) 2454 (idlwave-shell-bp (idlwave-shell-current-frame)
2115 (list count cmd condition) 2455 (list count cmd condition nil)
2116 (idlwave-shell-current-module)))) 2456 (idlwave-shell-current-module))
2457 no-show))
2117 2458
2118(defun idlwave-shell-set-bp-check (bp) 2459(defun idlwave-shell-set-bp-check (bp)
2119 "Check for failure to set breakpoint. 2460 "Check for failure to set breakpoint.
@@ -2128,7 +2469,7 @@ the problem with not being able to set the breakpoint."
2128 (progn 2469 (progn
2129 (if (progn 2470 (if (progn
2130 (beep) 2471 (beep)
2131 (y-or-n-p 2472 (y-or-n-p
2132 (concat "Okay to recompile file " 2473 (concat "Okay to recompile file "
2133 (idlwave-shell-bp-get bp 'file) " "))) 2474 (idlwave-shell-bp-get bp 'file) " ")))
2134 ;; Recompile 2475 ;; Recompile
@@ -2136,8 +2477,8 @@ the problem with not being able to set the breakpoint."
2136 ;; Clean up before retrying 2477 ;; Clean up before retrying
2137 (idlwave-shell-command-failure) 2478 (idlwave-shell-command-failure)
2138 (idlwave-shell-send-command 2479 (idlwave-shell-send-command
2139 (concat ".run " (idlwave-shell-bp-get bp 'file)) nil 2480 (concat ".run " (idlwave-shell-bp-get bp 'file)) nil
2140 (idlwave-shell-hide-p 'run)) 2481 (if (idlwave-shell-hide-p 'run) 'mostly) nil t)
2141 ;; Try setting breakpoint again 2482 ;; Try setting breakpoint again
2142 (idlwave-shell-set-bp bp)) 2483 (idlwave-shell-set-bp bp))
2143 (beep) 2484 (beep)
@@ -2157,29 +2498,34 @@ breakpoint can not be set."
2157 ;; Clear pending commands 2498 ;; Clear pending commands
2158 (setq idlwave-shell-pending-commands nil)) 2499 (setq idlwave-shell-pending-commands nil))
2159 2500
2160(defun idlwave-shell-cont () 2501(defun idlwave-shell-cont (&optional no-show)
2161 "Continue executing." 2502 "Continue executing."
2162 (interactive) 2503 (interactive)
2163 (idlwave-shell-send-command ".c" '(idlwave-shell-redisplay 'hide) 2504 (idlwave-shell-send-command ".c" (unless no-show
2164 (idlwave-shell-hide-p 'debug))) 2505 '(idlwave-shell-redisplay 'hide))
2506 (if (idlwave-shell-hide-p 'debug) 'mostly)
2507 nil t))
2165 2508
2166(defun idlwave-shell-go () 2509(defun idlwave-shell-go ()
2167 "Run .GO. This starts the main program of the last compiled file." 2510 "Run .GO. This starts the main program of the last compiled file."
2168 (interactive) 2511 (interactive)
2169 (idlwave-shell-send-command ".go" '(idlwave-shell-redisplay 'hide) 2512 (idlwave-shell-send-command ".go" '(idlwave-shell-redisplay 'hide)
2170 (idlwave-shell-hide-p 'debug))) 2513 (if (idlwave-shell-hide-p 'debug) 'mostly)
2514 nil t))
2171 2515
2172(defun idlwave-shell-return () 2516(defun idlwave-shell-return ()
2173 "Run .RETURN (continue to next return, but stay in subprogram)." 2517 "Run .RETURN (continue to next return, but stay in subprogram)."
2174 (interactive) 2518 (interactive)
2175 (idlwave-shell-send-command ".return" '(idlwave-shell-redisplay 'hide) 2519 (idlwave-shell-send-command ".return" '(idlwave-shell-redisplay 'hide)
2176 (idlwave-shell-hide-p 'debug))) 2520 (if (idlwave-shell-hide-p 'debug) 'mostly)
2521 nil t))
2177 2522
2178(defun idlwave-shell-skip () 2523(defun idlwave-shell-skip ()
2179 "Run .SKIP (skip one line, then step)." 2524 "Run .SKIP (skip one line, then step)."
2180 (interactive) 2525 (interactive)
2181 (idlwave-shell-send-command ".skip" '(idlwave-shell-redisplay 'hide) 2526 (idlwave-shell-send-command ".skip" '(idlwave-shell-redisplay 'hide)
2182 (idlwave-shell-hide-p 'debug))) 2527 (if (idlwave-shell-hide-p 'debug) 'mostly)
2528 nil t))
2183 2529
2184(defun idlwave-shell-clear-bp (bp) 2530(defun idlwave-shell-clear-bp (bp)
2185 "Clear breakpoint BP. 2531 "Clear breakpoint BP.
@@ -2188,9 +2534,8 @@ Clears in IDL and in `idlwave-shell-bp-alist'."
2188 (if index 2534 (if index
2189 (progn 2535 (progn
2190 (idlwave-shell-send-command 2536 (idlwave-shell-send-command
2191 (concat "breakpoint,/clear," 2537 (concat "breakpoint,/clear," (int-to-string index))
2192 (if (integerp index) (int-to-string index) index)) 2538 nil (idlwave-shell-hide-p 'breakpoint) nil t)
2193 nil (idlwave-shell-hide-p 'breakpoint))
2194 (idlwave-shell-bp-query))))) 2539 (idlwave-shell-bp-query)))))
2195 2540
2196(defun idlwave-shell-current-frame () 2541(defun idlwave-shell-current-frame ()
@@ -2225,43 +2570,62 @@ Returns nil if unable to obtain a module name."
2225This command can be called from the shell buffer if IDL is currently stopped 2570This command can be called from the shell buffer if IDL is currently stopped
2226at a breakpoint." 2571at a breakpoint."
2227 (interactive) 2572 (interactive)
2228 (let ((bp (idlwave-shell-find-bp (idlwave-shell-current-frame)))) 2573 (let ((bp (idlwave-shell-find-current-bp)))
2229 (if bp (idlwave-shell-clear-bp bp) 2574 (if bp (idlwave-shell-clear-bp bp))))
2230 ;; Try moving to beginning of statement
2231 (save-excursion
2232 (idlwave-shell-goto-frame)
2233 (idlwave-beginning-of-statement)
2234 (setq bp (idlwave-shell-find-bp (idlwave-shell-current-frame)))
2235 (if bp (idlwave-shell-clear-bp bp)
2236 (beep)
2237 (message "Cannot identify breakpoint for this line"))))))
2238 2575
2239(defun idlwave-shell-disable-all-bp (&optional enable) 2576
2240 "Disable all breakpoints we know about. 2577(defun idlwave-shell-toggle-enable-current-bp (&optional bp force
2241If ENABLE is non-nil, enable them instead." 2578 no-update)
2242 (let ((bpl idlwave-shell-bp-alist)) 2579 "Disable or enable current bp."
2243 (while bpl 2580 (interactive)
2244 (idlwave-shell-send-command 2581 (let* ((bp (or bp (idlwave-shell-find-current-bp)))
2582 (disabled (idlwave-shell-bp-get bp 'disabled)))
2583 (cond ((eq force 'disable) (setq disabled nil))
2584 ((eq force 'enable) (setq disabled t)))
2585 (when bp
2586 (setf (nth 3 (cdr (cdr bp))) (not disabled))
2587 (idlwave-shell-send-command
2245 (concat "breakpoint," 2588 (concat "breakpoint,"
2246 (if enable "/enable," "/disable," ) 2589 (if disabled "/enable," "/disable,")
2247 (idlwave-shell-bp-get (car bpl))) 2590 (int-to-string (idlwave-shell-bp-get bp)))
2248 nil (idlwave-shell-hide-p 'breakpoint)) 2591 nil (idlwave-shell-hide-p 'breakpoint) nil t)
2249 (setq bpl (cdr bpl))))) 2592 (unless no-update (idlwave-shell-bp-query)))))
2250 2593
2594(defun idlwave-shell-enable-all-bp (&optional enable no-update bpl)
2595 "Disable all breakpoints we know about which need disabling.
2596If ENABLE is non-nil, enable them instead."
2597 (let ((bpl (or bpl idlwave-shell-bp-alist)) disabled modified)
2598 (while bpl
2599 (setq disabled (idlwave-shell-bp-get (car bpl) 'disabled))
2600 (when (idlwave-xor (not disabled) (eq enable 'enable))
2601 (idlwave-shell-toggle-enable-current-bp
2602 (car bpl) (if (eq enable 'enable) 'enable 'disable) no-update)
2603 (push (car bpl) modified))
2604 (setq bpl (cdr bpl)))
2605 (unless no-update (idlwave-shell-bp-query))
2606 modified))
2607
2251(defun idlwave-shell-to-here () 2608(defun idlwave-shell-to-here ()
2252 "Set a breakpoint with count 1 then continue." 2609 "Set a breakpoint with count 1 then continue."
2253 (interactive) 2610 (interactive)
2254 (idlwave-shell-disable-all-bp) 2611 (let ((disabled (idlwave-shell-enable-all-bp 'disable 'no-update)))
2255 (idlwave-shell-break-here 1) 2612 (idlwave-shell-break-here 1 nil nil 'no-show)
2256 (idlwave-shell-cont) 2613 (idlwave-shell-cont 'no-show)
2257 (idlwave-shell-disable-all-bp 'enable)) 2614 (idlwave-shell-enable-all-bp 'enable 'no-update disabled))
2615 (idlwave-shell-redisplay)) ; sync up everything at the end
2616
2617(defun idlwave-shell-break-this-module (&optional arg)
2618 (interactive "P")
2619 (save-excursion
2620 (idlwave-beginning-of-subprogram)
2621 (idlwave-shell-break-here arg)))
2258 2622
2259(defun idlwave-shell-break-in (&optional module) 2623(defun idlwave-shell-break-in ()
2260 "Look for a module name near point and set a break point for it. 2624 "Look for a module name near point and set a break point for it.
2261The command looks for an identifier near point and sets a breakpoint 2625The command looks for an identifier near point and sets a breakpoint
2262for the first line of the corresponding module." 2626for the first line of the corresponding module. If MODULE is `t', set
2627in the current routine."
2263 (interactive) 2628 (interactive)
2264 ;; get the identifier
2265 (let (module) 2629 (let (module)
2266 (save-excursion 2630 (save-excursion
2267 (skip-chars-backward "a-zA-Z0-9_$") 2631 (skip-chars-backward "a-zA-Z0-9_$")
@@ -2278,7 +2642,7 @@ for the first line of the corresponding module."
2278(defun idlwave-shell-set-bp-in-module (module) 2642(defun idlwave-shell-set-bp-in-module (module)
2279 "Set breakpoint in module. Assumes that `idlwave-shell-sources-alist' 2643 "Set breakpoint in module. Assumes that `idlwave-shell-sources-alist'
2280contains an entry for that module." 2644contains an entry for that module."
2281 (let ((source-file (car-safe 2645 (let ((source-file (car-safe
2282 (cdr-safe 2646 (cdr-safe
2283 (assoc (upcase module) 2647 (assoc (upcase module)
2284 idlwave-shell-sources-alist)))) 2648 idlwave-shell-sources-alist))))
@@ -2297,7 +2661,7 @@ contains an entry for that module."
2297 (save-excursion 2661 (save-excursion
2298 (goto-char (point-min)) 2662 (goto-char (point-min))
2299 (let ((case-fold-search t)) 2663 (let ((case-fold-search t))
2300 (if (re-search-forward 2664 (if (re-search-forward
2301 (concat "^[ \t]*\\(pro\\|function\\)[ \t]+" 2665 (concat "^[ \t]*\\(pro\\|function\\)[ \t]+"
2302 (downcase module) 2666 (downcase module)
2303 "[ \t\n,]") nil t) 2667 "[ \t\n,]") nil t)
@@ -2339,7 +2703,40 @@ Sets a breakpoint with count 1 at end of block, then continues."
2339 "Attempt to run until this procedure exits. 2703 "Attempt to run until this procedure exits.
2340Runs to the last statement and then steps 1 statement. Use the .out command." 2704Runs to the last statement and then steps 1 statement. Use the .out command."
2341 (interactive) 2705 (interactive)
2342 (idlwave-shell-send-command ".o" nil (idlwave-shell-hide-p 'debug))) 2706 (idlwave-shell-send-command ".o" nil
2707 (if (idlwave-shell-hide-p 'debug) 'mostly)
2708 nil t))
2709
2710(defun idlwave-shell-goto-previous-bp ()
2711 "Move to the previous breakpoint in the buffer."
2712 (interactive)
2713 (idlwave-shell-move-to-bp -1))
2714(defun idlwave-shell-goto-next-bp ()
2715 "Move to the next breakpoint in the buffer."
2716 (interactive)
2717 (idlwave-shell-move-to-bp 1))
2718
2719(defun idlwave-shell-move-to-bp (dir)
2720 "Move to the next or previous breakpoint, depending on direction DIR."
2721 (let* ((frame (idlwave-shell-current-frame))
2722 (file (car frame))
2723 (orig-bp-line (nth 1 frame))
2724 (bp-alist idlwave-shell-bp-alist)
2725 (orig-func (if (> dir 0) '> '<))
2726 (closer-func (if (> dir 0) '< '>))
2727 bp got-bp bp-line cur-line)
2728 (while (setq bp (pop bp-alist))
2729 (when (string= file (car (car bp)))
2730 (setq got-bp 1)
2731 (setq cur-line (nth 1 (car bp)))
2732 (if (and
2733 (funcall orig-func cur-line orig-bp-line)
2734 (or (not bp-line) (funcall closer-func cur-line bp-line)))
2735 (setq bp-line cur-line))))
2736 (unless bp-line (error "No further breakpoints."))
2737 (goto-line bp-line)))
2738
2739;; Examine Commands ------------------------------------------------------
2343 2740
2344(defun idlwave-shell-help-expression (arg) 2741(defun idlwave-shell-help-expression (arg)
2345 "Print help on current expression. See `idlwave-shell-print'." 2742 "Print help on current expression. See `idlwave-shell-print'."
@@ -2353,12 +2750,30 @@ Runs to the last statement and then steps 1 statement. Use the .out command."
2353 (interactive "e") 2750 (interactive "e")
2354 (let ((transient-mark-mode t) 2751 (let ((transient-mark-mode t)
2355 (zmacs-regions t) 2752 (zmacs-regions t)
2356 (tracker (if (featurep 'xemacs) 'mouse-track 2753 (tracker (if (featurep 'xemacs)
2754 (if (fboundp 'default-mouse-track-event-is-with-button)
2755 'idlwave-xemacs-hack-mouse-track
2756 'mouse-track)
2357 'mouse-drag-region))) 2757 'mouse-drag-region)))
2358 (funcall tracker event) 2758 (funcall tracker event)
2359 (idlwave-shell-print (if (idlwave-region-active-p) '(16) nil) 2759 (idlwave-shell-print (if (idlwave-region-active-p) '(4) nil)
2360 ,help ,ev)))) 2760 ,help ,ev))))
2361 2761
2762;;; Begin terrible hack section -- XEmacs tests for button2 explicitly
2763;;; on drag events, calling drag-n-drop code if detected. Ughhh...
2764(defun idlwave-default-mouse-track-event-is-with-button (event n)
2765 t)
2766
2767(defun idlwave-xemacs-hack-mouse-track (event)
2768 (let ((oldfunc (symbol-function 'default-mouse-track-event-is-with-button)))
2769 (unwind-protect
2770 (progn
2771 (fset 'default-mouse-track-event-is-with-button
2772 'idlwave-default-mouse-track-event-is-with-button)
2773 (mouse-track event))
2774 (fset 'default-mouse-track-event-is-with-button oldfunc))))
2775;;; End terrible hack section
2776
2362(defun idlwave-shell-mouse-print (event) 2777(defun idlwave-shell-mouse-print (event)
2363 "Print value of variable at the mouse position, with `help'" 2778 "Print value of variable at the mouse position, with `help'"
2364 (interactive "e") 2779 (interactive "e")
@@ -2380,22 +2795,21 @@ Runs to the last statement and then steps 1 statement. Use the .out command."
2380 (interactive) 2795 (interactive)
2381 (idlwave-shell-print nil ,help))) 2796 (idlwave-shell-print nil ,help)))
2382 2797
2383(defun idlwave-shell-define-key-both (key hook)
2384 "Define a key in both the shell and buffer mode maps."
2385 (define-key idlwave-mode-map key hook)
2386 (define-key idlwave-shell-mode-map key hook))
2387
2388(defvar idlwave-shell-examine-label nil 2798(defvar idlwave-shell-examine-label nil
2389 "Label to include with examine text if separate.") 2799 "Label to include with examine text if in a separate buffer.")
2800(defvar idlwave-shell-examine-completion-list nil)
2390 2801
2391(defun idlwave-shell-print (arg &optional help ev) 2802(defun idlwave-shell-print (arg &optional help ev complete-help-type)
2392 "Print current expression. 2803 "Print current expression.
2393 2804
2394With HELP non-nil, show help on expression. If HELP is a string, 2805With HELP non-nil, show help on expression. If HELP is a string,
2395the expression will be put in place of ___, e.g.: 2806the expression will be put in place of ___, e.g.:
2396 2807
2397 print,size(___,/DIMENSIONS) 2808 print,size(___,/DIMENSIONS)
2398 2809
2810HELP can also be a cons cell ( NAME . STRING ) in which case NAME will
2811be used to label the help print-out.
2812
2399Otherwise, print is called on the expression. 2813Otherwise, print is called on the expression.
2400 2814
2401An expression is an identifier plus 1 pair of matched parentheses 2815An expression is an identifier plus 1 pair of matched parentheses
@@ -2406,30 +2820,33 @@ identifier. If point is at the beginning or within an expression
2406return the inner-most containing expression, otherwise, return the 2820return the inner-most containing expression, otherwise, return the
2407preceding expression. 2821preceding expression.
2408 2822
2409With prefix arg ARG prompt for an expression. 2823With prefix arg, or if transient mode set and the region is defined,
2824use the current region as the expression.
2410 2825
2411With double prefix arg, use the current region. 2826With double prefix arg ARG prompt for an expression.
2412 2827
2413If EV is a valid event passed, pop-up a list from 2828If EV is a valid event passed, pop-up a list from
2414idlw-shell-examine-alist from which to select the help command text." 2829idlw-shell-examine-alist from which to select the help command text.
2830If instead COMPLETE-HELP-TYPE is non-nil, choose from
2831idlw-shell-examine-alist via mini-buffer shortcut key."
2415 (interactive "P") 2832 (interactive "P")
2416 (save-excursion 2833 (save-excursion
2417 (let* ((process (get-buffer-process (current-buffer))) 2834 (let* ((process (get-buffer-process (current-buffer)))
2418 (process-mark (if process (process-mark process))) 2835 (process-mark (if process (process-mark process)))
2419 (stack-label 2836 (stack-label
2420 (if (and (integerp idlwave-shell-calling-stack-index) 2837 (if (and (integerp idlwave-shell-calling-stack-index)
2421 (> idlwave-shell-calling-stack-index 0)) 2838 (> idlwave-shell-calling-stack-index 0))
2422 (format " [-%d:%s]" 2839 (format " [-%d:%s]"
2423 idlwave-shell-calling-stack-index 2840 idlwave-shell-calling-stack-index
2424 idlwave-shell-calling-stack-routine))) 2841 idlwave-shell-calling-stack-routine)))
2425 expr beg end cmd examine-hook) 2842 expr beg end cmd examine-hook)
2426 (cond 2843 (cond
2427 ((and (equal arg '(16)) 2844 ((equal arg '(16))
2845 (setq expr (read-string "Expression: ")))
2846 ((and (or arg (idlwave-region-active-p))
2428 (< (- (region-end) (region-beginning)) 2000)) 2847 (< (- (region-end) (region-beginning)) 2000))
2429 (setq beg (region-beginning) 2848 (setq beg (region-beginning)
2430 end (region-end))) 2849 end (region-end)))
2431 (arg
2432 (setq expr (read-string "Expression: ")))
2433 (t 2850 (t
2434 (idlwave-with-special-syntax 2851 (idlwave-with-special-syntax
2435 ;; Move to beginning of current or previous expression 2852 ;; Move to beginning of current or previous expression
@@ -2450,7 +2867,7 @@ idlw-shell-examine-alist from which to select the help command text."
2450 ;; an array 2867 ;; an array
2451 (forward-sexp)) 2868 (forward-sexp))
2452 (setq end (point))))) 2869 (setq end (point)))))
2453 2870
2454 ;; Get expression, but first move the begin mark if a 2871 ;; Get expression, but first move the begin mark if a
2455 ;; process-mark is inside the region, to keep the overlay from 2872 ;; process-mark is inside the region, to keep the overlay from
2456 ;; wandering in the Shell. 2873 ;; wandering in the Shell.
@@ -2461,17 +2878,17 @@ idlw-shell-examine-alist from which to select the help command text."
2461 2878
2462 ;; Show the overlay(s) and attach any necessary hooks and filters 2879 ;; Show the overlay(s) and attach any necessary hooks and filters
2463 (when (and beg end idlwave-shell-expression-overlay) 2880 (when (and beg end idlwave-shell-expression-overlay)
2464 (move-overlay idlwave-shell-expression-overlay beg end 2881 (move-overlay idlwave-shell-expression-overlay beg end
2465 (current-buffer)) 2882 (current-buffer))
2466 (add-hook 'pre-command-hook 2883 (add-hook 'pre-command-hook
2467 'idlwave-shell-delete-expression-overlay)) 2884 'idlwave-shell-delete-expression-overlay))
2468 (setq examine-hook 2885 (setq examine-hook
2469 (if idlwave-shell-separate-examine-output 2886 (if idlwave-shell-separate-examine-output
2470 'idlwave-shell-examine-display 2887 'idlwave-shell-examine-display
2471 'idlwave-shell-examine-highlight)) 2888 'idlwave-shell-examine-highlight))
2472 (add-hook 'pre-command-hook 2889 (add-hook 'pre-command-hook
2473 'idlwave-shell-delete-output-overlay) 2890 'idlwave-shell-delete-output-overlay)
2474 2891
2475 ;; Remove empty or comment-only lines 2892 ;; Remove empty or comment-only lines
2476 (while (string-match "\n[ \t]*\\(;.*\\)?\r*\n" expr) 2893 (while (string-match "\n[ \t]*\\(;.*\\)?\r*\n" expr)
2477 (setq expr (replace-match "\n" t t expr))) 2894 (setq expr (replace-match "\n" t t expr)))
@@ -2481,49 +2898,61 @@ idlw-shell-examine-alist from which to select the help command text."
2481 ;; Remove final newline 2898 ;; Remove final newline
2482 (if (string-match "\n[ \t\r]*\\'" expr) 2899 (if (string-match "\n[ \t\r]*\\'" expr)
2483 (setq expr (replace-match "" t t expr))) 2900 (setq expr (replace-match "" t t expr)))
2484 ;; Pop-up the examine selection list, if appropriate 2901
2485 (if (and ev idlwave-shell-examine-alist) 2902 (catch 'exit
2486 (let* ((help-cons 2903 ;; Pop-up or complete on the examine selection list, if appropriate
2487 (assoc 2904 (if (or
2488 (idlwave-popup-select 2905 complete-help-type
2489 ev (mapcar 'car idlwave-shell-examine-alist) 2906 (and ev idlwave-shell-examine-alist)
2490 "Examine with") 2907 (consp help))
2491 idlwave-shell-examine-alist))) 2908 (let ((help-cons
2492 (setq help (cdr help-cons)) 2909 (if (consp help) help
2493 (if idlwave-shell-separate-examine-output 2910 (assoc
2494 (setq idlwave-shell-examine-label 2911 ;; A cons from either a pop-up or mini-buffer completion
2495 (concat 2912 (if complete-help-type
2496 (format "==>%s<==\n%s:" expr (car help-cons)) 2913 (idlwave-one-key-select 'idlwave-shell-examine-alist
2497 stack-label "\n")))) 2914 "Examine with: " 1.5)
2498 (setq idlwave-shell-examine-label 2915;; (idlwave-completing-read
2499 (concat 2916;; "Examine with: "
2500 (format "==>%s<==\n%s:" expr 2917;; idlwave-shell-examine-alist nil nil nil
2501 (cond ((null help) "print") 2918;; 'idlwave-shell-examine-completion-list
2502 ((stringp help) help) 2919;; "Print")
2503 (t (symbol-name help)))) 2920 (idlwave-popup-select
2504 stack-label "\n"))) 2921 ev
2505 2922 (mapcar 'car idlwave-shell-examine-alist)
2506 ;; Send the command 2923 "Examine with"))
2507 (if stack-label 2924 idlwave-shell-examine-alist))))
2508 (setq cmd (idlwave-retrieve-expression-from-level 2925 (setq help (cdr help-cons))
2509 expr 2926 (if (null help) (throw 'exit nil))
2510 idlwave-shell-calling-stack-index 2927 (if idlwave-shell-separate-examine-output
2511 idlwave-shell-calling-stack-routine 2928 (setq idlwave-shell-examine-label
2512 help)) 2929 (concat
2513 (setq cmd (idlwave-shell-help-statement help expr))) 2930 (format "==>%s<==\n%s:" expr (car help-cons))
2514 ;(idlwave-shell-recenter-shell-window) 2931 stack-label "\n"))))
2515 (idlwave-shell-send-command 2932 ;; The regular help label (no popups, cons cells, etc.)
2516 cmd 2933 (setq idlwave-shell-examine-label
2517 examine-hook 2934 (concat
2518 (if idlwave-shell-separate-examine-output 'hide))))) 2935 (format "==>%s<==\n%s:" expr
2936 (cond ((null help) "print")
2937 ((stringp help) help)
2938 (t (symbol-name help))))
2939 stack-label "\n")))
2940
2941 ;; Send the command
2942 (if stack-label
2943 (setq expr (idlwave-retrieve-expression-from-level
2944 expr
2945 idlwave-shell-calling-stack-index)))
2946 (setq cmd (idlwave-shell-help-statement help expr))
2947 ;;(idlwave-shell-recenter-shell-window)
2948 (idlwave-shell-send-command
2949 cmd
2950 examine-hook
2951 (if idlwave-shell-separate-examine-output 'hide))))))
2519 2952
2520(defvar idlwave-shell-examine-window-alist nil 2953(defvar idlwave-shell-examine-window-alist nil
2521 "Variable to hold the win/height pairs for all *Examine* windows.") 2954 "Variable to hold the win/height pairs for all *Examine* windows.")
2522 2955
2523(defvar idlwave-shell-examine-map (make-sparse-keymap))
2524(define-key idlwave-shell-examine-map "q" 'idlwave-shell-examine-display-quit)
2525(define-key idlwave-shell-examine-map "c" 'idlwave-shell-examine-display-clear)
2526
2527(defun idlwave-shell-examine-display () 2956(defun idlwave-shell-examine-display ()
2528 "View the examine command output in a separate buffer." 2957 "View the examine command output in a separate buffer."
2529 (let (win cur-beg cur-end) 2958 (let (win cur-beg cur-end)
@@ -2541,9 +2970,9 @@ idlw-shell-examine-alist from which to select the help command text."
2541 (let* ((end (or 2970 (let* ((end (or
2542 (re-search-backward idlwave-shell-prompt-pattern nil t) 2971 (re-search-backward idlwave-shell-prompt-pattern nil t)
2543 (point-max))) 2972 (point-max)))
2544 (beg (progn 2973 (beg (progn
2545 (goto-char 2974 (goto-char
2546 (or (progn (if (re-search-backward 2975 (or (progn (if (re-search-backward
2547 idlwave-shell-prompt-pattern nil t) 2976 idlwave-shell-prompt-pattern nil t)
2548 (match-end 0))) 2977 (match-end 0)))
2549 (point-min))) 2978 (point-min)))
@@ -2560,21 +2989,21 @@ idlw-shell-examine-alist from which to select the help command text."
2560 (setq buffer-read-only t) 2989 (setq buffer-read-only t)
2561 (move-overlay idlwave-shell-output-overlay cur-beg cur-end 2990 (move-overlay idlwave-shell-output-overlay cur-beg cur-end
2562 (current-buffer)) 2991 (current-buffer))
2563 2992
2564 ;; Look for the examine buffer in all windows. If one is 2993 ;; Look for the examine buffer in all windows. If one is
2565 ;; found in a frame all by itself, use that, otherwise, switch 2994 ;; found in a frame all by itself, use that, otherwise, switch
2566 ;; to or create an examine window in this frame, and resize if 2995 ;; to or create an examine window in this frame, and resize if
2567 ;; it's a newly created window 2996 ;; it's a newly created window
2568 (let* ((winlist (get-buffer-window-list "*Examine*" nil 'visible))) 2997 (let* ((winlist (get-buffer-window-list "*Examine*" nil 'visible)))
2569 (setq win (idlwave-display-buffer 2998 (setq win (idlwave-display-buffer
2570 "*Examine*" 2999 "*Examine*"
2571 nil 3000 nil
2572 (let ((list winlist) thiswin) 3001 (let ((list winlist) thiswin)
2573 (catch 'exit 3002 (catch 'exit
2574 (save-selected-window 3003 (save-selected-window
2575 (while (setq thiswin (pop list)) 3004 (while (setq thiswin (pop list))
2576 (select-window thiswin) 3005 (select-window thiswin)
2577 (if (one-window-p) 3006 (if (one-window-p)
2578 (throw 'exit (window-frame thiswin))))))))) 3007 (throw 'exit (window-frame thiswin)))))))))
2579 (set-window-start win (point-min)) ; Ensure the point is visible. 3008 (set-window-start win (point-min)) ; Ensure the point is visible.
2580 (save-selected-window 3009 (save-selected-window
@@ -2595,7 +3024,7 @@ idlw-shell-examine-alist from which to select the help command text."
2595 ;; And add the new value. 3024 ;; And add the new value.
2596 (if (setq elt (assoc win idlwave-shell-examine-window-alist)) 3025 (if (setq elt (assoc win idlwave-shell-examine-window-alist))
2597 (setcdr elt (window-height)) 3026 (setcdr elt (window-height))
2598 (add-to-list 'idlwave-shell-examine-window-alist 3027 (add-to-list 'idlwave-shell-examine-window-alist
2599 (cons win (window-height))))))))) 3028 (cons win (window-height)))))))))
2600 ;; Recenter for maximum output, after widened 3029 ;; Recenter for maximum output, after widened
2601 (save-selected-window 3030 (save-selected-window
@@ -2604,6 +3033,10 @@ idlw-shell-examine-alist from which to select the help command text."
2604 (skip-chars-backward "\n") 3033 (skip-chars-backward "\n")
2605 (recenter -1))))) 3034 (recenter -1)))))
2606 3035
3036(defvar idlwave-shell-examine-map (make-sparse-keymap))
3037(define-key idlwave-shell-examine-map "q" 'idlwave-shell-examine-display-quit)
3038(define-key idlwave-shell-examine-map "c" 'idlwave-shell-examine-display-clear)
3039
2607(defun idlwave-shell-examine-display-quit () 3040(defun idlwave-shell-examine-display-quit ()
2608 (interactive) 3041 (interactive)
2609 (let ((win (selected-window))) 3042 (let ((win (selected-window)))
@@ -2613,7 +3046,7 @@ idlw-shell-examine-alist from which to select the help command text."
2613 3046
2614(defun idlwave-shell-examine-display-clear () 3047(defun idlwave-shell-examine-display-clear ()
2615 (interactive) 3048 (interactive)
2616 (save-excursion 3049 (save-excursion
2617 (let ((buf (get-buffer "*Examine*"))) 3050 (let ((buf (get-buffer "*Examine*")))
2618 (when (bufferp buf) 3051 (when (bufferp buf)
2619 (set-buffer buf) 3052 (set-buffer buf)
@@ -2621,33 +3054,30 @@ idlw-shell-examine-alist from which to select the help command text."
2621 (erase-buffer) 3054 (erase-buffer)
2622 (setq buffer-read-only t))))) 3055 (setq buffer-read-only t)))))
2623 3056
2624(defun idlwave-retrieve-expression-from-level (expr level routine help) 3057(defun idlwave-retrieve-expression-from-level (expr level)
2625 "Return IDL command to print the expression EXPR from stack level LEVEL. 3058 "Return IDL command to print the expression EXPR from stack level LEVEL.
2626 3059
2627It does not seem possible to evaluate an expression on a differnt 3060It does not seem possible to evaluate an expression on a different
2628level than the current. Therefore, this function retrieves *copies* of 3061level than the current. Therefore, this function retrieves variables
2629the variables involved in the expression from the desired level in the 3062by reference from other levels, and then includes that variable in
2630calling stack. The copies are given some unlikely names on the 3063place of the chosen one.
2631*current* level, and the expression is then evaluated on the *current* 3064
2632level. 3065Since this function depends upon the undocumented IDL routine
2633 3066routine_names, there is no guarantee that this will work with future
2634Since this function depends upon the undocumented IDL routine routine_names, 3067versions of IDL."
2635there is no guarantee that this will work with future versions of IDL." 3068 (let ((fetch (- 0 level))
2636 (let ((prefix "___") ;; No real variables should starts with this.
2637 (fetch (- 0 level))
2638 (start 0) 3069 (start 0)
2639 var tvar fetch-vars pre post) 3070 var rnvar pre post)
2640 3071
2641 ;; FIXME: In the following we try to find the variables in expression 3072 ;; FIXME: In the following we try to find the variables in expression
2642 ;; This is quite empirical - I don't know in what situations this will 3073 ;; This is quite empirical - I don't know in what situations this will
2643 ;; break. We will look for identifiers and exclude cases where we 3074 ;; break. We will look for identifiers and exclude cases where we
2644 ;; know it is not a variable. To distinguish array references from 3075 ;; know it is not a variable. To distinguish array references from
2645 ;; function calls, we require that arrays use [] instead of () 3076 ;; function calls, we require that arrays use [] instead of ()
2646 3077
2647 (while (string-match 3078 (while (string-match
2648 "\\(\\`\\|[^a-zA-Z0-9$_]\\)\\([a-zA-Z][a-zA-Z0-9$_]*\\)\\([^a-zA-Z0-9$_]\\|\\'\\)" expr start) 3079 "\\(\\`\\|[^a-zA-Z0-9$_][ \t]*\\)\\([a-zA-Z][a-zA-Z0-9$_]*\\)\\([ \t]*[^a-zA-Z0-9$_]\\|\\'\\)" expr start)
2649 (setq var (match-string 2 expr) 3080 (setq var (match-string 2 expr)
2650 tvar (concat prefix var)
2651 start (match-beginning 2) 3081 start (match-beginning 2)
2652 pre (substring expr 0 (match-beginning 2)) 3082 pre (substring expr 0 (match-beginning 2))
2653 post (substring expr (match-end 2))) 3083 post (substring expr (match-end 2)))
@@ -2659,22 +3089,16 @@ there is no guarantee that this will work with future versions of IDL."
2659 ((string-match "\\`(" post)) ;; a function 3089 ((string-match "\\`(" post)) ;; a function
2660 ((string-match "->[ \t]*\\'" pre)) ;; a method 3090 ((string-match "->[ \t]*\\'" pre)) ;; a method
2661 ((string-match "\\.\\'" pre)) ;; structure member 3091 ((string-match "\\.\\'" pre)) ;; structure member
2662 (t ;; seems to be a variable - arrange to get it and replace 3092 ((and (string-match "\\([\"\']\\)[^\1]*$" pre)
2663 ;; its name in the expression with the temproary name. 3093 (string-match (concat "^[^" (match-string 1 pre) "]*"
2664 (push (cons var tvar) fetch-vars) 3094 (match-string 1 pre)) post)))
2665 (setq expr (concat pre tvar post)))) 3095 (t ;; seems to be a variable - replace its name in the
2666 (if (= start 0) (setq start 1))) 3096 ;; expression with the fetch.
2667 ;; Make a command line that first copies the relevant variables 3097 (setq rnvar (format "(routine_names('%s',fetch=%d))" var fetch)
2668 ;; and then prints the expression. 3098 expr (concat pre rnvar post)
2669 (concat 3099 start (+ start (length rnvar))))))
2670 (mapconcat 3100 expr))
2671 (lambda (x) 3101
2672 (format "%s = routine_names('%s',fetch=%d)" (cdr x) (car x) fetch))
2673 (nreverse fetch-vars)
2674 " & ")
2675 "\n"
2676 (idlwave-shell-help-statement help expr)
2677 (format " ; [-%d:%s]" level routine))))
2678 3102
2679(defun idlwave-shell-help-statement (help expr) 3103(defun idlwave-shell-help-statement (help expr)
2680 "Construct a help statement for printing expression EXPR. 3104 "Construct a help statement for printing expression EXPR.
@@ -2684,13 +3108,13 @@ to insert expression in place of the marker ___, e.g.: print,
2684size(___,/DIMENSIONS)" 3108size(___,/DIMENSIONS)"
2685 (cond 3109 (cond
2686 ((null help) (concat "print, " expr)) 3110 ((null help) (concat "print, " expr))
2687 ((stringp help) 3111 ((stringp help)
2688 (if (string-match "\\(^\\|[^_]\\)\\(___\\)\\([^_]\\|$\\)" help) 3112 (if (string-match "\\(^\\|[^_]\\)\\(___\\)\\([^_]\\|$\\)" help)
2689 (concat (substring help 0 (match-beginning 2)) 3113 (concat (substring help 0 (match-beginning 2))
2690 expr 3114 expr
2691 (substring help (match-end 2))))) 3115 (substring help (match-end 2)))))
2692 (t (concat "help, " expr)))) 3116 (t (concat "help, " expr))))
2693 3117
2694 3118
2695(defun idlwave-shell-examine-highlight () 3119(defun idlwave-shell-examine-highlight ()
2696 "Highlight the most recent IDL output." 3120 "Highlight the most recent IDL output."
@@ -2698,7 +3122,7 @@ size(___,/DIMENSIONS)"
2698 (process (get-buffer-process buffer)) 3122 (process (get-buffer-process buffer))
2699 (process-mark (if process (process-mark process))) 3123 (process-mark (if process (process-mark process)))
2700 output-begin output-end) 3124 output-begin output-end)
2701 (save-excursion 3125 (save-excursion
2702 (set-buffer buffer) 3126 (set-buffer buffer)
2703 (goto-char process-mark) 3127 (goto-char process-mark)
2704 (beginning-of-line) 3128 (beginning-of-line)
@@ -2706,26 +3130,26 @@ size(___,/DIMENSIONS)"
2706 (re-search-backward idlwave-shell-prompt-pattern nil t) 3130 (re-search-backward idlwave-shell-prompt-pattern nil t)
2707 (beginning-of-line 2) 3131 (beginning-of-line 2)
2708 (setq output-begin (point))) 3132 (setq output-begin (point)))
2709 3133
2710 ;; First make sure the shell window is visible 3134 ;; First make sure the shell window is visible
2711 (idlwave-display-buffer (idlwave-shell-buffer) 3135 (idlwave-display-buffer (idlwave-shell-buffer)
2712 nil (idlwave-shell-shell-frame)) 3136 nil (idlwave-shell-shell-frame))
2713 (if (and idlwave-shell-output-overlay process-mark) 3137 (if (and idlwave-shell-output-overlay process-mark)
2714 (move-overlay idlwave-shell-output-overlay 3138 (move-overlay idlwave-shell-output-overlay
2715 output-begin output-end buffer)))) 3139 output-begin output-end buffer))))
2716 3140
2717(defun idlwave-shell-delete-output-overlay () 3141(defun idlwave-shell-delete-output-overlay ()
2718 (if (eq this-command 'idlwave-shell-mouse-nop) 3142 (unless (or (eq this-command 'idlwave-shell-mouse-nop)
2719 nil 3143 (eq this-command 'handle-switch-frame))
2720 (condition-case nil 3144 (condition-case nil
2721 (if idlwave-shell-output-overlay 3145 (if idlwave-shell-output-overlay
2722 (delete-overlay idlwave-shell-output-overlay)) 3146 (delete-overlay idlwave-shell-output-overlay))
2723 (error nil)) 3147 (error nil))
2724 (remove-hook 'pre-command-hook 'idlwave-shell-delete-output-overlay))) 3148 (remove-hook 'pre-command-hook 'idlwave-shell-delete-output-overlay)))
2725 3149
2726(defun idlwave-shell-delete-expression-overlay () 3150(defun idlwave-shell-delete-expression-overlay ()
2727 (if (eq this-command 'idlwave-shell-mouse-nop) 3151 (unless (or (eq this-command 'idlwave-shell-mouse-nop)
2728 nil 3152 (eq this-command 'handle-switch-frame))
2729 (condition-case nil 3153 (condition-case nil
2730 (if idlwave-shell-expression-overlay 3154 (if idlwave-shell-expression-overlay
2731 (delete-overlay idlwave-shell-expression-overlay)) 3155 (delete-overlay idlwave-shell-expression-overlay))
@@ -2736,7 +3160,7 @@ size(___,/DIMENSIONS)"
2736 "Alist of breakpoints. 3160 "Alist of breakpoints.
2737A breakpoint is a cons cell \(\(file line\) . \(\(index module\) data\)\) 3161A breakpoint is a cons cell \(\(file line\) . \(\(index module\) data\)\)
2738 3162
2739The car is the frame for the breakpoint: 3163The car is the `frame' for the breakpoint:
2740file - full path file name. 3164file - full path file name.
2741line - line number of breakpoint - integer. 3165line - line number of breakpoint - integer.
2742 3166
@@ -2746,13 +3170,18 @@ module - the module for breakpoint internal to IDL.
2746 3170
2747Remaining elements of the cdr: 3171Remaining elements of the cdr:
2748data - Data associated with the breakpoint by idlwave-shell currently 3172data - Data associated with the breakpoint by idlwave-shell currently
2749contains two items: 3173contains four items:
2750 3174
2751count - number of times to execute breakpoint. When count reaches 0 3175count - number of times to execute breakpoint. When count reaches 0
2752the breakpoint is cleared and removed from the alist. 3176 the breakpoint is cleared and removed from the alist.
2753command - command to execute when breakpoint is reached, either a 3177
2754lisp function to be called with `funcall' with no arguments or a 3178command - command to execute when breakpoint is reached, either a
2755list to be evaluated with `eval'.") 3179 lisp function to be called with `funcall' with no arguments or a
3180 list to be evaluated with `eval'.
3181
3182condition - any condition to apply to the breakpoint.
3183
3184disabled - whether the bp is disabled")
2756 3185
2757(defun idlwave-shell-run-region (beg end &optional n) 3186(defun idlwave-shell-run-region (beg end &optional n)
2758 "Compile and run the region using the IDL process. 3187 "Compile and run the region using the IDL process.
@@ -2779,9 +3208,11 @@ If there is a prefix argument, display IDL process."
2779 (insert "\nend\n")) 3208 (insert "\nend\n"))
2780 (save-buffer 0))) 3209 (save-buffer 0)))
2781 (idlwave-shell-send-command (concat ".run " idlwave-shell-temp-pro-file) 3210 (idlwave-shell-send-command (concat ".run " idlwave-shell-temp-pro-file)
2782 nil (idlwave-shell-hide-p 'run)) 3211 nil
3212 (if (idlwave-shell-hide-p 'run) 'mostly)
3213 nil t)
2783 (if n 3214 (if n
2784 (idlwave-display-buffer (idlwave-shell-buffer) 3215 (idlwave-display-buffer (idlwave-shell-buffer)
2785 nil (idlwave-shell-shell-frame)))) 3216 nil (idlwave-shell-shell-frame))))
2786 3217
2787(defun idlwave-shell-evaluate-region (beg end &optional n) 3218(defun idlwave-shell-evaluate-region (beg end &optional n)
@@ -2792,7 +3223,7 @@ Does not work for a region with multiline blocks - use
2792 (interactive "r\nP") 3223 (interactive "r\nP")
2793 (idlwave-shell-send-command (buffer-substring beg end)) 3224 (idlwave-shell-send-command (buffer-substring beg end))
2794 (if n 3225 (if n
2795 (idlwave-display-buffer (idlwave-shell-buffer) 3226 (idlwave-display-buffer (idlwave-shell-buffer)
2796 nil (idlwave-shell-shell-frame)))) 3227 nil (idlwave-shell-shell-frame))))
2797 3228
2798(defun idlwave-shell-delete-temp-files () 3229(defun idlwave-shell-delete-temp-files ()
@@ -2816,41 +3247,43 @@ Does not work for a region with multiline blocks - use
2816 (display-buffer buf not-this-window-p frame) 3247 (display-buffer buf not-this-window-p frame)
2817 ;; For Emacs, we need to force the frame ourselves. 3248 ;; For Emacs, we need to force the frame ourselves.
2818 (let ((this-frame (selected-frame))) 3249 (let ((this-frame (selected-frame)))
2819 (if (frame-live-p frame) 3250 (save-excursion ;; make sure we end up in the same buffer
2820 (select-frame frame)) 3251 (if (frame-live-p frame)
2821 (if (eq this-frame (selected-frame)) 3252 (select-frame frame))
2822 ;; same frame: use display buffer, to make sure the current 3253 (if (eq this-frame (selected-frame))
2823 ;; window stays. 3254 ;; same frame: use display buffer, to make sure the current
2824 (display-buffer buf) 3255 ;; window stays.
2825 ;; different frame 3256 (display-buffer buf)
2826 (if (one-window-p) 3257 ;; different frame
2827 ;; only window: switch 3258 (if (one-window-p)
2828 (progn 3259 ;; only window: switch
2829 (switch-to-buffer buf) 3260 (progn
2830 (selected-window)) ; must return the window. 3261 (switch-to-buffer buf)
2831 ;; several windows - use display-buffer 3262 (selected-window)) ; must return the window.
2832 (display-buffer buf not-this-window-p)))))) 3263 ;; several windows - use display-buffer
3264 (display-buffer buf not-this-window-p)))))))
2833; (if (not (frame-live-p frame)) (setq frame nil)) 3265; (if (not (frame-live-p frame)) (setq frame nil))
2834; (display-buffer buf not-this-window-p frame)) 3266; (display-buffer buf not-this-window-p frame))
2835 3267
2836(defvar idlwave-shell-bp-buffer " *idlwave-shell-bp*" 3268(defvar idlwave-shell-bp-buffer " *idlwave-shell-bp*"
2837 "Scratch buffer for parsing IDL breakpoint lists and other stuff.") 3269 "Scratch buffer for parsing IDL breakpoint lists and other stuff.")
2838 3270
2839(defun idlwave-shell-bp-query () 3271(defun idlwave-shell-bp-query (&optional no-show)
2840 "Reconcile idlwave-shell's breakpoint list with IDL's. 3272 "Reconcile idlwave-shell's breakpoint list with IDL's.
2841Queries IDL using the string in `idlwave-shell-bp-query'." 3273Queries IDL using the string in `idlwave-shell-bp-query'."
2842 (interactive) 3274 (interactive)
2843 (idlwave-shell-send-command idlwave-shell-bp-query 3275 (idlwave-shell-send-command idlwave-shell-bp-query
2844 'idlwave-shell-filter-bp 3276 `(progn
3277 (idlwave-shell-filter-bp (quote ,no-show)))
2845 'hide)) 3278 'hide))
2846 3279
2847(defun idlwave-shell-bp-get (bp &optional item) 3280(defun idlwave-shell-bp-get (bp &optional item)
2848 "Get a value for a breakpoint. 3281 "Get a value for a breakpoint.
2849BP has the form of elements in idlwave-shell-bp-alist. 3282BP has the form of elements in idlwave-shell-bp-alist. Optional
2850Optional second arg ITEM is the particular value to retrieve. 3283second arg ITEM is the particular value to retrieve. ITEM can be
2851ITEM can be 'file, 'line, 'index, 'module, 'count, 'cmd, or 'data. 3284'file, 'line, 'index, 'module, 'count, 'cmd, 'condition, 'disabled or
2852'data returns a list of 'count and 'cmd. 3285'data. 'data returns a list of 'count, 'cmd and 'condition. Defaults
2853Defaults to 'index." 3286to 'index."
2854 (cond 3287 (cond
2855 ;; Frame 3288 ;; Frame
2856 ((eq item 'line) (nth 1 (car bp))) 3289 ((eq item 'line) (nth 1 (car bp)))
@@ -2860,15 +3293,17 @@ Defaults to 'index."
2860 ((eq item 'count) (nth 0 (cdr (cdr bp)))) 3293 ((eq item 'count) (nth 0 (cdr (cdr bp))))
2861 ((eq item 'cmd) (nth 1 (cdr (cdr bp)))) 3294 ((eq item 'cmd) (nth 1 (cdr (cdr bp))))
2862 ((eq item 'condition) (nth 2 (cdr (cdr bp)))) 3295 ((eq item 'condition) (nth 2 (cdr (cdr bp))))
3296 ((eq item 'disabled) (nth 3 (cdr (cdr bp))))
2863 ;; IDL breakpoint info 3297 ;; IDL breakpoint info
2864 ((eq item 'module) (nth 1 (car (cdr bp)))) 3298 ((eq item 'module) (nth 1 (car (cdr bp))))
2865 ;; index - default 3299 ;; index - default
2866 (t (nth 0 (car (cdr bp)))))) 3300 (t (nth 0 (car (cdr bp))))))
2867 3301
2868(defun idlwave-shell-filter-bp () 3302(defun idlwave-shell-filter-bp (&optional no-show)
2869 "Get the breakpoints from `idlwave-shell-command-output'. 3303 "Get the breakpoints from `idlwave-shell-command-output'. Create
2870Create `idlwave-shell-bp-alist' updating breakpoint count and command data 3304`idlwave-shell-bp-alist' updating breakpoint count and command data
2871from previous breakpoint list." 3305from previous breakpoint list. If NO-SHOW is set, don't update the
3306breakpoint overlays."
2872 (save-excursion 3307 (save-excursion
2873 (set-buffer (get-buffer-create idlwave-shell-bp-buffer)) 3308 (set-buffer (get-buffer-create idlwave-shell-bp-buffer))
2874 (erase-buffer) 3309 (erase-buffer)
@@ -2878,54 +3313,71 @@ from previous breakpoint list."
2878 ;; Searching the breakpoints 3313 ;; Searching the breakpoints
2879 ;; In IDL 5.5, the breakpoint reporting format changed. 3314 ;; In IDL 5.5, the breakpoint reporting format changed.
2880 (bp-re54 "^[ \t]*\\([0-9]+\\)[ \t]+\\(\\S-+\\)?[ \t]+\\([0-9]+\\)[ \t]+\\(\\S-+\\)") 3315 (bp-re54 "^[ \t]*\\([0-9]+\\)[ \t]+\\(\\S-+\\)?[ \t]+\\([0-9]+\\)[ \t]+\\(\\S-+\\)")
2881 (bp-re55 "^\\s-*\\([0-9]+\\)\\s-+\\([0-9]+\\)\\s-+\\(Uncompiled\\|Func=\\|Pro=\\)\\([a-zA-Z][a-zA-Z0-9$_:]*\\)\\(,[^\n]*\n\\)?\\s-+\\(\\S-+\\)") 3316 (bp-re55
3317 (concat
3318 "^\\s-*\\([0-9]+\\)" ; 1 index
3319 "\\s-+\\([0-9]+\\)" ; 2 line number
3320 "\\s-+\\(Uncompiled\\|" ; 3-6 either uncompiled or routine name
3321 "\\(\\(Func=\\|Pro=\\)\\(\\$?[a-zA-Z][a-zA-Z0-9$_:]*\\$?\\)\\)\\)"
3322 "\\(\\s-*,\\s-*After=[0-9]+/\\([0-9]+\\)?\\)?" ; 7-8 After part
3323 "\\(\\s-*,\\s-*\\(BreakOnce\\)\\)?" ; 9-10 BreakOnce
3324 "\\(\\s-*,\\s-*\\(Condition='\\(.*\\)'\\)\n?\\)?" ; 11-13 Condition
3325 "\\(\\s-*,\\s-*\\(Disabled\\)\n?\\)?" ; 14-15 Disabled
3326 "\\s-+\\(\\S-+\\)")) ; 16 File name
2882 file line index module 3327 file line index module
3328 count condition disabled
2883 bp-re indmap) 3329 bp-re indmap)
2884 (setq idlwave-shell-bp-alist (list nil)) 3330 (setq idlwave-shell-bp-alist (list nil))
2885 ;; Search for either header type, and set the correct regexp 3331 ;; Search for either header type, and set the correct regexp
2886 (when (or 3332 (when (or
2887 (if (re-search-forward "^\\s-*Index.*\n\\s-*-" nil t) 3333 (if (re-search-forward "^\\s-*Index.*\n\\s-*-" nil t)
2888 (setq bp-re bp-re54 ; versions <= 5.4 3334 (setq bp-re bp-re54 ; versions <= 5.4
2889 indmap '(1 2 3 4))) 3335 indmap '(1 2 3 4))) ;index module line file
2890 (if (re-search-forward 3336 (if (re-search-forward
2891 "^\\s-*Index\\s-*Line\\s-*Attributes\\s-*File" nil t) 3337 "^\\s-*Index\\s-*Line\\s-*Attributes\\s-*File" nil t)
2892 (setq bp-re bp-re55 ; versions >= 5.5 3338 (setq bp-re bp-re55 ; versions >= 5.5
2893 indmap '(1 4 2 6)))) 3339 indmap '(1 6 2 16)))) ; index module line file
2894 ;; There seems to be a breakpoint listing here. 3340 ;; There seems to be a breakpoint listing here, parse breakpoint lines.
2895 ;; Parse breakpoint lines.
2896 ;; Breakpoints have the form
2897 ;; for IDL<=v5.4:
2898 ;; Index Module Line File
2899 ;; All separated by whitespace.
2900 ;; Module may be missing if the file is not compiled.
2901 ;; for IDL>=v5.5:
2902 ;; Index Line Attributes File
2903 ;; (attributes replaces module, "Uncompiled" included)
2904 (while (re-search-forward bp-re nil t) 3341 (while (re-search-forward bp-re nil t)
2905 (setq index (match-string (nth 0 indmap)) 3342 (setq index (string-to-int (match-string (nth 0 indmap)))
2906 module (match-string (nth 1 indmap)) 3343 module (match-string (nth 1 indmap))
2907 line (string-to-int (match-string (nth 2 indmap))) 3344 line (string-to-int (match-string (nth 2 indmap)))
2908 file (idlwave-shell-file-name (match-string (nth 3 indmap)))) 3345 file (idlwave-shell-file-name (match-string (nth 3 indmap))))
3346 (if (eq bp-re bp-re55)
3347 (setq count (if (match-string 10) 1
3348 (if (match-string 8)
3349 (string-to-int (match-string 8))))
3350 condition (match-string 13)
3351 disabled (not (null (match-string 15)))))
3352
2909 ;; Add the breakpoint info to the list 3353 ;; Add the breakpoint info to the list
2910 (nconc idlwave-shell-bp-alist 3354 (nconc idlwave-shell-bp-alist
2911 (list (cons (list file line) 3355 (list (cons (list file line)
2912 (list 3356 (list
2913 (list index module) 3357 (list index module)
2914 ;; idlwave-shell data: count, command 3358 ;; bp data: count, command, condition, disabled
2915 nil nil)))))) 3359 count nil condition disabled))))))
2916 (setq idlwave-shell-bp-alist (cdr idlwave-shell-bp-alist)) 3360 (setq idlwave-shell-bp-alist (cdr idlwave-shell-bp-alist))
2917 ;; Update count, commands of breakpoints 3361 ;; Update breakpoint data
2918 (mapcar 'idlwave-shell-update-bp old-bp-alist))) 3362 (if (eq bp-re bp-re54)
3363 (mapcar 'idlwave-shell-update-bp old-bp-alist)
3364 (mapcar 'idlwave-shell-update-bp-command-only old-bp-alist))))
2919 ;; Update the breakpoint overlays 3365 ;; Update the breakpoint overlays
2920 (idlwave-shell-update-bp-overlays) 3366 (unless no-show (idlwave-shell-update-bp-overlays))
2921 ;; Return the new list 3367 ;; Return the new list
2922 idlwave-shell-bp-alist) 3368 idlwave-shell-bp-alist)
2923 3369
2924(defun idlwave-shell-update-bp (bp) 3370(defun idlwave-shell-update-bp-command-only (bp)
3371 (idlwave-shell-update-bp bp t))
3372
3373(defun idlwave-shell-update-bp (bp &optional command-only)
2925 "Update BP data in breakpoint list. 3374 "Update BP data in breakpoint list.
2926If BP frame is in `idlwave-shell-bp-alist' updates the breakpoint data." 3375If BP frame is in `idlwave-shell-bp-alist' updates the breakpoint data."
2927 (let ((match (assoc (car bp) idlwave-shell-bp-alist))) 3376 (let ((match (assoc (car bp) idlwave-shell-bp-alist)))
2928 (if match (setcdr (cdr match) (cdr (cdr bp)))))) 3377 (if match
3378 (if command-only
3379 (setf (nth 1 (cdr (cdr match))) (nth 1 (cdr (cdr match))))
3380 (setcdr (cdr match) (cdr (cdr bp)))))))
2929 3381
2930(defun idlwave-shell-set-bp-data (bp data) 3382(defun idlwave-shell-set-bp-data (bp data)
2931 "Set the data of BP to DATA." 3383 "Set the data of BP to DATA."
@@ -2948,42 +3400,40 @@ Otherwise return the filename in bp."
2948 (let* 3400 (let*
2949 ((bp-file (idlwave-shell-bp-get bp 'file)) 3401 ((bp-file (idlwave-shell-bp-get bp 'file))
2950 (bp-module (idlwave-shell-bp-get bp 'module)) 3402 (bp-module (idlwave-shell-bp-get bp 'module))
2951 (internal-file-list (cdr (assoc bp-module idlwave-shell-sources-alist)))) 3403 (internal-file-list
3404 (cdr (assoc bp-module idlwave-shell-sources-alist))))
2952 (if (and internal-file-list 3405 (if (and internal-file-list
2953 (equal bp-file (nth 0 internal-file-list))) 3406 (equal bp-file (nth 0 internal-file-list)))
2954 (nth 1 internal-file-list) 3407 (nth 1 internal-file-list)
2955 bp-file))) 3408 bp-file)))
2956 3409
2957(defun idlwave-shell-set-bp (bp) 3410(defun idlwave-shell-set-bp (bp &optional no-show)
2958 "Try to set a breakpoint BP. 3411 "Try to set a breakpoint BP.
2959
2960The breakpoint will be placed at the beginning of the statement on the 3412The breakpoint will be placed at the beginning of the statement on the
2961line specified by BP or at the next IDL statement if that line is not 3413line specified by BP or at the next IDL statement if that line is not
2962a statement. 3414a statement. Determines IDL's internal representation for the
2963Determines IDL's internal representation for the breakpoint which may 3415breakpoint, which may have occured at a different line than
2964have occurred at a different line then used with the breakpoint 3416specified. If NO-SHOW is non-nil, don't do any updating."
2965command."
2966
2967 ;; Get and save the old breakpoints 3417 ;; Get and save the old breakpoints
2968 (idlwave-shell-send-command 3418 (idlwave-shell-send-command
2969 idlwave-shell-bp-query 3419 idlwave-shell-bp-query
2970 '(progn 3420 `(progn
2971 (idlwave-shell-filter-bp) 3421 (idlwave-shell-filter-bp (quote ,no-show))
2972 (setq idlwave-shell-old-bp idlwave-shell-bp-alist)) 3422 (setq idlwave-shell-old-bp idlwave-shell-bp-alist))
2973 'hide) 3423 'hide)
2974 ;; Get sources for IDL compiled procedures followed by setting 3424 ;; Get sources for IDL compiled procedures followed by setting
2975 ;; breakpoint. 3425 ;; breakpoint.
2976 (idlwave-shell-send-command 3426 (idlwave-shell-send-command
2977 idlwave-shell-sources-query 3427 idlwave-shell-sources-query
2978 `(progn 3428 `(progn
2979 (idlwave-shell-sources-filter) 3429 (idlwave-shell-sources-filter)
2980 (idlwave-shell-set-bp2 (quote ,bp))) 3430 (idlwave-shell-set-bp2 (quote ,bp) (quote ,no-show)))
2981 'hide)) 3431 'hide))
2982 3432
2983(defun idlwave-shell-set-bp2 (bp) 3433(defun idlwave-shell-set-bp2 (bp &optional no-show)
2984 "Use results of breakpoint and sources query to set bp. 3434 "Use results of breakpoint and sources query to set bp.
2985Use the count argument with IDLs breakpoint command. 3435Use the count argument with IDLs breakpoint command.
2986We treat a count of 1 as a temporary breakpoint. 3436We treat a count of 1 as a temporary breakpoint.
2987Counts greater than 1 use the IDL AFTER=count keyword to break 3437Counts greater than 1 use the IDL AFTER=count keyword to break
2988only after reaching the statement count times." 3438only after reaching the statement count times."
2989 (let* 3439 (let*
@@ -2995,28 +3445,30 @@ only after reaching the statement count times."
2995 ((> arg 1) 3445 ((> arg 1)
2996 (format ",after=%d" arg)))) 3446 (format ",after=%d" arg))))
2997 (condition (idlwave-shell-bp-get bp 'condition)) 3447 (condition (idlwave-shell-bp-get bp 'condition))
2998 (key (concat key 3448 (key (concat key
2999 (if condition (concat ",CONDITION=\"" condition "\"")))) 3449 (if condition (concat ",CONDITION=\"" condition "\""))))
3000 (line (idlwave-shell-bp-get bp 'line))) 3450 (line (idlwave-shell-bp-get bp 'line)))
3001 (idlwave-shell-send-command 3451 (idlwave-shell-send-command
3002 (concat "breakpoint,'" 3452 (concat "breakpoint,'"
3003 (idlwave-shell-sources-bp bp) "'," 3453 (idlwave-shell-sources-bp bp) "',"
3004 (if (integerp line) (setq line (int-to-string line))) 3454 (if (integerp line) (setq line (int-to-string line)))
3005 key) 3455 key)
3006 ;; Check for failure and look for breakpoint in IDL's list 3456 ;; Check for failure and look for breakpoint in IDL's list
3007 `(progn 3457 `(progn
3008 (if (idlwave-shell-set-bp-check (quote ,bp)) 3458 (if (idlwave-shell-set-bp-check (quote ,bp))
3009 (idlwave-shell-set-bp3 (quote ,bp)))) 3459 (idlwave-shell-set-bp3 (quote ,bp) (quote ,no-show))))
3010 ;; hide output? 3460 ;; hide output?
3011 (idlwave-shell-hide-p 'breakpoint) 3461 (idlwave-shell-hide-p 'breakpoint)
3012 'preempt))) 3462 'preempt t)))
3013 3463
3014(defun idlwave-shell-set-bp3 (bp) 3464(defun idlwave-shell-set-bp3 (bp &optional no-show)
3015 "Find the breakpoint in IDL's internal list of breakpoints." 3465 "Find the breakpoint in IDL's internal list of breakpoints."
3016 (idlwave-shell-send-command idlwave-shell-bp-query 3466 (idlwave-shell-send-command idlwave-shell-bp-query
3017 `(progn 3467 `(progn
3018 (idlwave-shell-filter-bp) 3468 (idlwave-shell-filter-bp (quote ,no-show))
3019 (idlwave-shell-new-bp (quote ,bp))) 3469 (idlwave-shell-new-bp (quote ,bp))
3470 (unless (quote ,no-show)
3471 (idlwave-shell-update-bp-overlays)))
3020 'hide 3472 'hide
3021 'preempt)) 3473 'preempt))
3022 3474
@@ -3025,6 +3477,20 @@ only after reaching the statement count times."
3025Returns nil if frame not found." 3477Returns nil if frame not found."
3026 (assoc frame idlwave-shell-bp-alist)) 3478 (assoc frame idlwave-shell-bp-alist))
3027 3479
3480(defun idlwave-shell-find-current-bp ()
3481 "Find breakpoint here, or at halt location."
3482 (let ((bp (idlwave-shell-find-bp (idlwave-shell-current-frame))))
3483 (when (not bp)
3484 ;; Try moving to beginning of halted-at statement
3485 (save-excursion
3486 (idlwave-shell-goto-frame)
3487 (idlwave-beginning-of-statement)
3488 (setq bp (idlwave-shell-find-bp (idlwave-shell-current-frame))))
3489 (unless bp
3490 (beep)
3491 (message "Cannot identify breakpoint for this line")))
3492 bp))
3493
3028(defun idlwave-shell-new-bp (bp) 3494(defun idlwave-shell-new-bp (bp)
3029 "Find the new breakpoint in IDL's list and update with DATA. 3495 "Find the new breakpoint in IDL's list and update with DATA.
3030The actual line number for a breakpoint in IDL may be different than 3496The actual line number for a breakpoint in IDL may be different than
@@ -3052,71 +3518,159 @@ considered the new breakpoint if the file name of frame matches."
3052 (message "Failed to identify breakpoint in IDL")))) 3518 (message "Failed to identify breakpoint in IDL"))))
3053 3519
3054(defvar idlwave-shell-bp-overlays nil 3520(defvar idlwave-shell-bp-overlays nil
3055 "List of overlays marking breakpoints") 3521 "Alist of overlays marking breakpoints")
3056 3522
3057(defun idlwave-shell-update-bp-overlays () 3523(defun idlwave-shell-update-bp-overlays ()
3058 "Update the overlays which mark breakpoints in the source code. 3524 "Update the overlays which mark breakpoints in the source code.
3059Existing overlays are recycled, in order to minimize consumption." 3525Existing overlays are recycled, in order to minimize consumption."
3526 ;(message "Updating Overlays")
3060 (when idlwave-shell-mark-breakpoints 3527 (when idlwave-shell-mark-breakpoints
3061 (let ((bp-list idlwave-shell-bp-alist) 3528 (let ((ov-alist (copy-alist idlwave-shell-bp-overlays))
3062 (ov-list idlwave-shell-bp-overlays) 3529 (bp-list idlwave-shell-bp-alist)
3063 ov bp) 3530 (use-glyph (and (memq idlwave-shell-mark-breakpoints '(t glyph))
3531 idlwave-shell-bp-glyph))
3532 ov ov-list bp buf old-buffers win)
3533
3064 ;; Delete the old overlays from their buffers 3534 ;; Delete the old overlays from their buffers
3065 (while (setq ov (pop ov-list)) 3535 (if ov-alist
3066 (delete-overlay ov)) 3536 (while (setq ov-list (pop ov-alist))
3067 (setq ov-list idlwave-shell-bp-overlays 3537 (while (setq ov (pop (cdr ov-list)))
3068 idlwave-shell-bp-overlays nil) 3538 (add-to-list 'old-buffers (overlay-buffer ov))
3539 (delete-overlay ov))))
3540
3541 (setq ov-alist idlwave-shell-bp-overlays
3542 idlwave-shell-bp-overlays
3543 (if idlwave-shell-bp-glyph
3544 (mapcar 'list (mapcar 'car idlwave-shell-bp-glyph))
3545 (list (list 'bp))))
3069 (while (setq bp (pop bp-list)) 3546 (while (setq bp (pop bp-list))
3070 (save-excursion 3547 (save-excursion
3071 (idlwave-shell-goto-frame (car bp)) 3548 (idlwave-shell-goto-frame (car bp))
3072 (let* ((end (progn (end-of-line 1) (point))) 3549 (let* ((end (progn (end-of-line 1) (point)))
3073 (beg (progn (beginning-of-line 1) (point))) 3550 (beg (progn (beginning-of-line 1) (point)))
3074 (ov (or (pop ov-list) 3551 (condition (idlwave-shell-bp-get bp 'condition))
3075 (idlwave-shell-make-new-bp-overlay)))) 3552 (count (idlwave-shell-bp-get bp 'count))
3553 (disabled (idlwave-shell-bp-get bp 'disabled))
3554 (type (if idlwave-shell-bp-glyph
3555 (cond
3556 (condition 'bp-cond )
3557 (count
3558 (cond
3559 ((<= count 0) 'bp)
3560 ((<= count 4)
3561 (intern
3562 (concat "bp-" (number-to-string count))))
3563 (t 'bp-n)))
3564 (t 'bp))
3565 'bp))
3566 (help-list
3567 (delq nil
3568 (list
3569 (if count
3570 (concat "n=" (int-to-string count)))
3571 (if condition
3572 (concat "condition: " condition))
3573 (if disabled "disabled"))))
3574 (help-text (if help-list
3575 (mapconcat 'identity help-list ",")))
3576 (full-type (if disabled
3577 (intern (concat (symbol-name type)
3578 "-disabled"))
3579 type))
3580 (ov-existing (assq full-type ov-alist))
3581 (ov (or (and (cdr ov-existing)
3582 (pop (cdr ov-existing)))
3583 (idlwave-shell-make-new-bp-overlay
3584 type disabled help-text)))
3585 match)
3076 (move-overlay ov beg end) 3586 (move-overlay ov beg end)
3077 (push ov idlwave-shell-bp-overlays))))))) 3587 (if (setq match (assq full-type idlwave-shell-bp-overlays))
3588 (push ov (cdr match))
3589 (nconc idlwave-shell-bp-overlays
3590 (list (list full-type ov)))))
3591 ;; Take care of margins if using a glyph
3592 (when use-glyph
3593 (if old-buffers
3594 (setq old-buffers (delq (current-buffer) old-buffers)))
3595 (if (fboundp 'set-specifier) ;; XEmacs
3596 (set-specifier left-margin-width (cons (current-buffer) 2))
3597 (setq left-margin-width 2))
3598 (if (setq win (get-buffer-window (current-buffer) t))
3599 (set-window-buffer win (current-buffer))))))
3600 (if use-glyph
3601 (while (setq buf (pop old-buffers))
3602 (with-current-buffer buf
3603 (if (fboundp 'set-specifier) ;; XEmacs
3604 (set-specifier left-margin-width (cons (current-buffer) 0))
3605 (setq left-margin-width 0))
3606 (if (setq win (get-buffer-window buf t))
3607 (set-window-buffer win buf))))))))
3608
3078 3609
3079(defvar idlwave-shell-bp-glyph) 3610(defvar idlwave-shell-bp-glyph)
3080(defun idlwave-shell-make-new-bp-overlay () 3611(defun idlwave-shell-make-new-bp-overlay (&optional type disabled help)
3081 "Make a new overlay for highlighting breakpoints. 3612 "Make a new overlay for highlighting breakpoints.
3082This stuff is stringly dependant upon the version of Emacs." 3613
3083 (let ((ov (make-overlay 1 1))) 3614This stuff is strongly dependant upon the version of Emacs. If TYPE
3615is passed, make an overlay of that type ('bp or 'bp-cond, currently
3616only for glyphs). If HELP is set, use it to make a tooltip with that
3617text popup."
3618 (let ((ov (make-overlay 1 1))
3619 (use-glyph (and (memq idlwave-shell-mark-breakpoints '(t glyph))
3620 idlwave-shell-bp-glyph))
3621 (type (or type 'bp))
3622 (face (if disabled
3623 idlwave-shell-disabled-breakpoint-face
3624 idlwave-shell-breakpoint-face)))
3084 (if (featurep 'xemacs) 3625 (if (featurep 'xemacs)
3085 ;; This is XEmacs 3626 ;; This is XEmacs
3086 (progn 3627 (progn
3087 (cond 3628 (cond
3629 ;; tty's cannot display glyphs
3088 ((eq (console-type) 'tty) 3630 ((eq (console-type) 'tty)
3089 ;; tty's cannot display glyphs 3631 (set-extent-property ov 'face face))
3090 (set-extent-property ov 'face idlwave-shell-breakpoint-face)) 3632
3091 ((and (memq idlwave-shell-mark-breakpoints '(t glyph)) 3633 ;; use the glyph
3092 idlwave-shell-bp-glyph) 3634 (use-glyph
3093 ;; use the glyph 3635 (let ((glyph (cdr (assq type idlwave-shell-bp-glyph))))
3094 (set-extent-property ov 'begin-glyph idlwave-shell-bp-glyph)) 3636 (if disabled (setq glyph (car glyph)) (setq glyph (nth 1 glyph)))
3637 (set-extent-property ov 'begin-glyph glyph)
3638 (set-extent-property ov 'begin-glyph-layout 'outside-margin)))
3639
3640 ;; use the face
3095 (idlwave-shell-mark-breakpoints 3641 (idlwave-shell-mark-breakpoints
3096 ;; use the face 3642 (set-extent-property ov 'face face))
3097 (set-extent-property ov 'face idlwave-shell-breakpoint-face)) 3643
3098 (t 3644 ;; no marking
3099 ;; no marking 3645 (t nil))
3100 nil))
3101 (set-extent-priority ov -1)) ; make stop line face prevail 3646 (set-extent-priority ov -1)) ; make stop line face prevail
3102 ;; This is Emacs 3647 ;; This is Emacs
3103 (cond 3648 (cond
3104 (window-system 3649 (window-system
3105 (if (and (memq idlwave-shell-mark-breakpoints '(t glyph)) 3650 (if use-glyph
3106 idlwave-shell-bp-glyph) ; this var knows if glyph's possible 3651 (let ((image-props (cdr (assq type idlwave-shell-bp-glyph)))
3107 ;; use a glyph 3652 string)
3108 (let ((string "@")) 3653
3109 (put-text-property 0 1 3654 (if disabled (setq image-props
3110 'display idlwave-shell-bp-glyph 3655 (append image-props
3111 string) 3656 (list :conversion 'disabled))))
3657 (setq string
3658 (propertize "@"
3659 'display
3660 (list (list 'margin 'left-margin)
3661 image-props)
3662 'mouse-face 'highlight
3663 'help-echo help))
3112 (overlay-put ov 'before-string string)) 3664 (overlay-put ov 'before-string string))
3113 (overlay-put ov 'face idlwave-shell-breakpoint-face))) 3665 ;; just the face
3666 (overlay-put ov 'face face)))
3667
3668 ;; use a face
3114 (idlwave-shell-mark-breakpoints 3669 (idlwave-shell-mark-breakpoints
3115 ;; use a face 3670 (overlay-put ov 'face face))
3116 (overlay-put ov 'face idlwave-shell-breakpoint-face)) 3671
3117 (t 3672 ;; No marking
3118 ;; No marking 3673 (t nil)))
3119 nil)))
3120 ov)) 3674 ov))
3121 3675
3122(defun idlwave-shell-edit-default-command-line (arg) 3676(defun idlwave-shell-edit-default-command-line (arg)
@@ -3127,22 +3681,27 @@ This stuff is stringly dependant upon the version of Emacs."
3127 3681
3128(defun idlwave-shell-execute-default-command-line (arg) 3682(defun idlwave-shell-execute-default-command-line (arg)
3129 "Execute a command line. On first use, ask for the command. 3683 "Execute a command line. On first use, ask for the command.
3130Also with prefix arg, ask for the command. You can also uase the command 3684Also with prefix arg, ask for the command. You can also use the command
3131`idlwave-shell-edit-default-command-line' to edit the line." 3685`idlwave-shell-edit-default-command-line' to edit the line."
3132 (interactive "P") 3686 (interactive "P")
3133 (if (or (not idlwave-shell-command-line-to-execute) 3687 (cond
3134 arg) 3688 ((equal arg '(16))
3135 (setq idlwave-shell-command-line-to-execute 3689 (setq idlwave-shell-command-line-to-execute nil))
3136 (read-string "IDL> " idlwave-shell-command-line-to-execute))) 3690 ((equal arg '(4))
3691 (setq idlwave-shell-command-line-to-execute
3692 (read-string "IDL> " idlwave-shell-command-line-to-execute))))
3137 (idlwave-shell-reset 'hidden) 3693 (idlwave-shell-reset 'hidden)
3138 (idlwave-shell-send-command idlwave-shell-command-line-to-execute 3694 (idlwave-shell-send-command
3139 '(idlwave-shell-redisplay 'hide))) 3695 (or idlwave-shell-command-line-to-execute
3696 (with-current-buffer (idlwave-shell-buffer)
3697 (ring-ref comint-input-ring 0)))
3698 '(idlwave-shell-redisplay 'hide)))
3140 3699
3141(defun idlwave-shell-save-and-run () 3700(defun idlwave-shell-save-and-run ()
3142 "Save file and run it in IDL. 3701 "Save file and run it in IDL.
3143Runs `save-buffer' and sends a '.RUN' command for the associated file to IDL. 3702Runs `save-buffer' and sends a '.RUN' command for the associated file to IDL.
3144When called from the shell buffer, re-run the file which was last handled by 3703When called from the shell buffer, re-run the file which was last handled by
3145one of the save-and-.. commands." 3704one of the save-and-.. commands."
3146 (interactive) 3705 (interactive)
3147 (idlwave-shell-save-and-action 'run)) 3706 (idlwave-shell-save-and-action 'run))
3148 3707
@@ -3158,7 +3717,7 @@ one of the save-and-.. commands."
3158 "Save file and batch it in IDL. 3717 "Save file and batch it in IDL.
3159Runs `save-buffer' and sends a '@file' command for the associated file to IDL. 3718Runs `save-buffer' and sends a '@file' command for the associated file to IDL.
3160When called from the shell buffer, re-batch the file which was last handled by 3719When called from the shell buffer, re-batch the file which was last handled by
3161one of the save-and-.. commands." 3720one of the save-and-.. commands."
3162 (interactive) 3721 (interactive)
3163 (idlwave-shell-save-and-action 'batch)) 3722 (idlwave-shell-save-and-action 'batch))
3164 3723
@@ -3170,6 +3729,8 @@ handled by this command."
3170 ;; Remove the stop overlay. 3729 ;; Remove the stop overlay.
3171 (if idlwave-shell-stop-line-overlay 3730 (if idlwave-shell-stop-line-overlay
3172 (delete-overlay idlwave-shell-stop-line-overlay)) 3731 (delete-overlay idlwave-shell-stop-line-overlay))
3732 (if idlwave-shell-is-stopped
3733 (idlwave-shell-electric-debug-all-off))
3173 (setq idlwave-shell-is-stopped nil) 3734 (setq idlwave-shell-is-stopped nil)
3174 (setq overlay-arrow-string nil) 3735 (setq overlay-arrow-string nil)
3175 (let (buf) 3736 (let (buf)
@@ -3194,9 +3755,9 @@ handled by this command."
3194 (t (error "Unknown action %s" action))) 3755 (t (error "Unknown action %s" action)))
3195 idlwave-shell-last-save-and-action-file) 3756 idlwave-shell-last-save-and-action-file)
3196 'idlwave-shell-maybe-update-routine-info 3757 'idlwave-shell-maybe-update-routine-info
3197 (idlwave-shell-hide-p 'run)) 3758 (if (idlwave-shell-hide-p 'run) 'mostly) nil t)
3198 (idlwave-shell-bp-query)) 3759 (idlwave-shell-bp-query))
3199 (let ((msg (format "No such file %s" 3760 (let ((msg (format "No such file %s"
3200 idlwave-shell-last-save-and-action-file))) 3761 idlwave-shell-last-save-and-action-file)))
3201 (setq idlwave-shell-last-save-and-action-file nil) 3762 (setq idlwave-shell-last-save-and-action-file nil)
3202 (error msg)))) 3763 (error msg))))
@@ -3208,7 +3769,7 @@ handled by this command."
3208 (memq 'compile-buffer idlwave-auto-routine-info-updates)) 3769 (memq 'compile-buffer idlwave-auto-routine-info-updates))
3209 idlwave-query-shell-for-routine-info 3770 idlwave-query-shell-for-routine-info
3210 idlwave-routines) 3771 idlwave-routines)
3211 (idlwave-shell-update-routine-info t nil 'wait))) 3772 (idlwave-shell-update-routine-info t nil wait)))
3212 3773
3213(defvar idlwave-shell-sources-query "help,/source,/full" 3774(defvar idlwave-shell-sources-query "help,/source,/full"
3214 "IDL command to obtain source files for compiled procedures.") 3775 "IDL command to obtain source files for compiled procedures.")
@@ -3222,14 +3783,14 @@ Elements of the alist have the form:
3222(defun idlwave-shell-sources-query () 3783(defun idlwave-shell-sources-query ()
3223 "Determine source files for IDL compiled procedures. 3784 "Determine source files for IDL compiled procedures.
3224Queries IDL using the string in `idlwave-shell-sources-query'." 3785Queries IDL using the string in `idlwave-shell-sources-query'."
3225 (interactive) 3786' (interactive)
3226 (idlwave-shell-send-command idlwave-shell-sources-query 3787 (idlwave-shell-send-command idlwave-shell-sources-query
3227 'idlwave-shell-sources-filter 3788 'idlwave-shell-sources-filter
3228 'hide)) 3789 'hide))
3229 3790
3230(defun idlwave-shell-sources-filter () 3791(defun idlwave-shell-sources-filter ()
3231 "Get source files from `idlwave-shell-sources-query' output. 3792 "Get source files from `idlwave-shell-sources-query' output.
3232Create `idlwave-shell-sources-alist' consisting of 3793Create `idlwave-shell-sources-alist' consisting of
3233list elements of the form: 3794list elements of the form:
3234 (module name . (source-file-truename idlwave-internal-filename))." 3795 (module name . (source-file-truename idlwave-internal-filename))."
3235 (save-excursion 3796 (save-excursion
@@ -3306,14 +3867,16 @@ list elements of the form:
3306 (save-excursion 3867 (save-excursion
3307 (set-buffer idlwave-shell-error-buffer) 3868 (set-buffer idlwave-shell-error-buffer)
3308 (goto-char idlwave-shell-error-last) 3869 (goto-char idlwave-shell-error-last)
3309 (if (or (re-search-forward idlwave-shell-syntax-error nil t) 3870 (if (or
3310 (re-search-forward idlwave-shell-other-error nil t)) 3871 (re-search-forward idlwave-shell-syntax-error nil t)
3872 (re-search-forward idlwave-shell-other-error nil t))
3311 (progn 3873 (progn
3312 (setq frame 3874 (setq frame
3313 (list 3875 (list
3314 (save-match-data 3876 (save-match-data
3315 (idlwave-shell-file-name 3877 (idlwave-shell-file-name
3316 (buffer-substring (match-beginning 1) (match-end 1)))) 3878 (buffer-substring (match-beginning 1 )
3879 (match-end 1))))
3317 (string-to-int 3880 (string-to-int
3318 (buffer-substring (match-beginning 2) 3881 (buffer-substring (match-beginning 2)
3319 (match-end 2))))) 3882 (match-end 2)))))
@@ -3326,7 +3889,7 @@ list elements of the form:
3326 (setq idlwave-shell-error-last (point))) 3889 (setq idlwave-shell-error-last (point)))
3327 (if frame 3890 (if frame
3328 (progn 3891 (progn
3329 (idlwave-shell-display-line frame col)) 3892 (idlwave-shell-display-line frame col 'no-debug))
3330 (beep) 3893 (beep)
3331 (message "No more errors.")))) 3894 (message "No more errors."))))
3332 3895
@@ -3340,12 +3903,20 @@ Otherwise, just expand the file name."
3340 (file-truename name def-dir) 3903 (file-truename name def-dir)
3341 (expand-file-name name def-dir)))) 3904 (expand-file-name name def-dir))))
3342 3905
3343;; Keybindings -------------------------------------------------------------- 3906;; Keybindings ------------------------------------------------------------
3344 3907
3345(defvar idlwave-shell-mode-map (copy-keymap comint-mode-map) 3908(defvar idlwave-shell-mode-map (copy-keymap comint-mode-map)
3346 "Keymap for idlwave-mode.") 3909 "Keymap for idlwave-mode.")
3910(defvar idlwave-shell-electric-debug-mode-map (make-sparse-keymap))
3347(defvar idlwave-shell-mode-prefix-map (make-sparse-keymap)) 3911(defvar idlwave-shell-mode-prefix-map (make-sparse-keymap))
3348(fset 'idlwave-shell-mode-prefix-map idlwave-shell-mode-prefix-map) 3912(fset 'idlwave-shell-mode-prefix-map idlwave-shell-mode-prefix-map)
3913(defvar idlwave-mode-prefix-map (make-sparse-keymap))
3914(fset 'idlwave-mode-prefix-map idlwave-mode-prefix-map)
3915
3916(defun idlwave-shell-define-key-both (key hook)
3917 "Define a key in both the shell and buffer mode maps."
3918 (define-key idlwave-mode-map key hook)
3919 (define-key idlwave-shell-mode-map key hook))
3349 3920
3350;(define-key idlwave-shell-mode-map "\M-?" 'comint-dynamic-list-completions) 3921;(define-key idlwave-shell-mode-map "\M-?" 'comint-dynamic-list-completions)
3351;(define-key idlwave-shell-mode-map "\t" 'comint-dynamic-complete) 3922;(define-key idlwave-shell-mode-map "\t" 'comint-dynamic-complete)
@@ -3371,13 +3942,13 @@ Otherwise, just expand the file name."
3371 3942
3372;; The mouse bindings for PRINT and HELP 3943;; The mouse bindings for PRINT and HELP
3373(idlwave-shell-define-key-both 3944(idlwave-shell-define-key-both
3374 (if (featurep 'xemacs) 3945 (if (featurep 'xemacs)
3375 [(shift button2)] 3946 [(shift button2)]
3376 [(shift down-mouse-2)]) 3947 [(shift down-mouse-2)])
3377 'idlwave-shell-mouse-print) 3948 'idlwave-shell-mouse-print)
3378(idlwave-shell-define-key-both 3949(idlwave-shell-define-key-both
3379 (if (featurep 'xemacs) 3950 (if (featurep 'xemacs)
3380 [(control meta button2)] 3951 [(control meta button2)]
3381 [(control meta down-mouse-2)]) 3952 [(control meta down-mouse-2)])
3382 'idlwave-shell-mouse-help) 3953 'idlwave-shell-mouse-help)
3383(idlwave-shell-define-key-both 3954(idlwave-shell-define-key-both
@@ -3386,14 +3957,14 @@ Otherwise, just expand the file name."
3386 [(control shift down-mouse-2)]) 3957 [(control shift down-mouse-2)])
3387 'idlwave-shell-examine-select) 3958 'idlwave-shell-examine-select)
3388;; Add this one from the idlwave-mode-map 3959;; Add this one from the idlwave-mode-map
3389(define-key idlwave-shell-mode-map 3960(define-key idlwave-shell-mode-map
3390 (if (featurep 'xemacs) 3961 (if (featurep 'xemacs)
3391 [(shift button3)] 3962 [(shift button3)]
3392 [(shift mouse-3)]) 3963 [(shift mouse-3)])
3393 'idlwave-mouse-context-help) 3964 'idlwave-mouse-context-help)
3394 3965
3395;; For Emacs, we need to turn off the button release events. 3966;; For Emacs, we need to turn off the button release events.
3396(defun idlwave-shell-mouse-nop (event) 3967(defun idlwave-shell-mouse-nop (event)
3397 (interactive "e")) 3968 (interactive "e"))
3398(unless (featurep 'xemacs) 3969(unless (featurep 'xemacs)
3399 (idlwave-shell-define-key-both 3970 (idlwave-shell-define-key-both
@@ -3403,43 +3974,51 @@ Otherwise, just expand the file name."
3403 (idlwave-shell-define-key-both 3974 (idlwave-shell-define-key-both
3404 [(control meta mouse-2)] 'idlwave-shell-mouse-nop)) 3975 [(control meta mouse-2)] 'idlwave-shell-mouse-nop))
3405 3976
3406 3977
3407;; The following set of bindings is used to bind the debugging keys. 3978;; The following set of bindings is used to bind the debugging keys.
3408;; If `idlwave-shell-activate-prefix-keybindings' is non-nil, the first key 3979;; If `idlwave-shell-activate-prefix-keybindings' is non-nil, the
3409;; in the list gets bound the C-c C-d prefix map. 3980;; first key in the list gets bound the C-c C-d prefix map. If
3410;; If `idlwave-shell-debug-modifiers' is non-nil, the second key 3981;; `idlwave-shell-debug-modifiers' is non-nil, the second key in the
3411;; in the list gets bound with the specified modifiers in both 3982;; list gets bound with the specified modifiers in both
3412;; `idlwave-mode-map' and `idlwave-shell-mode-map'. 3983;; `idlwave-mode-map' and `idlwave-shell-mode-map'. The next list
3413 3984;; item, if non-nil, means to bind this as a single key in the
3414;; Used keys: abcdef hi klmnopqrs u wxyz 3985;; electric-debug-mode-map.
3415;; Unused keys: g j t v 3986;;
3987;; [C-c C-d]-binding debug-modifier-key command bind-electric-debug buf-only
3988;; Used keys: abcdef hijklmnopqrstuvwxyz
3989;; Unused keys: g
3416(let* ((specs 3990(let* ((specs
3417 '(([(control ?b)] ?b idlwave-shell-break-here) 3991 '(([(control ?b)] ?b idlwave-shell-break-here t t)
3418 ([(control ?i)] ?i idlwave-shell-break-in) 3992 ([(control ?i)] ?i idlwave-shell-break-in t t)
3419 ([(control ?d)] ?d idlwave-shell-clear-current-bp) 3993 ([(control ?j)] ?j idlwave-shell-break-this-module t t)
3420 ([(control ?a)] ?a idlwave-shell-clear-all-bp) 3994 ([(control ?d)] ?d idlwave-shell-clear-current-bp t)
3421 ([(control ?s)] ?s idlwave-shell-step) 3995 ([(control ?a)] ?a idlwave-shell-clear-all-bp t)
3422 ([(control ?n)] ?n idlwave-shell-stepover) 3996 ([(control ?\\)] ?\\ idlwave-shell-toggle-enable-current-bp t)
3423 ([(control ?k)] ?k idlwave-shell-skip) 3997 ([(control ?s)] ?s idlwave-shell-step t)
3424 ([(control ?u)] ?u idlwave-shell-up) 3998 ([(control ?n)] ?n idlwave-shell-stepover t)
3425 ([(control ?o)] ?o idlwave-shell-out) 3999 ([(control ?k)] ?k idlwave-shell-skip t)
3426 ([(control ?m)] ?m idlwave-shell-return) 4000 ([(control ?u)] ?u idlwave-shell-up t)
3427 ([(control ?h)] ?h idlwave-shell-to-here) 4001 ([(control ?o)] ?o idlwave-shell-out t)
3428 ([(control ?r)] ?r idlwave-shell-cont) 4002 ([(control ?m)] ?m idlwave-shell-return t)
4003 ([(control ?h)] ?h idlwave-shell-to-here t t)
4004 ([(control ?r)] ?r idlwave-shell-cont t)
3429 ([(control ?y)] ?y idlwave-shell-execute-default-command-line) 4005 ([(control ?y)] ?y idlwave-shell-execute-default-command-line)
3430 ([(control ?z)] ?z idlwave-shell-reset) 4006 ([(control ?z)] ?z idlwave-shell-reset t)
3431 ([(control ?q)] ?q idlwave-shell-quit) 4007 ([(control ?q)] ?q idlwave-shell-quit)
3432 ([(control ?p)] ?p idlwave-shell-print) 4008 ([(control ?p)] ?p idlwave-shell-print t)
3433 ([(??)] ?? idlwave-shell-help-expression) 4009 ([( ??)] ?? idlwave-shell-help-expression t)
3434 ([(control ?c)] ?c idlwave-shell-save-and-run) 4010 ([(control ?v)] ?v idlwave-shell-toggle-electric-debug-mode t t)
3435 ([( ?@)] ?@ idlwave-shell-save-and-batch)
3436 ([(control ?x)] ?x idlwave-shell-goto-next-error) 4011 ([(control ?x)] ?x idlwave-shell-goto-next-error)
4012 ([(control ?c)] ?c idlwave-shell-save-and-run t)
4013 ([( ?@)] ?@ idlwave-shell-save-and-batch)
3437 ([(control ?e)] ?e idlwave-shell-run-region) 4014 ([(control ?e)] ?e idlwave-shell-run-region)
3438 ([(control ?w)] ?w idlwave-shell-resync-dirs) 4015 ([(control ?w)] ?w idlwave-shell-resync-dirs)
3439 ([(control ?l)] ?l idlwave-shell-redisplay) 4016 ([(control ?l)] ?l idlwave-shell-redisplay t)
3440 ([(control ?t)] ?t idlwave-shell-toggle-toolbar) 4017 ([(control ?t)] ?t idlwave-shell-toggle-toolbar)
3441 ([(control up)] up idlwave-shell-stack-up) 4018 ([(control up)] up idlwave-shell-stack-up)
3442 ([(control down)] down idlwave-shell-stack-down) 4019 ([(control down)] down idlwave-shell-stack-down)
4020 ([( ?[)] ?[ idlwave-shell-goto-previous-bp t t)
4021 ([( ?])] ?] idlwave-shell-goto-next-bp t t)
3443 ([(control ?f)] ?f idlwave-shell-window))) 4022 ([(control ?f)] ?f idlwave-shell-window)))
3444 (mod (cond ((and idlwave-shell-debug-modifiers 4023 (mod (cond ((and idlwave-shell-debug-modifiers
3445 (listp idlwave-shell-debug-modifiers) 4024 (listp idlwave-shell-debug-modifiers)
@@ -3449,79 +4028,154 @@ Otherwise, just expand the file name."
3449 '(alt)))) 4028 '(alt))))
3450 (shift (memq 'shift mod)) 4029 (shift (memq 'shift mod))
3451 (mod-noshift (delete 'shift (copy-sequence mod))) 4030 (mod-noshift (delete 'shift (copy-sequence mod)))
3452 s k1 c2 k2 cmd) 4031 s k1 c2 k2 cmd cannotshift)
3453 (while (setq s (pop specs)) 4032 (while (setq s (pop specs))
3454 (setq k1 (nth 0 s) 4033 (setq k1 (nth 0 s)
3455 c2 (nth 1 s) 4034 c2 (nth 1 s)
3456 cmd (nth 2 s)) 4035 cmd (nth 2 s)
3457 (when idlwave-shell-activate-prefix-keybindings 4036 electric (nth 3 s)
3458 (and k1 (define-key idlwave-shell-mode-prefix-map k1 cmd))) 4037 only-buffer (nth 4 s)
4038 cannotshift (and shift (char-valid-p c2) (eq c2 (upcase c2))))
4039
4040 ;; The regular prefix keymap.
4041 (when (and idlwave-shell-activate-prefix-keybindings k1)
4042 (unless only-buffer
4043 (define-key idlwave-shell-mode-prefix-map k1 cmd))
4044 (define-key idlwave-mode-prefix-map k1 cmd))
4045 ;; The debug modifier map
3459 (when (and mod window-system) 4046 (when (and mod window-system)
3460 (if (char-or-string-p c2) 4047 (if (char-or-string-p c2)
3461 (setq k2 (vector (append mod-noshift 4048 (setq k2 (vector (append mod-noshift
3462 (list (if shift (upcase c2) c2))))) 4049 (list (if shift (upcase c2) c2)))))
3463 (setq k2 (vector (append mod (list c2))))) 4050 (setq k2 (vector (append mod (list c2)))))
3464 (define-key idlwave-mode-map k2 cmd) 4051 (unless cannotshift
3465 (define-key idlwave-shell-mode-map k2 cmd)))) 4052 (define-key idlwave-mode-map k2 cmd)
3466 4053 (unless only-buffer (define-key idlwave-shell-mode-map k2 cmd))))
3467;; Enter the prefix map at the two places. 4054 ;; The electric debug single-keystroke map
3468(fset 'idlwave-debug-map idlwave-shell-mode-prefix-map) 4055 (if (and electric (char-or-string-p c2))
4056 (define-key idlwave-shell-electric-debug-mode-map (char-to-string c2)
4057 cmd))))
4058
4059;; A few extras in the electric debug map
4060(define-key idlwave-shell-electric-debug-mode-map " " 'idlwave-shell-step)
4061(define-key idlwave-shell-electric-debug-mode-map "+" 'idlwave-shell-stack-up)
4062(define-key idlwave-shell-electric-debug-mode-map "=" 'idlwave-shell-stack-up)
4063(define-key idlwave-shell-electric-debug-mode-map "-"
4064 'idlwave-shell-stack-down)
4065(define-key idlwave-shell-electric-debug-mode-map "_"
4066 'idlwave-shell-stack-down)
4067(define-key idlwave-shell-electric-debug-mode-map "q" 'idlwave-shell-retall)
4068(define-key idlwave-shell-electric-debug-mode-map "t"
4069 '(lambda () (interactive) (idlwave-shell-send-command "help,/TRACE")))
4070(define-key idlwave-shell-electric-debug-mode-map [(control ??)]
4071 'idlwave-shell-electric-debug-help)
4072(define-key idlwave-shell-electric-debug-mode-map "x"
4073 '(lambda (arg) (interactive "P")
4074 (idlwave-shell-print arg nil nil t)))
4075
4076
4077; Enter the prefix map in two places.
4078(fset 'idlwave-debug-map idlwave-mode-prefix-map)
3469(fset 'idlwave-shell-debug-map idlwave-shell-mode-prefix-map) 4079(fset 'idlwave-shell-debug-map idlwave-shell-mode-prefix-map)
3470 4080
3471;; The Menus -------------------------------------------------------------- 4081;; The Electric Debug Minor Mode --------------------------------------------
4082
4083(defun idlwave-shell-toggle-electric-debug-mode ()
4084 "Toggle electric-debug-mode, suppressing re-entry into mode if turned off."
4085 (interactive)
4086 ;; If turning it off, make sure it stays off throughout the debug
4087 ;; session until we return or hit $MAIN$. Cancel this suppression
4088 ;; if it's explicitly turned on.
4089 (if idlwave-shell-electric-debug-mode
4090 (setq idlwave-shell-suppress-electric-debug t)
4091 (setq idlwave-shell-suppress-electric-debug nil))
4092 (idlwave-shell-electric-debug-mode))
4093
4094(easy-mmode-define-minor-mode idlwave-shell-electric-debug-mode
4095 "Toggle Electric Debug mode.
4096With no argument, this command toggles the mode.
4097Non-null prefix argument turns on the mode.
4098Null prefix argument turns off the mode.
4099
4100When Electric Debug mode is enabled, the many debugging commands are
4101available as single key sequences."
4102nil
4103" *Debugging*"
4104idlwave-shell-electric-debug-mode-map)
4105
4106(add-hook
4107 'idlwave-shell-electric-debug-mode-on-hook
4108 (lambda ()
4109 (set (make-local-variable 'idlwave-shell-electric-debug-read-only)
4110 buffer-read-only)
4111 (setq buffer-read-only t)
4112 (add-to-list 'idlwave-shell-electric-debug-buffers (current-buffer))
4113 (if idlwave-shell-stop-line-overlay
4114 (overlay-put idlwave-shell-stop-line-overlay 'face
4115 idlwave-shell-electric-stop-line-face))
4116 (if (facep 'fringe)
4117 (set-face-foreground 'fringe idlwave-shell-electric-stop-color
4118 (selected-frame)))))
4119
4120(add-hook
4121 'idlwave-shell-electric-debug-mode-off-hook
4122 (lambda ()
4123 ;; Return to previous read-only state
4124 (setq buffer-read-only (if (boundp 'idlwave-shell-electric-debug-read-only)
4125 idlwave-shell-electric-debug-read-only))
4126 (setq idlwave-shell-electric-debug-buffers
4127 (delq (current-buffer) idlwave-shell-electric-debug-buffers))
4128 (if idlwave-shell-stop-line-overlay
4129 (overlay-put idlwave-shell-stop-line-overlay 'face
4130 idlwave-shell-stop-line-face)
4131 (if (facep 'fringe)
4132 (set-face-foreground 'fringe (face-foreground 'default))))))
4133
4134;; easy-mmode defines electric-debug-mode for us, so we need to advise it.
4135(defadvice idlwave-shell-electric-debug-mode (after print-enter activate)
4136 "Print out an entrance message"
4137 (when idlwave-shell-electric-debug-mode
4138 (message
4139 "Electric Debugging mode entered. Press [C-?] for help, [q] to quit"))
4140 (force-mode-line-update))
4141
4142;; Turn it off in all relevant buffers
4143(defvar idlwave-shell-electric-debug-buffers nil)
4144(defun idlwave-shell-electric-debug-all-off ()
4145 (setq idlwave-shell-suppress-electric-debug nil)
4146 (let ((buffers idlwave-shell-electric-debug-buffers)
4147 buf)
4148 (save-excursion
4149 (while (setq buf (pop buffers))
4150 (when (buffer-live-p buf)
4151 (set-buffer buf)
4152 (when (and (eq major-mode 'idlwave-mode)
4153 buffer-file-name
4154 idlwave-shell-electric-debug-mode)
4155 (idlwave-shell-electric-debug-mode))))))
4156 (setq idlwave-shell-electric-debug-buffers nil))
4157
4158;; Show the help text
4159(defun idlwave-shell-electric-debug-help ()
4160 (interactive)
4161 (with-output-to-temp-buffer "*IDLWAVE Electric Debug Help*"
4162 (princ idlwave-shell-electric-debug-help))
4163 (let* ((current-window (selected-window))
4164 (window (get-buffer-window "*IDLWAVE Electric Debug Help*"))
4165 (window-lines (window-height window)))
4166 (select-window window)
4167 (enlarge-window (1+ (- (count-lines 1 (point-max)) window-lines)))
4168 (select-window current-window)))
4169
3472 4170
4171;; The Menus --------------------------------------------------------------
3473(defvar idlwave-shell-menu-def 4172(defvar idlwave-shell-menu-def
3474 '("Debug" 4173 `("Debug"
3475 ["Save and .RUN" idlwave-shell-save-and-run 4174 ["Electric Debug Mode"
3476 (or (eq major-mode 'idlwave-mode) 4175 idlwave-shell-electric-debug-mode
3477 idlwave-shell-last-save-and-action-file)] 4176 :style toggle :selected idlwave-shell-electric-debug-mode
3478 ["Save and .COMPILE" idlwave-shell-save-and-compile 4177 :included (eq major-mode 'idlwave-mode) :keys "C-c C-d C-v"]
3479 (or (eq major-mode 'idlwave-mode)
3480 idlwave-shell-last-save-and-action-file)]
3481 ["Save and @Batch" idlwave-shell-save-and-batch
3482 (or (eq major-mode 'idlwave-mode)
3483 idlwave-shell-last-save-and-action-file)]
3484 ["Goto Next Error" idlwave-shell-goto-next-error t]
3485 "--"
3486 ["Execute Default Cmd" idlwave-shell-execute-default-command-line t]
3487 ["Edit Default Cmd" idlwave-shell-edit-default-command-line t]
3488 "--"
3489 ["Set Breakpoint" idlwave-shell-break-here
3490 (eq major-mode 'idlwave-mode)]
3491 ["Break in Module" idlwave-shell-break-in t]
3492 ["Clear Breakpoint" idlwave-shell-clear-current-bp t]
3493 ["Clear All Breakpoints" idlwave-shell-clear-all-bp t]
3494 ["List All Breakpoints" idlwave-shell-list-all-bp t]
3495 "--"
3496 ["Step (into)" idlwave-shell-step t]
3497 ["Step (over)" idlwave-shell-stepover t]
3498 ["Skip One Statement" idlwave-shell-skip t]
3499 ["Continue" idlwave-shell-cont t]
3500 ("Continue to"
3501 ["End of Block" idlwave-shell-up t]
3502 ["End of Subprog" idlwave-shell-return t]
3503 ["End of Subprog+1" idlwave-shell-out t]
3504 ["Here (Cursor Line)" idlwave-shell-to-here
3505 (eq major-mode 'idlwave-mode)])
3506 "--" 4178 "--"
3507 ["Print expression" idlwave-shell-print t]
3508 ["Help on expression" idlwave-shell-help-expression t]
3509 ["Evaluate Region" idlwave-shell-evaluate-region
3510 (eq major-mode 'idlwave-mode)]
3511 ["Run Region" idlwave-shell-run-region (eq major-mode 'idlwave-mode)]
3512 "--"
3513 ["Redisplay" idlwave-shell-redisplay t]
3514 ["Stack Up" idlwave-shell-stack-up t]
3515 ["Stack Down" idlwave-shell-stack-down t]
3516 "--"
3517 ["Update Working Dir" idlwave-shell-resync-dirs t]
3518 ["Reset IDL" idlwave-shell-reset t]
3519 "--"
3520 ["Toggle Toolbar" idlwave-shell-toggle-toolbar t]
3521 ["Exit IDL" idlwave-shell-quit t]))
3522
3523(setq idlwave-shell-menu-def
3524 '("Debug"
3525 ("Compile & Run" 4179 ("Compile & Run"
3526 ["Save and .RUN" idlwave-shell-save-and-run 4180 ["Save and .RUN" idlwave-shell-save-and-run
3527 (or (eq major-mode 'idlwave-mode) 4181 (or (eq major-mode 'idlwave-mode)
@@ -3532,19 +4186,41 @@ Otherwise, just expand the file name."
3532 ["Save and @Batch" idlwave-shell-save-and-batch 4186 ["Save and @Batch" idlwave-shell-save-and-batch
3533 (or (eq major-mode 'idlwave-mode) 4187 (or (eq major-mode 'idlwave-mode)
3534 idlwave-shell-last-save-and-action-file)] 4188 idlwave-shell-last-save-and-action-file)]
4189 "--"
3535 ["Goto Next Error" idlwave-shell-goto-next-error t] 4190 ["Goto Next Error" idlwave-shell-goto-next-error t]
3536 "--" 4191 "--"
3537 ["Run Region" idlwave-shell-run-region (eq major-mode 'idlwave-mode)] 4192 ["Compile and Run Region" idlwave-shell-run-region
4193 (eq major-mode 'idlwave-mode)]
4194 ["Evaluate Region" idlwave-shell-evaluate-region
4195 (eq major-mode 'idlwave-mode)]
3538 "--" 4196 "--"
3539 ["Execute Default Cmd" idlwave-shell-execute-default-command-line t] 4197 ["Execute Default Cmd" idlwave-shell-execute-default-command-line t]
3540 ["Edit Default Cmd" idlwave-shell-edit-default-command-line t]) 4198 ["Edit Default Cmd" idlwave-shell-edit-default-command-line t])
3541 ("Breakpoints" 4199 ("Breakpoints"
3542 ["Set Breakpoint" idlwave-shell-break-here 4200 ["Set Breakpoint" idlwave-shell-break-here
3543 (eq major-mode 'idlwave-mode)] 4201 :keys "C-c C-d C-c" :active (eq major-mode 'idlwave-mode)]
3544 ["Break in Module" idlwave-shell-break-in t] 4202 ("Set Special Breakpoint"
4203 ["Set After Count Breakpoint"
4204 (progn
4205 (let ((count (string-to-int (read-string "Break after count: "))))
4206 (if (integerp count) (idlwave-shell-break-here count))))
4207 :active (eq major-mode 'idlwave-mode)]
4208 ["Set Condition Breakpoint"
4209 (idlwave-shell-break-here '(4))
4210 :active (eq major-mode 'idlwave-mode)])
4211 ["Break in Module" idlwave-shell-break-in
4212 :keys "C-c C-d C-i" :active (eq major-mode 'idlwave-mode)]
4213 ["Break in this Module" idlwave-shell-break-this-module
4214 :keys "C-c C-d C-j" :active (eq major-mode 'idlwave-mode)]
3545 ["Clear Breakpoint" idlwave-shell-clear-current-bp t] 4215 ["Clear Breakpoint" idlwave-shell-clear-current-bp t]
3546 ["Clear All Breakpoints" idlwave-shell-clear-all-bp t] 4216 ["Clear All Breakpoints" idlwave-shell-clear-all-bp t]
3547 ["List All Breakpoints" idlwave-shell-list-all-bp t]) 4217 ["Disable/Enable Breakpoint" idlwave-shell-toggle-enable-current-bp t]
4218 ["Goto Previous Breakpoint" idlwave-shell-goto-previous-bp
4219 :keys "C-c C-d [" :active (eq major-mode 'idlwave-mode)]
4220 ["Goto Next Breakpoint" idlwave-shell-goto-next-bp
4221 :keys "C-c C-d ]" :active (eq major-mode 'idlwave-mode)]
4222 ["List All Breakpoints" idlwave-shell-list-all-bp t]
4223 ["Resync Breakpoints" idlwave-shell-bp-query t])
3548 ("Continue/Step" 4224 ("Continue/Step"
3549 ["Step (into)" idlwave-shell-step t] 4225 ["Step (into)" idlwave-shell-step t]
3550 ["Step (over)" idlwave-shell-stepover t] 4226 ["Step (over)" idlwave-shell-stepover t]
@@ -3554,16 +4230,60 @@ Otherwise, just expand the file name."
3554 ["... to End of Subprog" idlwave-shell-return t] 4230 ["... to End of Subprog" idlwave-shell-return t]
3555 ["... to End of Subprog+1" idlwave-shell-out t] 4231 ["... to End of Subprog+1" idlwave-shell-out t]
3556 ["... to Here (Cursor Line)" idlwave-shell-to-here 4232 ["... to Here (Cursor Line)" idlwave-shell-to-here
3557 (eq major-mode 'idlwave-mode)]) 4233 :keys "C-c C-d C-h" :active (eq major-mode 'idlwave-mode)])
3558 ("Print Expression" 4234 ("Examine Expressions"
3559 ["Print expression" idlwave-shell-print t] 4235 ["Print expression" idlwave-shell-print t]
3560 ["Help on expression" idlwave-shell-help-expression t] 4236 ["Help on expression" idlwave-shell-help-expression t]
3561 ["Evaluate Region" idlwave-shell-evaluate-region 4237 ("Examine nearby expression with"
3562 (eq major-mode 'idlwave-mode)] 4238 ,@(mapcar (lambda(x)
3563 "--" 4239 `[ ,(car x) (idlwave-shell-print nil ',x) t ])
3564 ["Redisplay" idlwave-shell-redisplay t] 4240 idlwave-shell-examine-alist))
4241 ("Examine region with"
4242 ,@(mapcar (lambda(x)
4243 `[ ,(car x) (idlwave-shell-print '(4) ',x) t ])
4244 idlwave-shell-examine-alist)))
4245 ("Call Stack"
3565 ["Stack Up" idlwave-shell-stack-up t] 4246 ["Stack Up" idlwave-shell-stack-up t]
3566 ["Stack Down" idlwave-shell-stack-down t]) 4247 ["Stack Down" idlwave-shell-stack-down t]
4248 "--"
4249 ["Redisplay and Sync" idlwave-shell-redisplay t])
4250 ("Show Commands"
4251 ["Everything" (if (eq idlwave-shell-show-commands 'everything)
4252 (progn
4253 (setq idlwave-shell-show-commands
4254 (get 'idlwave-shell-show-commands 'last-val))
4255 (put 'idlwave-shell-show-commands 'last-val nil))
4256 (put 'idlwave-shell-show-commands 'last-val
4257 idlwave-shell-show-commands)
4258 (setq idlwave-shell-show-commands 'everything))
4259 :style toggle :selected (and (not (listp idlwave-shell-show-commands))
4260 (eq idlwave-shell-show-commands
4261 'everything))]
4262 "--"
4263 ["Compiling Commands" (idlwave-shell-add-or-remove-show 'run)
4264 :style toggle
4265 :selected (not (idlwave-shell-hide-p
4266 'run
4267 (get 'idlwave-shell-show-commands 'last-val)))
4268 :active (not (eq idlwave-shell-show-commands 'everything))]
4269 ["Breakpoint Commands" (idlwave-shell-add-or-remove-show 'breakpoint)
4270 :style toggle
4271 :selected (not (idlwave-shell-hide-p
4272 'breakpoint
4273 (get 'idlwave-shell-show-commands 'last-val)))
4274 :active (not (eq idlwave-shell-show-commands 'everything))]
4275 ["Debug Commands" (idlwave-shell-add-or-remove-show 'debug)
4276 :style toggle
4277 :selected (not (idlwave-shell-hide-p
4278 'debug
4279 (get 'idlwave-shell-show-commands 'last-val)))
4280 :active (not (eq idlwave-shell-show-commands 'everything))]
4281 ["Miscellaneous Commands" (idlwave-shell-add-or-remove-show 'misc)
4282 :style toggle
4283 :selected (not (idlwave-shell-hide-p
4284 'misc
4285 (get 'idlwave-shell-show-commands 'last-val)))
4286 :active (not (eq idlwave-shell-show-commands 'everything))])
3567 ("Input Mode" 4287 ("Input Mode"
3568 ["Send one char" idlwave-shell-send-char t] 4288 ["Send one char" idlwave-shell-send-char t]
3569 ["Temporary Character Mode" idlwave-shell-char-mode-loop t] 4289 ["Temporary Character Mode" idlwave-shell-char-mode-loop t]
@@ -3574,6 +4294,11 @@ Otherwise, just expand the file name."
3574 :style toggle :selected idlwave-shell-use-input-mode-magic]) 4294 :style toggle :selected idlwave-shell-use-input-mode-magic])
3575 "--" 4295 "--"
3576 ["Update Working Dir" idlwave-shell-resync-dirs t] 4296 ["Update Working Dir" idlwave-shell-resync-dirs t]
4297 ["Save Path Info"
4298 (idlwave-shell-send-command idlwave-shell-path-query
4299 'idlwave-shell-get-path-info
4300 'hide)
4301 t]
3577 ["Reset IDL" idlwave-shell-reset t] 4302 ["Reset IDL" idlwave-shell-reset t]
3578 "--" 4303 "--"
3579 ["Toggle Toolbar" idlwave-shell-toggle-toolbar t] 4304 ["Toggle Toolbar" idlwave-shell-toggle-toolbar t]
@@ -3581,11 +4306,11 @@ Otherwise, just expand the file name."
3581 4306
3582(if (or (featurep 'easymenu) (load "easymenu" t)) 4307(if (or (featurep 'easymenu) (load "easymenu" t))
3583 (progn 4308 (progn
3584 (easy-menu-define 4309 (easy-menu-define
3585 idlwave-shell-mode-menu idlwave-shell-mode-map "IDL shell menus" 4310 idlwave-mode-debug-menu idlwave-mode-map "IDL debugging menus"
3586 idlwave-shell-menu-def) 4311 idlwave-shell-menu-def)
3587 (easy-menu-define 4312 (easy-menu-define
3588 idlwave-mode-debug-menu idlwave-mode-map "IDL debugging menus" 4313 idlwave-shell-mode-menu idlwave-shell-mode-map "IDL shell menus"
3589 idlwave-shell-menu-def) 4314 idlwave-shell-menu-def)
3590 (save-excursion 4315 (save-excursion
3591 (mapcar (lambda (buf) 4316 (mapcar (lambda (buf)
@@ -3599,43 +4324,165 @@ Otherwise, just expand the file name."
3599;; The Breakpoint Glyph ------------------------------------------------------- 4324;; The Breakpoint Glyph -------------------------------------------------------
3600 4325
3601(defvar idlwave-shell-bp-glyph nil 4326(defvar idlwave-shell-bp-glyph nil
3602 "The glyph to mark breakpoint lines in the source code.") 4327 "The glyphs to mark breakpoint lines in the source code.")
3603 4328
3604(let ((image-string "/* XPM */ 4329(let ((image-alist
4330 '((bp . "/* XPM */
3605static char * file[] = { 4331static char * file[] = {
3606\"14 12 3 1\", 4332\"14 12 3 1\",
3607\" c None s backgroundColor\", 4333\" c None s backgroundColor\",
3608\". c #4B4B4B4B4B4B\", 4334\". c #4B4B4B4B4B4B\",
3609\"R c #FFFF00000000\", 4335\"R c #FFFF00000000\",
3610\" \", 4336\" \",
4337\" .... \",
4338\" .RRRR. \",
4339\" .RRRRRR. \",
4340\" .RRRRRRRR. \",
4341\" .RRRRRRRR. \",
4342\" .RRRRRRRR. \",
4343\" .RRRRRRRR. \",
4344\" .RRRRRR. \",
4345\" .RRRR. \",
4346\" .... \",
4347\" \"};")
4348 (bp-cond . "/* XPM */
4349static char * file[] = {
4350\"14 12 4 1\",
4351\" c None s backgroundColor\",
4352\". c #4B4B4B4B4B4B\",
4353\"R c #FFFF00000000\",
4354\"B c #000000000000\",
4355\" \",
4356\" .... \",
4357\" .RRRR. \",
4358\" .RRRRRR. \",
4359\" .RRRRRRRR. \",
4360\" .RRBBBBRR. \",
4361\" .RRRRRRRR. \",
4362\" .RRBBBBRR. \",
4363\" .RRRRRR. \",
4364\" .RRRR. \",
4365\" .... \",
4366\" \"};")
4367 (bp-1 . "/* XPM */
4368static char * file[] = {
4369\"14 12 4 1\",
4370\" c None s backgroundColor\",
4371\". c #4B4B4B4B4B4B\",
4372\"X c #FFFF00000000\",
4373\"o c #000000000000\",
4374\" \",
4375\" .... \",
4376\" .XXXX. \",
4377\" .XXooXX. \",
4378\" .XXoooXXX. \",
4379\" .XXXooXXX. \",
4380\" .XXXooXXX. \",
4381\" .XXooooXX. \",
4382\" .XooooX. \",
4383\" .XXXX. \",
4384\" .... \",
4385\" \"};")
4386 (bp-2 . "/* XPM */
4387static char * file[] = {
4388\"14 12 4 1\",
4389\" c None s backgroundColor\",
4390\". c #4B4B4B4B4B4B\",
4391\"X c #FFFF00000000\",
4392\"o c #000000000000\",
4393\" \",
4394\" .... \",
4395\" .XXXX. \",
4396\" .XoooXX. \",
4397\" .XXoXooXX. \",
4398\" .XXXXooXX. \",
4399\" .XXXooXXX. \",
4400\" .XXooXXXX. \",
4401\" .XooooX. \",
4402\" .XXXX. \",
4403\" .... \",
4404\" \"};")
4405 (bp-3 . "/* XPM */
4406static char * file[] = {
4407\"14 12 4 1\",
4408\" c None s backgroundColor\",
4409\". c #4B4B4B4B4B4B\",
4410\"X c #FFFF00000000\",
4411\"o c #000000000000\",
4412\" \",
4413\" .... \",
4414\" .XXXX. \",
4415\" .XoooXX. \",
4416\" .XXXXooXX. \",
4417\" .XXXooXXX. \",
4418\" .XXXXooXX. \",
4419\" .XXoXooXX. \",
4420\" .XoooXX. \",
4421\" .XXXX. \",
4422\" .... \",
4423\" \"};")
4424 (bp-4 . "/* XPM */
4425static char * file[] = {
4426\"14 12 4 1\",
4427\" c None s backgroundColor\",
4428\". c #4B4B4B4B4B4B\",
4429\"X c #FFFF00000000\",
4430\"o c #000000000000\",
3611\" \", 4431\" \",
3612\" RRRR \", 4432\" .... \",
3613\" RRRRRR \", 4433\" .XXXX. \",
3614\" RRRRRRRR \", 4434\" .XoXXoX. \",
3615\" RRRRRRRR \", 4435\" .XXoXXoXX. \",
3616\" RRRRRRRR \", 4436\" .XXooooXX. \",
3617\" RRRRRRRR \", 4437\" .XXXXooXX. \",
3618\" RRRRRR \", 4438\" .XXXXooXX. \",
3619\" RRRR \", 4439\" .XXXooX. \",
4440\" .XXXX. \",
4441\" .... \",
4442\" \"};")
4443 (bp-n . "/* XPM */
4444static char * file[] = {
4445\"14 12 4 1\",
4446\" c None s backgroundColor\",
4447\". c #4B4B4B4B4B4B\",
4448\"X c #FFFF00000000\",
4449\"o c #000000000000\",
3620\" \", 4450\" \",
3621\" \"};")) 4451\" .... \",
3622 4452\" .XXXX. \",
3623 (setq idlwave-shell-bp-glyph 4453\" .XXXXXX. \",
3624 (cond ((and (featurep 'xemacs) 4454\" .XXoXoXXX. \",
3625 (featurep 'xpm)) 4455\" .XXooXoXX. \",
3626 (make-glyph image-string)) 4456\" .XXoXXoXX. \",
3627 ((and (not (featurep 'xemacs)) 4457\" .XXoXXoXX. \",
3628 (fboundp 'image-type-available-p) 4458\" .XoXXoX. \",
3629 (image-type-available-p 'xpm)) 4459\" .XXXX. \",
3630 (list 'image :type 'xpm :data image-string :ascent 'center)) 4460\" .... \",
3631 (t nil)))) 4461\" \"};"))) im-cons im)
4462
4463 (while (setq im-cons (pop image-alist))
4464 (setq im (cond ((and (featurep 'xemacs)
4465 (featurep 'xpm))
4466 (list
4467 (let ((data (cdr im-cons)))
4468 (string-match "#FFFF00000000" data)
4469 (setq data (replace-match "#8F8F8F8F8F8F" t t data))
4470 (make-glyph data))
4471 (make-glyph (cdr im-cons))))
4472 ((and (not (featurep 'xemacs))
4473 (fboundp 'image-type-available-p)
4474 (image-type-available-p 'xpm))
4475 (list 'image :type 'xpm :data (cdr im-cons)
4476 :ascent 'center))
4477 (t nil)))
4478 (if im (push (cons (car im-cons) im) idlwave-shell-bp-glyph))))
3632 4479
3633(provide 'idlw-shell) 4480(provide 'idlw-shell)
3634(provide 'idlwave-shell) 4481(provide 'idlwave-shell)
3635 4482
3636;;; Load the toolbar when wanted by the user. 4483;;; Load the toolbar when wanted by the user.
3637 4484
3638(autoload 'idlwave-toolbar-toggle "idlw-toolbar" 4485(autoload 'idlwave-toolbar-toggle "idlw-toolbar"
3639 "Toggle the IDLWAVE toolbar") 4486 "Toggle the IDLWAVE toolbar")
3640(autoload 'idlwave-toolbar-add-everywhere "idlw-toolbar" 4487(autoload 'idlwave-toolbar-add-everywhere "idlw-toolbar"
3641 "Add IDLWAVE toolbar") 4488 "Add IDLWAVE toolbar")
@@ -3646,6 +4493,4 @@ static char * file[] = {
3646 4493
3647(if idlwave-shell-use-toolbar 4494(if idlwave-shell-use-toolbar
3648 (add-hook 'idlwave-shell-mode-hook 'idlwave-toolbar-add-everywhere)) 4495 (add-hook 'idlwave-shell-mode-hook 'idlwave-toolbar-add-everywhere))
3649
3650;;; arch-tag: 20c2e8ce-0709-41d8-a5b6-bb039148440a
3651;;; idlw-shell.el ends here 4496;;; idlw-shell.el ends here
diff --git a/lisp/progmodes/idlw-toolbar.el b/lisp/progmodes/idlw-toolbar.el
index dc28938d5c5..63998e498f1 100644
--- a/lisp/progmodes/idlw-toolbar.el
+++ b/lisp/progmodes/idlw-toolbar.el
@@ -3,7 +3,8 @@
3 3
4;; Author: Carsten Dominik <dominik@astro.uva.nl> 4;; Author: Carsten Dominik <dominik@astro.uva.nl>
5;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu> 5;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
6;; Version: 4.15 6;; Version: 5.5
7;; Date: $Date: 2003/05/13 18:42:27 $
7;; Keywords: processes 8;; Keywords: processes
8 9
9;; This file is part of GNU Emacs. 10;; This file is part of GNU Emacs.
@@ -170,45 +171,6 @@ static char * file[] = {
170\" \"};") 171\" \"};")
171 "The Stop At icon.") 172 "The Stop At icon.")
172 173
173(defvar idlwave-toolbar-stop-in-icon
174 (idlwave-toolbar-make-button
175 "/* XPM */
176static char * file[] = {
177\"28 28 4 1\",
178\" c None s backgroundToolBarColor\",
179\"_ c #FFFFFFFFFFFF\",
180\". c #000000000000\",
181\"R c #FFFF00000000\",
182\" \",
183\" \",
184\" \",
185\" \",
186\" ........ \",
187\" .RRRRRRRR. \",
188\" .RRRRRRRRRR. \",
189\" .RRRRRRRRRRRR. \",
190\" .RRR___RR___RRR. \",
191\" .RRRR__RRRR__RRRR. \",
192\" .RRRRR__RRRR__RRRRR. \",
193\" .RRRRR__RRRR__RRRRR. \",
194\" .RRRRR__RRRR__RRRRR. \",
195\" .RRRR__RRRRRR__RRRR. \",
196\" .RRRRR__RRRR__RRRRR. \",
197\" .RRRRR__RRRR__RRRRR. \",
198\" .RRRRR__RRRR__RRRRR. \",
199\" .RRRRR__RRRR__RRRRR. \",
200\" .RRRR___RR___RRRR. \",
201\" .RRRRRRRRRRRRRR. \",
202\" .RRRRRRRRRRRR. \",
203\" .RRRRRRRRRR. \",
204\" .RRRRRRRR. \",
205\" ........ \",
206\" \",
207\" \",
208\" \",
209\" \"};")
210 "The Stop in icon.")
211
212 174
213(defvar idlwave-toolbar-clear-at-icon 175(defvar idlwave-toolbar-clear-at-icon
214 (idlwave-toolbar-make-button 176 (idlwave-toolbar-make-button
@@ -287,6 +249,84 @@ static char * file[] = {
287\" \"};") 249\" \"};")
288 "The Clear-All icon.") 250 "The Clear-All icon.")
289 251
252(defvar idlwave-toolbar-stop-beginning-icon
253 (idlwave-toolbar-make-button
254 "/* XPM */
255static char * file[] = {
256\"28 28 4 1\",
257\" c None s backgroundToolBarColor\",
258\". c #000000000000\",
259\"X c #FFFF00000000\",
260\"_ c #FFFFFFFFFFFF\",
261\" \",
262\" \",
263\" \",
264\" \",
265\" ........ \",
266\" .XXXXXXXX. \",
267\" .XXXXXXXXXX. \",
268\" .XXXXXXXXXXXX. \",
269\" .XX..XXXXXXXXXX. \",
270\" .XX.XX.X______XXX. \",
271\" .XXX.XX.X______XXXX. \",
272\" .XXXX..XXXXXXXXXXXX. \",
273\" .XXXXXXXXXX____XXXX. \",
274\" .XXXXXXXXXX____XXXX. \",
275\" .XXXXXXXXXXXXXXXXXX. \",
276\" .XXXXXXXXXX____XXXX. \",
277\" .XXXXXXXXXX____XXXX. \",
278\" .XXXXXXXXXXXXXXXXXX. \",
279\" .XXXXXXXXX____XXX. \",
280\" .XXXXXXXX____XX. \",
281\" .XXXXXXXXXXXX. \",
282\" .XXXXXXXXXX. \",
283\" .XXXXXXXX. \",
284\" ........ \",
285\" \",
286\" \",
287\" \",
288\" \"};")
289 "The Stop at Beginning icon.")
290
291(defvar idlwave-toolbar-stop-in-icon
292 (idlwave-toolbar-make-button
293 "/* XPM */
294static char * file[] = {
295\"28 28 4 1\",
296\" c None s backgroundToolBarColor\",
297\"_ c #FFFFFFFFFFFF\",
298\". c #000000000000\",
299\"R c #FFFF00000000\",
300\" \",
301\" \",
302\" \",
303\" \",
304\" ........ \",
305\" .RRRRRRRR. \",
306\" .RRRRRRRRRR. \",
307\" .RRRRRRRRRRRR. \",
308\" .RRR___RR___RRR. \",
309\" .RRRR__RRRR__RRRR. \",
310\" .RRRRR__RRRR__RRRRR. \",
311\" .RRRRR__RRRR__RRRRR. \",
312\" .RRRRR__RRRR__RRRRR. \",
313\" .RRRR__RRRRRR__RRRR. \",
314\" .RRRRR__RRRR__RRRRR. \",
315\" .RRRRR__RRRR__RRRRR. \",
316\" .RRRRR__RRRR__RRRRR. \",
317\" .RRRRR__RRRR__RRRRR. \",
318\" .RRRR___RR___RRRR. \",
319\" .RRRRRRRRRRRRRR. \",
320\" .RRRRRRRRRRRR. \",
321\" .RRRRRRRRRR. \",
322\" .RRRRRRRR. \",
323\" ........ \",
324\" \",
325\" \",
326\" \",
327\" \"};")
328 "The Stop in icon.")
329
290(defvar idlwave-toolbar-edit-cmd-icon 330(defvar idlwave-toolbar-edit-cmd-icon
291 (idlwave-toolbar-make-button 331 (idlwave-toolbar-make-button
292 "/* XPM */ 332 "/* XPM */
@@ -398,7 +438,7 @@ static char * file[] = {
398\" \", 438\" \",
399\" \", 439\" \",
400\" \"};") 440\" \"};")
401 "The Cont icon.") 441 "The Cont icon.")
402 442
403(defvar idlwave-toolbar-to-here-icon 443(defvar idlwave-toolbar-to-here-icon
404 (idlwave-toolbar-make-button 444 (idlwave-toolbar-make-button
@@ -709,6 +749,49 @@ static char * file[] = {
709\" \"};") 749\" \"};")
710 "The Reset icon.") 750 "The Reset icon.")
711 751
752(defvar idlwave-toolbar-electric-debug-icon
753 (idlwave-toolbar-make-button
754 "/* XPM */
755static char * file[] = {
756\"28 28 8 1\",
757\" c None s backgroundToolBarColor\",
758\". c #CFC854\",
759\"+ c #EEDB0E\",
760\"@ c #D2C739\",
761\"# c #A39C54\",
762\"$ c #CDC020\",
763\"% c #020202\",
764\"& c #D60E36\",
765\" \",
766\" \",
767\" .. \",
768\" +++++@ \",
769\" ++++++ \",
770\" +++++@ \",
771\" +++++ \",
772\" #++++@ \",
773\" $+++@ %% %% \",
774\" ++++++$ % % \",
775\" #+++++$ % % \",
776\" #++$# %%% \",
777\" #+++ %%%%%%% \",
778\" .++ %%%%%%%%%%% \",
779\" ++$$ %%%%%%%%%%% \",
780\" .+@# &&%%%%%%%&& \",
781\" .++++# &&&&&%%%&&&&& \",
782\" +++++$ &&%%&&&&&%%&& \",
783\" $+++$ &&%%&&&&&%%&& \",
784\" $++@ &&&&&&%&&&&&& \",
785\" $+@ &&&&&&%&&&&&& \",
786\" @+ &&%%&&&&&%%&& \",
787\" ++. &%%&&%&&%%& \",
788\" +. &&&&%%%&&&& \",
789\" .+ &&%%%%%&& \",
790\" ++ %%%%%%% \",
791\" . %%% \",
792\" \"};")
793 "The electric debug icon.")
794
712(defvar idlwave-toolbar 795(defvar idlwave-toolbar
713 '( 796 '(
714 [idlwave-toolbar-compile-icon 797 [idlwave-toolbar-compile-icon
@@ -723,10 +806,6 @@ static char * file[] = {
723 idlwave-shell-break-here 806 idlwave-shell-break-here
724 (eq major-mode 'idlwave-mode) 807 (eq major-mode 'idlwave-mode)
725 "Set Breakpoint at selected position"] 808 "Set Breakpoint at selected position"]
726 [idlwave-toolbar-stop-in-icon
727 idlwave-shell-break-in
728 t
729 "Stop in Function with name near at point"]
730 [idlwave-toolbar-clear-at-icon 809 [idlwave-toolbar-clear-at-icon
731 idlwave-shell-clear-current-bp 810 idlwave-shell-clear-current-bp
732 t 811 t
@@ -735,6 +814,14 @@ static char * file[] = {
735 idlwave-shell-clear-all-bp 814 idlwave-shell-clear-all-bp
736 t 815 t
737 "Clear all Breakpoints"] 816 "Clear all Breakpoints"]
817 [idlwave-toolbar-stop-beginning-icon
818 idlwave-shell-break-this-module
819 (eq major-mode 'idlwave-mode)
820 "Stop at beginning of enclosing Routine"]
821 [idlwave-toolbar-stop-in-icon
822 idlwave-shell-break-in
823 t
824 "Stop in Routine with name near point"]
738 [idlwave-toolbar-edit-cmd-icon 825 [idlwave-toolbar-edit-cmd-icon
739 idlwave-shell-edit-default-command-line 826 idlwave-shell-edit-default-command-line
740 t 827 t
@@ -779,6 +866,10 @@ static char * file[] = {
779 idlwave-shell-reset 866 idlwave-shell-reset
780 t 867 t
781 "Reset IDL (RETALL & CLOSE,/ALL and more)"] 868 "Reset IDL (RETALL & CLOSE,/ALL and more)"]
869 [idlwave-toolbar-electric-debug-icon
870 idlwave-shell-electric-debug-mode
871 (eq major-mode 'idlwave-mode)
872 "Toggle Electric Debug Mode"]
782 )) 873 ))
783 874
784;; When the shell exits, arrange to remove the special toolbar everywhere. 875;; When the shell exits, arrange to remove the special toolbar everywhere.
@@ -824,13 +915,14 @@ static char * file[] = {
824 (mapcar (lambda (x) 915 (mapcar (lambda (x)
825 (let* ((icon (aref x 0)) 916 (let* ((icon (aref x 0))
826 (func (aref x 1)) 917 (func (aref x 1))
827 ;;(show (aref x 2)) 918 (show (aref x 2))
828 (help (aref x 3)) 919 (help (aref x 3))
829 (key (vector 'tool-bar func)) 920 (key (vector 'tool-bar func))
830 (def (list 'menu-item 921 (def (list 'menu-item
831 "a" 922 "a"
832 func 923 func
833 :image (symbol-value icon) 924 :image (symbol-value icon)
925 :visible show
834 :help help))) 926 :help help)))
835 (define-key idlwave-mode-map key def) 927 (define-key idlwave-mode-map key def)
836 (define-key idlwave-shell-mode-map key def))) 928 (define-key idlwave-shell-mode-map key def)))
@@ -879,4 +971,3 @@ static char * file[] = {
879;;; idlw-toolbar.el ends here 971;;; idlw-toolbar.el ends here
880 972
881 973
882;;; arch-tag: ec9a3717-c44c-4716-9bda-cdacbe5ddb62
diff --git a/lisp/progmodes/idlwave.el b/lisp/progmodes/idlwave.el
index a5e07049843..eae44bc0716 100644
--- a/lisp/progmodes/idlwave.el
+++ b/lisp/progmodes/idlwave.el
@@ -1,10 +1,12 @@
1;;; idlwave.el --- IDL editing mode for GNU Emacs 1;; idlwave.el --- IDL editing mode for GNU Emacs
2;; Copyright (c) 1999, 2000, 2001,2002 Free Software Foundation 2;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation
3 3
4;; Author: Carsten Dominik <dominik@astro.uva.nl> 4;; Authors: J.D. Smith <jdsmith@as.arizona.edu>
5;; Chris Chase <chase@att.com> 5;; Carsten Dominik <dominik@astro.uva.nl>
6;; Chris Chase <chase@att.com>
6;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu> 7;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
7;; Version: 4.15 8;; Version: 5.5
9;; Date: $Date: 2004/11/17 05:37:18 $
8;; Keywords: languages 10;; Keywords: languages
9 11
10;; This file is part of GNU Emacs. 12;; This file is part of GNU Emacs.
@@ -26,8 +28,8 @@
26 28
27;;; Commentary: 29;;; Commentary:
28 30
29;; In distant past, based on pascal.el. Though bears little 31;; In the remotely distant past, based on pascal.el, though bears
30;; resemblance to that now. 32;; little resemblance to it now.
31;; 33;;
32;; Incorporates many ideas, such as abbrevs, action routines, and 34;; Incorporates many ideas, such as abbrevs, action routines, and
33;; continuation line indenting, from wave.el. 35;; continuation line indenting, from wave.el.
@@ -57,49 +59,51 @@
57;; ====== 59;; ======
58;; 60;;
59;; The newest version of this file is available from the maintainer's 61;; The newest version of this file is available from the maintainer's
60;; Webpage. 62;; Webpage:
61;; 63;;
62;; http://idlwave.org 64;; http://idlwave.org
63;; 65;;
64;; DOCUMENTATION 66;; DOCUMENTATION
65;; ============= 67;; =============
66;; 68;;
67;; IDLWAVE is documented online in info format. 69;; IDLWAVE is documented online in info format. A printable version
68;; A printable version of the documentation is available from the 70;; of the documentation is available from the maintainers webpage (see
69;; maintainers webpage (see under SOURCE) 71;; SOURCE).
70;;
71;; 72;;
73;;
72;; ACKNOWLEDGMENTS 74;; ACKNOWLEDGMENTS
73;; =============== 75;; ===============
74;; 76;;
75;; Thanks to the following people for their contributions and comments: 77;; Thanks to the following people for their contributions and comments:
76;; 78;;
77;; Ulrik Dickow <dickow@nbi.dk> 79;; Ulrik Dickow <dickow_at_nbi.dk>
78;; Eric E. Dors <edors@lanl.gov> 80;; Eric E. Dors <edors_at_lanl.gov>
79;; Stein Vidar H. Haugan <s.v.h.haugan@astro.uio.no> 81;; Stein Vidar H. Haugan <s.v.h.haugan_at_astro.uio.no>
80;; David Huenemoerder <dph@space.mit.edu> 82;; David Huenemoerder <dph_at_space.mit.edu>
81;; Kevin Ivory <Kevin.Ivory@linmpi.mpg.de> 83;; Kevin Ivory <Kevin.Ivory_at_linmpi.mpg.de>
82;; Xuyong Liu <liu@stsci.edu> 84;; Dick Jackson <dick_at_d-jackson.com>
83;; Simon Marshall <Simon.Marshall@esrin.esa.it> 85;; Xuyong Liu <liu_at_stsci.edu>
84;; Laurent Mugnier <mugnier@onera.fr> 86;; Simon Marshall <Simon.Marshall_at_esrin.esa.it>
85;; Lubos Pochman <lubos@rsinc.com> 87;; Laurent Mugnier <mugnier_at_onera.fr>
86;; Bob Portmann <portmann@al.noaa.gov> 88;; Lubos Pochman <lubos_at_rsinc.com>
87;; Patrick M. Ryan <pat@jaameri.gsfc.nasa.gov> 89;; Bob Portmann <portmann_at_al.noaa.gov>
88;; Marty Ryba <ryba@ll.mit.edu> 90;; Patrick M. Ryan <pat_at_jaameri.gsfc.nasa.gov>
89;; Phil Williams <williams@irc.chmcc.org> 91;; Marty Ryba <ryba_at_ll.mit.edu>
90;; Phil Sterne <sterne@dublin.llnl.gov> 92;; Paul Sorenson <aardvark62_at_msn.com>
93;; Phil Sterne <sterne_at_dublin.llnl.gov>
94;; Phil Williams <williams_at_irc.chmcc.org>
91;; 95;;
92;; CUSTOMIZATION: 96;; CUSTOMIZATION:
93;; ============= 97;; =============
94;; 98;;
95;; IDLWAVE has extensive customize support - so if you want to learn 99;; IDLWAVE has extensive customize support; to learn about the
96;; about the variables which control the behavior of the mode, use 100;; variables which control the mode's behavior, use `M-x
97;; `M-x idlwave-customize'. 101;; idlwave-customize'.
98;; 102;;
99;; You can set your own preferred values with Customize, or with Lisp 103;; You can set your own preferred values with Customize, or with Lisp
100;; code in .emacs. For an example of what to put into .emacs, check 104;; code in .emacs. For an example of what to put into .emacs, check
101;; the TexInfo documentation or see a complete .emacs at 105;; the TexInfo documentation or see a complete .emacs available at the
102;; http://idlwave.org. 106;; website.
103;; 107;;
104;; KNOWN PROBLEMS: 108;; KNOWN PROBLEMS:
105;; ============== 109;; ==============
@@ -107,8 +111,8 @@
107;; IDLWAVE support for the IDL-derived PV-WAVE CL language of Visual 111;; IDLWAVE support for the IDL-derived PV-WAVE CL language of Visual
108;; Numerics, Inc. is growing less and less complete as the two 112;; Numerics, Inc. is growing less and less complete as the two
109;; languages grow increasingly apart. The mode probably shouldn't 113;; languages grow increasingly apart. The mode probably shouldn't
110;; even have "WAVE" in it's title, but it's catchy, and required to 114;; even have "WAVE" in it's title, but it's catchy, and was required
111;; avoid conflict with the CORBA idl.el mode. Caveat WAVEor. 115;; to avoid conflict with the CORBA idl.el mode. Caveat WAVEor.
112;; 116;;
113;; Moving the point backwards in conjunction with abbrev expansion 117;; Moving the point backwards in conjunction with abbrev expansion
114;; does not work as I would like it, but this is a problem with 118;; does not work as I would like it, but this is a problem with
@@ -116,7 +120,7 @@
116;; up inserting the character that expanded the abbrev after moving 120;; up inserting the character that expanded the abbrev after moving
117;; point backward, e.g., "\cl" expanded with a space becomes 121;; point backward, e.g., "\cl" expanded with a space becomes
118;; "LONG( )" with point before the close paren. This is solved by 122;; "LONG( )" with point before the close paren. This is solved by
119;; using a temporary function in `post-command-hook' - not pretty, 123;; using a temporary function in `post-command-hook' - not pretty,
120;; but it works. 124;; but it works.
121;; 125;;
122;; Tabs and spaces are treated equally as whitespace when filling a 126;; Tabs and spaces are treated equally as whitespace when filling a
@@ -126,15 +130,15 @@
126;; limited to comments only and occurs only when a comment 130;; limited to comments only and occurs only when a comment
127;; paragraph is filled via `idlwave-fill-paragraph'. 131;; paragraph is filled via `idlwave-fill-paragraph'.
128;; 132;;
129;; Avoid muti-statement lines (using "&") on block begin and end 133;; Muti-statement lines (using "&") on block begin and end lines can
130;; lines. Multi-statement lines can mess up the formatting, for 134;; ruin the formatting. For example, multiple end statements on a
131;; example, multiple end statements on a line: endif & endif. 135;; line: endif & endif. Using "&" outside of block begin/end lines
132;; Using "&" outside of block begin/end lines should be okay. 136;; should be okay.
133;; 137;;
134;; Determining the expression at point for printing and other 138;; Determining the expression at point for printing and other
135;; examination commands is somewhat rough: currently only fairly 139;; examination commands is somewhat rough: currently only fairly
136;; simple entities are found. You can always drag-select or examine 140;; simple entities are found. You can always drag-select or examine
137;; a region. 141;; a pre-selected region.
138;; 142;;
139;; When forcing completion of method keywords, the initial 143;; When forcing completion of method keywords, the initial
140;; query for a method has multiple entries for some methods. Would 144;; query for a method has multiple entries for some methods. Would
@@ -143,7 +147,17 @@
143 147
144;;; Code: 148;;; Code:
145 149
150
146(eval-when-compile (require 'cl)) 151(eval-when-compile (require 'cl))
152(require 'idlw-help)
153
154;; For XEmacs
155(unless (fboundp 'line-beginning-position)
156 (defalias 'line-beginning-position 'point-at-bol))
157(unless (fboundp 'line-end-position)
158 (defalias 'line-end-position 'point-at-eol))
159(unless (fboundp 'char-valid-p)
160 (defalias 'char-valid-p 'characterp))
147 161
148(eval-and-compile 162(eval-and-compile
149 ;; Kludge to allow `defcustom' for Emacs 19. 163 ;; Kludge to allow `defcustom' for Emacs 19.
@@ -152,13 +166,13 @@
152 nil ;; We've got what we needed 166 nil ;; We've got what we needed
153 ;; We have the old or no custom-library, hack around it! 167 ;; We have the old or no custom-library, hack around it!
154 (defmacro defgroup (&rest args) nil) 168 (defmacro defgroup (&rest args) nil)
155 (defmacro defcustom (var value doc &rest args) 169 (defmacro defcustom (var value doc &rest args)
156 `(defvar ,var ,value ,doc)))) 170 `(defvar ,var ,value ,doc))))
157 171
158(defgroup idlwave nil 172(defgroup idlwave nil
159 "Major mode for editing IDL .pro files" 173 "Major mode for editing IDL .pro files"
160 :tag "IDLWAVE" 174 :tag "IDLWAVE"
161 :link '(url-link :tag "Home Page" 175 :link '(url-link :tag "Home Page"
162 "http://idlwave.org") 176 "http://idlwave.org")
163 :link '(emacs-commentary-link :tag "Commentary in idlw-shell.el" 177 :link '(emacs-commentary-link :tag "Commentary in idlw-shell.el"
164 "idlw-shell.el") 178 "idlw-shell.el")
@@ -167,6 +181,7 @@
167 :prefix "idlwave" 181 :prefix "idlwave"
168 :group 'languages) 182 :group 'languages)
169 183
184
170;;; Variables for indentation behavior --------------------------------------- 185;;; Variables for indentation behavior ---------------------------------------
171 186
172(defgroup idlwave-code-formatting nil 187(defgroup idlwave-code-formatting nil
@@ -209,7 +224,7 @@ maximum amount by which this special indentation can exceed the
209standard continuation indentation, otherwise defaulting to a fixed 224standard continuation indentation, otherwise defaulting to a fixed
210offset. Set to 0 to effectively disable all special continuation 225offset. Set to 0 to effectively disable all special continuation
211indentation, or to a large number (like 100) to enable it in all 226indentation, or to a large number (like 100) to enable it in all
212cases. See also `idlwave-indent-top-open-paren', which can override 227cases. See also `idlwave-indent-to-open-paren', which can override
213this variable." 228this variable."
214 :group 'idlwave-code-formatting 229 :group 'idlwave-code-formatting
215 :type 'integer) 230 :type 'integer)
@@ -238,6 +253,13 @@ yield:
238 :group 'idlwave-code-formatting 253 :group 'idlwave-code-formatting
239 :type 'boolean) 254 :type 'boolean)
240 255
256(defcustom idlwave-indent-parens-nested nil
257 "*Non-nil means, indent continuation lines with parens by nesting
258lines at consecutively deeper levels."
259 :group 'idlwave-code-formatting
260 :type 'boolean)
261
262
241(defcustom idlwave-hanging-indent t 263(defcustom idlwave-hanging-indent t
242 "*If set non-nil then comment paragraphs are indented under the 264 "*If set non-nil then comment paragraphs are indented under the
243hanging indent given by `idlwave-hang-indent-regexp' match in the first line 265hanging indent given by `idlwave-hang-indent-regexp' match in the first line
@@ -264,8 +286,8 @@ extends to the end of the match for the regular expression."
264 286
265(defcustom idlwave-auto-fill-split-string t 287(defcustom idlwave-auto-fill-split-string t
266 "*If non-nil then auto fill will split strings with the IDL `+' operator. 288 "*If non-nil then auto fill will split strings with the IDL `+' operator.
267When the line end falls within a string, string concatenation with the 289When the line end falls within a string, string concatenation with the
268'+' operator will be used to distribute a long string over lines. 290'+' operator will be used to distribute a long string over lines.
269If nil and a string is split then a terminal beep and warning are issued. 291If nil and a string is split then a terminal beep and warning are issued.
270 292
271This variable is ignored when `idlwave-fill-comment-line-only' is 293This variable is ignored when `idlwave-fill-comment-line-only' is
@@ -308,20 +330,28 @@ the comment is not preceded by whitespace it is unchanged."
308;; Comments not matching any of the above will be indented as a 330;; Comments not matching any of the above will be indented as a
309;; right-margin comment, i.e., to a minimum of `comment-column'. 331;; right-margin comment, i.e., to a minimum of `comment-column'.
310 332
311
312;;; Routine Info and Completion --------------------------------------- 333;;; Routine Info and Completion ---------------------------------------
313 334
314(defgroup idlwave-routine-info nil 335(defgroup idlwave-routine-info nil
315 "Routine Info options for IDLWAVE mode." 336 "Routine Info options for IDLWAVE mode."
316 :group 'idlwave) 337 :group 'idlwave)
317 338
339(defcustom idlwave-use-library-catalogs t
340 "*Non-nil means search the IDL path for library catalog files.
341
342These files, named .idlwave_catalog, document routine information for
343individual directories and libraries of IDL .pro files. Many popular
344libraries come with catalog files by default, so leaving this on is a
345usually a good idea.."
346 :group 'idlwave-routine-info
347 :type 'boolean)
318 348
319(defcustom idlwave-init-rinfo-when-idle-after 10 349(defcustom idlwave-init-rinfo-when-idle-after 10
320 "*Seconds of idle time before routine info is automatically initialized. 350 "*Seconds of idle time before routine info is automatically initialized.
321Initializing the routine info can take long, in particular if a large 351Initializing the routine info can take long, in particular if a large
322library catalog is involved. When Emacs is idle for more than the number 352library catalog is involved. When Emacs is idle for more than the number
323of seconds specified by this variable, it starts the initialization. 353of seconds specified by this variable, it starts the initialization.
324The process is split into five steps, in order to keep possible work 354The process is split into five steps, in order to keep possible work
325interruption as short as possible. If one of the steps finishes, and no 355interruption as short as possible. If one of the steps finishes, and no
326user input has arrived in the mean time, initialization proceeds immediately 356user input has arrived in the mean time, initialization proceeds immediately
327to the next step. 357to the next step.
@@ -373,7 +403,7 @@ t All available
373 (const :tag "When saving a buffer" save-buffer) 403 (const :tag "When saving a buffer" save-buffer)
374 (const :tag "After a buffer was killed" kill-buffer) 404 (const :tag "After a buffer was killed" kill-buffer)
375 (const :tag "After a buffer was compiled successfully, update shell info" compile-buffer)))) 405 (const :tag "After a buffer was compiled successfully, update shell info" compile-buffer))))
376 406
377(defcustom idlwave-rinfo-max-source-lines 5 407(defcustom idlwave-rinfo-max-source-lines 5
378 "*Maximum number of source files displayed in the Routine Info window. 408 "*Maximum number of source files displayed in the Routine Info window.
379When an integer, it is the maximum number of source files displayed. 409When an integer, it is the maximum number of source files displayed.
@@ -382,43 +412,46 @@ t means to show all source files."
382 :type 'integer) 412 :type 'integer)
383 413
384(defcustom idlwave-library-path nil 414(defcustom idlwave-library-path nil
385 "Library path for Windows and MacOS. Not needed under Unix. 415 "Library path for Windows and MacOS. Not needed under Unix. When
386When selecting the directories to scan for IDL library routine info, 416selecting the directories to scan for IDL user catalog routine info,
387IDLWAVE can under UNIX query the shell for the exact search path. 417IDLWAVE can, under UNIX, query the shell for the exact search path
388However, under Windows and MacOS, the IDLWAVE shell does not work. In this 418\(the value of !PATH). However, under Windows and MacOS (pre-OSX),
389case, this variable specifies the path where IDLWAVE can find library files. 419the IDLWAVE shell does not work. In this case, this variable can be
390The shell will only be asked when this variable is nil. 420set to specify the paths where IDLWAVE can find PRO files. The shell
391The value is a list of directories. A directory preceeded by a `+' will 421will only be asked for a list of paths when this variable is nil. The
392be searched recursively. If you set this variable on a UNIX system, the shell 422value is a list of directories. A directory preceeded by a `+' will
393will not be asked. 423be searched recursively. If you set this variable on a UNIX system,
394See also `idlwave-system-directory'." 424the shell will not be queried. See also `idlwave-system-directory'."
395 :group 'idlwave-routine-info 425 :group 'idlwave-routine-info
396 :type '(repeat (directory))) 426 :type '(repeat (directory)))
397 427
398(defcustom idlwave-system-directory "" 428(defcustom idlwave-system-directory ""
399 "The IDL system directory for Windows and MacOS. Not needed under UNIX. 429 "The IDL system directory for Windows and MacOS. Not needed under
400Set this to the value of the `!DIR' system variable in IDL. IDLWAVE uses 430UNIX. Set this to the value of the `!DIR' system variable in IDL.
401this to find out which of the library routines belong to the official system 431IDLWAVE uses this to find out which of the library routines belong to
402library. All files inside the `lib' subdirectory are considered system 432the official system library. All files inside the `lib' subdirectory
403library files - so don't install private stuff in this directory. 433are considered system library files - so don't install private stuff
404On UNIX systems, IDLWAVE queries the shell for the value of `!DIR'. 434in this directory. On UNIX systems, IDLWAVE queries the shell for the
405See also `idlwave-library-path'." 435value of `!DIR'. See also `idlwave-library-path'."
406 :group 'idlwave-routine-info 436 :group 'idlwave-routine-info
407 :type 'directory) 437 :type 'directory)
408 438
409(defcustom idlwave-libinfo-file "~/.idlcat.el" 439(defcustom idlwave-config-directory
410 "*File for routine information of the IDL library. 440 (convert-standard-filename "~/.idlwave")
411When this points to a file, the file will be loaded when IDLWAVE first 441 "*Directory for configuration files and user-library catalog."
412accesses routine info (or does completion).
413When you scan the library with `idlwave-create-libinfo-file', this file
414will be used to store the result."
415 :group 'idlwave-routine-info 442 :group 'idlwave-routine-info
416 :type 'file) 443 :type 'file)
417 444
445(defvar idlwave-user-catalog-file "idlusercat.el")
446(defvar idlwave-path-file "idlpath.el")
447
448(defvar idlwave-libinfo-file nil
449 "*Obsolete variable, no longer used.")
450
418(defcustom idlwave-special-lib-alist nil 451(defcustom idlwave-special-lib-alist nil
419 "Alist of regular expressions matching special library directories. 452 "Alist of regular expressions matching special library directories.
420When listing routine source locations, IDLWAVE gives a short hint where 453When listing routine source locations, IDLWAVE gives a short hint where
421the file defining the routine is located. By default it lists `SystemLib' 454the file defining the routine is located. By default it lists `SystemLib'
422for routines in the system library `!DIR/lib' and `Library' for anything 455for routines in the system library `!DIR/lib' and `Library' for anything
423else. This variable can define additional types. The car of each entry 456else. This variable can define additional types. The car of each entry
424is a regular expression matching the file name (they normally will match 457is a regular expression matching the file name (they normally will match
@@ -428,92 +461,15 @@ chars are allowed."
428 :type '(repeat 461 :type '(repeat
429 (cons regexp string))) 462 (cons regexp string)))
430 463
431(defgroup idlwave-online-help nil 464(defcustom idlwave-auto-write-paths t
432 "Online Help options for IDLWAVE mode." 465 "Write out path (!PATH) and system directory (!DIR) info automatically.
433 :group 'idlwave) 466Path info is needed to locate library catalog files. If non-nil,
434 467whenever the path-list changes as a result of shell-query, etc., it is
435(defcustom idlwave-help-directory "" 468written to file. Otherwise, the menu option \"Write Paths\" can be
436 "The directory where idlw-help.txt and idlw-help.el are stored." 469used to force a write."
437 :group 'idlwave-online-help 470 :group 'idlwave-routine-info
438 :type 'file)
439
440(defcustom idlwave-help-use-dedicated-frame t
441 "*Non-nil means, use a separate frame for Online Help if possible."
442 :group 'idlwave-online-help
443 :type 'boolean)
444
445(defcustom idlwave-help-frame-parameters
446 '((height . 20) (unsplittable . t))
447 "The frame parameters for the special Online Help frame.
448See also `idlwave-help-use-dedicated-frame'.
449If you do not set the frame width here, the value specified in
450`idlw-help.el' will be used."
451 :group 'idlwave-online-help
452 :type '(repeat
453 (cons symbol sexp)))
454
455(defcustom idlwave-max-popup-menu-items 20
456 "Maximum number of items per pane in popup menus.
457Currently only used for class selection during completion help."
458 :group 'idlwave-online-help
459 :type 'integer)
460
461(defcustom idlwave-extra-help-function 'idlwave-help-with-source
462 "The function to call for online help if the normal help fails.
463Online help works only for system routines which are described in the
464IDL manuals. A function may be specified to access help from other sources.
465
466The function must accept four arguments: NAME, TYPE, CLASS, KEYWORD.
467The Help buffer is current when this function is called, and the help
468text should be loaded into this buffer. If help is found, the function
469should return the buffer position which should be used as `window-start'
470in the help window. Also, the variable `idlwave-help-mode-line-indicator'
471should be set to a useful string, which will be displayed in the mode line
472of the help window. If should also set the variable `idlwave-min-frame-width'
473to a positive integer. IDLWAVE will ensure that the help frame is at
474least that many columns wide.
475Failure to find help should be indicated by throwing an error.
476
477When this variable is non-nil, IDLWAVE will allow the mouse-3 help click
478for every routine and keyword, even though the item may not be highlighted
479in blue (indicating the availability of system documentation).
480
481The default value for this function is `idlwave-help-with-source' which
482loads the routine source file into the help buffer. If you try to write
483a different function which accesses a special help file or so, it is
484probably a good idea to still call this function as a fallback."
485 :group 'idlwave-online-help
486 :type 'symbol)
487
488(defcustom idlwave-help-fontify-source-code nil
489 "*Non-nil means, fontify source code displayed as help like normal code."
490 :group 'idlwave-online-help
491 :type 'boolean)
492
493(defcustom idlwave-help-source-try-header t
494 "*Non-nil means, try to find help in routine header when displaying source.
495Routines which are not documented in the system manual use their source as
496help text. When this variable is non-nil, we try to find a description of
497the help item in the first routine doclib header above the routine definition.
498If the variable is nil, or if we cannot find/parse the header, the routine
499definition is displayed instead."
500 :group 'idlwave-online-help
501 :type 'boolean)
502
503(defface idlwave-help-link-face
504 '((((class color)) (:foreground "Blue"))
505 (t (:weight bold)))
506 "Face for highlighting links into IDLWAVE online help."
507 :group 'idlwave-online-help)
508
509(defcustom idlwave-help-activate-links-aggressively t
510 "*Non-nil means, make all possible links in help active.
511This just activates all words which are also a help topic - some links may
512be misleading."
513 :group 'idlwave-online-help
514 :type 'boolean) 471 :type 'boolean)
515 472
516
517(defgroup idlwave-completion nil 473(defgroup idlwave-completion nil
518 "Completion options for IDLWAVE mode." 474 "Completion options for IDLWAVE mode."
519 :prefix "idlwave" 475 :prefix "idlwave"
@@ -537,7 +493,7 @@ be misleading."
537This variable determines the case (UPPER/lower/Capitalized...) of 493This variable determines the case (UPPER/lower/Capitalized...) of
538words inserted into the buffer by completion. The preferred case can 494words inserted into the buffer by completion. The preferred case can
539be specified separately for routine names, keywords, classes and 495be specified separately for routine names, keywords, classes and
540methods. 496methods.
541This alist should therefore have entries for `routine' (normal 497This alist should therefore have entries for `routine' (normal
542functions and procedures, i.e. non-methods), `keyword', `class', and 498functions and procedures, i.e. non-methods), `keyword', `class', and
543`method'. Plausible values are 499`method'. Plausible values are
@@ -624,7 +580,7 @@ certain methods this assumption is almost always true. The methods
624for which to assume this can be set here." 580for which to assume this can be set here."
625 :group 'idlwave-routine-info 581 :group 'idlwave-routine-info
626 :type '(repeat (regexp :tag "Match method:"))) 582 :type '(repeat (regexp :tag "Match method:")))
627 583
628 584
629(defcustom idlwave-completion-show-classes 1 585(defcustom idlwave-completion-show-classes 1
630 "*Number of classes to show when completing object methods and keywords. 586 "*Number of classes to show when completing object methods and keywords.
@@ -689,7 +645,7 @@ should contain at least two elements: (method-default . VALUE) and
689specify if the class should be found during method and keyword 645specify if the class should be found during method and keyword
690completion, respectively. 646completion, respectively.
691 647
692The alist may have additional entries specifying exceptions from the 648The alist may have additional entries specifying exceptions from the
693keyword completion rule for specific methods, like INIT or 649keyword completion rule for specific methods, like INIT or
694GETPROPERTY. In order to turn on class specification for the INIT 650GETPROPERTY. In order to turn on class specification for the INIT
695method, add an entry (\"INIT\" . t). The method name must be ALL-CAPS." 651method, add an entry (\"INIT\" . t). The method name must be ALL-CAPS."
@@ -713,7 +669,7 @@ particular object method call. This happens during the commands
713value of the variable `idlwave-query-class'. 669value of the variable `idlwave-query-class'.
714 670
715When you specify a class, this information can be stored as a text 671When you specify a class, this information can be stored as a text
716property on the `->' arrow in the source code, so that during the same 672property on the `->' arrow in the source code, so that during the same
717editing session, IDLWAVE will not have to ask again. When this 673editing session, IDLWAVE will not have to ask again. When this
718variable is non-nil, IDLWAVE will store and reuse the class information. 674variable is non-nil, IDLWAVE will store and reuse the class information.
719The class stored can be checked and removed with `\\[idlwave-routine-info]' 675The class stored can be checked and removed with `\\[idlwave-routine-info]'
@@ -807,11 +763,11 @@ Also see help for `idlwave-surround'."
807 :type 'boolean) 763 :type 'boolean)
808 764
809(defcustom idlwave-pad-keyword t 765(defcustom idlwave-pad-keyword t
810 "*Non-nil means pad '=' for keywords like assignments. 766 "*Non-nil means pad '=' in keywords (routine calls or defs) like assignment.
811Whenever `idlwave-surround' is non-nil then this affects how '=' is padded 767Whenever `idlwave-surround' is non-nil then this affects how '=' is
812for keywords. If t, it is padded the same as for assignments. 768padded for keywords and for variables. If t, pad the same as for
813If nil then spaces are removed. With any other value, spaces are left 769assignments. If nil then spaces are removed. With any other value,
814unchanged." 770spaces are left unchanged."
815 :group 'idlwave-abbrev-and-indent-action 771 :group 'idlwave-abbrev-and-indent-action
816 :type '(choice 772 :type '(choice
817 (const :tag "Pad like assignments" t) 773 (const :tag "Pad like assignments" t)
@@ -1093,7 +1049,7 @@ IDL process is made."
1093 :group 'idlwave-misc 1049 :group 'idlwave-misc
1094 :type 'boolean) 1050 :type 'boolean)
1095 1051
1096(defcustom idlwave-default-font-lock-items 1052(defcustom idlwave-default-font-lock-items
1097 '(pros-and-functions batch-files idlwave-idl-keywords label goto 1053 '(pros-and-functions batch-files idlwave-idl-keywords label goto
1098 common-blocks class-arrows) 1054 common-blocks class-arrows)
1099 "Items which should be fontified on the default fontification level 2. 1055 "Items which should be fontified on the default fontification level 2.
@@ -1151,35 +1107,36 @@ As a user, you should not set this to t.")
1151;;; Non customization variables 1107;;; Non customization variables
1152 1108
1153;;; font-lock mode - Additions by Phil Williams, Ulrik Dickow and 1109;;; font-lock mode - Additions by Phil Williams, Ulrik Dickow and
1154;;; Simon Marshall <simon@gnu.ai.mit.edu> 1110;;; Simon Marshall <simon_at_gnu.ai.mit.edu>
1155;;; and Carsten Dominik... 1111;;; and Carsten Dominik...
1156 1112
1157;; The following are the reserved words in IDL. Maybe we should 1113;; The following are the reserved words in IDL. Maybe we should
1158;; highlight some more stuff as well? 1114;; highlight some more stuff as well?
1159;; Procedure declarations. Fontify keyword plus procedure name. 1115;; Procedure declarations. Fontify keyword plus procedure name.
1160(defvar idlwave-idl-keywords 1116(defvar idlwave-idl-keywords
1161 ;; To update this regexp, update the list of keywords and 1117 ;; To update this regexp, update the list of keywords and
1162 ;; evaluate the form. 1118 ;; evaluate the form.
1163 ;; (insert 1119 ;; (insert
1164 ;; (prin1-to-string 1120 ;; (prin1-to-string
1165 ;; (concat 1121 ;; (concat
1166 ;; "\\<\\(" 1122 ;; "\\<\\("
1167 ;; (regexp-opt 1123 ;; (regexp-opt
1168 ;; '("and" "or" "xor" "not" 1124 ;; '("||" "&&" "and" "or" "xor" "not"
1169 ;; "eq" "ge" "gt" "le" "lt" "ne" 1125 ;; "eq" "ge" "gt" "le" "lt" "ne"
1170 ;; "for" "do" "endfor" 1126 ;; "for" "do" "endfor"
1171 ;; "if" "then" "endif" "else" "endelse" 1127 ;; "if" "then" "endif" "else" "endelse"
1172 ;; "case" "of" "endcase" 1128 ;; "case" "of" "endcase"
1173 ;; "switch" "break" "continue" "endswitch" 1129 ;; "switch" "break" "continue" "endswitch"
1174 ;; "begin" "end" 1130 ;; "begin" "end"
1175 ;; "repeat" "until" "endrep" 1131 ;; "repeat" "until" "endrep"
1176 ;; "while" "endwhile" 1132 ;; "while" "endwhile"
1177 ;; "goto" "return" 1133 ;; "goto" "return"
1178 ;; "inherits" "mod" 1134 ;; "inherits" "mod"
1179 ;; "compile_opt" "forward_function" 1135 ;; "compile_opt" "forward_function"
1180 ;; "on_error" "on_ioerror")) ; on_error is not officially reserved 1136 ;; "on_error" "on_ioerror")) ; on_error is not officially reserved
1181 ;; "\\)\\>"))) 1137 ;; "\\)\\>")))
1182 "\\<\\(and\\|b\\(egin\\|reak\\)\\|c\\(ase\\|o\\(mpile_opt\\|ntinue\\)\\)\\|do\\|e\\(lse\\|nd\\(case\\|else\\|for\\|if\\|rep\\|switch\\|while\\)?\\|q\\)\\|for\\(ward_function\\)?\\|g\\(oto\\|[et]\\)\\|i\\(f\\|nherits\\)\\|l[et]\\|mod\\|n\\(e\\|ot\\)\\|o\\(n_\\(error\\|ioerror\\)\\|[fr]\\)\\|re\\(peat\\|turn\\)\\|switch\\|then\\|until\\|while\\|xor\\)\\>") 1138 "\\<\\(&&\\|and\\|b\\(egin\\|reak\\)\\|c\\(ase\\|o\\(mpile_opt\\|ntinue\\)\\)\\|do\\|e\\(lse\\|nd\\(case\\|else\\|for\\|if\\|rep\\|switch\\|while\\)?\\|q\\)\\|for\\(ward_function\\)?\\|g\\(oto\\|[et]\\)\\|i\\(f\\|nherits\\)\\|l[et]\\|mod\\|n\\(e\\|ot\\)\\|o\\(n_\\(error\\|ioerror\\)\\|[fr]\\)\\|re\\(peat\\|turn\\)\\|switch\\|then\\|until\\|while\\|xor\\|||\\)\\>")
1139
1183 1140
1184(let* (;; Procedure declarations. Fontify keyword plus procedure name. 1141(let* (;; Procedure declarations. Fontify keyword plus procedure name.
1185 ;; Function declarations. Fontify keyword plus function name. 1142 ;; Function declarations. Fontify keyword plus function name.
@@ -1195,7 +1152,7 @@ As a user, you should not set this to t.")
1195 (2 font-lock-reference-face nil t) ; block name 1152 (2 font-lock-reference-face nil t) ; block name
1196 (font-lock-match-c++-style-declaration-item-and-skip-to-next 1153 (font-lock-match-c++-style-declaration-item-and-skip-to-next
1197 ;; Start with point after block name and comma 1154 ;; Start with point after block name and comma
1198 (goto-char (match-end 0)) ; needed for XEmacs, could be nil 1155 (goto-char (match-end 0)) ; needed for XEmacs, could be nil
1199 nil 1156 nil
1200 (1 font-lock-variable-name-face) ; variable names 1157 (1 font-lock-variable-name-face) ; variable names
1201 ))) 1158 )))
@@ -1218,8 +1175,10 @@ As a user, you should not set this to t.")
1218 (1 font-lock-keyword-face) 1175 (1 font-lock-keyword-face)
1219 (2 font-lock-reference-face))) 1176 (2 font-lock-reference-face)))
1220 1177
1221 ;; Tags in structure definitions. Note that this definition actually 1178 ;; Tags in structure definitions. Note that this definition
1222 ;; collides with labels, so we have to use the same face. 1179 ;; actually collides with labels, so we have to use the same
1180 ;; face. It also matches named subscript ranges,
1181 ;; e.g. vec{bottom:top]. No good way around this.
1223 (structtag 1182 (structtag
1224 '("\\<\\([a-zA-Z][a-zA-Z0-9_]*:\\)[^:]" (1 font-lock-reference-face))) 1183 '("\\<\\([a-zA-Z][a-zA-Z0-9_]*:\\)[^:]" (1 font-lock-reference-face)))
1225 1184
@@ -1228,7 +1187,7 @@ As a user, you should not set this to t.")
1228 '("\\({\\|\\<inherits\\s-\\)\\s-*\\([a-zA-Z][a-zA-Z0-9_]*\\)[},\t \n]" 1187 '("\\({\\|\\<inherits\\s-\\)\\s-*\\([a-zA-Z][a-zA-Z0-9_]*\\)[},\t \n]"
1229 (2 font-lock-function-name-face))) 1188 (2 font-lock-function-name-face)))
1230 1189
1231 ;; Named parameters, like /xlog or ,xrange=[] 1190 ;; Keyword parameters, like /xlog or ,xrange=[]
1232 ;; This is anchored to the comma preceeding the keyword. 1191 ;; This is anchored to the comma preceeding the keyword.
1233 ;; Treats continuation lines, works only during whole buffer 1192 ;; Treats continuation lines, works only during whole buffer
1234 ;; fontification. Slow, use it only in fancy fontification. 1193 ;; fontification. Slow, use it only in fancy fontification.
@@ -1248,7 +1207,7 @@ As a user, you should not set this to t.")
1248 ;; All operators (not used because too noisy) 1207 ;; All operators (not used because too noisy)
1249 (all-operators 1208 (all-operators
1250 '("[-*^#+<>/]" (0 font-lock-keyword-face))) 1209 '("[-*^#+<>/]" (0 font-lock-keyword-face)))
1251 1210
1252 ;; Arrows with text property `idlwave-class' 1211 ;; Arrows with text property `idlwave-class'
1253 (class-arrows 1212 (class-arrows
1254 '(idlwave-match-class-arrows (0 idlwave-class-arrow-face)))) 1213 '(idlwave-match-class-arrows (0 idlwave-class-arrow-face))))
@@ -1285,14 +1244,14 @@ As a user, you should not set this to t.")
1285 1244
1286(defvar idlwave-font-lock-defaults 1245(defvar idlwave-font-lock-defaults
1287 '((idlwave-font-lock-keywords 1246 '((idlwave-font-lock-keywords
1288 idlwave-font-lock-keywords-1 1247 idlwave-font-lock-keywords-1
1289 idlwave-font-lock-keywords-2 1248 idlwave-font-lock-keywords-2
1290 idlwave-font-lock-keywords-3) 1249 idlwave-font-lock-keywords-3)
1291 nil t 1250 nil t
1292 ((?$ . "w") (?_ . "w") (?. . "w")) 1251 ((?$ . "w") (?_ . "w") (?. . "w") (?| . "w") (?& . "w"))
1293 beginning-of-line)) 1252 beginning-of-line))
1294 1253
1295(put 'idlwave-mode 'font-lock-defaults 1254(put 'idlwave-mode 'font-lock-defaults
1296 idlwave-font-lock-defaults) ; XEmacs 1255 idlwave-font-lock-defaults) ; XEmacs
1297 1256
1298(defconst idlwave-comment-line-start-skip "^[ \t]*;" 1257(defconst idlwave-comment-line-start-skip "^[ \t]*;"
@@ -1300,16 +1259,16 @@ As a user, you should not set this to t.")
1300That is the _beginning_ of a line containing a comment delimiter `;' preceded 1259That is the _beginning_ of a line containing a comment delimiter `;' preceded
1301only by whitespace.") 1260only by whitespace.")
1302 1261
1303(defconst idlwave-begin-block-reg 1262(defconst idlwave-begin-block-reg
1304 "\\<\\(pro\\|function\\|begin\\|case\\|switch\\)\\>" 1263 "\\<\\(pro\\|function\\|begin\\|case\\|switch\\)\\>"
1305 "Regular expression to find the beginning of a block. The case does 1264 "Regular expression to find the beginning of a block. The case does
1306not matter. The search skips matches in comments.") 1265not matter. The search skips matches in comments.")
1307 1266
1308(defconst idlwave-begin-unit-reg "\\<\\(pro\\|function\\)\\>\\|\\`" 1267(defconst idlwave-begin-unit-reg "^\\s-*\\(pro\\|function\\)\\>\\|\\`"
1309 "Regular expression to find the beginning of a unit. The case does 1268 "Regular expression to find the beginning of a unit. The case does
1310not matter.") 1269not matter.")
1311 1270
1312(defconst idlwave-end-unit-reg "\\<\\(pro\\|function\\)\\>\\|\\'" 1271(defconst idlwave-end-unit-reg "^\\s-*\\(pro\\|function\\)\\>\\|\\'"
1313 "Regular expression to find the line that indicates the end of unit. 1272 "Regular expression to find the line that indicates the end of unit.
1314This line is the end of buffer or the start of another unit. The case does 1273This line is the end of buffer or the start of another unit. The case does
1315not matter. The search skips matches in comments.") 1274not matter. The search skips matches in comments.")
@@ -1345,7 +1304,7 @@ to expand generic end statements to their detailed form.")
1345blocks starting with a BEGIN statement. The matches must have associations 1304blocks starting with a BEGIN statement. The matches must have associations
1346`idlwave-block-matches'") 1305`idlwave-block-matches'")
1347 1306
1348(defconst idlwave-identifier "[a-zA-Z][a-zA-Z0-9$_]*" 1307(defconst idlwave-identifier "[a-zA-Z_][a-zA-Z0-9$_]*"
1349 "Regular expression matching an IDL identifier.") 1308 "Regular expression matching an IDL identifier.")
1350 1309
1351(defconst idlwave-sysvar (concat "!" idlwave-identifier) 1310(defconst idlwave-sysvar (concat "!" idlwave-identifier)
@@ -1357,6 +1316,10 @@ blocks starting with a BEGIN statement. The matches must have associations
1357(defconst idlwave-label (concat idlwave-identifier ":") 1316(defconst idlwave-label (concat idlwave-identifier ":")
1358 "Regular expression matching IDL labels.") 1317 "Regular expression matching IDL labels.")
1359 1318
1319(defconst idlwave-method-call (concat idlwave-identifier "\\s *->"
1320 "\\(\\s *" idlwave-identifier "::\\)?"
1321))
1322
1360(defconst idlwave-statement-match 1323(defconst idlwave-statement-match
1361 (list 1324 (list
1362 ;; "endif else" is the only possible "end" that can be 1325 ;; "endif else" is the only possible "end" that can be
@@ -1373,9 +1336,17 @@ blocks starting with a BEGIN statement. The matches must have associations
1373 '(goto . ("goto\\>" nil)) 1336 '(goto . ("goto\\>" nil))
1374 '(case . ("case\\>" nil)) 1337 '(case . ("case\\>" nil))
1375 '(switch . ("switch\\>" nil)) 1338 '(switch . ("switch\\>" nil))
1376 (cons 'call (list (concat idlwave-identifier "\\(\\s *$\\|\\s *,\\)") nil)) 1339 (cons 'call (list (concat "\\(" idlwave-variable "\\) *= *"
1377 '(assign . ("[^=>\n]*=" nil))) 1340 "\\(" idlwave-method-call "\\s *\\)?"
1378 1341 idlwave-identifier
1342 "\\s *(") nil))
1343 (cons 'call (list (concat
1344 "\\(" idlwave-method-call "\\s *\\)?"
1345 idlwave-identifier
1346 "\\( *\\($\\|\\$\\)\\|\\s *,\\)") nil))
1347 (cons 'assign (list (concat
1348 "\\(" idlwave-variable "\\) *=") nil)))
1349
1379 "Associated list of statement matching regular expressions. 1350 "Associated list of statement matching regular expressions.
1380Each regular expression matches the start of an IDL statement. The 1351Each regular expression matches the start of an IDL statement. The
1381first element of each association is a symbol giving the statement 1352first element of each association is a symbol giving the statement
@@ -1398,7 +1369,7 @@ the leftover unidentified statements containing an equal sign." )
1398;; Note that this is documented in the v18 manuals as being a string 1369;; Note that this is documented in the v18 manuals as being a string
1399;; of length one rather than a single character. 1370;; of length one rather than a single character.
1400;; The code in this file accepts either format for compatibility. 1371;; The code in this file accepts either format for compatibility.
1401(defvar idlwave-comment-indent-char ?\s 1372(defvar idlwave-comment-indent-char ?\
1402 "Character to be inserted for IDL comment indentation. 1373 "Character to be inserted for IDL comment indentation.
1403Normally a space.") 1374Normally a space.")
1404 1375
@@ -1406,7 +1377,7 @@ Normally a space.")
1406 "Character which is inserted as a last character on previous line by 1377 "Character which is inserted as a last character on previous line by
1407 \\[idlwave-split-line] to begin a continuation line. Normally $.") 1378 \\[idlwave-split-line] to begin a continuation line. Normally $.")
1408 1379
1409(defconst idlwave-mode-version " 4.15") 1380(defconst idlwave-mode-version "5.5")
1410 1381
1411(defmacro idlwave-keyword-abbrev (&rest args) 1382(defmacro idlwave-keyword-abbrev (&rest args)
1412 "Creates a function for abbrev hooks to call `idlwave-check-abbrev' with args." 1383 "Creates a function for abbrev hooks to call `idlwave-check-abbrev' with args."
@@ -1564,21 +1535,25 @@ Capitalize system variables - action only
1564(define-key idlwave-mode-map "\C-c\C-m" 'idlwave-doc-modification) 1535(define-key idlwave-mode-map "\C-c\C-m" 'idlwave-doc-modification)
1565(define-key idlwave-mode-map "\C-c\C-c" 'idlwave-case) 1536(define-key idlwave-mode-map "\C-c\C-c" 'idlwave-case)
1566(define-key idlwave-mode-map "\C-c\C-d" 'idlwave-debug-map) 1537(define-key idlwave-mode-map "\C-c\C-d" 'idlwave-debug-map)
1567(define-key idlwave-mode-map "\C-c\C-d\C-c" 'idlwave-shell-save-and-run)
1568(define-key idlwave-mode-map "\C-c\C-d\C-b" 'idlwave-shell-break-here)
1569(when (and (boundp 'idlwave-shell-debug-modifiers) 1538(when (and (boundp 'idlwave-shell-debug-modifiers)
1570 (listp idlwave-shell-debug-modifiers) 1539 (listp idlwave-shell-debug-modifiers)
1571 (not (equal idlwave-shell-debug-modifiers '()))) 1540 (not (equal idlwave-shell-debug-modifiers '())))
1572 ;; Bind the debug commands also with the special modifiers. 1541 ;; Bind the debug commands also with the special modifiers.
1573 (let ((shift (memq 'shift idlwave-shell-debug-modifiers)) 1542 (let ((shift (memq 'shift idlwave-shell-debug-modifiers))
1574 (mods-noshift (delq 'shift 1543 (mods-noshift (delq 'shift
1575 (copy-sequence idlwave-shell-debug-modifiers)))) 1544 (copy-sequence idlwave-shell-debug-modifiers))))
1576 (define-key idlwave-mode-map 1545 (define-key idlwave-mode-map
1577 (vector (append mods-noshift (list (if shift ?C ?c)))) 1546 (vector (append mods-noshift (list (if shift ?C ?c))))
1578 'idlwave-shell-save-and-run) 1547 'idlwave-shell-save-and-run)
1579 (define-key idlwave-mode-map 1548 (define-key idlwave-mode-map
1580 (vector (append mods-noshift (list (if shift ?B ?b)))) 1549 (vector (append mods-noshift (list (if shift ?B ?b))))
1581 'idlwave-shell-break-here))) 1550 'idlwave-shell-break-here)
1551 (define-key idlwave-mode-map
1552 (vector (append mods-noshift (list (if shift ?E ?e))))
1553 'idlwave-shell-run-region)))
1554(define-key idlwave-mode-map "\C-c\C-d\C-c" 'idlwave-shell-save-and-run)
1555(define-key idlwave-mode-map "\C-c\C-d\C-b" 'idlwave-shell-break-here)
1556(define-key idlwave-mode-map "\C-c\C-d\C-e" 'idlwave-shell-run-region)
1582(define-key idlwave-mode-map "\C-c\C-f" 'idlwave-for) 1557(define-key idlwave-mode-map "\C-c\C-f" 'idlwave-for)
1583;; (define-key idlwave-mode-map "\C-c\C-f" 'idlwave-function) 1558;; (define-key idlwave-mode-map "\C-c\C-f" 'idlwave-function)
1584;; (define-key idlwave-mode-map "\C-c\C-p" 'idlwave-procedure) 1559;; (define-key idlwave-mode-map "\C-c\C-p" 'idlwave-procedure)
@@ -1597,27 +1572,34 @@ Capitalize system variables - action only
1597 "Save and run buffer under the shell." t) 1572 "Save and run buffer under the shell." t)
1598(autoload 'idlwave-shell-break-here "idlw-shell" 1573(autoload 'idlwave-shell-break-here "idlw-shell"
1599 "Set breakpoint in current line." t) 1574 "Set breakpoint in current line." t)
1575(autoload 'idlwave-shell-run-region "idlw-shell"
1576 "Compile and run the region." t)
1600(define-key idlwave-mode-map "\C-c\C-v" 'idlwave-find-module) 1577(define-key idlwave-mode-map "\C-c\C-v" 'idlwave-find-module)
1601(define-key idlwave-mode-map "\C-c?" 'idlwave-routine-info) 1578(define-key idlwave-mode-map "\C-c?" 'idlwave-routine-info)
1602(define-key idlwave-mode-map "\M-?" 'idlwave-context-help) 1579(define-key idlwave-mode-map "\M-?" 'idlwave-context-help)
1603(define-key idlwave-mode-map [(control meta ?\?)] 'idlwave-online-help) 1580(define-key idlwave-mode-map [(control meta ?\?)] 'idlwave-online-help)
1581;; Pickup both forms of Esc/Meta binding
1604(define-key idlwave-mode-map [(meta tab)] 'idlwave-complete) 1582(define-key idlwave-mode-map [(meta tab)] 'idlwave-complete)
1605(define-key idlwave-mode-map "\C-c\C-i" 'idlwave-update-routine-info) 1583(define-key idlwave-mode-map [?\e?\t] 'idlwave-complete)
1606(define-key idlwave-mode-map "\C-c=" 'idlwave-resolve) 1584(define-key idlwave-mode-map "\M-\C-i" 'idlwave-complete)
1607(define-key idlwave-mode-map 1585(define-key idlwave-mode-map "\C-c\C-i" 'idlwave-update-routine-info)
1586(define-key idlwave-mode-map "\C-c=" 'idlwave-resolve)
1587(define-key idlwave-mode-map
1608 (if (featurep 'xemacs) [(shift button3)] [(shift mouse-3)]) 1588 (if (featurep 'xemacs) [(shift button3)] [(shift mouse-3)])
1609 'idlwave-mouse-context-help) 1589 'idlwave-mouse-context-help)
1610 1590
1611;; Set action and key bindings. 1591;; Set action and key bindings.
1612;; See description of the function `idlwave-action-and-binding'. 1592;; See description of the function `idlwave-action-and-binding'.
1613;; Automatically add spaces for the following characters 1593;; Automatically add spaces for the following characters
1614(idlwave-action-and-binding "&" '(idlwave-surround -1 -1)) 1594;(idlwave-action-and-binding "&" '(idlwave-surround -1 -1 '(?&) 1
1595; (lambda (char) 0)))
1615(idlwave-action-and-binding "<" '(idlwave-surround -1 -1)) 1596(idlwave-action-and-binding "<" '(idlwave-surround -1 -1))
1616;; Binding works for both > and ->, by changing the length of the token. 1597;; Binding works for both > and ->, by changing the length of the token.
1617(idlwave-action-and-binding ">" '(idlwave-surround -1 -1 '(?-) 1 1598(idlwave-action-and-binding ">" '(idlwave-surround -1 -1 '(?-) 1
1618 'idlwave-gtr-pad-hook)) 1599 'idlwave-gtr-pad-hook))
1619(idlwave-action-and-binding "->" '(idlwave-surround -1 -1 nil 2) t) 1600(idlwave-action-and-binding "->" '(idlwave-surround -1 -1 nil 2) t)
1620(idlwave-action-and-binding "," '(idlwave-surround 0 -1)) 1601(idlwave-action-and-binding "," '(idlwave-surround 0 -1))
1602
1621;; Automatically add spaces to equal sign if not keyword 1603;; Automatically add spaces to equal sign if not keyword
1622(idlwave-action-and-binding "=" '(idlwave-expand-equal -1 -1)) 1604(idlwave-action-and-binding "=" '(idlwave-expand-equal -1 -1))
1623 1605
@@ -1647,7 +1629,7 @@ idlwave-mode-abbrev-table unless TABLE is non-nil."
1647 (error (apply 'define-abbrev args))))) 1629 (error (apply 'define-abbrev args)))))
1648 1630
1649(condition-case nil 1631(condition-case nil
1650 (modify-syntax-entry (string-to-char idlwave-abbrev-start-char) 1632 (modify-syntax-entry (string-to-char idlwave-abbrev-start-char)
1651 "w" idlwave-mode-syntax-table) 1633 "w" idlwave-mode-syntax-table)
1652 (error nil)) 1634 (error nil))
1653 1635
@@ -1720,7 +1702,7 @@ idlwave-mode-abbrev-table unless TABLE is non-nil."
1720(idlwave-define-abbrev "s" "size()" (idlwave-keyword-abbrev 1)) 1702(idlwave-define-abbrev "s" "size()" (idlwave-keyword-abbrev 1))
1721(idlwave-define-abbrev "wi" "widget_info()" (idlwave-keyword-abbrev 1)) 1703(idlwave-define-abbrev "wi" "widget_info()" (idlwave-keyword-abbrev 1))
1722(idlwave-define-abbrev "wc" "widget_control," (idlwave-keyword-abbrev 0)) 1704(idlwave-define-abbrev "wc" "widget_control," (idlwave-keyword-abbrev 0))
1723 1705
1724;; This section is reserved words only. (From IDL user manual) 1706;; This section is reserved words only. (From IDL user manual)
1725;; 1707;;
1726(idlwave-define-abbrev "and" "and" (idlwave-keyword-abbrev 0 t) t) 1708(idlwave-define-abbrev "and" "and" (idlwave-keyword-abbrev 0 t) t)
@@ -1769,12 +1751,12 @@ idlwave-mode-abbrev-table unless TABLE is non-nil."
1769(defvar imenu-extract-index-name-function) 1751(defvar imenu-extract-index-name-function)
1770(defvar imenu-prev-index-position-function) 1752(defvar imenu-prev-index-position-function)
1771;; defined later - so just make the compiler hush 1753;; defined later - so just make the compiler hush
1772(defvar idlwave-mode-menu) 1754(defvar idlwave-mode-menu)
1773(defvar idlwave-mode-debug-menu) 1755(defvar idlwave-mode-debug-menu)
1774 1756
1775;;;###autoload 1757;;;###autoload
1776(defun idlwave-mode () 1758(defun idlwave-mode ()
1777 "Major mode for editing IDL and WAVE CL .pro files. 1759 "Major mode for editing IDL source files (version 5.5).
1778 1760
1779The main features of this mode are 1761The main features of this mode are
1780 1762
@@ -1801,8 +1783,7 @@ The main features of this mode are
1801 relative to the first will be retained. Use 1783 relative to the first will be retained. Use
1802 \\[idlwave-auto-fill-mode] to toggle auto-fill mode for these 1784 \\[idlwave-auto-fill-mode] to toggle auto-fill mode for these
1803 comments. When the variable `idlwave-fill-comment-line-only' is 1785 comments. When the variable `idlwave-fill-comment-line-only' is
1804 nil, code can also be auto-filled and auto-indented (not 1786 nil, code can also be auto-filled and auto-indented.
1805 recommended).
1806 1787
1807 To convert pre-existing IDL code to your formatting style, mark the 1788 To convert pre-existing IDL code to your formatting style, mark the
1808 entire buffer with \\[mark-whole-buffer] and execute 1789 entire buffer with \\[mark-whole-buffer] and execute
@@ -1817,24 +1798,28 @@ The main features of this mode are
1817 source file of a module. These commands know about system 1798 source file of a module. These commands know about system
1818 routines, all routines in idlwave-mode buffers and (when the 1799 routines, all routines in idlwave-mode buffers and (when the
1819 idlwave-shell is active) about all modules currently compiled under 1800 idlwave-shell is active) about all modules currently compiled under
1820 this shell. Use \\[idlwave-update-routine-info] to update this 1801 this shell. It also makes use of pre-compiled or custom-scanned
1802 user and library catalogs many popular libraries ship with by
1803 default. Use \\[idlwave-update-routine-info] to update this
1821 information, which is also used for completion (see item 4). 1804 information, which is also used for completion (see item 4).
1822 1805
18233. Online IDL Help 18063. Online IDL Help
1824 --------------- 1807 ---------------
1825 \\[idlwave-context-help] displays the IDL documentation relevant 1808 \\[idlwave-context-help] displays the IDL documentation relevant
1826 for the system variable, keyword, or routine at point. A single key 1809 for the system variable, keyword, or routine at point. A single
1827 stroke gets you directly to the right place in the docs. Two additional 1810 key stroke gets you directly to the right place in the docs. The
1828 files (an ASCII version of the IDL documentation and a topics file) must 1811 HTML help files package must be installed for this to work -- check
1829 be installed for this - check the IDLWAVE webpage for these files. 1812 the IDLWAVE webpage for the correct package for your version. See
1813 the manual to configure where and how the HTML help is displayed.
1830 1814
18314. Completion 18154. Completion
1832 ---------- 1816 ----------
1833 \\[idlwave-complete] completes the names of procedures, functions 1817 \\[idlwave-complete] completes the names of procedures, functions
1834 class names and keyword parameters. It is context sensitive and 1818 class names, keyword parameters, system variables and tags, class
1835 figures out what is expected at point (procedure/function/keyword). 1819 tags, structure tags, filenames and much more. It is context
1836 Lower case strings are completed in lower case, other strings in 1820 sensitive and figures out what is expected at point. Lower case
1837 mixed or upper case. 1821 strings are completed in lower case, other strings in mixed or
1822 upper case.
1838 1823
18395. Code Templates and Abbreviations 18245. Code Templates and Abbreviations
1840 -------------------------------- 1825 --------------------------------
@@ -1851,13 +1836,14 @@ The main features of this mode are
1851 \\i IF statement template 1836 \\i IF statement template
1852 \\elif IF-ELSE statement template 1837 \\elif IF-ELSE statement template
1853 \\b BEGIN 1838 \\b BEGIN
1839
1840 For a full list, use \\[idlwave-list-abbrevs]. Some templates also
1841 have direct keybindings - see the list of keybindings below.
1854 1842
1855 For a full list, use \\[idlwave-list-abbrevs]. Some templates also have 1843 \\[idlwave-doc-header] inserts a documentation header at the
1856 direct keybindings - see the list of keybindings below. 1844 beginning of the current program unit (pro, function or main).
1857 1845 Change log entries can be added to the current program unit with
1858 \\[idlwave-doc-header] inserts a documentation header at the beginning of the 1846 \\[idlwave-doc-modification].
1859 current program unit (pro, function or main). Change log entries
1860 can be added to the current program unit with \\[idlwave-doc-modification].
1861 1847
18626. Automatic Case Conversion 18486. Automatic Case Conversion
1863 ------------------------- 1849 -------------------------
@@ -1892,26 +1878,26 @@ The main features of this mode are
1892 1878
1893 (interactive) 1879 (interactive)
1894 (kill-all-local-variables) 1880 (kill-all-local-variables)
1895 1881
1896 (if idlwave-startup-message 1882 (if idlwave-startup-message
1897 (message "Emacs IDLWAVE mode version %s." idlwave-mode-version)) 1883 (message "Emacs IDLWAVE mode version %s." idlwave-mode-version))
1898 (setq idlwave-startup-message nil) 1884 (setq idlwave-startup-message nil)
1899 1885
1900 (setq local-abbrev-table idlwave-mode-abbrev-table) 1886 (setq local-abbrev-table idlwave-mode-abbrev-table)
1901 (set-syntax-table idlwave-mode-syntax-table) 1887 (set-syntax-table idlwave-mode-syntax-table)
1902 1888
1903 (set (make-local-variable 'indent-line-function) 'idlwave-indent-and-action) 1889 (set (make-local-variable 'indent-line-function) 'idlwave-indent-and-action)
1904 1890
1905 (make-local-variable idlwave-comment-indent-function) 1891 (make-local-variable idlwave-comment-indent-function)
1906 (set idlwave-comment-indent-function 'idlwave-comment-hook) 1892 (set idlwave-comment-indent-function 'idlwave-comment-hook)
1907 1893
1908 (set (make-local-variable 'comment-start-skip) ";+[ \t]*") 1894 (set (make-local-variable 'comment-start-skip) ";+[ \t]*")
1909 (set (make-local-variable 'comment-start) ";") 1895 (set (make-local-variable 'comment-start) ";")
1910 (set (make-local-variable 'require-final-newline) t) 1896 (set (make-local-variable 'require-final-newline) t)
1911 (set (make-local-variable 'abbrev-all-caps) t) 1897 (set (make-local-variable 'abbrev-all-caps) t)
1912 (set (make-local-variable 'indent-tabs-mode) nil) 1898 (set (make-local-variable 'indent-tabs-mode) nil)
1913 (set (make-local-variable 'completion-ignore-case) t) 1899 (set (make-local-variable 'completion-ignore-case) t)
1914 1900
1915 (use-local-map idlwave-mode-map) 1901 (use-local-map idlwave-mode-map)
1916 1902
1917 (when (featurep 'easymenu) 1903 (when (featurep 'easymenu)
@@ -1921,11 +1907,11 @@ The main features of this mode are
1921 (setq mode-name "IDLWAVE") 1907 (setq mode-name "IDLWAVE")
1922 (setq major-mode 'idlwave-mode) 1908 (setq major-mode 'idlwave-mode)
1923 (setq abbrev-mode t) 1909 (setq abbrev-mode t)
1924 1910
1925 (set (make-local-variable idlwave-fill-function) 'idlwave-auto-fill) 1911 (set (make-local-variable idlwave-fill-function) 'idlwave-auto-fill)
1926 (setq comment-end "") 1912 (setq comment-end "")
1927 (set (make-local-variable 'comment-multi-line) nil) 1913 (set (make-local-variable 'comment-multi-line) nil)
1928 (set (make-local-variable 'paragraph-separate) 1914 (set (make-local-variable 'paragraph-separate)
1929 "[ \t\f]*$\\|[ \t]*;+[ \t]*$\\|;+[+=-_*]+$") 1915 "[ \t\f]*$\\|[ \t]*;+[ \t]*$\\|;+[+=-_*]+$")
1930 (set (make-local-variable 'paragraph-start) "[ \t\f]\\|[ \t]*;+[ \t]") 1916 (set (make-local-variable 'paragraph-start) "[ \t\f]\\|[ \t]*;+[ \t]")
1931 (set (make-local-variable 'paragraph-ignore-fill-prefix) nil) 1917 (set (make-local-variable 'paragraph-ignore-fill-prefix) nil)
@@ -1934,9 +1920,9 @@ The main features of this mode are
1934 ;; Set tag table list to use IDLTAGS as file name. 1920 ;; Set tag table list to use IDLTAGS as file name.
1935 (if (boundp 'tag-table-alist) 1921 (if (boundp 'tag-table-alist)
1936 (add-to-list 'tag-table-alist '("\\.pro$" . "IDLTAGS"))) 1922 (add-to-list 'tag-table-alist '("\\.pro$" . "IDLTAGS")))
1937 1923
1938 ;; Font-lock additions - originally Phil Williams, then Ulrik Dickow 1924 ;; Font-lock additions - originally Phil Williams, then Ulrik Dickow
1939 ;; Following line is for Emacs - XEmacs uses the corresponding porperty 1925 ;; Following line is for Emacs - XEmacs uses the corresponding property
1940 ;; on the `idlwave-mode' symbol. 1926 ;; on the `idlwave-mode' symbol.
1941 (set (make-local-variable 'font-lock-defaults) idlwave-font-lock-defaults) 1927 (set (make-local-variable 'font-lock-defaults) idlwave-font-lock-defaults)
1942 1928
@@ -1961,16 +1947,32 @@ The main features of this mode are
1961 (add-hook 'after-save-hook 'idlwave-save-buffer-update nil 'local) 1947 (add-hook 'after-save-hook 'idlwave-save-buffer-update nil 'local)
1962 (add-hook 'after-save-hook 'idlwave-revoke-license-to-kill nil 'local) 1948 (add-hook 'after-save-hook 'idlwave-revoke-license-to-kill nil 'local)
1963 1949
1950 ;; Setup directories and file, if necessary
1951 (idlwave-setup)
1952
1964 ;; Update the routine info with info about current buffer? 1953 ;; Update the routine info with info about current buffer?
1965 (idlwave-new-buffer-update) 1954 (idlwave-new-buffer-update)
1966 1955
1967 ;; Run the mode hook 1956 ;; Run the mode hook
1968 (run-hooks 'idlwave-mode-hook)) 1957 (run-hooks 'idlwave-mode-hook))
1969 1958
1959(defvar idlwave-setup-done nil)
1960(defun idlwave-setup ()
1961 (unless idlwave-setup-done
1962 (if (not (file-directory-p idlwave-config-directory))
1963 (make-directory idlwave-config-directory))
1964 (setq idlwave-user-catalog-file (expand-file-name
1965 idlwave-user-catalog-file
1966 idlwave-config-directory)
1967 idlwave-path-file (expand-file-name
1968 idlwave-path-file
1969 idlwave-config-directory))
1970 (idlwave-read-paths) ; we may need these early
1971 (setq idlwave-setup-done t)))
1972
1970;; 1973;;
1971;; Done with start up and initialization code. 1974;; Code Formatting ----------------------------------------------------
1972;; The remaining routines are the code formatting functions. 1975;;
1973;;
1974 1976
1975(defun idlwave-push-mark (&rest rest) 1977(defun idlwave-push-mark (&rest rest)
1976 "Push mark for compatibility with Emacs 18/19." 1978 "Push mark for compatibility with Emacs 18/19."
@@ -2062,7 +2064,7 @@ Returns point if comment found and nil otherwise."
2062(defvar zmacs-regions) 2064(defvar zmacs-regions)
2063(defvar mark-active) 2065(defvar mark-active)
2064(defun idlwave-region-active-p () 2066(defun idlwave-region-active-p ()
2065 "Is transien-mark-mode on and the region active? 2067 "Is transient-mark-mode on and the region active?
2066Works on both Emacs and XEmacs." 2068Works on both Emacs and XEmacs."
2067 (if (featurep 'xemacs) 2069 (if (featurep 'xemacs)
2068 (and zmacs-regions (region-active-p)) 2070 (and zmacs-regions (region-active-p))
@@ -2099,14 +2101,14 @@ An END token must be preceded by whitespace."
2099Also checks if the correct end statement has been used." 2101Also checks if the correct end statement has been used."
2100 ;; All end statements are reserved words 2102 ;; All end statements are reserved words
2101 ;; Re-indent end line 2103 ;; Re-indent end line
2102 (insert-char ?\ 1) ;; So indent, etc. work well 2104 ;;(insert-char ?\ 1) ;; So indent, etc. work well
2103 (backward-char 1) 2105 ;;(backward-char 1)
2104 (let* ((pos (point-marker)) 2106 (let* ((pos (point-marker))
2105 (last-abbrev-marker (copy-marker last-abbrev-location)) 2107 (last-abbrev-marker (copy-marker last-abbrev-location))
2106 (eol-pos (save-excursion (end-of-line) (point))) 2108 (eol-pos (save-excursion (end-of-line) (point)))
2107 begin-pos end-pos end end1 ) 2109 begin-pos end-pos end end1 )
2108 (if idlwave-reindent-end (idlwave-indent-line)) 2110 (if idlwave-reindent-end (idlwave-indent-line))
2109 2111 (setq last-abbrev-location (marker-position last-abbrev-marker))
2110 (when (and (idlwave-check-abbrev 0 t) 2112 (when (and (idlwave-check-abbrev 0 t)
2111 idlwave-show-block) 2113 idlwave-show-block)
2112 (save-excursion 2114 (save-excursion
@@ -2119,7 +2121,7 @@ Also checks if the correct end statement has been used."
2119 (if (> end-pos eol-pos) 2121 (if (> end-pos eol-pos)
2120 (setq end-pos pos)) 2122 (setq end-pos pos))
2121 (goto-char end-pos) 2123 (goto-char end-pos)
2122 (setq end (buffer-substring 2124 (setq end (buffer-substring
2123 (progn 2125 (progn
2124 (skip-chars-backward "a-zA-Z") 2126 (skip-chars-backward "a-zA-Z")
2125 (point)) 2127 (point))
@@ -2141,10 +2143,10 @@ Also checks if the correct end statement has been used."
2141 (sit-for 1)) 2143 (sit-for 1))
2142 (t 2144 (t
2143 (beep) 2145 (beep)
2144 (message "Warning: Shouldn't this be \"%s\" instead of \"%s\"?" 2146 (message "Warning: Shouldn't this be \"%s\" instead of \"%s\"?"
2145 end1 end) 2147 end1 end)
2146 (sit-for 1))))))) 2148 (sit-for 1))))))))
2147 (delete-char 1)) 2149 ;;(delete-char 1))
2148 2150
2149(defun idlwave-block-master () 2151(defun idlwave-block-master ()
2150 (let ((case-fold-search t)) 2152 (let ((case-fold-search t))
@@ -2153,18 +2155,18 @@ Also checks if the correct end statement has been used."
2153 ((looking-at "pro\\|case\\|switch\\|function\\>") 2155 ((looking-at "pro\\|case\\|switch\\|function\\>")
2154 (assoc (downcase (match-string 0)) idlwave-block-matches)) 2156 (assoc (downcase (match-string 0)) idlwave-block-matches))
2155 ((looking-at "begin\\>") 2157 ((looking-at "begin\\>")
2156 (let ((limit (save-excursion 2158 (let ((limit (save-excursion
2157 (idlwave-beginning-of-statement) 2159 (idlwave-beginning-of-statement)
2158 (point)))) 2160 (point))))
2159 (cond 2161 (cond
2162 ((re-search-backward ":[ \t]*\\=" limit t)
2163 ;; seems to be a case thing
2164 '("begin" . "end"))
2160 ((re-search-backward idlwave-block-match-regexp limit t) 2165 ((re-search-backward idlwave-block-match-regexp limit t)
2161 (assoc (downcase (match-string 1)) 2166 (assoc (downcase (match-string 1))
2162 idlwave-block-matches)) 2167 idlwave-block-matches))
2163 ;;((re-search-backward ":[ \t]*\\=" limit t)
2164 ;; ;; seems to be a case thing
2165 ;; '("begin" . "end"))
2166 (t 2168 (t
2167 ;; Just a nromal block 2169 ;; Just a normal block
2168 '("begin" . "end"))))) 2170 '("begin" . "end")))))
2169 (t nil))))) 2171 (t nil)))))
2170 2172
@@ -2182,9 +2184,9 @@ Also checks if the correct end statement has been used."
2182 (insert "end") 2184 (insert "end")
2183 (idlwave-show-begin))) 2185 (idlwave-show-begin)))
2184 2186
2185(defun idlwave-gtr-pad-hook (char) 2187(defun idlwave-gtr-pad-hook (char)
2186 "Let the > symbol expand around -> if present. The new token length 2188 "Let the > symbol expand around -> if present. The new token length
2187is returned." 2189is returned."
2188 2) 2190 2)
2189 2191
2190(defun idlwave-surround (&optional before after escape-chars length ec-hook) 2192(defun idlwave-surround (&optional before after escape-chars length ec-hook)
@@ -2214,8 +2216,8 @@ return value."
2214 (let* ((length (or length 1)) ; establish a default for LENGTH 2216 (let* ((length (or length 1)) ; establish a default for LENGTH
2215 (prev-char (char-after (- (point) (1+ length))))) 2217 (prev-char (char-after (- (point) (1+ length)))))
2216 (when (or (not (memq prev-char escape-chars)) 2218 (when (or (not (memq prev-char escape-chars))
2217 (and (fboundp ec-hook) 2219 (and (fboundp ec-hook)
2218 (setq length 2220 (setq length
2219 (save-excursion (funcall ec-hook prev-char))))) 2221 (save-excursion (funcall ec-hook prev-char)))))
2220 (backward-char length) 2222 (backward-char length)
2221 (save-restriction 2223 (save-restriction
@@ -2437,7 +2439,7 @@ Returns non-nil if successfull."
2437 (let ((eos (save-excursion 2439 (let ((eos (save-excursion
2438 (idlwave-block-jump-out -1 'nomark) 2440 (idlwave-block-jump-out -1 'nomark)
2439 (point)))) 2441 (point))))
2440 (if (setq status (idlwave-find-key 2442 (if (setq status (idlwave-find-key
2441 idlwave-end-block-reg -1 'nomark eos)) 2443 idlwave-end-block-reg -1 'nomark eos))
2442 (idlwave-beginning-of-statement) 2444 (idlwave-beginning-of-statement)
2443 (message "No nested block before beginning of containing block."))) 2445 (message "No nested block before beginning of containing block.")))
@@ -2445,7 +2447,7 @@ Returns non-nil if successfull."
2445 (let ((eos (save-excursion 2447 (let ((eos (save-excursion
2446 (idlwave-block-jump-out 1 'nomark) 2448 (idlwave-block-jump-out 1 'nomark)
2447 (point)))) 2449 (point))))
2448 (if (setq status (idlwave-find-key 2450 (if (setq status (idlwave-find-key
2449 idlwave-begin-block-reg 1 'nomark eos)) 2451 idlwave-begin-block-reg 1 'nomark eos))
2450 (idlwave-end-of-statement) 2452 (idlwave-end-of-statement)
2451 (message "No nested block before end of containing block.")))) 2453 (message "No nested block before end of containing block."))))
@@ -2459,7 +2461,7 @@ The marks are pushed."
2459 (here (point))) 2461 (here (point)))
2460 (goto-char (point-max)) 2462 (goto-char (point-max))
2461 (if (re-search-backward idlwave-doclib-start nil t) 2463 (if (re-search-backward idlwave-doclib-start nil t)
2462 (progn 2464 (progn
2463 (setq beg (progn (beginning-of-line) (point))) 2465 (setq beg (progn (beginning-of-line) (point)))
2464 (if (re-search-forward idlwave-doclib-end nil t) 2466 (if (re-search-forward idlwave-doclib-end nil t)
2465 (progn 2467 (progn
@@ -2493,7 +2495,7 @@ actual statement."
2493 ((eq major-mode 'idlwave-shell-mode) 2495 ((eq major-mode 'idlwave-shell-mode)
2494 (if (re-search-backward idlwave-shell-prompt-pattern nil t) 2496 (if (re-search-backward idlwave-shell-prompt-pattern nil t)
2495 (goto-char (match-end 0)))) 2497 (goto-char (match-end 0))))
2496 (t 2498 (t
2497 (if (save-excursion (forward-line -1) (idlwave-is-continuation-line)) 2499 (if (save-excursion (forward-line -1) (idlwave-is-continuation-line))
2498 (idlwave-previous-statement) 2500 (idlwave-previous-statement)
2499 (beginning-of-line))))) 2501 (beginning-of-line)))))
@@ -2570,7 +2572,7 @@ If not in a statement just moves to end of line. Returns position."
2570 (let ((save-point (point))) 2572 (let ((save-point (point)))
2571 (when (re-search-forward ".*&" lim t) 2573 (when (re-search-forward ".*&" lim t)
2572 (goto-char (match-end 0)) 2574 (goto-char (match-end 0))
2573 (if (idlwave-in-quote) (goto-char save-point))) 2575 (if (idlwave-quoted) (goto-char save-point)))
2574 (point))) 2576 (point)))
2575 2577
2576(defun idlwave-skip-label-or-case () 2578(defun idlwave-skip-label-or-case ()
@@ -2585,7 +2587,7 @@ If there is no label point is not moved and nil is returned."
2585 ;; - not in parenthesis (like a[0:3]) 2587 ;; - not in parenthesis (like a[0:3])
2586 ;; - not followed by another ":" in explicit class, ala a->b::c 2588 ;; - not followed by another ":" in explicit class, ala a->b::c
2587 ;; As many in this mode, this function is heuristic and not an exact 2589 ;; As many in this mode, this function is heuristic and not an exact
2588 ;; parser. 2590 ;; parser.
2589 (let* ((start (point)) 2591 (let* ((start (point))
2590 (eos (save-excursion (idlwave-end-of-statement) (point))) 2592 (eos (save-excursion (idlwave-end-of-statement) (point)))
2591 (end (idlwave-find-key ":" 1 'nomark eos))) 2593 (end (idlwave-find-key ":" 1 'nomark eos)))
@@ -2612,7 +2614,8 @@ substatement."
2612 st nst last) 2614 st nst last)
2613 (idlwave-beginning-of-statement) 2615 (idlwave-beginning-of-statement)
2614 (idlwave-skip-label-or-case) 2616 (idlwave-skip-label-or-case)
2615 (idlwave-skip-multi-commands orig) 2617 (if (< (point) orig)
2618 (idlwave-skip-multi-commands orig))
2616 (setq last (point)) 2619 (setq last (point))
2617 ;; Continue looking for substatements until we are past orig 2620 ;; Continue looking for substatements until we are past orig
2618 (while (and (<= (point) orig) (not (eobp))) 2621 (while (and (<= (point) orig) (not (eobp)))
@@ -2654,47 +2657,83 @@ statement."
2654 (append st (match-end 0)))))) 2657 (append st (match-end 0))))))
2655 2658
2656(defun idlwave-expand-equal (&optional before after) 2659(defun idlwave-expand-equal (&optional before after)
2657 "Pad '=' with spaces. 2660 "Pad '=' with spaces. Two cases: Assignment statement, and keyword
2658Two cases: Assignment statement, and keyword assignment. 2661assignment. Which case is determined using
2659The case is determined using `idlwave-start-of-substatement' and 2662`idlwave-start-of-substatement' and `idlwave-statement-type'. The
2660`idlwave-statement-type'. 2663equal sign will be surrounded by BEFORE and AFTER blanks. If
2661The equal sign will be surrounded by BEFORE and AFTER blanks. 2664`idlwave-pad-keyword' is t then keyword assignment is treated just
2662If `idlwave-pad-keyword' is t then keyword assignment is treated just
2663like assignment statements. When nil, spaces are removed for keyword 2665like assignment statements. When nil, spaces are removed for keyword
2664assignment. Any other value keeps the current space around the `='. 2666assignment. Any other value keeps the current space around the `='.
2665Limits in for loops are treated as keyword assignment. 2667Limits in for loops are treated as keyword assignment.
2666See `idlwave-surround'. " 2668
2667 ;; Even though idlwave-surround checks `idlwave-surround-by-blank' this 2669Starting with IDL 6.0, a number of op= assignments are available.
2668 ;; check saves the time of finding the statement type. 2670Since ambiguities of the form:
2671
2672r and= b
2673rand= b
2674
2675can occur, alphanumeric operator assignment will never be pre-padded,
2676only post-padded. You must use a space before these to disambiguate
2677\(not just for padding, but for proper parsing by IDL too!). Other
2678operators, such as ##=, ^=, etc., will be pre-padded.
2679
2680See `idlwave-surround'."
2669 (if idlwave-surround-by-blank 2681 (if idlwave-surround-by-blank
2670 (let ((st (save-excursion 2682 (let
2671 (idlwave-start-of-substatement t) 2683 ((non-an-ops "\\(##\\|\\*\\|\\+\\|-\\|/\\|<\\|>\\|\\^\\)\\=")
2672 (idlwave-statement-type)))) 2684 (an-ops
2673 2685 "\\s-\\(AND\\|EQ\\|GE\\|GT\\|LE\\|LT\\|MOD\\|NE\\|OR\\|XOR\\)\\=")
2674 (cond ((or (and (equal (car (car st)) 'assign) 2686 (len 1))
2675 (equal (cdr st) (point))) 2687
2676 (eq t idlwave-pad-keyword)) 2688 (save-excursion
2677 ;; An assignment statement or keywor and we need padding 2689 (let ((case-fold-search t))
2678 (idlwave-surround before after)) 2690 (backward-char)
2679 ((null idlwave-pad-keyword) 2691 (if (or
2680 ;; Spaces should be removed at a keyword 2692 (re-search-backward non-an-ops nil t)
2681 (idlwave-surround 0 0)) 2693 ;; Why doesn't ##? work for both?
2682 (t))))) 2694 (re-search-backward "\\(#\\)\\=" nil t))
2695 (setq len (1+ (length (match-string 1))))
2696 (when (re-search-backward an-ops nil t)
2697 (setq begin nil) ; won't modify begin
2698 (setq len (1+ (length (match-string 1))))))))
2699
2700 (if (eq t idlwave-pad-keyword)
2701 ;; Everything gets padded equally
2702 (idlwave-surround before after nil len)
2703 ;; Treating keywords/for variables specially...
2704 (let ((st (save-excursion ; To catch "for" variables
2705 (idlwave-start-of-substatement t)
2706 (idlwave-statement-type)))
2707 (what (save-excursion ; To catch keywords
2708 (skip-chars-backward "= \t")
2709 (nth 2 (idlwave-where)))))
2710 (cond ((or (memq what '(function-keyword procedure-keyword))
2711 (memq (caar st) '(for pdef)))
2712 (cond
2713 ((null idlwave-pad-keyword)
2714 (idlwave-surround 0 0)
2715 ) ; remove space
2716 (t))) ; leave any spaces alone
2717 (t (idlwave-surround before after nil len))))))))
2718
2683 2719
2684(defun idlwave-indent-and-action (&optional arg) 2720(defun idlwave-indent-and-action (&optional arg)
2685 "Call `idlwave-indent-line' and do expand actions. 2721 "Call `idlwave-indent-line' and do expand actions.
2686With prefix ARG non-nil, indent the entire sub-statement." 2722With prefix ARG non-nil, indent the entire sub-statement."
2687 (interactive "p") 2723 (interactive "p")
2688 (save-excursion 2724 (save-excursion
2689 (if (and idlwave-expand-generic-end 2725 (if (and idlwave-expand-generic-end
2690 (re-search-backward "\\<\\(end\\)\\s-*\\=" 2726 (re-search-backward "\\<\\(end\\)\\s-*\\="
2691 (max 0 (- (point) 10)) t) 2727 (max 0 (- (point) 10)) t)
2692 (looking-at "\\(end\\)\\([ \n\t]\\|\\'\\)")) 2728 (looking-at "\\(end\\)\\([ \n\t]\\|\\'\\)"))
2693 (progn (goto-char (match-end 1)) 2729 (progn (goto-char (match-end 1))
2694 ;;Expand the END abbreviation, just as RET or Space would have. 2730 ;;Expand the END abbreviation, just as RET or Space would have.
2695 (if abbrev-mode (expand-abbrev) 2731 (if abbrev-mode (expand-abbrev)
2696 (idlwave-show-begin))))) 2732 (idlwave-show-begin)))))
2697 (if arg 2733 (when (and (not arg) current-prefix-arg)
2734 (setq arg current-prefix-arg)
2735 (setq current-prefix-arg nil))
2736 (if arg
2698 (idlwave-indent-statement) 2737 (idlwave-indent-statement)
2699 (idlwave-indent-line t))) 2738 (idlwave-indent-line t)))
2700 2739
@@ -2821,25 +2860,36 @@ Inserts spaces before markers at point."
2821 (idlwave-is-continuation-line))) 2860 (idlwave-is-continuation-line)))
2822 (idlwave-calculate-cont-indent)) 2861 (idlwave-calculate-cont-indent))
2823 ;; calculate indent based on previous and current statements 2862 ;; calculate indent based on previous and current statements
2824 (t (let ((the-indent 2863 (t (let* (beg-prev-pos
2825 ;; calculate indent based on previous statement 2864 (the-indent
2826 (save-excursion 2865 ;; calculate indent based on previous statement
2827 (cond 2866 (save-excursion
2828 ((idlwave-previous-statement) 2867 (cond
2829 0) 2868 ;; Beginning of file
2830 ;; Main block 2869 ((prog1
2831 ((idlwave-look-at idlwave-begin-unit-reg t) 2870 (idlwave-previous-statement)
2832 (+ (idlwave-current-statement-indent) 2871 (setq beg-prev-pos (point)))
2833 idlwave-main-block-indent)) 2872 0)
2834 ;; Begin block 2873 ;; Main block
2835 ((idlwave-look-at idlwave-begin-block-reg t) 2874 ((idlwave-look-at idlwave-begin-unit-reg t)
2836 (+ (idlwave-current-statement-indent) 2875 (+ (idlwave-current-statement-indent)
2837 idlwave-block-indent)) 2876 idlwave-main-block-indent))
2838 ((idlwave-look-at idlwave-end-block-reg t) 2877 ;; Begin block
2839 (- (idlwave-current-statement-indent) 2878 ((idlwave-look-at idlwave-begin-block-reg t)
2840 idlwave-end-offset 2879 (+ (idlwave-min-current-statement-indent)
2841 idlwave-block-indent)) 2880 idlwave-block-indent))
2842 ((idlwave-current-statement-indent)))))) 2881 ;; End Block
2882 ((idlwave-look-at idlwave-end-block-reg t)
2883 (progn
2884 ;; Match to the *beginning* of the block opener
2885 (goto-char beg-prev-pos)
2886 (idlwave-block-jump-out -1 'nomark) ; go to begin block
2887 (idlwave-min-current-statement-indent)))
2888 ;; idlwave-end-offset
2889 ;; idlwave-block-indent))
2890
2891 ;; Default to current indent
2892 ((idlwave-current-statement-indent))))))
2843 ;; adjust the indentation based on the current statement 2893 ;; adjust the indentation based on the current statement
2844 (cond 2894 (cond
2845 ;; End block 2895 ;; End block
@@ -2848,12 +2898,12 @@ Inserts spaces before markers at point."
2848 (the-indent))))))) 2898 (the-indent)))))))
2849 2899
2850;; 2900;;
2851;; Parentheses balacing/indent 2901;; Parentheses indent
2852;; 2902;;
2853 2903
2854(defun idlwave-calculate-paren-indent (beg-reg end-reg close-exp) 2904(defun idlwave-calculate-paren-indent (beg-reg end-reg close-exp)
2855 "Calculate the continuation indent inside a paren group. 2905 "Calculate the continuation indent inside a paren group.
2856Returns a cons-cell with (open . indent), where open is the 2906Returns a cons-cell with (open . indent), where open is the
2857location of the open paren" 2907location of the open paren"
2858 (let ((open (nth 1 (parse-partial-sexp beg-reg end-reg)))) 2908 (let ((open (nth 1 (parse-partial-sexp beg-reg end-reg))))
2859 ;; Found an innermost open paren. 2909 ;; Found an innermost open paren.
@@ -2862,126 +2912,148 @@ location of the open paren"
2862 ;; Line up with next word unless this is a closing paren. 2912 ;; Line up with next word unless this is a closing paren.
2863 (cons open 2913 (cons open
2864 (cond 2914 (cond
2915 ;; Plain Kernighan-style nested indent
2916 (idlwave-indent-parens-nested
2917 (+ idlwave-continuation-indent (idlwave-current-indent)))
2918
2865 ;; This is a closed paren - line up under open paren. 2919 ;; This is a closed paren - line up under open paren.
2866 (close-exp 2920 (close-exp
2867 (current-column)) 2921 (current-column))
2868 ;; Empty (or just comment) - just line up next to paren 2922
2923 ;; Empty (or just comment) follows -- revert to basic indent
2869 ((progn 2924 ((progn
2870 ;; Skip paren 2925 ;; Skip paren
2871 (forward-char 1) 2926 (forward-char 1)
2872 (looking-at "[ \t$]*\\(;.*\\)?$")) 2927 (looking-at "[ \t$]*\\(;.*\\)?$"))
2873 (current-column)) 2928 nil)
2874 ;; Line up with first word after blank space 2929
2930 ;; Line up with first word after any blank space
2875 ((progn 2931 ((progn
2876 (skip-chars-forward " \t") 2932 (skip-chars-forward " \t")
2877 (current-column)))))))) 2933 (current-column))))))))
2878 2934
2879(defun idlwave-calculate-cont-indent () 2935(defun idlwave-calculate-cont-indent ()
2880 "Calculates the IDL continuation indent column from the previous statement. 2936 "Calculates the IDL continuation indent column from the previous
2881Note that here previous statement means the beginning of the current 2937statement. Note that here previous statement usually means the
2882statement if this statement is a continuation of the previous line." 2938beginning of the current statement if this statement is a continuation
2939of the previous line. Various special types of continuations,
2940including assignments, routine definitions, and parenthetical
2941groupings, are treated separately."
2883 (save-excursion 2942 (save-excursion
2884 (let* (open 2943 (let* ((case-fold-search t)
2885 (case-fold-search t)
2886 (end-reg (progn (beginning-of-line) (point))) 2944 (end-reg (progn (beginning-of-line) (point)))
2887 (close-exp (progn (skip-chars-forward " \t") (looking-at "\\s)"))) 2945 (beg-last-statement (save-excursion (idlwave-previous-statement)
2888; (beg-reg (progn (idlwave-previous-statement) (point))) 2946 (point)))
2889 (beg-reg (progn ;; Use substatement indent unless it's this line 2947 (beg-reg (progn (idlwave-start-of-substatement 'pre)
2890 (idlwave-start-of-substatement 'pre) 2948 (if (eq (line-beginning-position) end-reg)
2891 (if (eq (line-beginning-position) end-reg) 2949 (goto-char beg-last-statement)
2892 (idlwave-previous-statement)) 2950 (point))))
2893 (point))) 2951 (basic-indent (+ (idlwave-min-current-statement-indent end-reg)
2894 (cur-indent (idlwave-current-indent)) 2952 idlwave-continuation-indent))
2895 (else-cont (and (goto-char end-reg) (looking-at "[ \t]*else"))) 2953 fancy-nonparen-indent fancy-paren-indent)
2896 (basic-indent ;; The basic, non-fancy indent 2954 (cond
2897 (+ cur-indent idlwave-continuation-indent)) 2955 ;; Align then with its matching if, etc.
2898 (fancy-nonparen-indent ;; A smarter indent for routine/assignments 2956 ((let ((matchers '(("\\<if\\>" . "[ \t]*then")
2899 ;; Try without parens first: 2957 ("\\<\\(if\\|end\\(if\\)?\\)\\>" . "[ \t]*else")
2900 (progn 2958 ("\\<\\(for\\|while\\)\\>" . "[ \t]*do")
2901 (goto-char beg-reg) 2959 ("\\<\\(repeat\\|end\\(rep\\)?\\)\\>" .
2902 (while (idlwave-look-at "&")) ; skip over continued statements 2960 "[ \t]*until")
2903 (cond 2961 ("\\<case\\>" . "[ \t]*of")))
2904 ;; A continued Procedure call or definition 2962 match cont-re)
2905 ((progn 2963 (goto-char end-reg)
2906 (idlwave-look-at "^[ \t]*\\(pro\\|function\\)") ;skip over 2964 (and
2907 (looking-at "[ \t]*\\([a-zA-Z0-9$_]+[ \t]*->[ \t]*\\)?[a-zA-Z][:a-zA-Z0-9$_]*[ \t]*\\(,\\)[ \t]*")) 2965 (setq cont-re
2908 (goto-char (match-end 0)) 2966 (catch 'exit
2909 ;; Comment only, or blank line with "$"? Align with , 2967 (while (setq match (car matchers))
2910 (if (save-match-data (looking-at "[ \t$]*\\(;.*\\)?$")) 2968 (if (looking-at (cdr match))
2911 (goto-char (match-end 2))) 2969 (throw 'exit (car match)))
2912 (current-column)) 2970 (setq matchers (cdr matchers)))))
2913 2971 (idlwave-find-key cont-re -1 'nomark beg-last-statement)))
2914 ;; Continued assignment (with =), 2972 (if (looking-at "end") ;; that one's special
2915 ((looking-at "[ \t]*[][().a-zA-Z0-9$_]+[ \t]*\\(=\\)[ \t]*") 2973 (- (idlwave-current-indent)
2916 (goto-char (match-end 0)) 2974 (+ idlwave-block-indent idlwave-end-offset))
2917 ;; Comment only? Align with = 2975 (idlwave-current-indent)))
2918 (if (save-match-data (looking-at "[ \t$]*\\(;.*\\)?$")) 2976
2919 (progn 2977 ;; Indent in from the previous line for continuing statements
2920 (goto-char (match-end 1)) 2978 ((let ((matchers '("\\<then\\>"
2921 (if idlwave-surround-by-blank 2979 "\\<do\\>"
2922 (1+ (current-column)) 2980 "\\<repeat\\>"
2923 (current-column))) 2981 "\\<else\\>"))
2924 (current-column)))))) 2982 match)
2925 (fancy-nonparen-indent-allowed 2983 (catch 'exit
2926 (and fancy-nonparen-indent 2984 (goto-char end-reg)
2927 (< (- fancy-nonparen-indent basic-indent) 2985 (if (/= (forward-line -1) 0)
2928 idlwave-max-extra-continuation-indent))) 2986 (throw 'exit nil))
2929 (fancy-paren-indent-cons ;; A smarter indent for paren groups 2987 (while (setq match (car matchers))
2930 ;; Look for any enclosing parens 2988 (if (looking-at (concat ".*" match "[ \t]*\\$[ \t]*"
2931 (idlwave-calculate-paren-indent beg-reg end-reg close-exp)) 2989 "\\(;.*\\)?$"))
2932 (fancy-paren-open (car fancy-paren-indent-cons)) 2990 (throw 'exit t))
2933 (fancy-paren-indent (cdr fancy-paren-indent-cons)) 2991 (setq matchers (cdr matchers)))))
2934 (fancy-paren-indent-allowed 2992 (+ idlwave-continuation-indent (idlwave-current-indent)))
2935 (and fancy-paren-indent 2993
2936 (or idlwave-indent-to-open-paren ;; override 2994 ;; Parenthetical indent, either traditional or Kernighan style
2937 (< (- fancy-paren-indent basic-indent) 2995 ((setq fancy-paren-indent
2938 idlwave-max-extra-continuation-indent)))) 2996 (let* ((end-reg end-reg)
2939 fancy-enclosing-paren-indent) 2997 (close-exp (progn
2940 (cond 2998 (goto-char end-reg)
2941 ;; else continuations are always standard 2999 (skip-chars-forward " \t")
2942 (else-cont 3000 (looking-at "\\s)")))
2943 cur-indent) 3001 indent-cons)
2944 3002 (catch 'loop
2945 ;; an allowed parenthesis-indent 3003 (while (setq indent-cons (idlwave-calculate-paren-indent
2946 (fancy-paren-indent-allowed 3004 beg-reg end-reg close-exp))
3005 ;; First permitted containing paren
3006 (if (or
3007 idlwave-indent-to-open-paren
3008 idlwave-indent-parens-nested
3009 (null (cdr indent-cons))
3010 (< (- (cdr indent-cons) basic-indent)
3011 idlwave-max-extra-continuation-indent))
3012 (throw 'loop (cdr indent-cons)))
3013 (setq end-reg (car indent-cons))))))
2947 fancy-paren-indent) 3014 fancy-paren-indent)
2948 3015
2949 ;; a disallowed paren indent nested inside one or more other 3016 ;; A continued assignment, or procedure call/definition
2950 ;; parens: indent relative to the first allowed enclosing paren 3017 ((and
2951 ;; set, if any... if it's actually a greater indent, just use 3018 (> idlwave-max-extra-continuation-indent 0)
2952 ;; the fancy-paren-indent anyway. 3019 (setq fancy-nonparen-indent
2953 ((and fancy-paren-indent 3020 (progn
2954 (not fancy-paren-indent-allowed) 3021 (goto-char beg-reg)
2955 (setq fancy-enclosing-paren-indent 3022 (while (idlwave-look-at "&")) ; skip continued statements
2956 (let ((enclose-open fancy-paren-open) 3023 (cond
2957 enclose-indent-cons 3024 ;; A continued Procedure call or definition
2958 enclose-indent) 3025 ((progn
2959 (catch 'loop 3026 (idlwave-look-at "^[ \t]*\\(pro\\|function\\)") ;skip over
2960 (while (setq enclose-indent-cons 3027 (looking-at "[ \t]*\\([a-zA-Z0-9.$_]+[ \t]*->[ \t]*\\)?[a-zA-Z][:a-zA-Z0-9$_]*[ \t]*\\(,\\)[ \t]*"))
2961 (idlwave-calculate-paren-indent 3028 (goto-char (match-end 0))
2962 beg-reg (max (1- enclose-open) beg-reg) 3029 ;; Comment only, or blank line with "$"? Basic indent.
2963 nil) 3030 (if (save-match-data (looking-at "[ \t$]*\\(;.*\\)?$"))
2964 enclose-open (car enclose-indent-cons) 3031 nil
2965 enclose-indent (cdr enclose-indent-cons)) 3032 (current-column)))
2966 (if (< (- enclose-indent basic-indent) 3033
2967 idlwave-max-extra-continuation-indent) 3034 ;; Continued assignment (with =):
2968 (throw 'loop enclose-indent))))))) 3035 ((catch 'assign ;
2969 (min fancy-paren-indent 3036 (while (looking-at "[^=\n\r]*\\(=\\)[ \t]*")
2970 (+ fancy-enclosing-paren-indent idlwave-continuation-indent))) 3037 (goto-char (match-end 0))
2971 3038 (if (null (idlwave-what-function beg-reg))
2972 ;; a disallowed paren indent inside another type: indent relative 3039 (throw 'assign t))))
2973 ((and fancy-paren-indent 3040 (unless (or
2974 (not fancy-paren-indent-allowed) 3041 (idlwave-in-quote)
2975 fancy-nonparen-indent-allowed ) 3042 (looking-at "[ \t$]*\\(;.*\\)?$") ; use basic
2976 (+ fancy-nonparen-indent idlwave-continuation-indent)) 3043 (save-excursion
2977 3044 (goto-char beg-last-statement)
2978 ;; an allowed nonparen-only indent 3045 (eq (caar (idlwave-statement-type)) 'for)))
2979 (fancy-nonparen-indent-allowed 3046 (current-column))))))
2980 fancy-nonparen-indent) 3047 (< (- fancy-nonparen-indent basic-indent)
2981 3048 idlwave-max-extra-continuation-indent))
2982 ;; everything else 3049 (if fancy-paren-indent ;calculated but disallowed paren indent
2983 (t 3050 (+ fancy-nonparen-indent idlwave-continuation-indent)
2984 basic-indent))))) 3051 fancy-nonparen-indent))
3052
3053 ;; Basic indent, by default
3054 (t basic-indent)))))
3055
3056
2985 3057
2986(defun idlwave-find-key (key-re &optional dir nomark limit) 3058(defun idlwave-find-key (key-re &optional dir nomark limit)
2987 "Move to next match of the regular expression KEY-RE. 3059 "Move to next match of the regular expression KEY-RE.
@@ -3001,7 +3073,10 @@ Return value is the beginning of the match or (in case of failure) nil."
3001 (catch 'exit 3073 (catch 'exit
3002 (while (funcall search-func key-re limit t) 3074 (while (funcall search-func key-re limit t)
3003 (if (not (idlwave-quoted)) 3075 (if (not (idlwave-quoted))
3004 (throw 'exit (setq found (match-beginning 0)))))))) 3076 (throw 'exit (setq found (match-beginning 0)))
3077 (if (or (and (> dir 0) (eobp))
3078 (and (< dir 0) (bobp)))
3079 (throw 'exit nil)))))))
3005 (if found 3080 (if found
3006 (progn 3081 (progn
3007 (if (not nomark) (push-mark)) 3082 (if (not nomark) (push-mark))
@@ -3022,7 +3097,7 @@ possibility of unbalanced blocks."
3022 (let* ((here (point)) 3097 (let* ((here (point))
3023 (case-fold-search t) 3098 (case-fold-search t)
3024 (limit (if (>= dir 0) (point-max) (point-min))) 3099 (limit (if (>= dir 0) (point-max) (point-min)))
3025 (block-limit (if (>= dir 0) 3100 (block-limit (if (>= dir 0)
3026 idlwave-begin-block-reg 3101 idlwave-begin-block-reg
3027 idlwave-end-block-reg)) 3102 idlwave-end-block-reg))
3028 found 3103 found
@@ -3033,7 +3108,7 @@ possibility of unbalanced blocks."
3033 (idlwave-find-key 3108 (idlwave-find-key
3034 idlwave-begin-unit-reg dir t limit) 3109 idlwave-begin-unit-reg dir t limit)
3035 (end-of-line) 3110 (end-of-line)
3036 (idlwave-find-key 3111 (idlwave-find-key
3037 idlwave-end-unit-reg dir t limit))) 3112 idlwave-end-unit-reg dir t limit)))
3038 limit))) 3113 limit)))
3039 (if (>= dir 0) (end-of-line)) ;Make sure we are in current block 3114 (if (>= dir 0) (end-of-line)) ;Make sure we are in current block
@@ -3046,10 +3121,27 @@ possibility of unbalanced blocks."
3046 (if (not found) (goto-char unit-limit) 3121 (if (not found) (goto-char unit-limit)
3047 (if (>= dir 0) (forward-word 1))))) 3122 (if (>= dir 0) (forward-word 1)))))
3048 3123
3049(defun idlwave-current-statement-indent () 3124(defun idlwave-min-current-statement-indent (&optional end-reg)
3125 "The minimum indent in the current statement."
3126 (idlwave-beginning-of-statement)
3127 (if (not (idlwave-is-continuation-line))
3128 (idlwave-current-indent)
3129 (let ((min (idlwave-current-indent)) comm-or-empty)
3130 (while (and (= (forward-line 1) 0)
3131 (or (setq comm-or-empty (idlwave-is-comment-or-empty-line))
3132 (idlwave-is-continuation-line))
3133 (or (null end-reg) (< (point) end-reg)))
3134 (unless comm-or-empty (setq min (min min (idlwave-current-indent)))))
3135 (if (or comm-or-empty (and end-reg (>= (point) end-reg)))
3136 min
3137 (min min (idlwave-current-indent))))))
3138
3139(defun idlwave-current-statement-indent (&optional last-line)
3050 "Return indentation of the current statement. 3140 "Return indentation of the current statement.
3051If in a statement, moves to beginning of statement before finding indent." 3141If in a statement, moves to beginning of statement before finding indent."
3052 (idlwave-beginning-of-statement) 3142 (if last-line
3143 (idlwave-end-of-statement)
3144 (idlwave-beginning-of-statement))
3053 (idlwave-current-indent)) 3145 (idlwave-current-indent))
3054 3146
3055(defun idlwave-current-indent () 3147(defun idlwave-current-indent ()
@@ -3067,10 +3159,10 @@ Skips any whitespace. Returns 0 if the end-of-line follows the whitespace."
3067Blank or comment-only lines following regular continuation lines (with 3159Blank or comment-only lines following regular continuation lines (with
3068`$') count as continuations too." 3160`$') count as continuations too."
3069 (save-excursion 3161 (save-excursion
3070 (or 3162 (or
3071 (idlwave-look-at "\\<\\$") 3163 (idlwave-look-at "\\<\\$")
3072 (catch 'loop 3164 (catch 'loop
3073 (while (and (looking-at "^[ \t]*\\(;.*\\)?$") 3165 (while (and (looking-at "^[ \t]*\\(;.*\\)?$")
3074 (eq (forward-line -1) 0)) 3166 (eq (forward-line -1) 0))
3075 (if (idlwave-look-at "\\<\\$") (throw 'loop t))))))) 3167 (if (idlwave-look-at "\\<\\$") (throw 'loop t)))))))
3076 3168
@@ -3168,7 +3260,7 @@ ignored."
3168 (beginning-of-line) (point)) 3260 (beginning-of-line) (point))
3169 (point)))) 3261 (point))))
3170 "[^;]")) 3262 "[^;]"))
3171 3263
3172 ;; Mark the beginning and end of the paragraph 3264 ;; Mark the beginning and end of the paragraph
3173 (goto-char bcl) 3265 (goto-char bcl)
3174 (while (and (looking-at fill-prefix-reg) 3266 (while (and (looking-at fill-prefix-reg)
@@ -3232,7 +3324,7 @@ ignored."
3232 (insert (make-string diff ?\ )))) 3324 (insert (make-string diff ?\ ))))
3233 (forward-line -1)) 3325 (forward-line -1))
3234 ) 3326 )
3235 3327
3236 ;; No hang. Instead find minimum indentation of paragraph 3328 ;; No hang. Instead find minimum indentation of paragraph
3237 ;; after first line. 3329 ;; after first line.
3238 ;; For the following while statement, since START is at the 3330 ;; For the following while statement, since START is at the
@@ -3264,7 +3356,7 @@ ignored."
3264 t) 3356 t)
3265 (current-column)) 3357 (current-column))
3266 indent)) 3358 indent))
3267 3359
3268 ;; try to keep point at its original place 3360 ;; try to keep point at its original place
3269 (goto-char here) 3361 (goto-char here)
3270 3362
@@ -3313,11 +3405,11 @@ If not found returns nil."
3313 (current-column))))) 3405 (current-column)))))
3314 3406
3315(defun idlwave-auto-fill () 3407(defun idlwave-auto-fill ()
3316 "Called to break lines in auto fill mode. 3408 "Called to break lines in auto fill mode.
3317Only fills comment lines if `idlwave-fill-comment-line-only' is non-nil. 3409Only fills non-comment lines if `idlwave-fill-comment-line-only' is
3318Places a continuation character at the end of the line 3410non-nil. Places a continuation character at the end of the line if
3319if not in a comment. Splits strings with IDL concatenation operator 3411not in a comment. Splits strings with IDL concatenation operator `+'
3320`+' if `idlwave-auto-fill-split-string is non-nil." 3412if `idlwave-auto-fill-split-string' is non-nil."
3321 (if (<= (current-column) fill-column) 3413 (if (<= (current-column) fill-column)
3322 nil ; do not to fill 3414 nil ; do not to fill
3323 (if (or (not idlwave-fill-comment-line-only) 3415 (if (or (not idlwave-fill-comment-line-only)
@@ -3330,7 +3422,13 @@ if not in a comment. Splits strings with IDL concatenation operator
3330 ;; Prevent actions do-auto-fill which calls indent-line-function. 3422 ;; Prevent actions do-auto-fill which calls indent-line-function.
3331 (let (idlwave-do-actions 3423 (let (idlwave-do-actions
3332 (paragraph-start ".") 3424 (paragraph-start ".")
3333 (paragraph-separate ".")) 3425 (paragraph-separate ".")
3426 (fill-nobreak-predicate
3427 (if (and (idlwave-in-quote)
3428 idlwave-auto-fill-split-string)
3429 (lambda () ;; We'll need 5 spaces for " ' + $"
3430 (<= (- fill-column (current-column)) 5)
3431 ))))
3334 (do-auto-fill)) 3432 (do-auto-fill))
3335 (save-excursion 3433 (save-excursion
3336 (end-of-line 0) 3434 (end-of-line 0)
@@ -3365,7 +3463,7 @@ if not in a comment. Splits strings with IDL concatenation operator
3365 (if (save-excursion 3463 (if (save-excursion
3366 (end-of-line 0) 3464 (end-of-line 0)
3367 (idlwave-in-comment)) 3465 (idlwave-in-comment))
3368 ;; Splitting a non-line comment. 3466 ;; Splitting a non-full-line comment.
3369 ;; Insert the comment delimiter from split line 3467 ;; Insert the comment delimiter from split line
3370 (progn 3468 (progn
3371 (save-excursion 3469 (save-excursion
@@ -3422,6 +3520,11 @@ automatically breaks the line at a previous space."
3422 ;; update mode-line 3520 ;; update mode-line
3423 (set-buffer-modified-p (buffer-modified-p)))) 3521 (set-buffer-modified-p (buffer-modified-p))))
3424 3522
3523;(defun idlwave-fill-routine-call ()
3524; "Fill a routine definition or statement, indenting appropriately."
3525; (let ((where (idlwave-where)))))
3526
3527
3425(defun idlwave-doc-header (&optional nomark ) 3528(defun idlwave-doc-header (&optional nomark )
3426 "Insert a documentation header at the beginning of the unit. 3529 "Insert a documentation header at the beginning of the unit.
3427Inserts the value of the variable idlwave-file-header. Sets mark before 3530Inserts the value of the variable idlwave-file-header. Sets mark before
@@ -3453,7 +3556,7 @@ is non-nil."
3453 (insert (current-time-string)) 3556 (insert (current-time-string))
3454 (insert ", " (user-full-name)) 3557 (insert ", " (user-full-name))
3455 (if (boundp 'user-mail-address) 3558 (if (boundp 'user-mail-address)
3456 (insert " <" user-mail-address ">") 3559 (insert " <" user-mail-address ">")
3457 (insert " <" (user-login-name) "@" (system-name) ">")) 3560 (insert " <" (user-login-name) "@" (system-name) ">"))
3458 ;; Remove extra spaces from line 3561 ;; Remove extra spaces from line
3459 (idlwave-fill-paragraph) 3562 (idlwave-fill-paragraph)
@@ -3479,7 +3582,7 @@ location on mark ring so that the user can return to previous point."
3479 (setq end (match-end 0))) 3582 (setq end (match-end 0)))
3480 (progn 3583 (progn
3481 (goto-char beg) 3584 (goto-char beg)
3482 (if (re-search-forward 3585 (if (re-search-forward
3483 (concat idlwave-doc-modifications-keyword ":") 3586 (concat idlwave-doc-modifications-keyword ":")
3484 end t) 3587 end t)
3485 (end-of-line) 3588 (end-of-line)
@@ -3539,7 +3642,7 @@ constants - a double quote followed by an octal digit."
3539 (while (< endq start) 3642 (while (< endq start)
3540 ;; Find string start 3643 ;; Find string start
3541 ;; Don't find an octal constant beginning with a double quote 3644 ;; Don't find an octal constant beginning with a double quote
3542 (if (re-search-forward "\"[^0-7]\\|'\\|\"$" eol 'lim) 3645 (if (re-search-forward "[\"']" eol 'lim)
3543 ;; Find the string end. 3646 ;; Find the string end.
3544 ;; In IDL, two consecutive delimiters after the start of a 3647 ;; In IDL, two consecutive delimiters after the start of a
3545 ;; string act as an 3648 ;; string act as an
@@ -3577,7 +3680,7 @@ constants - a double quote followed by an octal digit."
3577 (not (idlwave-in-quote)) 3680 (not (idlwave-in-quote))
3578 (save-excursion 3681 (save-excursion
3579 (forward-char) 3682 (forward-char)
3580 (re-search-backward (concat "\\(" idlwave-idl-keywords 3683 (re-search-backward (concat "\\(" idlwave-idl-keywords
3581 "\\|[[(*+-/=,^><]\\)\\s-*\\*") limit t))))) 3684 "\\|[[(*+-/=,^><]\\)\\s-*\\*") limit t)))))
3582 3685
3583 3686
@@ -3623,7 +3726,7 @@ unless the optional second argument NOINDENT is non-nil."
3623 (indent-region beg end nil)) 3726 (indent-region beg end nil))
3624 (if (stringp prompt) 3727 (if (stringp prompt)
3625 (message prompt))))) 3728 (message prompt)))))
3626 3729
3627(defun idlwave-rw-case (string) 3730(defun idlwave-rw-case (string)
3628 "Make STRING have the case required by `idlwave-reserved-word-upcase'." 3731 "Make STRING have the case required by `idlwave-reserved-word-upcase'."
3629 (if idlwave-reserved-word-upcase 3732 (if idlwave-reserved-word-upcase
@@ -3641,7 +3744,7 @@ unless the optional second argument NOINDENT is non-nil."
3641(defun idlwave-case () 3744(defun idlwave-case ()
3642 "Build skeleton IDL case statement." 3745 "Build skeleton IDL case statement."
3643 (interactive) 3746 (interactive)
3644 (idlwave-template 3747 (idlwave-template
3645 (idlwave-rw-case "case") 3748 (idlwave-rw-case "case")
3646 (idlwave-rw-case " of\n\nendcase") 3749 (idlwave-rw-case " of\n\nendcase")
3647 "Selector expression")) 3750 "Selector expression"))
@@ -3649,7 +3752,7 @@ unless the optional second argument NOINDENT is non-nil."
3649(defun idlwave-switch () 3752(defun idlwave-switch ()
3650 "Build skeleton IDL switch statement." 3753 "Build skeleton IDL switch statement."
3651 (interactive) 3754 (interactive)
3652 (idlwave-template 3755 (idlwave-template
3653 (idlwave-rw-case "switch") 3756 (idlwave-rw-case "switch")
3654 (idlwave-rw-case " of\n\nendswitch") 3757 (idlwave-rw-case " of\n\nendswitch")
3655 "Selector expression")) 3758 "Selector expression"))
@@ -3657,7 +3760,7 @@ unless the optional second argument NOINDENT is non-nil."
3657(defun idlwave-for () 3760(defun idlwave-for ()
3658 "Build skeleton for loop statment." 3761 "Build skeleton for loop statment."
3659 (interactive) 3762 (interactive)
3660 (idlwave-template 3763 (idlwave-template
3661 (idlwave-rw-case "for") 3764 (idlwave-rw-case "for")
3662 (idlwave-rw-case " do begin\n\nendfor") 3765 (idlwave-rw-case " do begin\n\nendfor")
3663 "Loop expression")) 3766 "Loop expression"))
@@ -3672,14 +3775,14 @@ unless the optional second argument NOINDENT is non-nil."
3672 3775
3673(defun idlwave-procedure () 3776(defun idlwave-procedure ()
3674 (interactive) 3777 (interactive)
3675 (idlwave-template 3778 (idlwave-template
3676 (idlwave-rw-case "pro") 3779 (idlwave-rw-case "pro")
3677 (idlwave-rw-case "\n\nreturn\nend") 3780 (idlwave-rw-case "\n\nreturn\nend")
3678 "Procedure name")) 3781 "Procedure name"))
3679 3782
3680(defun idlwave-function () 3783(defun idlwave-function ()
3681 (interactive) 3784 (interactive)
3682 (idlwave-template 3785 (idlwave-template
3683 (idlwave-rw-case "function") 3786 (idlwave-rw-case "function")
3684 (idlwave-rw-case "\n\nreturn\nend") 3787 (idlwave-rw-case "\n\nreturn\nend")
3685 "Function name")) 3788 "Function name"))
@@ -3693,7 +3796,7 @@ unless the optional second argument NOINDENT is non-nil."
3693 3796
3694(defun idlwave-while () 3797(defun idlwave-while ()
3695 (interactive) 3798 (interactive)
3696 (idlwave-template 3799 (idlwave-template
3697 (idlwave-rw-case "while") 3800 (idlwave-rw-case "while")
3698 (idlwave-rw-case " do begin\n\nendwhile") 3801 (idlwave-rw-case " do begin\n\nendwhile")
3699 "Entry condition")) 3802 "Entry condition"))
@@ -3742,7 +3845,7 @@ Buffers in this list may be killed by `idlwave-kill-autoloaded-buffers'.")
3742 buf))) 3845 buf)))
3743 3846
3744(defun idlwave-kill-autoloaded-buffers () 3847(defun idlwave-kill-autoloaded-buffers ()
3745 "Cleanup by killing buffers created automatically by IDLWAVE. 3848 "Kill buffers created automatically by IDLWAVE.
3746Function prompts for a letter to identify the buffers to kill. 3849Function prompts for a letter to identify the buffers to kill.
3747Possible letters are: 3850Possible letters are:
3748 3851
@@ -3772,8 +3875,8 @@ Buffer containing unsaved changes require confirmation before they are killed."
3772(defun idlwave-count-outlawed-buffers (tag) 3875(defun idlwave-count-outlawed-buffers (tag)
3773 "How many outlawed buffers have tag TAG?" 3876 "How many outlawed buffers have tag TAG?"
3774 (length (delq nil 3877 (length (delq nil
3775 (mapcar 3878 (mapcar
3776 (lambda (x) (eq (cdr x) tag)) 3879 (lambda (x) (eq (cdr x) tag))
3777 idlwave-outlawed-buffers)))) 3880 idlwave-outlawed-buffers))))
3778 3881
3779(defun idlwave-do-kill-autoloaded-buffers (&rest reasons) 3882(defun idlwave-do-kill-autoloaded-buffers (&rest reasons)
@@ -3787,9 +3890,9 @@ Buffer containing unsaved changes require confirmation before they are killed."
3787 (memq (cdr entry) reasons)) 3890 (memq (cdr entry) reasons))
3788 (kill-buffer (car entry)) 3891 (kill-buffer (car entry))
3789 (incf cnt) 3892 (incf cnt)
3790 (setq idlwave-outlawed-buffers 3893 (setq idlwave-outlawed-buffers
3791 (delq entry idlwave-outlawed-buffers))) 3894 (delq entry idlwave-outlawed-buffers)))
3792 (setq idlwave-outlawed-buffers 3895 (setq idlwave-outlawed-buffers
3793 (delq entry idlwave-outlawed-buffers)))) 3896 (delq entry idlwave-outlawed-buffers))))
3794 (message "%d buffer%s killed" cnt (if (= cnt 1) "" "s")))) 3897 (message "%d buffer%s killed" cnt (if (= cnt 1) "" "s"))))
3795 3898
@@ -3801,7 +3904,7 @@ Intended for `after-save-hook'."
3801 (entry (assq buf idlwave-outlawed-buffers))) 3904 (entry (assq buf idlwave-outlawed-buffers)))
3802 ;; Revoke license 3905 ;; Revoke license
3803 (if entry 3906 (if entry
3804 (setq idlwave-outlawed-buffers 3907 (setq idlwave-outlawed-buffers
3805 (delq entry idlwave-outlawed-buffers))) 3908 (delq entry idlwave-outlawed-buffers)))
3806 ;; Remove this function from the hook. 3909 ;; Remove this function from the hook.
3807 (remove-hook 'after-save-hook 'idlwave-revoke-license-to-kill 'local))) 3910 (remove-hook 'after-save-hook 'idlwave-revoke-license-to-kill 'local)))
@@ -3816,14 +3919,12 @@ Intended for `after-save-hook'."
3816 (if (file-regular-p 3919 (if (file-regular-p
3817 (setq efile (expand-file-name file dir))) 3920 (setq efile (expand-file-name file dir)))
3818 (throw 'exit efile)))))) 3921 (throw 'exit efile))))))
3922
3819(defun idlwave-expand-lib-file-name (file) 3923(defun idlwave-expand-lib-file-name (file)
3820 ;; Find FILE on the scanned lib path and return a buffer visiting it 3924 ;; Find FILE on the scanned lib path and return a buffer visiting it
3821 (cond 3925 ;; This is for, e.g., finding source with no user catalog
3926 (cond
3822 ((null file) nil) 3927 ((null file) nil)
3823 ((string-match "\\`\\({\\([0-9]+\\)}/\\)\\(.*\\)" file)
3824 (expand-file-name (match-string 3 file)
3825 (car (nth (1- (string-to-int (match-string 2 file)))
3826 idlwave-path-alist))))
3827 ((file-name-absolute-p file) file) 3928 ((file-name-absolute-p file) file)
3828 (t (idlwave-locate-lib-file file)))) 3929 (t (idlwave-locate-lib-file file))))
3829 3930
@@ -3837,7 +3938,7 @@ you specify /."
3837 (interactive) 3938 (interactive)
3838 (let (directory directories cmd append status numdirs dir getsubdirs 3939 (let (directory directories cmd append status numdirs dir getsubdirs
3839 buffer save_buffer files numfiles item errbuf) 3940 buffer save_buffer files numfiles item errbuf)
3840 3941
3841 ;; 3942 ;;
3842 ;; Read list of directories 3943 ;; Read list of directories
3843 (setq directory (read-string "Tag Directories: " ".")) 3944 (setq directory (read-string "Tag Directories: " "."))
@@ -3888,12 +3989,12 @@ you specify /."
3888 (progn 3989 (progn
3889 (message (concat "Tagging " item "...")) 3990 (message (concat "Tagging " item "..."))
3890 (setq errbuf (get-buffer-create "*idltags-error*")) 3991 (setq errbuf (get-buffer-create "*idltags-error*"))
3891 (setq status 3992 (setq status (+ status
3892 (+ status 3993 (if (eq 0 (call-process
3893 (if (eq 0 (call-process "sh" nil errbuf nil "-c" 3994 "sh" nil errbuf nil "-c"
3894 (concat cmd append item))) 3995 (concat cmd append item)))
3895 0 3996 0
3896 1))) 3997 1)))
3897 ;; 3998 ;;
3898 ;; Append additional tags 3999 ;; Append additional tags
3899 (setq append " --append ") 4000 (setq append " --append ")
@@ -3903,13 +4004,13 @@ you specify /."
3903 (setq numfiles (1+ numfiles)) 4004 (setq numfiles (1+ numfiles))
3904 (setq item (nth numfiles files)) 4005 (setq item (nth numfiles files))
3905 ))) 4006 )))
3906 4007
3907 (setq numdirs (1+ numdirs)) 4008 (setq numdirs (1+ numdirs))
3908 (setq dir (nth numdirs directories))) 4009 (setq dir (nth numdirs directories)))
3909 (progn 4010 (progn
3910 (setq numdirs (1+ numdirs)) 4011 (setq numdirs (1+ numdirs))
3911 (setq dir (nth numdirs directories))))) 4012 (setq dir (nth numdirs directories)))))
3912 4013
3913 (setq errbuf (get-buffer-create "*idltags-error*")) 4014 (setq errbuf (get-buffer-create "*idltags-error*"))
3914 (if (= status 0) 4015 (if (= status 0)
3915 (kill-buffer errbuf)) 4016 (kill-buffer errbuf))
@@ -3932,11 +4033,13 @@ blank lines."
3932 ;; skip blank lines 4033 ;; skip blank lines
3933 (skip-chars-forward " \t\n") 4034 (skip-chars-forward " \t\n")
3934 (if (looking-at (concat "[ \t]*\\(" comment-start "+\\)")) 4035 (if (looking-at (concat "[ \t]*\\(" comment-start "+\\)"))
3935 (comment-region beg end 4036 (if (fboundp 'uncomment-region)
3936 (- (length (buffer-substring 4037 (uncomment-region beg end)
3937 (match-beginning 1) 4038 (comment-region beg end
3938 (match-end 1))))) 4039 (- (length (buffer-substring
3939 (comment-region beg end))))) 4040 (match-beginning 1)
4041 (match-end 1))))))
4042 (comment-region beg end)))))
3940 4043
3941 4044
3942;; ---------------------------------------------------------------------------- 4045;; ----------------------------------------------------------------------------
@@ -3952,17 +4055,21 @@ blank lines."
3952;; For the completion and routine info function, we want to normalize 4055;; For the completion and routine info function, we want to normalize
3953;; the case of procedure names etc. We do this by "interning" these 4056;; the case of procedure names etc. We do this by "interning" these
3954;; string is a hand-crafted way. Hashes are used to map the downcase 4057;; string is a hand-crafted way. Hashes are used to map the downcase
3955;; version of the strings to the cased versions. Since these cased 4058;; version of the strings to the cased versions. Most *-sint-*
3956;; versions are really lisp objects, we can use `eq' to search, which 4059;; variables consist of *two* hashes, a buffer+shell, followed by a
3957;; is a large performance boost. 4060;; system hash. The former is re-scanned, and the latter takes case
3958;; All new strings need to be "sinterned". We do this as early as 4061;; precedence.
3959;; possible after getting these strings from completion or buffer 4062;;
3960;; substrings. So most of the code can simply assume to deal with 4063;; Since these cased versions are really lisp objects, we can use `eq'
3961;; "sinterned" strings. The only exception is that the functions 4064;; to search, which is a large performance boost. All new strings
3962;; which scan whole buffers for routine information do not intern the 4065;; need to be "sinterned". We do this as early as possible after
3963;; grabbed strings. This is only done afterwards. Therefore in these 4066;; getting these strings from completion or buffer substrings. So
3964;; functions it is *not* safe to assume the strings can be compared 4067;; most of the code can simply assume to deal with "sinterned"
3965;; with `eq' and be fed into the routine assq functions. 4068;; strings. The only exception is that the functions which scan whole
4069;; buffers for routine information do not intern the grabbed strings.
4070;; This is only done afterwards. Therefore in these functions it is
4071;; *not* safe to assume the strings can be compared with `eq' and be
4072;; fed into the routine assq functions.
3966 4073
3967;; Here we define the hashing functions. 4074;; Here we define the hashing functions.
3968 4075
@@ -3971,14 +4078,15 @@ blank lines."
3971(defvar idlwave-sint-keywords '(nil)) 4078(defvar idlwave-sint-keywords '(nil))
3972(defvar idlwave-sint-methods '(nil)) 4079(defvar idlwave-sint-methods '(nil))
3973(defvar idlwave-sint-classes '(nil)) 4080(defvar idlwave-sint-classes '(nil))
3974(defvar idlwave-sint-files '(nil)) 4081(defvar idlwave-sint-dirs '(nil))
4082(defvar idlwave-sint-libnames '(nil))
3975 4083
3976(defun idlwave-reset-sintern (&optional what) 4084(defun idlwave-reset-sintern (&optional what)
3977 "Reset all sintern hashes." 4085 "Reset all sintern hashes."
3978 ;; Make sure the hash functions are accessible. 4086 ;; Make sure the hash functions are accessible.
3979 (if (or (not (fboundp 'gethash)) 4087 (if (or (not (fboundp 'gethash))
3980 (not (fboundp 'puthash))) 4088 (not (fboundp 'puthash)))
3981 (progn 4089 (progn
3982 (require 'cl) 4090 (require 'cl)
3983 (or (fboundp 'puthash) 4091 (or (fboundp 'puthash)
3984 (defalias 'puthash 'cl-puthash)))) 4092 (defalias 'puthash 'cl-puthash))))
@@ -3997,16 +4105,17 @@ blank lines."
3997 ;; Reset the system & library hash 4105 ;; Reset the system & library hash
3998 (loop for entry in entries 4106 (loop for entry in entries
3999 for var = (car entry) for size = (nth 1 entry) 4107 for var = (car entry) for size = (nth 1 entry)
4000 do (setcdr (symbol-value var) 4108 do (setcdr (symbol-value var)
4001 (make-hash-table ':size size ':test 'equal))) 4109 (make-hash-table ':size size ':test 'equal)))
4002 (setq idlwave-sint-files nil)) 4110 (setq idlwave-sint-dirs nil
4111 idlwave-sint-libnames nil))
4003 4112
4004 (when (or (eq what t) (eq what 'bufsh) 4113 (when (or (eq what t) (eq what 'bufsh)
4005 (null (car idlwave-sint-routines))) 4114 (null (car idlwave-sint-routines)))
4006 ;; Reset the buffer & shell hash 4115 ;; Reset the buffer & shell hash
4007 (loop for entry in entries 4116 (loop for entry in entries
4008 for var = (car entry) for size = (nth 1 entry) 4117 for var = (car entry) for size = (nth 1 entry)
4009 do (setcar (symbol-value var) 4118 do (setcar (symbol-value var)
4010 (make-hash-table ':size size ':test 'equal)))))) 4119 (make-hash-table ':size size ':test 'equal))))))
4011 4120
4012(defun idlwave-sintern-routine-or-method (name &optional class set) 4121(defun idlwave-sintern-routine-or-method (name &optional class set)
@@ -4049,9 +4158,12 @@ blank lines."
4049 (set (idlwave-sintern-set name 'class idlwave-sint-classes set)) 4158 (set (idlwave-sintern-set name 'class idlwave-sint-classes set))
4050 (name))) 4159 (name)))
4051 4160
4052(defun idlwave-sintern-file (name &optional set) 4161(defun idlwave-sintern-dir (dir &optional set)
4053 (car (or (member name idlwave-sint-files) 4162 (car (or (member dir idlwave-sint-dirs)
4054 (setq idlwave-sint-files (cons name idlwave-sint-files))))) 4163 (setq idlwave-sint-dirs (cons dir idlwave-sint-dirs)))))
4164(defun idlwave-sintern-libname (name &optional set)
4165 (car (or (member name idlwave-sint-libnames)
4166 (setq idlwave-sint-libnames (cons name idlwave-sint-libnames)))))
4055 4167
4056(defun idlwave-sintern-set (name type tables set) 4168(defun idlwave-sintern-set (name type tables set)
4057 (let* ((func (or (cdr (assq type idlwave-completion-case)) 4169 (let* ((func (or (cdr (assq type idlwave-completion-case))
@@ -4061,10 +4173,18 @@ blank lines."
4061 (puthash (downcase name) iname table) 4173 (puthash (downcase name) iname table)
4062 iname)) 4174 iname))
4063 4175
4064(defun idlwave-sintern-rinfo-list (list &optional set) 4176(defun idlwave-sintern-keyword-list (kwd-list &optional set)
4065 "Sintern all strings in the rinfo LIST. With optional parameter SET: 4177 "Sintern a set of keywords (file (key . link) (key2 . link2) ...)"
4066also set new patterns. Probably this will always have to be t." 4178 (mapcar (lambda(x)
4067 (let (entry name type class kwds res source call olh new) 4179 (setcar x (idlwave-sintern-keyword (car x) set)))
4180 (cdr kwd-list))
4181 kwd-list)
4182
4183(defun idlwave-sintern-rinfo-list (list &optional set default-dir)
4184 "Sintern all strings in the rinfo LIST. With optional parameter
4185SET: also set new patterns. Probably this will always have to be t.
4186If DEFAULT-DIR is passed, it is used as the base of the directory"
4187 (let (entry name type class kwds res source call new)
4068 (while list 4188 (while list
4069 (setq entry (car list) 4189 (setq entry (car list)
4070 list (cdr list) 4190 list (cdr list)
@@ -4073,23 +4193,37 @@ also set new patterns. Probably this will always have to be t."
4073 class (nth 2 entry) 4193 class (nth 2 entry)
4074 source (nth 3 entry) 4194 source (nth 3 entry)
4075 call (nth 4 entry) 4195 call (nth 4 entry)
4076 kwds (nth 5 entry) 4196 kwds (nthcdr 5 entry))
4077 olh (nth 6 entry)) 4197
4078 (setq kwds (mapcar (lambda (x) 4198 ;; The class and name
4079 (list (idlwave-sintern-keyword (car x) set)))
4080 kwds))
4081 (if class 4199 (if class
4082 (progn 4200 (progn
4083 (if (symbolp class) (setq class (symbol-name class))) 4201 (if (symbolp class) (setq class (symbol-name class)))
4084 (setq class (idlwave-sintern-class class set)) 4202 (setq class (idlwave-sintern-class class set))
4085 (setq name (idlwave-sintern-method name set))) 4203 (setq name (idlwave-sintern-method name set)))
4086 (setq name (idlwave-sintern-routine name set))) 4204 (setq name (idlwave-sintern-routine name set)))
4087 (if (stringp (cdr source)) 4205
4088 (setcdr source (idlwave-sintern-file (cdr source) t))) 4206 ;; The source
4089 (setq new (if olh 4207 (let ((source-type (car source))
4090 (list name type class source call kwds olh) 4208 (source-file (nth 1 source))
4091 (list name type class source call kwds))) 4209 (source-dir (if default-dir
4092 (setq res (cons new res))) 4210 (file-name-as-directory default-dir)
4211 (nth 2 source)))
4212 (source-lib (nth 3 source)))
4213 (if (stringp source-dir)
4214 (setq source-dir (idlwave-sintern-dir source-dir set)))
4215 (if (stringp source-lib)
4216 (setq source-lib (idlwave-sintern-libname source-lib set)))
4217 (setq source (list source-type source-file source-dir source-lib)))
4218
4219 ;; The keywords
4220 (setq kwds (mapcar (lambda (x)
4221 (idlwave-sintern-keyword-list x set))
4222 kwds))
4223
4224 ;; Build a canonicalized list
4225 (setq new (nconc (list name type class source call) kwds)
4226 res (cons new res)))
4093 (nreverse res))) 4227 (nreverse res)))
4094 4228
4095;; Creating new sintern tables 4229;; Creating new sintern tables
@@ -4128,14 +4262,18 @@ This defines the function `idlwave-sintern-TAG' and the variable
4128 "Holds the routine-info obtained by asking the shell.") 4262 "Holds the routine-info obtained by asking the shell.")
4129(defvar idlwave-unresolved-routines nil 4263(defvar idlwave-unresolved-routines nil
4130 "Holds the unresolved routine-info obtained by asking the shell.") 4264 "Holds the unresolved routine-info obtained by asking the shell.")
4131(defvar idlwave-library-routines nil 4265(defvar idlwave-user-catalog-routines nil
4132 "Holds the procedure routine-info from the library scan.") 4266 "Holds the procedure routine-info from the user scan.")
4267(defvar idlwave-library-catalog-routines nil
4268 "Holds the procedure routine-info from the library catalog files.")
4133(defvar idlwave-path-alist nil 4269(defvar idlwave-path-alist nil
4134 "Alist with !PATH directories and a flag if the dir has been scanned.") 4270 "Alist with !PATH directories and zero or more flags if the dir has
4271been scanned in a user catalog ('user) or discovered in a library
4272catalog \('lib).")
4135(defvar idlwave-true-path-alist nil 4273(defvar idlwave-true-path-alist nil
4136 "Like `idlwave-path-alist', but with true filenames.") 4274 "Like `idlwave-path-alist', but with true filenames.")
4137(defvar idlwave-routines nil 4275(defvar idlwave-routines nil
4138 "Holds the combinded procedure routine-info.") 4276 "Holds the combinded procedure/function/method routine-info.")
4139(defvar idlwave-class-alist nil 4277(defvar idlwave-class-alist nil
4140 "Holds the class names known to IDLWAVE.") 4278 "Holds the class names known to IDLWAVE.")
4141(defvar idlwave-class-history nil 4279(defvar idlwave-class-history nil
@@ -4206,19 +4344,19 @@ will re-read the catalog."
4206 (condition-case nil 4344 (condition-case nil
4207 (kill-process idlwave-catalog-process) 4345 (kill-process idlwave-catalog-process)
4208 (error nil)))) 4346 (error nil))))
4209 (if (or (not idlwave-libinfo-file) 4347 (if (or (not idlwave-user-catalog-file)
4210 (not (stringp idlwave-libinfo-file)) 4348 (not (stringp idlwave-user-catalog-file))
4211 (not (file-regular-p idlwave-libinfo-file))) 4349 (not (file-regular-p idlwave-user-catalog-file)))
4212 (error "No catalog has been produced yet")) 4350 (error "No catalog has been produced yet"))
4213 (let* ((emacs (expand-file-name (invocation-name) (invocation-directory))) 4351 (let* ((emacs (expand-file-name (invocation-name) (invocation-directory)))
4214 (args (list "-batch" 4352 (args (list "-batch"
4215 "-l" (expand-file-name "~/.emacs") 4353 "-l" (expand-file-name "~/.emacs")
4216 "-l" "idlwave" 4354 "-l" "idlwave"
4217 "-f" "idlwave-rescan-catalog-directories")) 4355 "-f" "idlwave-rescan-catalog-directories"))
4218 (process (apply 'start-process "idlcat" 4356 (process (apply 'start-process "idlcat"
4219 nil emacs args))) 4357 nil emacs args)))
4220 (setq idlwave-catalog-process process) 4358 (setq idlwave-catalog-process process)
4221 (set-process-sentinel 4359 (set-process-sentinel
4222 process 4360 process
4223 (lambda (pro why) 4361 (lambda (pro why)
4224 (when (string-match "finished" why) 4362 (when (string-match "finished" why)
@@ -4230,8 +4368,21 @@ will re-read the catalog."
4230 (message "Background job started to update catalog file"))) 4368 (message "Background job started to update catalog file")))
4231 4369
4232 4370
4371;; Format for all routine info user catalog, library catalogs, etc.:
4372;;
4373;; ("ROUTINE" type class
4374;; (system) | (lib pro_file dir "LIBNAME") | (user pro_file dir "USERLIB") |
4375;; (buffer pro_file dir) | (compiled pro_file dir)
4376;; "calling_string" ("HELPFILE" (("KWD1" . link1) ...)))
4377;;
4378;; DIR will be supplied dynamically while loading library catalogs,
4379;; and is sinterned to save space, as is LIBNAME. PRO_FILE can be a
4380;; complete filepath, in which case DIR is unnecessary. HELPFILE can
4381;; be nil, as can LINK1, etc., if no HTML help is available.
4382
4383
4233(defvar idlwave-load-rinfo-idle-timer) 4384(defvar idlwave-load-rinfo-idle-timer)
4234(defun idlwave-update-routine-info (&optional arg dont-concentrate) 4385(defun idlwave-update-routine-info (&optional arg no-concatenate)
4235 "Update the internal routine-info lists. 4386 "Update the internal routine-info lists.
4236These lists are used by `idlwave-routine-info' (\\[idlwave-routine-info]) 4387These lists are used by `idlwave-routine-info' (\\[idlwave-routine-info])
4237and by `idlwave-complete' (\\[idlwave-complete]) to provide information 4388and by `idlwave-complete' (\\[idlwave-complete]) to provide information
@@ -4248,11 +4399,15 @@ Scans all IDLWAVE-mode buffers of the current editing session (see
4248When an IDL shell is running, this command also queries the IDL program 4399When an IDL shell is running, this command also queries the IDL program
4249for currently compiled routines. 4400for currently compiled routines.
4250 4401
4251???Document what DONT-CONCENTRATE means???
4252
4253With prefix ARG, also reload the system and library lists. 4402With prefix ARG, also reload the system and library lists.
4254With two prefix ARG's, also rescans the library tree. 4403With two prefix ARG's, also rescans the chosen user catalog tree.
4255With three prefix args, dispatch asynchronous process to do the update." 4404With three prefix args, dispatch asynchronous process to do the update.
4405
4406If NO-CONCATENATE is non-nil, don't pre-concatenate the routine info
4407lists, but instead wait for the shell query to complete and
4408asynchronously finish updating routine info. This is set
4409automatically when called interactively. When you need routine
4410information updated immediately, leave NO-CONCATENATE nil."
4256 (interactive "P\np") 4411 (interactive "P\np")
4257 ;; Stop any idle processing 4412 ;; Stop any idle processing
4258 (if (or (and (fboundp 'itimerp) 4413 (if (or (and (fboundp 'itimerp)
@@ -4265,8 +4420,8 @@ With three prefix args, dispatch asynchronous process to do the update."
4265 ;; Start a background process which updates the catalog. 4420 ;; Start a background process which updates the catalog.
4266 (idlwave-rescan-asynchronously)) 4421 (idlwave-rescan-asynchronously))
4267 ((equal arg '(16)) 4422 ((equal arg '(16))
4268 ;; Update the catalog now, and wait for it. 4423 ;; Update the user catalog now, and wait for them.
4269 (idlwave-create-libinfo-file t)) 4424 (idlwave-create-user-catalog-file t))
4270 (t 4425 (t
4271 (let* ((load (or arg 4426 (let* ((load (or arg
4272 idlwave-buffer-case-takes-precedence 4427 idlwave-buffer-case-takes-precedence
@@ -4274,7 +4429,7 @@ With three prefix args, dispatch asynchronous process to do the update."
4274 ;; The override-idle means, even if the idle timer has done some 4429 ;; The override-idle means, even if the idle timer has done some
4275 ;; preparing work, load and renormalize everything anyway. 4430 ;; preparing work, load and renormalize everything anyway.
4276 (override-idle (or arg idlwave-buffer-case-takes-precedence))) 4431 (override-idle (or arg idlwave-buffer-case-takes-precedence)))
4277 4432
4278 (setq idlwave-buffer-routines nil 4433 (setq idlwave-buffer-routines nil
4279 idlwave-compiled-routines nil 4434 idlwave-compiled-routines nil
4280 idlwave-unresolved-routines nil) 4435 idlwave-unresolved-routines nil)
@@ -4285,7 +4440,7 @@ With three prefix args, dispatch asynchronous process to do the update."
4285 (idlwave-reset-sintern (cond (load t) 4440 (idlwave-reset-sintern (cond (load t)
4286 ((null idlwave-system-routines) t) 4441 ((null idlwave-system-routines) t)
4287 (t 'bufsh)))) 4442 (t 'bufsh))))
4288 4443
4289 (if idlwave-buffer-case-takes-precedence 4444 (if idlwave-buffer-case-takes-precedence
4290 ;; We can safely scan the buffer stuff first 4445 ;; We can safely scan the buffer stuff first
4291 (progn 4446 (progn
@@ -4300,24 +4455,36 @@ With three prefix args, dispatch asynchronous process to do the update."
4300 (idlwave-shell-is-running))) 4455 (idlwave-shell-is-running)))
4301 (ask-shell (and shell-is-running 4456 (ask-shell (and shell-is-running
4302 idlwave-query-shell-for-routine-info))) 4457 idlwave-query-shell-for-routine-info)))
4458
4459 ;; Load the library catalogs again, first re-scanning the path
4460 (when arg
4461 (if shell-is-running
4462 (idlwave-shell-send-command idlwave-shell-path-query
4463 '(progn
4464 (idlwave-shell-get-path-info)
4465 (idlwave-scan-library-catalogs))
4466 'hide)
4467 (idlwave-scan-library-catalogs)))
4303 4468
4304 (if (or (not ask-shell) 4469 (if (or (not ask-shell)
4305 (not dont-concentrate)) 4470 (not no-concatenate))
4306 ;; 1. If we are not going to ask the shell, we need to do the 4471 ;; 1. If we are not going to ask the shell, we need to do the
4307 ;; concatenation now. 4472 ;; concatenation now.
4308 ;; 2. When this function is called non-interactively, it means 4473 ;; 2. When this function is called non-interactively, it
4309 ;; that someone needs routine info *now*. The shell update 4474 ;; means that someone needs routine info *now*. The
4310 ;; causes the concatenation *delayed*, so not in time for 4475 ;; shell update causes the concatenation to be
4311 ;; the current command. Therefore, we do a concatenation 4476 ;; *delayed*, so not in time for the current command.
4312 ;; now, even though the shell might do it again. 4477 ;; Therefore, we do a concatenation now, even though
4313 (idlwave-concatenate-rinfo-lists nil t)) 4478 ;; the shell might do it again.
4314 4479 (idlwave-concatenate-rinfo-lists nil 'run-hooks))
4480
4315 (when ask-shell 4481 (when ask-shell
4316 ;; Ask the shell about the routines it knows. 4482 ;; Ask the shell about the routines it knows of.
4317 (message "Querying the shell") 4483 (message "Querying the shell")
4318 (idlwave-shell-update-routine-info nil t))))))) 4484 (idlwave-shell-update-routine-info nil t)))))))
4319 4485
4320(defvar idlwave-load-rinfo-steps-done (make-vector 5 nil)) 4486
4487(defvar idlwave-load-rinfo-steps-done (make-vector 6 nil))
4321(defvar idlwave-load-rinfo-idle-timer nil) 4488(defvar idlwave-load-rinfo-idle-timer nil)
4322(defun idlwave-start-load-rinfo-timer () 4489(defun idlwave-start-load-rinfo-timer ()
4323 (if (or (and (fboundp 'itimerp) 4490 (if (or (and (fboundp 'itimerp)
@@ -4325,7 +4492,7 @@ With three prefix args, dispatch asynchronous process to do the update."
4325 (and (fboundp 'timerp) 4492 (and (fboundp 'timerp)
4326 (timerp idlwave-load-rinfo-idle-timer))) 4493 (timerp idlwave-load-rinfo-idle-timer)))
4327 (cancel-timer idlwave-load-rinfo-idle-timer)) 4494 (cancel-timer idlwave-load-rinfo-idle-timer))
4328 (setq idlwave-load-rinfo-steps-done (make-vector 5 nil)) 4495 (setq idlwave-load-rinfo-steps-done (make-vector 6 nil))
4329 (setq idlwave-load-rinfo-idle-timer nil) 4496 (setq idlwave-load-rinfo-idle-timer nil)
4330 (if (and idlwave-init-rinfo-when-idle-after 4497 (if (and idlwave-init-rinfo-when-idle-after
4331 (numberp idlwave-init-rinfo-when-idle-after) 4498 (numberp idlwave-init-rinfo-when-idle-after)
@@ -4339,12 +4506,10 @@ With three prefix args, dispatch asynchronous process to do the update."
4339 nil 'idlwave-load-rinfo-next-step))) 4506 nil 'idlwave-load-rinfo-next-step)))
4340 (error nil)))) 4507 (error nil))))
4341 4508
4342
4343
4344(defun idlwave-load-rinfo-next-step () 4509(defun idlwave-load-rinfo-next-step ()
4345 (let ((inhibit-quit t) 4510 (let ((inhibit-quit t)
4346 (arr idlwave-load-rinfo-steps-done)) 4511 (arr idlwave-load-rinfo-steps-done))
4347 (if (catch 'exit 4512 (when (catch 'exit
4348 (when (not (aref arr 0)) 4513 (when (not (aref arr 0))
4349 (message "Loading idlw-rinfo.el in idle time...") 4514 (message "Loading idlw-rinfo.el in idle time...")
4350 (load "idlw-rinfo" 'noerror 'nomessage) 4515 (load "idlw-rinfo" 'noerror 'nomessage)
@@ -4361,41 +4526,54 @@ With three prefix args, dispatch asynchronous process to do the update."
4361 (aset arr 1 t) 4526 (aset arr 1 t)
4362 (throw 'exit t)) 4527 (throw 'exit t))
4363 (when (not (aref arr 2)) 4528 (when (not (aref arr 2))
4364 (when (and (stringp idlwave-libinfo-file) 4529 (when (and (stringp idlwave-user-catalog-file)
4365 (file-regular-p idlwave-libinfo-file)) 4530 (file-regular-p idlwave-user-catalog-file))
4531 (message "Loading user catalog in idle time...")
4366 (condition-case nil 4532 (condition-case nil
4533 (load-file idlwave-user-catalog-file)
4534 (error (throw 'exit nil)))
4535 ;; Check for the old style catalog and warn
4536 (if (and
4537 (boundp 'idlwave-library-routines)
4538 idlwave-library-routines)
4367 (progn 4539 (progn
4368 (message "Loading library catalog in idle time...") 4540 (setq idlwave-library-routines nil)
4369 (load-file idlwave-libinfo-file) 4541 (ding)
4370 (message "Loading library catalog in idle time...done") 4542 (message "Outdated user catalog: %s... recreate"
4371 (aset arr 2 t) 4543 idlwave-user-catalog-file))
4372 (throw 'exit t)) 4544 (message "Loading user catalog in idle time...done"))
4373 (error (throw 'exit nil))))) 4545 (aset arr 2 t)
4546 (throw 'exit t)))
4374 (when (not (aref arr 3)) 4547 (when (not (aref arr 3))
4375 (when idlwave-library-routines 4548 (when idlwave-user-catalog-routines
4376 (message "Normalizing idlwave-library-routines in idle time...") 4549 (message "Normalizing user catalog routines in idle time...")
4377 (setq idlwave-library-routines (idlwave-sintern-rinfo-list 4550 (setq idlwave-user-catalog-routines
4378 idlwave-library-routines 'sys)) 4551 (idlwave-sintern-rinfo-list
4379 (message "Normalizing idlwave-library-routines in idle time...done")) 4552 idlwave-user-catalog-routines 'sys))
4553 (message
4554 "Normalizing user catalog routines in idle time...done"))
4380 (aset arr 3 t) 4555 (aset arr 3 t)
4381 (throw 'exit t)) 4556 (throw 'exit t))
4382 (when (not (aref arr 4)) 4557 (when (not (aref arr 4))
4558 (idlwave-scan-library-catalogs
4559 "Loading and normalizing library catalogs in idle time...")
4560 (aset arr 4 t)
4561 (throw 'exit t))
4562 (when (not (aref arr 5))
4383 (message "Finishing initialization in idle time...") 4563 (message "Finishing initialization in idle time...")
4384 (idlwave-routines) 4564 (idlwave-routines)
4385 (message "Finishing initialization in idle time...done") 4565 (message "Finishing initialization in idle time...done")
4386 (throw 'exit nil))) 4566 (throw 'exit nil)))
4387 (progn 4567 ;; restart the timer
4388 ;; restart the timer 4568 (if (sit-for 1)
4389 (if (sit-for 1) 4569 (idlwave-load-rinfo-next-step)
4390 (idlwave-load-rinfo-next-step) 4570 (setq idlwave-load-rinfo-idle-timer
4391 (setq idlwave-load-rinfo-idle-timer 4571 (run-with-idle-timer
4392 (run-with-idle-timer 4572 idlwave-init-rinfo-when-idle-after
4393 idlwave-init-rinfo-when-idle-after 4573 nil 'idlwave-load-rinfo-next-step))))))
4394 nil 'idlwave-load-rinfo-next-step)))
4395 ))))
4396 4574
4397(defun idlwave-load-system-rinfo (&optional force) 4575(defun idlwave-load-system-rinfo (&optional force)
4398 ;; Load and case-treat the system and lib info files. 4576 ;; Load and case-treat the system and catalog files.
4399 (when (or force (not (aref idlwave-load-rinfo-steps-done 0))) 4577 (when (or force (not (aref idlwave-load-rinfo-steps-done 0)))
4400 (load "idlw-rinfo" 'noerror 'nomessage)) 4578 (load "idlw-rinfo" 'noerror 'nomessage))
4401 (when (or force (not (aref idlwave-load-rinfo-steps-done 1))) 4579 (when (or force (not (aref idlwave-load-rinfo-steps-done 1)))
@@ -4406,30 +4584,35 @@ With three prefix args, dispatch asynchronous process to do the update."
4406 (setq idlwave-routines (copy-sequence idlwave-system-routines)) 4584 (setq idlwave-routines (copy-sequence idlwave-system-routines))
4407 (setq idlwave-last-system-routine-info-cons-cell 4585 (setq idlwave-last-system-routine-info-cons-cell
4408 (nthcdr (1- (length idlwave-routines)) idlwave-routines)) 4586 (nthcdr (1- (length idlwave-routines)) idlwave-routines))
4409 (when (and (stringp idlwave-libinfo-file) 4587 (when (and (stringp idlwave-user-catalog-file)
4410 (file-regular-p idlwave-libinfo-file)) 4588 (file-regular-p idlwave-user-catalog-file))
4411 (condition-case nil 4589 (condition-case nil
4412 (progn 4590 (when (or force (not (aref idlwave-load-rinfo-steps-done 2)))
4413 (when (or force (not (aref idlwave-load-rinfo-steps-done 2))) 4591 (load-file idlwave-user-catalog-file))
4414 (load-file idlwave-libinfo-file)) 4592 (error nil))
4415 (setq idlwave-true-path-alist nil) 4593 (when (boundp 'idlwave-library-routines)
4416 (when (or force (not (aref idlwave-load-rinfo-steps-done 3))) 4594 (setq idlwave-library-routines nil)
4417 (message "Normalizing idlwave-library-routines...") 4595 (error "Outdated user catalog: %s... recreate" idlwave-user-catalog-file))
4418 (setq idlwave-library-routines (idlwave-sintern-rinfo-list 4596 (setq idlwave-true-path-alist nil)
4419 idlwave-library-routines 'sys)) 4597 (when (or force (not (aref idlwave-load-rinfo-steps-done 3)))
4420 (message "Normalizing idlwave-library-routines...done"))) 4598 (message "Normalizing user catalog routines...")
4421 (error nil))) 4599 (setq idlwave-user-catalog-routines
4422 4600 (idlwave-sintern-rinfo-list
4601 idlwave-user-catalog-routines 'sys))
4602 (message "Normalizing user catalog routines...done")))
4603 (when (or force (not (aref idlwave-load-rinfo-steps-done 4)))
4604 (idlwave-scan-library-catalogs
4605 "Loading and normalizing library catalogs..."))
4423 (run-hooks 'idlwave-after-load-rinfo-hook)) 4606 (run-hooks 'idlwave-after-load-rinfo-hook))
4424 4607
4425 4608
4426(defun idlwave-update-buffer-routine-info () 4609(defun idlwave-update-buffer-routine-info ()
4427 (let (res) 4610 (let (res)
4428 (cond 4611 (cond
4429 ((eq idlwave-scan-all-buffers-for-routine-info t) 4612 ((eq idlwave-scan-all-buffers-for-routine-info t)
4430 ;; Scan all buffers, current buffer last 4613 ;; Scan all buffers, current buffer last
4431 (message "Scanning all buffers...") 4614 (message "Scanning all buffers...")
4432 (setq res (idlwave-get-routine-info-from-buffers 4615 (setq res (idlwave-get-routine-info-from-buffers
4433 (reverse (buffer-list))))) 4616 (reverse (buffer-list)))))
4434 ((null idlwave-scan-all-buffers-for-routine-info) 4617 ((null idlwave-scan-all-buffers-for-routine-info)
4435 ;; Don't scan any buffers 4618 ;; Don't scan any buffers
@@ -4442,28 +4625,29 @@ With three prefix args, dispatch asynchronous process to do the update."
4442 (setq res (idlwave-get-routine-info-from-buffers 4625 (setq res (idlwave-get-routine-info-from-buffers
4443 (list (current-buffer)))))))) 4626 (list (current-buffer))))))))
4444 ;; Put the result into the correct variable 4627 ;; Put the result into the correct variable
4445 (setq idlwave-buffer-routines 4628 (setq idlwave-buffer-routines
4446 (idlwave-sintern-rinfo-list res t)))) 4629 (idlwave-sintern-rinfo-list res 'set))))
4447 4630
4448(defun idlwave-concatenate-rinfo-lists (&optional quiet run-hook) 4631(defun idlwave-concatenate-rinfo-lists (&optional quiet run-hook)
4449 "Put the different sources for routine information together." 4632 "Put the different sources for routine information together."
4450 ;; The sequence here is important because earlier definitions shadow 4633 ;; The sequence here is important because earlier definitions shadow
4451 ;; later ones. We assume that if things in the buffers are newer 4634 ;; later ones. We assume that if things in the buffers are newer
4452 ;; then in the shell of the system, it is meant to be different. 4635 ;; then in the shell of the system, they are meant to be different.
4453
4454 (setcdr idlwave-last-system-routine-info-cons-cell 4636 (setcdr idlwave-last-system-routine-info-cons-cell
4455 (append idlwave-buffer-routines 4637 (append idlwave-buffer-routines
4456 idlwave-compiled-routines 4638 idlwave-compiled-routines
4457 idlwave-library-routines)) 4639 idlwave-library-catalog-routines
4640 idlwave-user-catalog-routines))
4458 (setq idlwave-class-alist nil) 4641 (setq idlwave-class-alist nil)
4459 4642
4460 ;; Give a message with information about the number of routines we have. 4643 ;; Give a message with information about the number of routines we have.
4461 (unless quiet 4644 (unless quiet
4462 (message 4645 (message
4463 "Routine info updated: buffer(%d) compiled(%d) catalog(%d) system(%d)" 4646 "Routines Found: buffer(%d) compiled(%d) library(%d) user(%d) system(%d)"
4464 (length idlwave-buffer-routines) 4647 (length idlwave-buffer-routines)
4465 (length idlwave-compiled-routines) 4648 (length idlwave-compiled-routines)
4466 (length idlwave-library-routines) 4649 (length idlwave-library-catalog-routines)
4650 (length idlwave-user-catalog-routines)
4467 (length idlwave-system-routines))) 4651 (length idlwave-system-routines)))
4468 (if run-hook 4652 (if run-hook
4469 (run-hooks 'idlwave-update-rinfo-hook))) 4653 (run-hooks 'idlwave-update-rinfo-hook)))
@@ -4476,7 +4660,7 @@ With three prefix args, dispatch asynchronous process to do the update."
4476 (when (and (setq class (nth 2 x)) 4660 (when (and (setq class (nth 2 x))
4477 (not (assq class idlwave-class-alist))) 4661 (not (assq class idlwave-class-alist)))
4478 (push (list class) idlwave-class-alist))) 4662 (push (list class) idlwave-class-alist)))
4479 idlwave-class-alist))) 4663 idlwave-class-alist)))
4480 4664
4481;; Three functions for the hooks 4665;; Three functions for the hooks
4482(defun idlwave-save-buffer-update () 4666(defun idlwave-save-buffer-update ()
@@ -4487,7 +4671,7 @@ With three prefix args, dispatch asynchronous process to do the update."
4487 (idlwave-update-current-buffer-info 'find-file)) 4671 (idlwave-update-current-buffer-info 'find-file))
4488 4672
4489(defun idlwave-update-current-buffer-info (why) 4673(defun idlwave-update-current-buffer-info (why)
4490 "Undate idlwave-routines for current buffer. Can run from after-save-hook." 4674 "Update idlwave-routines for current buffer. Can run from after-save-hook."
4491 (when (and (eq major-mode 'idlwave-mode) 4675 (when (and (eq major-mode 'idlwave-mode)
4492 (or (eq t idlwave-auto-routine-info-updates) 4676 (or (eq t idlwave-auto-routine-info-updates)
4493 (memq why idlwave-auto-routine-info-updates)) 4677 (memq why idlwave-auto-routine-info-updates))
@@ -4509,18 +4693,18 @@ With three prefix args, dispatch asynchronous process to do the update."
4509 4693
4510(defun idlwave-replace-buffer-routine-info (file new) 4694(defun idlwave-replace-buffer-routine-info (file new)
4511 "Cut the part from FILE out of `idlwave-buffer-routines' and add NEW." 4695 "Cut the part from FILE out of `idlwave-buffer-routines' and add NEW."
4512 (let ((list idlwave-buffer-routines) 4696 (let ((list idlwave-buffer-routines)
4513 found) 4697 found)
4514 (while list 4698 (while list
4515 ;; The following test uses eq to make sure it works correctly 4699 ;; The following test uses eq to make sure it works correctly
4516 ;; when two buffers visit the same file. Then the file names 4700 ;; when two buffers visit the same file. Then the file names
4517 ;; will be equal, but not eq. 4701 ;; will be equal, but not eq.
4518 (if (eq (cdr (nth 3 (car list))) file) 4702 (if (eq (idlwave-routine-source-file (nth 3 (car list))) file)
4519 (progn 4703 (progn
4520 (setcar list nil) 4704 (setcar list nil)
4521 (setq found t)) 4705 (setq found t))
4522 (if found 4706 (if found
4523 ;; End of that section reached. Jump. 4707 ;; End of that section reached. Jump.
4524 (setq list nil))) 4708 (setq list nil)))
4525 (setq list (cdr list))) 4709 (setq list (cdr list)))
4526 (setq idlwave-buffer-routines 4710 (setq idlwave-buffer-routines
@@ -4552,11 +4736,11 @@ With three prefix args, dispatch asynchronous process to do the update."
4552 (save-restriction 4736 (save-restriction
4553 (widen) 4737 (widen)
4554 (goto-char (point-min)) 4738 (goto-char (point-min))
4555 (while (re-search-forward 4739 (while (re-search-forward
4556 "^[ \t]*\\(pro\\|function\\)[ \t]" nil t) 4740 "^[ \t]*\\(pro\\|function\\)[ \t]" nil t)
4557 (setq string (buffer-substring-no-properties 4741 (setq string (buffer-substring-no-properties
4558 (match-beginning 0) 4742 (match-beginning 0)
4559 (progn 4743 (progn
4560 (idlwave-end-of-statement) 4744 (idlwave-end-of-statement)
4561 (point)))) 4745 (point))))
4562 (setq entry (idlwave-parse-definition string)) 4746 (setq entry (idlwave-parse-definition string))
@@ -4594,7 +4778,7 @@ With three prefix args, dispatch asynchronous process to do the update."
4594 (push (match-string 1 string) args))) 4778 (push (match-string 1 string) args)))
4595 ;; Normalize and sort. 4779 ;; Normalize and sort.
4596 (setq args (nreverse args)) 4780 (setq args (nreverse args))
4597 (setq keywords (sort keywords (lambda (a b) 4781 (setq keywords (sort keywords (lambda (a b)
4598 (string< (downcase a) (downcase b))))) 4782 (string< (downcase a) (downcase b)))))
4599 ;; Make and return the entry 4783 ;; Make and return the entry
4600 ;; We don't know which argument are optional, so this information 4784 ;; We don't know which argument are optional, so this information
@@ -4603,16 +4787,16 @@ With three prefix args, dispatch asynchronous process to do the update."
4603 (if (equal type "pro") 'pro 'fun) 4787 (if (equal type "pro") 'pro 'fun)
4604 class 4788 class
4605 (cond ((not (boundp 'idlwave-scanning-lib)) 4789 (cond ((not (boundp 'idlwave-scanning-lib))
4606 (cons 'buffer (buffer-file-name))) 4790 (list 'buffer (buffer-file-name)))
4607; ((string= (downcase 4791; ((string= (downcase
4608; (file-name-sans-extension 4792; (file-name-sans-extension
4609; (file-name-nondirectory (buffer-file-name)))) 4793; (file-name-nondirectory (buffer-file-name))))
4610; (downcase name)) 4794; (downcase name))
4611; (list 'lib)) 4795; (list 'lib))
4612; (t (cons 'lib (file-name-nondirectory (buffer-file-name)))) 4796; (t (cons 'lib (file-name-nondirectory (buffer-file-name))))
4613 (t (cons 'lib (concat idlwave-scanning-lib-dir 4797 (t (list 'user (file-name-nondirectory (buffer-file-name))
4614 (file-name-nondirectory (buffer-file-name)))))) 4798 idlwave-scanning-lib-dir "UserLib")))
4615 (concat 4799 (concat
4616 (if (string= type "function") "Result = " "") 4800 (if (string= type "function") "Result = " "")
4617 (if class "Obj ->[%s::]" "") 4801 (if class "Obj ->[%s::]" "")
4618 "%s" 4802 "%s"
@@ -4622,96 +4806,98 @@ With three prefix args, dispatch asynchronous process to do the update."
4622 (mapconcat 'identity args ", ") 4806 (mapconcat 'identity args ", ")
4623 (if (string= type "function") ")" "")))) 4807 (if (string= type "function") ")" ""))))
4624 (if keywords 4808 (if keywords
4625 (mapcar 'list keywords) 4809 (cons nil (mapcar 'list keywords)) ;No help file
4626 nil)))) 4810 nil))))
4627 4811
4628;;----- Scanning the library -------------------
4629 4812
4630(defvar idlwave-sys-dir nil 4813;;----- Scanning the user catalog -------------------
4631 "Internal variable.")
4632 4814
4633(defun idlwave-sys-dir () 4815(defun idlwave-sys-dir ()
4634 "Return the syslib directory, or a dummy that never matches." 4816 "Return the syslib directory, or a dummy that never matches."
4635 (or idlwave-sys-dir 4817 (if (string= idlwave-system-directory "")
4636 "@@@@@@@@")) 4818 "@@@@@@@@"
4819 idlwave-system-directory))
4820
4637 4821
4638(defvar idlwave-shell-path-query) 4822(defvar idlwave-shell-path-query)
4639(defun idlwave-create-libinfo-file (&optional arg) 4823(defun idlwave-create-user-catalog-file (&optional arg)
4640 "Scan all files on selected dirs of IDL search path for routine information. 4824 "Scan all files on selected dirs of IDL search path for routine information.
4641A widget checklist will allow you to choose the directories. 4825
4642Write the result as a file `idlwave-libinfo-file'. When this file exists, 4826A widget checklist will allow you to choose the directories. Write
4643will be automatically loaded to give routine information about library 4827the result as a file `idlwave-user-catalog-file'. When this file
4644routines. 4828exists, will be automatically loaded to give routine information about
4645With ARG, just rescan the same directories as last time - so no widget 4829library routines. With ARG, just rescan the same directories as last
4646will pop up." 4830time - so no widget will pop up."
4647 (interactive "P") 4831 (interactive "P")
4648 ;; Make sure the file is loaded if it exists. 4832 ;; Make sure the file is loaded if it exists.
4649 (if (and (stringp idlwave-libinfo-file) 4833 (if (and (stringp idlwave-user-catalog-file)
4650 (file-regular-p idlwave-libinfo-file)) 4834 (file-regular-p idlwave-user-catalog-file))
4651 (condition-case nil 4835 (condition-case nil
4652 (load-file idlwave-libinfo-file) 4836 (load-file idlwave-user-catalog-file)
4653 (error nil))) 4837 (error nil)))
4654 ;; Make sure the file name makes sense 4838 ;; Make sure the file name makes sense
4655 (unless (and (stringp idlwave-libinfo-file) 4839 (unless (and (stringp idlwave-user-catalog-file)
4656 (> (length idlwave-libinfo-file) 0) 4840 (> (length idlwave-user-catalog-file) 0)
4657 (file-accessible-directory-p 4841 (file-accessible-directory-p
4658 (file-name-directory idlwave-libinfo-file)) 4842 (file-name-directory idlwave-user-catalog-file))
4659 (not (string= "" (file-name-nondirectory 4843 (not (string= "" (file-name-nondirectory
4660 idlwave-libinfo-file)))) 4844 idlwave-user-catalog-file))))
4661 (error "`idlwave-libinfo-file' does not point to file in accessible directory")) 4845 (error "`idlwave-user-catalog-file' does not point to a file in an accessible directory"))
4662 4846
4663 (cond 4847 (cond
4664 ((and arg idlwave-path-alist
4665 (consp (car idlwave-path-alist))
4666 idlwave-sys-dir)
4667 ;; Rescan the known directories 4848 ;; Rescan the known directories
4668 (idlwave-scan-lib-files 4849 ((and arg idlwave-path-alist
4669 idlwave-sys-dir 4850 (consp (car idlwave-path-alist)))
4670 idlwave-path-alist)) 4851 (idlwave-scan-user-lib-files idlwave-path-alist))
4852
4853 ;; Expand the directories from library-path and run the widget
4671 (idlwave-library-path 4854 (idlwave-library-path
4672 ;; Get the directories from that variable 4855 (idlwave-display-user-catalog-widget
4673 (idlwave-display-libinfo-widget 4856 (if idlwave-true-path-alist
4674 idlwave-system-directory 4857 ;; Propagate any flags on the existing path-alist
4675 (idlwave-expand-path idlwave-library-path) 4858 (mapcar (lambda (x)
4676 (delq nil (mapcar (lambda (x) (if (consp x) (if (cdr x) (car x) nil) x)) 4859 (let ((path-entry (assoc (file-truename x)
4677 idlwave-path-alist)))) 4860 idlwave-true-path-alist)))
4861 (if path-entry
4862 (cons x (cdr path-entry))
4863 (list x))))
4864 (idlwave-expand-path idlwave-library-path))
4865 (mapcar 'list (idlwave-expand-path idlwave-library-path)))))
4866
4867 ;; Ask the shell for the path and then run the widget
4678 (t 4868 (t
4679 ;; Ask the shell for the path and run the widget
4680 (message "Asking the shell for IDL path...") 4869 (message "Asking the shell for IDL path...")
4681 (require 'idlw-shell) 4870 (require 'idlw-shell)
4682 (idlwave-shell-send-command idlwave-shell-path-query 4871 (idlwave-shell-send-command idlwave-shell-path-query
4683 '(idlwave-libinfo-command-hook nil) 4872 '(idlwave-user-catalog-command-hook nil)
4684 'hide)))) 4873 'hide))))
4685 4874
4686(defun idlwave-libinfo-command-hook (&optional arg) 4875
4687 ;; Command hook used by `idlwave-create-libinfo-file'. 4876;; Parse shell path information and select among it.
4877(defun idlwave-user-catalog-command-hook (&optional arg)
4878 ;; Command hook used by `idlwave-create-user-catalog-file'.
4688 (if arg 4879 (if arg
4689 ;; Scan immediately 4880 ;; Scan immediately
4690 (idlwave-scan-lib-files 4881 (idlwave-scan-user-lib-files idlwave-path-alist)
4691 idlwave-sys-dir 4882 ;; Set the path and display the widget
4692 idlwave-path-alist) 4883 (idlwave-shell-get-path-info 'no-write) ; set to something path-alist
4693 ;; Display the widget 4884 (idlwave-scan-library-catalogs "Locating library catalogs..." 'no-load)
4694 (let* ((rpl (idlwave-shell-path-filter)) 4885 (idlwave-display-user-catalog-widget idlwave-path-alist)))
4695 (sysdir (car rpl)) 4886
4696 (dirs (cdr rpl))) 4887(defconst idlwave-user-catalog-widget-help-string
4697 (idlwave-display-libinfo-widget 4888 "This is the front-end to the creation of the IDLWAVE user catalog.
4698 sysdir dirs 4889Please select the directories on IDL's search path from which you
4699 (delq nil (mapcar (lambda (x) (if (cdr x) (car x) nil)) 4890would like to extract routine information, to be stored in the file:
4700 idlwave-path-alist))))))
4701
4702(defconst idlwave-libinfo-widget-help-string
4703 "This is the front-end to the creation of IDLWAVE library catalog.
4704Please select below the directories on IDL's search path from which you
4705would like to extract routine information, which will be stored in the file
4706 4891
4707 %s 4892 %s
4708 4893
4709If this is not the correct file, first set variable `idlwave-libinfo-file'. 4894If this is not the correct file, first set variable
4710Then call this command again. 4895`idlwave-user-catalog-file', and call this command again.
4711 4896
4712For writing code, you need to include the directories which contain the 4897N.B. Many libraries include pre-scanned catalog files
4713routines you use. If IDLWAVE should be able to analyse routine shadowing 4898\(\".idlwave_catalog\"). These are marked with \"[LIB]\", and need
4714it is best to scan all directories. 4899not be scanned. You can scan your own libraries off-line using the
4900perl script `idlwave_catalog'.
4715 4901
4716After selecting the directories, choose [Scan & Save] to scan the library 4902After selecting the directories, choose [Scan & Save] to scan the library
4717directories and save the routine info. 4903directories and save the routine info.
@@ -4719,112 +4905,122 @@ directories and save the routine info.
4719 4905
4720(defvar idlwave-widget) 4906(defvar idlwave-widget)
4721(defvar widget-keymap) 4907(defvar widget-keymap)
4722(defun idlwave-display-libinfo-widget (sysdir dirs selected-dirs) 4908(defun idlwave-display-user-catalog-widget (dirs-list)
4723 "Create the widget to select IDL search path directories for scanning." 4909 "Create the widget to select IDL search path directories for scanning."
4724 (interactive) 4910 (interactive)
4725 (require 'widget) 4911 (require 'widget)
4726 (require 'wid-edit) 4912 (require 'wid-edit)
4727 (unless dirs 4913 (unless dirs-list
4728 (error "Don't know IDL's search path")) 4914 (error "Don't know IDL's search path"))
4729 4915
4730 ;; Allow only those directories to be selected which are in the path.
4731 (setq selected-dirs (delq nil (mapcar (lambda (x)
4732 (if (member x dirs) x nil))
4733 selected-dirs)))
4734 (kill-buffer (get-buffer-create "*IDLWAVE Widget*")) 4916 (kill-buffer (get-buffer-create "*IDLWAVE Widget*"))
4735 (switch-to-buffer (get-buffer-create "*IDLWAVE Widget*")) 4917 (switch-to-buffer (get-buffer-create "*IDLWAVE Widget*"))
4736 (kill-all-local-variables) 4918 (kill-all-local-variables)
4737 (make-local-variable 'idlwave-widget) 4919 (make-local-variable 'idlwave-widget)
4738 (widget-insert (format idlwave-libinfo-widget-help-string 4920 (widget-insert (format idlwave-user-catalog-widget-help-string
4739 idlwave-libinfo-file)) 4921 idlwave-user-catalog-file))
4740 4922
4741 (widget-create 'push-button 4923 (widget-create 'push-button
4742 :notify 'idlwave-widget-scan-lib-files 4924 :notify 'idlwave-widget-scan-user-lib-files
4743 "Scan & Save") 4925 "Scan & Save")
4744 (widget-insert " ") 4926 (widget-insert " ")
4745 (widget-create 'push-button 4927 (widget-create 'push-button
4746 :notify (lambda (&rest ignore) 4928 :notify 'idlwave-delete-user-catalog-file
4747 (kill-buffer (current-buffer)))
4748 "Quit")
4749 (widget-insert " ")
4750 (widget-create 'push-button
4751 :notify 'idlwave-delete-libinfo-file
4752 "Delete File") 4929 "Delete File")
4753 (widget-insert " ") 4930 (widget-insert " ")
4754 (widget-create 'push-button 4931 (widget-create 'push-button
4755 :notify '(lambda (&rest ignore) 4932 :notify
4756 (idlwave-display-libinfo-widget 4933 '(lambda (&rest ignore)
4757 (widget-get idlwave-widget :sysdir) 4934 (let ((path-list (widget-get idlwave-widget :path-dirs)))
4758 (widget-get idlwave-widget :path-dirs) 4935 (mapcar (lambda (x)
4759 (widget-get idlwave-widget :path-dirs))) 4936 (unless (memq 'lib (cdr x))
4760 "Select All") 4937 (idlwave-path-alist-add-flag x 'user)))
4938 path-list)
4939 (idlwave-display-user-catalog-widget path-list)))
4940 "Select All Non-Lib")
4761 (widget-insert " ") 4941 (widget-insert " ")
4762 (widget-create 'push-button 4942 (widget-create 'push-button
4763 :notify '(lambda (&rest ignore) 4943 :notify
4764 (idlwave-display-libinfo-widget 4944 '(lambda (&rest ignore)
4765 (widget-get idlwave-widget :sysdir) 4945 (let ((path-list (widget-get idlwave-widget :path-dirs)))
4766 (widget-get idlwave-widget :path-dirs) 4946 (mapcar (lambda (x)
4767 nil)) 4947 (idlwave-path-alist-remove-flag x 'user))
4948 path-list)
4949 (idlwave-display-user-catalog-widget path-list)))
4768 "Deselect All") 4950 "Deselect All")
4951 (widget-insert " ")
4952 (widget-create 'push-button
4953 :notify (lambda (&rest ignore)
4954 (kill-buffer (current-buffer)))
4955 "Quit")
4769 (widget-insert "\n\n") 4956 (widget-insert "\n\n")
4770 4957
4771 (widget-insert "Select Directories\n") 4958 (widget-insert "Select Directories: \n")
4772 4959
4773 (setq idlwave-widget 4960 (setq idlwave-widget
4774 (apply 'widget-create 4961 (apply 'widget-create
4775 'checklist 4962 'checklist
4776 :value selected-dirs 4963 :value (delq nil (mapcar (lambda (x)
4964 (if (memq 'user (cdr x))
4965 (car x)))
4966 dirs-list))
4777 :greedy t 4967 :greedy t
4778 :tag "List of directories" 4968 :tag "List of directories"
4779 (mapcar (lambda (x) (list 'item x)) dirs))) 4969 (mapcar (lambda (x)
4780 (widget-put idlwave-widget :path-dirs dirs) 4970 (list 'item
4781 (widget-put idlwave-widget :sysdir sysdir) 4971 (if (memq 'lib (cdr x))
4972 (concat "[LIB] " (car x) )
4973 (car x)))) dirs-list)))
4974 (widget-put idlwave-widget :path-dirs dirs-list)
4782 (widget-insert "\n") 4975 (widget-insert "\n")
4783 (use-local-map widget-keymap) 4976 (use-local-map widget-keymap)
4784 (widget-setup) 4977 (widget-setup)
4785 (goto-char (point-min)) 4978 (goto-char (point-min))
4786 (delete-other-windows)) 4979 (delete-other-windows))
4787 4980
4788(defun idlwave-delete-libinfo-file (&rest ignore) 4981(defun idlwave-delete-user-catalog-file (&rest ignore)
4789 (if (yes-or-no-p 4982 (if (yes-or-no-p
4790 (format "Delete file %s " idlwave-libinfo-file)) 4983 (format "Delete file %s " idlwave-user-catalog-file))
4791 (progn 4984 (progn
4792 (delete-file idlwave-libinfo-file) 4985 (delete-file idlwave-user-catalog-file)
4793 (message "%s has been deleted" idlwave-libinfo-file)))) 4986 (message "%s has been deleted" idlwave-user-catalog-file))))
4794 4987
4795(defun idlwave-widget-scan-lib-files (&rest ignore) 4988(defun idlwave-widget-scan-user-lib-files (&rest ignore)
4796 ;; Call `idlwave-scan-lib-files' with data taken from the widget. 4989 ;; Call `idlwave-scan-user-lib-files' with data taken from the widget.
4797 (let* ((widget idlwave-widget) 4990 (let* ((widget idlwave-widget)
4798 (selected-dirs (widget-value widget)) 4991 (selected-dirs (widget-value widget))
4799 (sysdir (widget-get widget :sysdir)) 4992 (path-alist (widget-get widget :path-dirs))
4800 (path-dirs (widget-get widget :path-dirs)) 4993 (this-path-alist path-alist)
4801 (path-dir-alist 4994 dir-entry)
4802 (mapcar (lambda (x) (cons x (if (member x selected-dirs) t nil))) 4995 (while (setq dir-entry (pop this-path-alist))
4803 path-dirs))) 4996 (if (member
4804 (idlwave-scan-lib-files sysdir path-dir-alist))) 4997 (if (memq 'lib (cdr dir-entry))
4998 (concat "[LIB] " (car dir-entry))
4999 (car dir-entry))
5000 selected-dirs)
5001 (idlwave-path-alist-add-flag dir-entry 'user)
5002 (idlwave-path-alist-remove-flag dir-entry 'user)))
5003 (idlwave-scan-user-lib-files path-alist)))
4805 5004
4806(defvar font-lock-mode) 5005(defvar font-lock-mode)
4807(defun idlwave-scan-lib-files (sysdir path-alist) 5006(defun idlwave-scan-user-lib-files (path-alist)
4808 ;; Scan the files in PATH-ALIST and store the info in a file 5007 ;; Scan the PRO files in PATH-ALIST and store the info in the user catalog
4809 (let* ((idlwave-scanning-lib t) 5008 (let* ((idlwave-scanning-lib t)
4810 (idlwave-scanning-lib-dir "") 5009 (idlwave-scanning-lib-dir "")
4811 (dircnt (1+ (length path-alist)))
4812 (idlwave-completion-case nil) 5010 (idlwave-completion-case nil)
4813 dirs-alist dir files file) 5011 dirs-alist dir files file)
4814 (setq idlwave-library-routines nil) 5012 (setq idlwave-user-catalog-routines nil
4815 (setq idlwave-path-alist path-alist) 5013 idlwave-path-alist path-alist ; for library-path instead
4816 (setq idlwave-true-path-alist nil) 5014 idlwave-true-path-alist nil)
4817 (setq idlwave-sys-dir sysdir) 5015 (if idlwave-auto-write-paths (idlwave-write-paths))
4818 (save-excursion 5016 (save-excursion
4819 (set-buffer (get-buffer-create "*idlwave-scan.pro*")) 5017 (set-buffer (get-buffer-create "*idlwave-scan.pro*"))
4820 (idlwave-mode) 5018 (idlwave-mode)
4821 (setq dirs-alist (reverse path-alist)) 5019 (setq dirs-alist (reverse path-alist))
4822 (while (setq dir (pop dirs-alist)) 5020 (while (setq dir (pop dirs-alist))
4823 (decf dircnt) 5021 (when (memq 'user (cdr dir)) ; Has it marked for scan?
4824 (when (cdr dir)
4825 ;; Has the flag of scanned directories
4826 (setq dir (car dir)) 5022 (setq dir (car dir))
4827 (setq idlwave-scanning-lib-dir (format "{%d}/" dircnt)) 5023 (setq idlwave-scanning-lib-dir dir)
4828 (when (file-directory-p dir) 5024 (when (file-directory-p dir)
4829 (setq files (directory-files dir 'full "\\.[pP][rR][oO]\\'")) 5025 (setq files (directory-files dir 'full "\\.[pP][rR][oO]\\'"))
4830 (while (setq file (pop files)) 5026 (while (setq file (pop files))
@@ -4834,64 +5030,80 @@ directories and save the routine info.
4834 (message "Scanning %s..." file) 5030 (message "Scanning %s..." file)
4835 (erase-buffer) 5031 (erase-buffer)
4836 (insert-file-contents file 'visit) 5032 (insert-file-contents file 'visit)
4837 (setq idlwave-library-routines 5033 (setq idlwave-user-catalog-routines
4838 (append (idlwave-get-routine-info-from-buffers 5034 (append (idlwave-get-routine-info-from-buffers
4839 (list (current-buffer))) 5035 (list (current-buffer)))
4840 idlwave-library-routines))) 5036 idlwave-user-catalog-routines)))))))))
4841 )))))) 5037 (message "Creating user catalog file...")
4842 ;; Sorting is not necessary since we sort each time before a routine
4843 ;; is used. So we don't do it here - the catalog file looks nicer
4844 ;; when it is unsorted.
4845 ;;(message "Sorting...")
4846 ;;(setq idlwave-library-routines
4847 ;;(sort idlwave-library-routines 'idlwave-routine-entry-compare))
4848 ;;(message "Sorting...done")
4849 (message "Creating libinfo file...")
4850 (kill-buffer "*idlwave-scan.pro*") 5038 (kill-buffer "*idlwave-scan.pro*")
4851 (kill-buffer (get-buffer-create "*IDLWAVE Widget*")) 5039 (kill-buffer (get-buffer-create "*IDLWAVE Widget*"))
4852 (let ((font-lock-maximum-size 0) 5040 (let ((font-lock-maximum-size 0)
4853 (auto-mode-alist nil)) 5041 (auto-mode-alist nil))
4854 (find-file idlwave-libinfo-file)) 5042 (find-file idlwave-user-catalog-file))
4855 (if (and (boundp 'font-lock-mode) 5043 (if (and (boundp 'font-lock-mode)
4856 font-lock-mode) 5044 font-lock-mode)
4857 (font-lock-mode 0)) 5045 (font-lock-mode 0))
4858 (erase-buffer) 5046 (erase-buffer)
4859 (insert ";; IDLWAVE libinfo file\n") 5047 (insert ";; IDLWAVE user catalog file\n")
4860 (insert (format ";; Created %s\n\n" (current-time-string))) 5048 (insert (format ";; Created %s\n\n" (current-time-string)))
4861 5049
4862 ;; Define the variable which knows the value of "!DIR"
4863 (insert (format "\n(setq idlwave-sys-dir \"%s\")\n"
4864 idlwave-sys-dir))
4865
4866 ;; Define the variable which contains a list of all scanned directories
4867 (insert "\n(setq idlwave-path-alist\n '(")
4868 (mapcar (lambda (x)
4869 (insert (format "\n (\"%s\" . %s)" (car x) (cdr x))))
4870 path-alist)
4871 (insert "))\n")
4872
4873 ;; Define the routine info list 5050 ;; Define the routine info list
4874 (insert "\n(setq idlwave-library-routines\n '(") 5051 (insert "\n(setq idlwave-user-catalog-routines\n '(")
4875 (let ((standard-output (current-buffer))) 5052 (let ((standard-output (current-buffer)))
4876 (mapcar (lambda (x) 5053 (mapcar (lambda (x)
4877 (insert "\n ") 5054 (insert "\n ")
4878 (prin1 x) 5055 (prin1 x)
4879 (goto-char (point-max))) 5056 (goto-char (point-max)))
4880; (insert (with-output-to-string (prin1 x)))) 5057 idlwave-user-catalog-routines))
4881 idlwave-library-routines))
4882 (insert (format "))\n\n;;; %s ends here\n" 5058 (insert (format "))\n\n;;; %s ends here\n"
4883 (file-name-nondirectory idlwave-libinfo-file))) 5059 (file-name-nondirectory idlwave-user-catalog-file)))
4884 (goto-char (point-min)) 5060 (goto-char (point-min))
4885 ;; Save the buffer 5061 ;; Save the buffer
4886 (save-buffer 0) 5062 (save-buffer 0)
4887 (kill-buffer (current-buffer))) 5063 (kill-buffer (current-buffer)))
4888 (message "Creating libinfo file...done") 5064 (message "Creating user catalog file...done")
4889 (message "Info for %d routines saved in %s" 5065 (message "Info for %d routines saved in %s"
4890 (length idlwave-library-routines) 5066 (length idlwave-user-catalog-routines)
4891 idlwave-libinfo-file) 5067 idlwave-user-catalog-file)
4892 (sit-for 2) 5068 (sit-for 2)
4893 (idlwave-update-routine-info t)) 5069 (idlwave-update-routine-info t))
4894 5070
5071(defun idlwave-read-paths ()
5072 (if (and (stringp idlwave-path-file)
5073 (file-regular-p idlwave-path-file))
5074 (condition-case nil
5075 (load idlwave-path-file t t t)
5076 (error nil))))
5077
5078(defun idlwave-write-paths ()
5079 (interactive)
5080 (when (and idlwave-path-alist idlwave-system-directory)
5081 (let ((font-lock-maximum-size 0)
5082 (auto-mode-alist nil))
5083 (find-file idlwave-path-file))
5084 (if (and (boundp 'font-lock-mode)
5085 font-lock-mode)
5086 (font-lock-mode 0))
5087 (erase-buffer)
5088 (insert ";; IDLWAVE paths\n")
5089 (insert (format ";; Created %s\n\n" (current-time-string)))
5090 ;; Define the variable which knows the value of "!DIR"
5091 (insert (format "\n(setq idlwave-system-directory \"%s\")\n"
5092 idlwave-system-directory))
5093
5094 ;; Define the variable which contains a list of all scanned directories
5095 (insert "\n(setq idlwave-path-alist\n '(")
5096 (let ((standard-output (current-buffer)))
5097 (mapcar (lambda (x)
5098 (insert "\n ")
5099 (prin1 x)
5100 (goto-char (point-max)))
5101 idlwave-path-alist))
5102 (insert "))\n")
5103 (save-buffer 0)
5104 (kill-buffer (current-buffer))))
5105
5106
4895(defun idlwave-expand-path (path &optional default-dir) 5107(defun idlwave-expand-path (path &optional default-dir)
4896 ;; Expand parts of path starting with '+' recursively into directory list. 5108 ;; Expand parts of path starting with '+' recursively into directory list.
4897 ;; Relative recursive path elements are expanded relative to DEFAULT-DIR. 5109 ;; Relative recursive path elements are expanded relative to DEFAULT-DIR.
@@ -4918,25 +5130,75 @@ directories and save the routine info.
4918 (when (file-directory-p dir) 5130 (when (file-directory-p dir)
4919 (setq files (nreverse (directory-files dir t "[^.]"))) 5131 (setq files (nreverse (directory-files dir t "[^.]")))
4920 (while (setq file (pop files)) 5132 (while (setq file (pop files))
4921 (if (file-directory-p file) 5133 (if (file-directory-p file)
4922 (push (file-name-as-directory file) path))) 5134 (push (file-name-as-directory file) path)))
4923 (push dir path1))) 5135 (push dir path1)))
4924 path1)) 5136 path1))
4925 5137
4926;;----- Asking the shell ------------------- 5138
5139;;----- Scanning the library catalogs ------------------
5140
5141(defun idlwave-scan-library-catalogs (&optional message-base no-load)
5142 "Scan for library catalog files (.idlwave_catalog) and ingest.
5143
5144All directories on `idlwave-path-alist' (or `idlwave-library-path'
5145instead, if present) are searched. Print MESSAGE-BASE along with the
5146libraries being loaded, if passed, and skip loading/normalizing if
5147NO-LOAD is non-nil. The variable `idlwave-use-library-catalogs' can
5148be set to nil to disable library catalog scanning."
5149 (when idlwave-use-library-catalogs
5150 (let ((dirs
5151 (if idlwave-library-path
5152 (idlwave-expand-path idlwave-library-path)
5153 (mapcar 'car idlwave-path-alist)))
5154 (old-libname "")
5155 dir-entry dir flags catalog all-routines)
5156 (if message-base (message message-base))
5157 (while (setq dir (pop dirs))
5158 (catch 'continue
5159 (when (file-readable-p
5160 (setq catalog (expand-file-name ".idlwave_catalog" dir)))
5161 (unless no-load
5162 (setq idlwave-library-catalog-routines nil)
5163 ;; Load the catalog file
5164 (condition-case nil
5165 (load catalog t t t)
5166 (error (throw 'continue t)))
5167 (when (and
5168 message-base
5169 (not (string= idlwave-library-catalog-libname
5170 old-libname)))
5171 (message (concat message-base
5172 idlwave-library-catalog-libname))
5173 (setq old-libname idlwave-library-catalog-libname))
5174 (when idlwave-library-catalog-routines
5175 (setq all-routines
5176 (append
5177 (idlwave-sintern-rinfo-list
5178 idlwave-library-catalog-routines 'sys dir)
5179 all-routines))))
5180
5181 ;; Add a 'lib flag if on path-alist
5182 (when (and idlwave-path-alist
5183 (setq dir-entry (assoc dir idlwave-path-alist)))
5184 (idlwave-path-alist-add-flag dir-entry 'lib)))))
5185 (unless no-load (setq idlwave-library-catalog-routines all-routines))
5186 (if message-base (message (concat message-base "done"))))))
5187
5188;;----- Communicating with the Shell -------------------
4927 5189
4928;; First, here is the idl program which can be used to query IDL for 5190;; First, here is the idl program which can be used to query IDL for
4929;; defined routines. 5191;; defined routines.
4930(defconst idlwave-routine-info.pro 5192(defconst idlwave-routine-info.pro
4931 " 5193 "
4932;; START OF IDLWAVE SUPPORT ROUTINES 5194;; START OF IDLWAVE SUPPORT ROUTINES
4933pro idlwave_print_info_entry,name,func=func,separator=sep 5195pro idlwave_print_info_entry,name,func=func,separator=sep
4934 ;; See if it's an object method 5196 ;; See if it's an object method
4935 if name eq '' then return 5197 if name eq '' then return
4936 func = keyword_set(func) 5198 func = keyword_set(func)
4937 methsep = strpos(name,'::') 5199 methsep = strpos(name,'::')
4938 meth = methsep ne -1 5200 meth = methsep ne -1
4939 5201
4940 ;; Get routine info 5202 ;; Get routine info
4941 pars = routine_info(name,/parameters,functions=func) 5203 pars = routine_info(name,/parameters,functions=func)
4942 source = routine_info(name,/source,functions=func) 5204 source = routine_info(name,/source,functions=func)
@@ -4944,21 +5206,21 @@ pro idlwave_print_info_entry,name,func=func,separator=sep
4944 nkw = pars.num_kw_args 5206 nkw = pars.num_kw_args
4945 if nargs gt 0 then args = pars.args 5207 if nargs gt 0 then args = pars.args
4946 if nkw gt 0 then kwargs = pars.kw_args 5208 if nkw gt 0 then kwargs = pars.kw_args
4947 5209
4948 ;; Trim the class, and make the name 5210 ;; Trim the class, and make the name
4949 if meth then begin 5211 if meth then begin
4950 class = strmid(name,0,methsep) 5212 class = strmid(name,0,methsep)
4951 name = strmid(name,methsep+2,strlen(name)-1) 5213 name = strmid(name,methsep+2,strlen(name)-1)
4952 if nargs gt 0 then begin 5214 if nargs gt 0 then begin
4953 ;; remove the self argument 5215 ;; remove the self argument
4954 wh = where(args ne 'SELF',nargs) 5216 wh = where(args ne 'SELF',nargs)
4955 if nargs gt 0 then args = args(wh) 5217 if nargs gt 0 then args = args[wh]
4956 endif 5218 endif
4957 endif else begin 5219 endif else begin
4958 ;; No class, just a normal routine. 5220 ;; No class, just a normal routine.
4959 class = \"\" 5221 class = \"\"
4960 endelse 5222 endelse
4961 5223
4962 ;; Calling sequence 5224 ;; Calling sequence
4963 cs = \"\" 5225 cs = \"\"
4964 if func then cs = 'Result = ' 5226 if func then cs = 'Result = '
@@ -4967,7 +5229,7 @@ pro idlwave_print_info_entry,name,func=func,separator=sep
4967 if func then cs = cs + '(' else if nargs gt 0 then cs = cs + ', ' 5229 if func then cs = cs + '(' else if nargs gt 0 then cs = cs + ', '
4968 if nargs gt 0 then begin 5230 if nargs gt 0 then begin
4969 for j=0,nargs-1 do begin 5231 for j=0,nargs-1 do begin
4970 cs = cs + args(j) 5232 cs = cs + args[j]
4971 if j lt nargs-1 then cs = cs + ', ' 5233 if j lt nargs-1 then cs = cs + ', '
4972 endfor 5234 endfor
4973 end 5235 end
@@ -4976,30 +5238,31 @@ pro idlwave_print_info_entry,name,func=func,separator=sep
4976 kwstring = '' 5238 kwstring = ''
4977 if nkw gt 0 then begin 5239 if nkw gt 0 then begin
4978 for j=0,nkw-1 do begin 5240 for j=0,nkw-1 do begin
4979 kwstring = kwstring + ' ' + kwargs(j) 5241 kwstring = kwstring + ' ' + kwargs[j]
4980 endfor 5242 endfor
4981 endif 5243 endif
4982 5244
4983 ret=(['IDLWAVE-PRO','IDLWAVE-FUN'])(func) 5245 ret=(['IDLWAVE-PRO','IDLWAVE-FUN'])[func]
4984 5246
4985 print,ret + ': ' + name + sep + class + sep + source(0).path $ 5247 print,ret + ': ' + name + sep + class + sep + source[0].path $
4986 + sep + cs + sep + kwstring 5248 + sep + cs + sep + kwstring
4987end 5249end
4988 5250
4989pro idlwave_routine_info 5251pro idlwave_routine_info
5252 on_error,1
4990 sep = '<@>' 5253 sep = '<@>'
4991 print,'>>>BEGIN OF IDLWAVE ROUTINE INFO (\"' + sep + '\" IS THE SEPARATOR)' 5254 print,'>>>BEGIN OF IDLWAVE ROUTINE INFO (\"' + sep + '\" IS THE SEPARATOR)'
4992 all = routine_info() 5255 all = routine_info()
4993 for i=0,n_elements(all)-1 do $ 5256 for i=0,n_elements(all)-1 do $
4994 idlwave_print_info_entry,all(i),separator=sep 5257 idlwave_print_info_entry,all[i],separator=sep
4995 all = routine_info(/functions) 5258 all = routine_info(/functions)
4996 for i=0,n_elements(all)-1 do $ 5259 for i=0,n_elements(all)-1 do $
4997 idlwave_print_info_entry,all(i),/func,separator=sep 5260 idlwave_print_info_entry,all[i],/func,separator=sep
4998 print,'>>>END OF IDLWAVE ROUTINE INFO' 5261 print,'>>>END OF IDLWAVE ROUTINE INFO'
4999end 5262end
5000 5263
5001pro idlwave_get_sysvars 5264pro idlwave_get_sysvars
5002 forward_function strjoin,strtrim,strsplit 5265 on_error,1
5003 catch,error_status 5266 catch,error_status
5004 if error_status ne 0 then begin 5267 if error_status ne 0 then begin
5005 print, 'Cannot get info about system variables' 5268 print, 'Cannot get info about system variables'
@@ -5020,7 +5283,7 @@ pro idlwave_get_class_tags, class
5020 if res then print,'IDLWAVE-CLASS-TAGS: '+class+' '+strjoin(tags,' ',/single) 5283 if res then print,'IDLWAVE-CLASS-TAGS: '+class+' '+strjoin(tags,' ',/single)
5021end 5284end
5022;; END OF IDLWAVE SUPPORT ROUTINES 5285;; END OF IDLWAVE SUPPORT ROUTINES
5023" 5286"
5024 "The idl programs to get info from the shell.") 5287 "The idl programs to get info from the shell.")
5025 5288
5026(defvar idlwave-idlwave_routine_info-compiled nil 5289(defvar idlwave-idlwave_routine_info-compiled nil
@@ -5028,7 +5291,7 @@ end
5028 5291
5029(defvar idlwave-shell-temp-pro-file) 5292(defvar idlwave-shell-temp-pro-file)
5030(defvar idlwave-shell-temp-rinfo-save-file) 5293(defvar idlwave-shell-temp-rinfo-save-file)
5031(defun idlwave-shell-update-routine-info (&optional quiet run-hooks preempt) 5294(defun idlwave-shell-update-routine-info (&optional quiet run-hooks wait)
5032 "Query the shell for routine_info of compiled modules and update the lists." 5295 "Query the shell for routine_info of compiled modules and update the lists."
5033 ;; Save and compile the procedure. The compiled procedure is then 5296 ;; Save and compile the procedure. The compiled procedure is then
5034 ;; saved into an IDL SAVE file, to allow for fast RESTORE. 5297 ;; saved into an IDL SAVE file, to allow for fast RESTORE.
@@ -5043,14 +5306,14 @@ end
5043 (erase-buffer) 5306 (erase-buffer)
5044 (insert idlwave-routine-info.pro) 5307 (insert idlwave-routine-info.pro)
5045 (save-buffer 0)) 5308 (save-buffer 0))
5046 (idlwave-shell-send-command 5309 (idlwave-shell-send-command
5047 (concat ".run " idlwave-shell-temp-pro-file) 5310 (concat ".run " idlwave-shell-temp-pro-file)
5048 nil 'hide) 5311 nil 'hide wait)
5049; (message "SENDING SAVE") ; ???????????????????????? 5312; (message "SENDING SAVE") ; ????????????????????????
5050 (idlwave-shell-send-command 5313 (idlwave-shell-send-command
5051 (format "save,'idlwave_routine_info','idlwave_print_info_entry',FILE='%s',/ROUTINES" 5314 (format "save,'idlwave_routine_info','idlwave_print_info_entry','idlwave_get_class_tags','idlwave_get_sysvars',FILE='%s',/ROUTINES"
5052 (idlwave-shell-temp-file 'rinfo)) 5315 (idlwave-shell-temp-file 'rinfo))
5053 nil 'hide)) 5316 nil 'hide wait))
5054 5317
5055 ;; Restore and execute the procedure, analyze the output 5318 ;; Restore and execute the procedure, analyze the output
5056; (message "SENDING RESTORE & EXECUTE") ; ???????????????????????? 5319; (message "SENDING RESTORE & EXECUTE") ; ????????????????????????
@@ -5060,13 +5323,14 @@ end
5060 `(progn 5323 `(progn
5061 (idlwave-shell-routine-info-filter) 5324 (idlwave-shell-routine-info-filter)
5062 (idlwave-concatenate-rinfo-lists ,quiet ,run-hooks)) 5325 (idlwave-concatenate-rinfo-lists ,quiet ,run-hooks))
5063 'hide preempt)) 5326 'hide wait))
5064 5327
5065;; --------------------------------------------------------------------------- 5328;; ---------------------------------------------------------------------------
5066;; 5329;;
5067;; Completion and displaying routine calling sequences 5330;; Completion and displaying routine calling sequences
5068 5331
5069(defvar idlwave-completion-help-info nil) 5332(defvar idlwave-completion-help-info nil)
5333(defvar idlwave-completion-help-links nil)
5070(defvar idlwave-current-obj_new-class nil) 5334(defvar idlwave-current-obj_new-class nil)
5071(defvar idlwave-complete-special nil) 5335(defvar idlwave-complete-special nil)
5072 5336
@@ -5111,6 +5375,9 @@ Possible values are:
5111As a special case, the universal argument C-u forces completion of 5375As a special case, the universal argument C-u forces completion of
5112function names in places where the default would be a keyword. 5376function names in places where the default would be a keyword.
5113 5377
5378Two prefix argument, C-u C-u, prompts for a regexp by which to limit
5379completion.
5380
5114For Lisp programmers only: 5381For Lisp programmers only:
5115When we force a keyword, optional argument MODULE can contain the module name. 5382When we force a keyword, optional argument MODULE can contain the module name.
5116When we force a method or a method keyword, CLASS can specify the class." 5383When we force a method or a method keyword, CLASS can specify the class."
@@ -5118,13 +5385,16 @@ When we force a method or a method keyword, CLASS can specify the class."
5118 (idlwave-routines) 5385 (idlwave-routines)
5119 (let* ((where-list 5386 (let* ((where-list
5120 (if (and arg 5387 (if (and arg
5121 (or (integerp arg) 5388 (or (and (integerp arg) (not (equal arg '(16))))
5122 (symbolp arg))) 5389 (symbolp arg)))
5123 (idlwave-make-force-complete-where-list arg module class) 5390 (idlwave-make-force-complete-where-list arg module class)
5124 (idlwave-where))) 5391 (idlwave-where)))
5125 (what (nth 2 where-list)) 5392 (what (nth 2 where-list))
5126 (idlwave-force-class-query (equal arg '(4)))) 5393 (idlwave-force-class-query (equal arg '(4)))
5127 5394 (completion-regexp-list
5395 (if (equal arg '(16))
5396 (list (read-string (concat "Completion Regexp: "))))))
5397
5128 (if (and module (string-match "::" module)) 5398 (if (and module (string-match "::" module))
5129 (setq class (substring module 0 (match-beginning 0)) 5399 (setq class (substring module 0 (match-beginning 0))
5130 module (substring module (match-end 0)))) 5400 module (substring module (match-end 0))))
@@ -5137,17 +5407,19 @@ When we force a method or a method keyword, CLASS can specify the class."
5137 (setq this-command last-command) 5407 (setq this-command last-command)
5138 (idlwave-scroll-completions)) 5408 (idlwave-scroll-completions))
5139 5409
5140 ;; Check for any special completion functions 5410 ;; Complete a filename in quotes
5141 ((and idlwave-complete-special
5142 (idlwave-call-special idlwave-complete-special)))
5143
5144 ((and (idlwave-in-quote) 5411 ((and (idlwave-in-quote)
5145 (not (eq what 'class))) 5412 (not (eq what 'class)))
5146 (idlwave-complete-filename)) 5413 (idlwave-complete-filename))
5147 5414
5415 ;; Check for any special completion functions
5416 ((and idlwave-complete-special
5417 (idlwave-call-special idlwave-complete-special)))
5418
5148 ((null what) 5419 ((null what)
5149 (error "Nothing to complete here")) 5420 (error "Nothing to complete here"))
5150 5421
5422 ;; Complete a class
5151 ((eq what 'class) 5423 ((eq what 'class)
5152 (setq idlwave-completion-help-info '(class)) 5424 (setq idlwave-completion-help-info '(class))
5153 (idlwave-complete-class)) 5425 (idlwave-complete-class))
@@ -5160,7 +5432,7 @@ When we force a method or a method keyword, CLASS can specify the class."
5160 (idlwave-all-class-inherits class-selector))) 5432 (idlwave-all-class-inherits class-selector)))
5161 (isa (concat "procedure" (if class-selector "-method" ""))) 5433 (isa (concat "procedure" (if class-selector "-method" "")))
5162 (type-selector 'pro)) 5434 (type-selector 'pro))
5163 (setq idlwave-completion-help-info 5435 (setq idlwave-completion-help-info
5164 (list 'routine nil type-selector class-selector nil super-classes)) 5436 (list 'routine nil type-selector class-selector nil super-classes))
5165 (idlwave-complete-in-buffer 5437 (idlwave-complete-in-buffer
5166 'procedure (if class-selector 'method 'routine) 5438 'procedure (if class-selector 'method 'routine)
@@ -5168,12 +5440,12 @@ When we force a method or a method keyword, CLASS can specify the class."
5168 (format "Select a %s name%s" 5440 (format "Select a %s name%s"
5169 isa 5441 isa
5170 (if class-selector 5442 (if class-selector
5171 (format " (class is %s)" 5443 (format " (class is %s)"
5172 (if (eq class-selector t) 5444 (if (eq class-selector t)
5173 "unknown" class-selector)) 5445 "unknown" class-selector))
5174 "")) 5446 ""))
5175 isa 5447 isa
5176 'idlwave-attach-method-classes))) 5448 'idlwave-attach-method-classes 'idlwave-add-file-link-selector)))
5177 5449
5178 ((eq what 'function) 5450 ((eq what 'function)
5179 ;; Complete a function name 5451 ;; Complete a function name
@@ -5183,7 +5455,7 @@ When we force a method or a method keyword, CLASS can specify the class."
5183 (idlwave-all-class-inherits class-selector))) 5455 (idlwave-all-class-inherits class-selector)))
5184 (isa (concat "function" (if class-selector "-method" ""))) 5456 (isa (concat "function" (if class-selector "-method" "")))
5185 (type-selector 'fun)) 5457 (type-selector 'fun))
5186 (setq idlwave-completion-help-info 5458 (setq idlwave-completion-help-info
5187 (list 'routine nil type-selector class-selector nil super-classes)) 5459 (list 'routine nil type-selector class-selector nil super-classes))
5188 (idlwave-complete-in-buffer 5460 (idlwave-complete-in-buffer
5189 'function (if class-selector 'method 'routine) 5461 'function (if class-selector 'method 'routine)
@@ -5191,14 +5463,14 @@ When we force a method or a method keyword, CLASS can specify the class."
5191 (format "Select a %s name%s" 5463 (format "Select a %s name%s"
5192 isa 5464 isa
5193 (if class-selector 5465 (if class-selector
5194 (format " (class is %s)" 5466 (format " (class is %s)"
5195 (if (eq class-selector t) 5467 (if (eq class-selector t)
5196 "unknown" class-selector)) 5468 "unknown" class-selector))
5197 "")) 5469 ""))
5198 isa 5470 isa
5199 'idlwave-attach-method-classes))) 5471 'idlwave-attach-method-classes 'idlwave-add-file-link-selector)))
5200 5472
5201 ((and (memq what '(procedure-keyword function-keyword)) 5473 ((and (memq what '(procedure-keyword function-keyword)) ; Special Case
5202 (equal arg '(4))) 5474 (equal arg '(4)))
5203 (idlwave-complete 3)) 5475 (idlwave-complete 3))
5204 5476
@@ -5214,21 +5486,21 @@ When we force a method or a method keyword, CLASS can specify the class."
5214 (isa (format "procedure%s-keyword" (if class "-method" ""))) 5486 (isa (format "procedure%s-keyword" (if class "-method" "")))
5215 (entry (idlwave-best-rinfo-assq 5487 (entry (idlwave-best-rinfo-assq
5216 name 'pro class (idlwave-routines))) 5488 name 'pro class (idlwave-routines)))
5217 (list (nth 5 entry))) 5489 (list (idlwave-entry-keywords entry 'do-link)))
5218 (unless (or entry (eq class t)) 5490 (unless (or entry (eq class t))
5219 (error "Nothing known about procedure %s" 5491 (error "Nothing known about procedure %s"
5220 (idlwave-make-full-name class name))) 5492 (idlwave-make-full-name class name)))
5221 (setq list (idlwave-fix-keywords name 'pro class list)) 5493 (setq list (idlwave-fix-keywords name 'pro class list super-classes))
5222 (unless list (error (format "No keywords available for procedure %s" 5494 (unless list (error (format "No keywords available for procedure %s"
5223 (idlwave-make-full-name class name)))) 5495 (idlwave-make-full-name class name))))
5224 (setq idlwave-completion-help-info 5496 (setq idlwave-completion-help-info
5225 (list 'keyword name type-selector class-selector nil super-classes)) 5497 (list 'keyword name type-selector class-selector entry super-classes))
5226 (idlwave-complete-in-buffer 5498 (idlwave-complete-in-buffer
5227 'keyword 'keyword list nil 5499 'keyword 'keyword list nil
5228 (format "Select keyword for procedure %s%s" 5500 (format "Select keyword for procedure %s%s"
5229 (idlwave-make-full-name class name) 5501 (idlwave-make-full-name class name)
5230 (if (or (member '("_EXTRA") list) 5502 (if (or (member '("_EXTRA") list)
5231 (member '("_REF_EXTRA") list)) 5503 (member '("_REF_EXTRA") list))
5232 " (note _EXTRA)" "")) 5504 " (note _EXTRA)" ""))
5233 isa 5505 isa
5234 'idlwave-attach-keyword-classes))) 5506 'idlwave-attach-keyword-classes)))
@@ -5245,12 +5517,12 @@ When we force a method or a method keyword, CLASS can specify the class."
5245 (isa (format "function%s-keyword" (if class "-method" ""))) 5517 (isa (format "function%s-keyword" (if class "-method" "")))
5246 (entry (idlwave-best-rinfo-assq 5518 (entry (idlwave-best-rinfo-assq
5247 name 'fun class (idlwave-routines))) 5519 name 'fun class (idlwave-routines)))
5248 (list (nth 5 entry)) 5520 (list (idlwave-entry-keywords entry 'do-link))
5249 msg-name) 5521 msg-name)
5250 (unless (or entry (eq class t)) 5522 (unless (or entry (eq class t))
5251 (error "Nothing known about function %s" 5523 (error "Nothing known about function %s"
5252 (idlwave-make-full-name class name))) 5524 (idlwave-make-full-name class name)))
5253 (setq list (idlwave-fix-keywords name 'fun class list)) 5525 (setq list (idlwave-fix-keywords name 'fun class list super-classes))
5254 ;; OBJ_NEW: Messages mention the proper Init method 5526 ;; OBJ_NEW: Messages mention the proper Init method
5255 (setq msg-name (if (and (null class) 5527 (setq msg-name (if (and (null class)
5256 (string= (upcase name) "OBJ_NEW")) 5528 (string= (upcase name) "OBJ_NEW"))
@@ -5259,13 +5531,13 @@ When we force a method or a method keyword, CLASS can specify the class."
5259 (idlwave-make-full-name class name))) 5531 (idlwave-make-full-name class name)))
5260 (unless list (error (format "No keywords available for function %s" 5532 (unless list (error (format "No keywords available for function %s"
5261 msg-name))) 5533 msg-name)))
5262 (setq idlwave-completion-help-info 5534 (setq idlwave-completion-help-info
5263 (list 'keyword name type-selector class-selector nil super-classes)) 5535 (list 'keyword name type-selector class-selector nil super-classes))
5264 (idlwave-complete-in-buffer 5536 (idlwave-complete-in-buffer
5265 'keyword 'keyword list nil 5537 'keyword 'keyword list nil
5266 (format "Select keyword for function %s%s" msg-name 5538 (format "Select keyword for function %s%s" msg-name
5267 (if (or (member '("_EXTRA") list) 5539 (if (or (member '("_EXTRA") list)
5268 (member '("_REF_EXTRA") list)) 5540 (member '("_REF_EXTRA") list))
5269 " (note _EXTRA)" "")) 5541 " (note _EXTRA)" ""))
5270 isa 5542 isa
5271 'idlwave-attach-keyword-classes))) 5543 'idlwave-attach-keyword-classes)))
@@ -5274,12 +5546,12 @@ When we force a method or a method keyword, CLASS can specify the class."
5274 5546
5275(defvar idlwave-complete-special nil 5547(defvar idlwave-complete-special nil
5276 "List of special completion functions. 5548 "List of special completion functions.
5277These functions are called for each completion. Each function must check 5549These functions are called for each completion. Each function must
5278if its own special completion context is present. If yes, it should 5550check if its own special completion context is present. If yes, it
5279use `idlwave-complete-in-buffer' to do some completion and return t. 5551should use `idlwave-complete-in-buffer' to do some completion and
5280If such a function returns t, *no further* attempts to complete 5552return t. If such a function returns t, *no further* attempts to
5281other contexts will be done. If the function returns nil, other completions 5553complete other contexts will be done. If the function returns nil,
5282will be tried.") 5554other completions will be tried.")
5283 5555
5284(defun idlwave-call-special (functions &rest args) 5556(defun idlwave-call-special (functions &rest args)
5285 (let ((funcs functions) 5557 (let ((funcs functions)
@@ -5303,10 +5575,10 @@ will be tried.")
5303 ("class"))) 5575 ("class")))
5304 (module (idlwave-sintern-routine-or-method module class)) 5576 (module (idlwave-sintern-routine-or-method module class))
5305 (class (idlwave-sintern-class class)) 5577 (class (idlwave-sintern-class class))
5306 (what (cond 5578 (what (cond
5307 ((equal what 0) 5579 ((equal what 0)
5308 (setq what 5580 (setq what
5309 (intern (completing-read 5581 (intern (completing-read
5310 "Complete what? " what-list nil t)))) 5582 "Complete what? " what-list nil t))))
5311 ((integerp what) 5583 ((integerp what)
5312 (setq what (intern (car (nth (1- what) what-list))))) 5584 (setq what (intern (car (nth (1- what) what-list)))))
@@ -5328,7 +5600,7 @@ will be tried.")
5328 (super-classes nil) 5600 (super-classes nil)
5329 (type-selector 'pro) 5601 (type-selector 'pro)
5330 (pro (or module 5602 (pro (or module
5331 (idlwave-completing-read 5603 (idlwave-completing-read
5332 "Procedure: " (idlwave-routines) 'idlwave-selector)))) 5604 "Procedure: " (idlwave-routines) 'idlwave-selector))))
5333 (setq pro (idlwave-sintern-routine pro)) 5605 (setq pro (idlwave-sintern-routine pro))
5334 (list nil-list nil-list 'procedure-keyword 5606 (list nil-list nil-list 'procedure-keyword
@@ -5342,7 +5614,7 @@ will be tried.")
5342 (super-classes nil) 5614 (super-classes nil)
5343 (type-selector 'fun) 5615 (type-selector 'fun)
5344 (func (or module 5616 (func (or module
5345 (idlwave-completing-read 5617 (idlwave-completing-read
5346 "Function: " (idlwave-routines) 'idlwave-selector)))) 5618 "Function: " (idlwave-routines) 'idlwave-selector))))
5347 (setq func (idlwave-sintern-routine func)) 5619 (setq func (idlwave-sintern-routine func))
5348 (list nil-list nil-list 'function-keyword 5620 (list nil-list nil-list 'function-keyword
@@ -5382,7 +5654,7 @@ will be tried.")
5382 5654
5383 ((eq what 'class) 5655 ((eq what 'class)
5384 (list nil-list nil-list 'class nil-list nil)) 5656 (list nil-list nil-list 'class nil-list nil))
5385 5657
5386 (t (error "Illegal value for WHAT"))))) 5658 (t (error "Illegal value for WHAT")))))
5387 5659
5388(defun idlwave-completing-read (&rest args) 5660(defun idlwave-completing-read (&rest args)
@@ -5405,7 +5677,7 @@ will be tried.")
5405 (stringp idlwave-shell-default-directory) 5677 (stringp idlwave-shell-default-directory)
5406 (file-directory-p idlwave-shell-default-directory)) 5678 (file-directory-p idlwave-shell-default-directory))
5407 idlwave-shell-default-directory 5679 idlwave-shell-default-directory
5408 default-directory))) 5680 default-directory)))
5409 (comint-dynamic-complete-filename))) 5681 (comint-dynamic-complete-filename)))
5410 5682
5411(defun idlwave-make-full-name (class name) 5683(defun idlwave-make-full-name (class name)
@@ -5414,7 +5686,7 @@ will be tried.")
5414 5686
5415(defun idlwave-rinfo-assoc (name type class list) 5687(defun idlwave-rinfo-assoc (name type class list)
5416 "Like `idlwave-rinfo-assq', but sintern strings first." 5688 "Like `idlwave-rinfo-assq', but sintern strings first."
5417 (idlwave-rinfo-assq 5689 (idlwave-rinfo-assq
5418 (idlwave-sintern-routine-or-method name class) 5690 (idlwave-sintern-routine-or-method name class)
5419 type (idlwave-sintern-class class) list)) 5691 type (idlwave-sintern-class class) list))
5420 5692
@@ -5430,6 +5702,7 @@ will be tried.")
5430 (setq list (cdr (memq match list))))))) 5702 (setq list (cdr (memq match list)))))))
5431 5703
5432(defun idlwave-rinfo-assq-any-class (name type class list) 5704(defun idlwave-rinfo-assq-any-class (name type class list)
5705 ;; Return the first matching method on the inheritance list
5433 (let* ((classes (cons class (idlwave-all-class-inherits class))) 5706 (let* ((classes (cons class (idlwave-all-class-inherits class)))
5434 class rtn) 5707 class rtn)
5435 (while classes 5708 (while classes
@@ -5437,26 +5710,37 @@ will be tried.")
5437 (setq classes nil))) 5710 (setq classes nil)))
5438 rtn)) 5711 rtn))
5439 5712
5440(defun idlwave-best-rinfo-assq (name type class list) 5713(defun idlwave-best-rinfo-assq (name type class list &optional with-file
5441 "Like `idlwave-rinfo-assq', but get all twins and sort, then return first." 5714 keep-system)
5715 "Like `idlwave-rinfo-assq', but get all twins and sort, then return first.
5716If WITH-FILE is passed, find the best rinfo entry with a file
5717included. If KEEP-SYSTEM is set, don't prune system for compiled
5718syslib files."
5442 (let ((twins (idlwave-routine-twins 5719 (let ((twins (idlwave-routine-twins
5443 (idlwave-rinfo-assq-any-class name type class list) 5720 (idlwave-rinfo-assq-any-class name type class list)
5444 list)) 5721 list))
5445 syslibp) 5722 syslibp)
5446 (when (> (length twins) 1) 5723 (when (> (length twins) 1)
5447 (setq twins (sort twins 'idlwave-routine-entry-compare-twins)) 5724 (setq twins (sort twins 'idlwave-routine-entry-compare-twins))
5448 (if (and (eq 'system (car (nth 3 (car twins)))) 5725 (if (and (null keep-system)
5726 (eq 'system (car (nth 3 (car twins))))
5449 (setq syslibp (idlwave-any-syslib (cdr twins))) 5727 (setq syslibp (idlwave-any-syslib (cdr twins)))
5450 (not (equal 1 syslibp))) 5728 (not (equal 1 syslibp)))
5451 ;; Its a syslib, so we need to remove the system entry 5729 ;; Its a compiled syslib, so we need to remove the system entry
5452 (setq twins (cdr twins)))) 5730 (setq twins (cdr twins)))
5731 (if with-file
5732 (setq twins (delq nil
5733 (mapcar (lambda (x)
5734 (if (nth 1 (nth 3 x)) x))
5735 twins)))))
5453 (car twins))) 5736 (car twins)))
5454 5737
5455(defun idlwave-best-rinfo-assoc (name type class list) 5738(defun idlwave-best-rinfo-assoc (name type class list &optional with-file
5739 keep-system)
5456 "Like `idlwave-best-rinfo-assq', but sintern strings first." 5740 "Like `idlwave-best-rinfo-assq', but sintern strings first."
5457 (idlwave-best-rinfo-assq 5741 (idlwave-best-rinfo-assq
5458 (idlwave-sintern-routine-or-method name class) 5742 (idlwave-sintern-routine-or-method name class)
5459 type (idlwave-sintern-class class) list)) 5743 type (idlwave-sintern-class class) list with-file keep-system))
5460 5744
5461(defun idlwave-any-syslib (entries) 5745(defun idlwave-any-syslib (entries)
5462 "Does the entry list ENTRIES contain a syslib entry? 5746 "Does the entry list ENTRIES contain a syslib entry?
@@ -5465,10 +5749,8 @@ If yes, return the index (>=1)."
5465 (catch 'exit 5749 (catch 'exit
5466 (while entries 5750 (while entries
5467 (incf cnt) 5751 (incf cnt)
5468 (setq file (cdr (nth 3 (car entries)))) 5752 (setq file (idlwave-routine-source-file (nth 3 (car entries))))
5469 (if (and file 5753 (if (and file (idlwave-syslib-p file))
5470 (idlwave-syslib-p
5471 (idlwave-expand-lib-file-name file)))
5472 (throw 'exit cnt) 5754 (throw 'exit cnt)
5473 (setq entries (cdr entries)))) 5755 (setq entries (cdr entries))))
5474 nil))) 5756 nil)))
@@ -5504,10 +5786,10 @@ When TYPE is not specified, both procedures and functions will be considered."
5504 nil 5786 nil
5505 (let (rtn) 5787 (let (rtn)
5506 (mapcar (lambda (x) 5788 (mapcar (lambda (x)
5507 (and (nth 2 x) 5789 (and (nth 2 x) ; non-nil class
5508 (or (not type) 5790 (or (not type) ; correct or unspecified type
5509 (eq type (nth 1 x))) 5791 (eq type (nth 1 x)))
5510 (assoc keyword (nth 5 x)) 5792 (assoc keyword (idlwave-entry-keywords x))
5511 (push (nth 2 x) rtn))) 5793 (push (nth 2 x) rtn)))
5512 (idlwave-all-assq method (idlwave-routines))) 5794 (idlwave-all-assq method (idlwave-routines)))
5513 (idlwave-uniquify rtn)))) 5795 (idlwave-uniquify rtn))))
@@ -5544,7 +5826,7 @@ INFO is as returned by idlwave-what-function or -procedure."
5544Must accept two arguments: `apos' and `info'") 5826Must accept two arguments: `apos' and `info'")
5545 5827
5546(defun idlwave-determine-class (info type) 5828(defun idlwave-determine-class (info type)
5547 ;; Determine the class of a routine call. 5829 ;; Determine the class of a routine call.
5548 ;; INFO is the `cw-list' structure as returned by idlwave-where. 5830 ;; INFO is the `cw-list' structure as returned by idlwave-where.
5549 ;; The second element in this structure is the class. When nil, we 5831 ;; The second element in this structure is the class. When nil, we
5550 ;; return nil. When t, try to get the class from text properties at 5832 ;; return nil. When t, try to get the class from text properties at
@@ -5564,7 +5846,7 @@ Must accept two arguments: `apos' and `info'")
5564 (dassoc (cdr dassoc)) 5846 (dassoc (cdr dassoc))
5565 (t t))) 5847 (t t)))
5566 (arrow (and apos (string= (buffer-substring apos (+ 2 apos)) "->"))) 5848 (arrow (and apos (string= (buffer-substring apos (+ 2 apos)) "->")))
5567 (is-self 5849 (is-self
5568 (and arrow 5850 (and arrow
5569 (save-excursion (goto-char apos) 5851 (save-excursion (goto-char apos)
5570 (forward-word -1) 5852 (forward-word -1)
@@ -5585,19 +5867,19 @@ Must accept two arguments: `apos' and `info'")
5585 (setq class (or (nth 2 (idlwave-current-routine)) class))) 5867 (setq class (or (nth 2 (idlwave-current-routine)) class)))
5586 5868
5587 ;; Before prompting, try any special class determination routines 5869 ;; Before prompting, try any special class determination routines
5588 (when (and (eq t class) 5870 (when (and (eq t class)
5589 idlwave-determine-class-special 5871 idlwave-determine-class-special
5590 (not force-query)) 5872 (not force-query))
5591 (setq special-class 5873 (setq special-class
5592 (idlwave-call-special idlwave-determine-class-special apos)) 5874 (idlwave-call-special idlwave-determine-class-special apos))
5593 (if special-class 5875 (if special-class
5594 (setq class (idlwave-sintern-class special-class) 5876 (setq class (idlwave-sintern-class special-class)
5595 store idlwave-store-inquired-class))) 5877 store idlwave-store-inquired-class)))
5596 5878
5597 ;; Prompt for a class, if we need to 5879 ;; Prompt for a class, if we need to
5598 (when (and (eq class t) 5880 (when (and (eq class t)
5599 (or force-query query)) 5881 (or force-query query))
5600 (setq class-alist 5882 (setq class-alist
5601 (mapcar 'list (idlwave-all-method-classes (car info) type))) 5883 (mapcar 'list (idlwave-all-method-classes (car info) type)))
5602 (setq class 5884 (setq class
5603 (idlwave-sintern-class 5885 (idlwave-sintern-class
@@ -5606,9 +5888,9 @@ Must accept two arguments: `apos' and `info'")
5606 (error "No classes available with method %s" (car info))) 5888 (error "No classes available with method %s" (car info)))
5607 ((and (= (length class-alist) 1) (not force-query)) 5889 ((and (= (length class-alist) 1) (not force-query))
5608 (car (car class-alist))) 5890 (car (car class-alist)))
5609 (t 5891 (t
5610 (setq store idlwave-store-inquired-class) 5892 (setq store idlwave-store-inquired-class)
5611 (idlwave-completing-read 5893 (idlwave-completing-read
5612 (format "Class%s: " (if (stringp (car info)) 5894 (format "Class%s: " (if (stringp (car info))
5613 (format " for %s method %s" 5895 (format " for %s method %s"
5614 type (car info)) 5896 type (car info))
@@ -5620,9 +5902,9 @@ Must accept two arguments: `apos' and `info'")
5620 ;; We have a real class here 5902 ;; We have a real class here
5621 (when (and store arrow) 5903 (when (and store arrow)
5622 (condition-case () 5904 (condition-case ()
5623 (add-text-properties 5905 (add-text-properties
5624 apos (+ apos 2) 5906 apos (+ apos 2)
5625 `(idlwave-class ,class face ,idlwave-class-arrow-face 5907 `(idlwave-class ,class face ,idlwave-class-arrow-face
5626 rear-nonsticky t)) 5908 rear-nonsticky t))
5627 (error nil))) 5909 (error nil)))
5628 (setf (nth 2 info) class)) 5910 (setf (nth 2 info) class))
@@ -5639,18 +5921,25 @@ Must accept two arguments: `apos' and `info'")
5639 (and (eq (nth 1 a) type-selector) 5921 (and (eq (nth 1 a) type-selector)
5640 (or (and (nth 2 a) (eq class-selector t)) 5922 (or (and (nth 2 a) (eq class-selector t))
5641 (eq (nth 2 a) class-selector) 5923 (eq (nth 2 a) class-selector)
5642 (memq (nth 2 a) super-classes) 5924 (memq (nth 2 a) super-classes))))
5643 ))) 5925
5926(defun idlwave-add-file-link-selector (a)
5927 ;; Record a file link, if any, for the tested names during selection.
5928 (let ((sel (idlwave-selector a)) file)
5929 (if (and sel (setq file (idlwave-entry-has-help a)))
5930 (push (cons (car a) file) idlwave-completion-help-links))
5931 sel))
5932
5644 5933
5645(defun idlwave-where () 5934(defun idlwave-where ()
5646 "Find out where we are. 5935 "Find out where we are.
5647The return value is a list with the following stuff: 5936The return value is a list with the following stuff:
5648\(PRO-LIST FUNC-LIST COMPLETE-WHAT CW-LIST LAST-CHAR) 5937\(PRO-LIST FUNC-LIST COMPLETE-WHAT CW-LIST LAST-CHAR)
5649 5938
5650PRO-LIST (PRO POINT CLASS ARROW) 5939PRO-LIST (PRO POINT CLASS ARROW)
5651FUNC-LIST (FUNC POINT CLASS ARROW) 5940FUNC-LIST (FUNC POINT CLASS ARROW)
5652COMPLETE-WHAT a symbol indicating what kind of completion makes sense here 5941COMPLETE-WHAT a symbol indicating what kind of completion makes sense here
5653CW-LIST (PRO-OR-FUNC POINT CLASS ARROW) Like PRO-LIST, for what can 5942CW-LIST (PRO-OR-FUNC POINT CLASS ARROW) Like PRO-LIST, for what can
5654 be completed here. 5943 be completed here.
5655LAST-CHAR last relevant character before point (non-white non-comment, 5944LAST-CHAR last relevant character before point (non-white non-comment,
5656 not part of current identifier or leading slash). 5945 not part of current identifier or leading slash).
@@ -5662,7 +5951,7 @@ POINT: Where is this
5662CLASS: What class has the routine (nil=no, t=is method, but class unknown) 5951CLASS: What class has the routine (nil=no, t=is method, but class unknown)
5663ARROW: Location of the arrow" 5952ARROW: Location of the arrow"
5664 (idlwave-routines) 5953 (idlwave-routines)
5665 (let* (;(bos (save-excursion (idlwave-beginning-of-statement) (point))) 5954 (let* (;(bos (save-excursion (idlwave-beginning-of-statement) (point)))
5666 (bos (save-excursion (idlwave-start-of-substatement 'pre) (point))) 5955 (bos (save-excursion (idlwave-start-of-substatement 'pre) (point)))
5667 (func-entry (idlwave-what-function bos)) 5956 (func-entry (idlwave-what-function bos))
5668 (func (car func-entry)) 5957 (func (car func-entry))
@@ -5677,27 +5966,30 @@ ARROW: Location of the arrow"
5677 (pro-point (or (nth 3 pro-entry) 0)) 5966 (pro-point (or (nth 3 pro-entry) 0))
5678 (last-char (idlwave-last-valid-char)) 5967 (last-char (idlwave-last-valid-char))
5679 (case-fold-search t) 5968 (case-fold-search t)
5969 (match-string (buffer-substring bos (point)))
5680 cw cw-mod cw-arrow cw-class cw-point) 5970 cw cw-mod cw-arrow cw-class cw-point)
5681 (if (< func-point pro-point) (setq func nil)) 5971 (if (< func-point pro-point) (setq func nil))
5682 (cond 5972 (cond
5683 ((string-match "\\`[ \t]*\\(pro\\|function\\)[ \t]+[a-zA-Z0-9_]*\\'" 5973 ((string-match "\\`[ \t]*\\(pro\\|function\\)[ \t]+[a-zA-Z0-9_]*\\'"
5684 (buffer-substring bos (point))) 5974 match-string)
5685 (setq cw 'class)) 5975 (setq cw 'class))
5686 ((string-match 5976 ((string-match
5687 "\\`[ \t]*\\([a-zA-Z][a-zA-Z0-9$_]*\\)?\\'" 5977 "\\`[ \t]*\\([a-zA-Z][a-zA-Z0-9$_]*\\)?\\'"
5688 (buffer-substring (if (> pro-point 0) pro-point bos) (point))) 5978 (if (> pro-point 0)
5979 (buffer-substring pro-point (point))
5980 match-string))
5689 (setq cw 'procedure cw-class pro-class cw-point pro-point 5981 (setq cw 'procedure cw-class pro-class cw-point pro-point
5690 cw-arrow pro-arrow)) 5982 cw-arrow pro-arrow))
5691 ((string-match "\\`[ \t]*\\(pro\\|function\\)\\>" 5983 ((string-match "\\`[ \t]*\\(pro\\|function\\)\\>"
5692 (buffer-substring bos (point))) 5984 match-string)
5693 nil) 5985 nil)
5694 ((string-match "OBJ_NEW([ \t]*['\"]\\([a-zA-Z0-9$_]*\\)?\\'" 5986 ((string-match "OBJ_NEW([ \t]*['\"]\\([a-zA-Z0-9$_]*\\)?\\'"
5695 (buffer-substring bos (point))) 5987 match-string)
5696 (setq cw 'class)) 5988 (setq cw 'class))
5697 ((string-match "\\<inherits\\s-+\\([a-zA-Z0-9$_]*\\)?\\'" 5989 ((string-match "\\<inherits\\s-+\\([a-zA-Z0-9$_]*\\)?\\'"
5698 (buffer-substring bos (point))) 5990 match-string)
5699 (setq cw 'class)) 5991 (setq cw 'class))
5700 ((and func 5992 ((and func
5701 (> func-point pro-point) 5993 (> func-point pro-point)
5702 (= func-level 1) 5994 (= func-level 1)
5703 (memq last-char '(?\( ?,))) 5995 (memq last-char '(?\( ?,)))
@@ -5715,10 +6007,10 @@ ARROW: Location of the arrow"
5715 (t 6007 (t
5716 (setq cw 'function) 6008 (setq cw 'function)
5717 (save-excursion 6009 (save-excursion
5718 (if (re-search-backward "->[ \t]*\\(\\([$a-zA-Z0-9_]+\\)::\\)?[$a-zA-Z0-9_]*\\=" bos t) 6010 (if (re-search-backward "->[ \t]*\\(\\$[ \t]*\\(;.*\\)?\n\\s-*\\)?\\(\\([$a-zA-Z0-9_]+\\)::\\)?[$a-zA-Z0-9_]*\\=" bos t)
5719 (setq cw-arrow (copy-marker (match-beginning 0)) 6011 (setq cw-arrow (copy-marker (match-beginning 0))
5720 cw-class (if (match-end 2) 6012 cw-class (if (match-end 4)
5721 (idlwave-sintern-class (match-string 2)) 6013 (idlwave-sintern-class (match-string 4))
5722 t)))))) 6014 t))))))
5723 (list (list pro pro-point pro-class pro-arrow) 6015 (list (list pro pro-point pro-class pro-arrow)
5724 (list func func-point func-class func-arrow) 6016 (list func func-point func-class func-arrow)
@@ -5728,9 +6020,9 @@ ARROW: Location of the arrow"
5728 6020
5729(defun idlwave-this-word (&optional class) 6021(defun idlwave-this-word (&optional class)
5730 ;; Grab the word around point. CLASS is for the `skip-chars=...' functions 6022 ;; Grab the word around point. CLASS is for the `skip-chars=...' functions
5731 (setq class (or class "a-zA-Z0-9$_")) 6023 (setq class (or class "a-zA-Z0-9$_."))
5732 (save-excursion 6024 (save-excursion
5733 (buffer-substring-no-properties 6025 (buffer-substring
5734 (progn (skip-chars-backward class) (point)) 6026 (progn (skip-chars-backward class) (point))
5735 (progn (skip-chars-forward class) (point))))) 6027 (progn (skip-chars-forward class) (point)))))
5736 6028
@@ -5743,7 +6035,7 @@ ARROW: Location of the arrow"
5743 ;; searches to this point. 6035 ;; searches to this point.
5744 6036
5745 (catch 'exit 6037 (catch 'exit
5746 (let (pos 6038 (let (pos
5747 func-point 6039 func-point
5748 (cnt 0) 6040 (cnt 0)
5749 func arrow-start class) 6041 func arrow-start class)
@@ -5758,18 +6050,18 @@ ARROW: Location of the arrow"
5758 (setq pos (point)) 6050 (setq pos (point))
5759 (incf cnt) 6051 (incf cnt)
5760 (when (and (= (following-char) ?\() 6052 (when (and (= (following-char) ?\()
5761 (re-search-backward 6053 (re-search-backward
5762 "\\(::\\|\\<\\)\\([a-zA-Z][a-zA-Z0-9$_]*\\)[ \t]*\\=" 6054 "\\(::\\|\\<\\)\\([a-zA-Z][a-zA-Z0-9$_]*\\)[ \t]*\\="
5763 bound t)) 6055 bound t))
5764 (setq func (match-string 2) 6056 (setq func (match-string 2)
5765 func-point (goto-char (match-beginning 2)) 6057 func-point (goto-char (match-beginning 2))
5766 pos func-point) 6058 pos func-point)
5767 (if (re-search-backward 6059 (if (re-search-backward
5768 "->[ \t]*\\(\\([a-zA-Z][a-zA-Z0-9$_]*\\)::\\)?\\=" bound t) 6060 "->[ \t]*\\(\\([a-zA-Z][a-zA-Z0-9$_]*\\)::\\)?\\=" bound t)
5769 (setq arrow-start (copy-marker (match-beginning 0)) 6061 (setq arrow-start (copy-marker (match-beginning 0))
5770 class (or (match-string 2) t))) 6062 class (or (match-string 2) t)))
5771 (throw 6063 (throw
5772 'exit 6064 'exit
5773 (list 6065 (list
5774 (idlwave-sintern-routine-or-method func class) 6066 (idlwave-sintern-routine-or-method func class)
5775 (idlwave-sintern-class class) 6067 (idlwave-sintern-class class)
@@ -5785,18 +6077,19 @@ ARROW: Location of the arrow"
5785 ;; searches to this point. 6077 ;; searches to this point.
5786 (let ((pos (point)) pro-point 6078 (let ((pos (point)) pro-point
5787 pro class arrow-start string) 6079 pro class arrow-start string)
5788 (save-excursion 6080 (save-excursion
5789 ;;(idlwave-beginning-of-statement) 6081 ;;(idlwave-beginning-of-statement)
5790 (idlwave-start-of-substatement 'pre) 6082 (idlwave-start-of-substatement 'pre)
5791 (setq string (buffer-substring (point) pos)) 6083 (setq string (buffer-substring (point) pos))
5792 (if (string-match 6084 (if (string-match
5793 "\\`[ \t]*\\([a-zA-Z][a-zA-Z0-9$_]*\\)[ \t]*\\(,\\|\\'\\)" string) 6085 "\\`[ \t]*\\([a-zA-Z][a-zA-Z0-9$_]*\\)[ \t]*\\(,\\|\\'\\)" string)
5794 (setq pro (match-string 1 string) 6086 (setq pro (match-string 1 string)
5795 pro-point (+ (point) (match-beginning 1))) 6087 pro-point (+ (point) (match-beginning 1)))
5796 (if (and (idlwave-skip-object) 6088 (if (and (idlwave-skip-object)
5797 (setq string (buffer-substring (point) pos)) 6089 (setq string (buffer-substring (point) pos))
5798 (string-match 6090 (string-match
5799 "\\`[ \t]*\\(->\\)[ \t]*\\(\\([a-zA-Z][a-zA-Z0-9$_]*\\)::\\)?\\([a-zA-Z][a-zA-Z0-9$_]*\\)?[ \t]*\\(,\\|\\'\\)" string)) 6091 "\\`[ \t]*\\(->\\)[ \t]*\\(\\([a-zA-Z][a-zA-Z0-9$_]*\\)::\\)?\\([a-zA-Z][a-zA-Z0-9$_]*\\)?[ \t]*\\(,\\|\\(\\$\\s *\\(;.*\\)?\\)?$\\)"
6092 string))
5800 (setq pro (if (match-beginning 4) 6093 (setq pro (if (match-beginning 4)
5801 (match-string 4 string)) 6094 (match-string 4 string))
5802 pro-point (if (match-beginning 4) 6095 pro-point (if (match-beginning 4)
@@ -5839,7 +6132,7 @@ ARROW: Location of the arrow"
5839 (throw 'exit nil)))) 6132 (throw 'exit nil))))
5840 (goto-char pos) 6133 (goto-char pos)
5841 nil))) 6134 nil)))
5842 6135
5843(defun idlwave-last-valid-char () 6136(defun idlwave-last-valid-char ()
5844 "Return the last character before point which is not white or a comment 6137 "Return the last character before point which is not white or a comment
5845and also not part of the current identifier. Since we do this in 6138and also not part of the current identifier. Since we do this in
@@ -5874,11 +6167,14 @@ This function is not general, can only be used for completion stuff."
5874 "A mark pointing to the beginning of the completion string.") 6167 "A mark pointing to the beginning of the completion string.")
5875 6168
5876(defun idlwave-complete-in-buffer (type stype list selector prompt isa 6169(defun idlwave-complete-in-buffer (type stype list selector prompt isa
5877 &optional prepare-display-function) 6170 &optional prepare-display-function
6171 special-selector)
5878 "Perform TYPE completion of word before point against LIST. 6172 "Perform TYPE completion of word before point against LIST.
5879SELECTOR is the PREDICATE argument for the completion function. Show 6173SELECTOR is the PREDICATE argument for the completion function. Show
5880PROMPT in echo area. TYPE is one of 'function, 'procedure, 6174PROMPT in echo area. TYPE is one of the intern types, e.g. 'function,
5881'class-tag, or 'keyword." 6175'procedure, 'class-tag, 'keyword, 'sysvar, etc.. SPECIAL-SELECTOR is
6176used only once, for `all-completions', and can be used to, e.g.,
6177accumulate information on matching completions."
5882 (let* ((completion-ignore-case t) 6178 (let* ((completion-ignore-case t)
5883 beg (end (point)) slash part spart completion all-completions 6179 beg (end (point)) slash part spart completion all-completions
5884 dpart dcompletion) 6180 dpart dcompletion)
@@ -5903,7 +6199,8 @@ PROMPT in echo area. TYPE is one of 'function, 'procedure,
5903 dpart (downcase part) 6199 dpart (downcase part)
5904 spart (idlwave-sintern stype part) 6200 spart (idlwave-sintern stype part)
5905 completion (try-completion part list selector) 6201 completion (try-completion part list selector)
5906 dcompletion (if (stringp completion) (downcase completion))) 6202 dcompletion (if (stringp completion) (downcase completion))
6203 idlwave-completion-help-links nil)
5907 (cond 6204 (cond
5908 ((null completion) 6205 ((null completion)
5909 ;; nothing available. 6206 ;; nothing available.
@@ -5923,24 +6220,35 @@ PROMPT in echo area. TYPE is one of 'function, 'procedure,
5923 (idlwave-after-successful-completion type slash beg)) 6220 (idlwave-after-successful-completion type slash beg))
5924 t) 6221 t)
5925 ((or (eq completion t) 6222 ((or (eq completion t)
5926 (and (equal dpart dcompletion) 6223 (and (= 1 (length (setq all-completions
5927 (= 1 (length (setq all-completions
5928 (idlwave-uniquify 6224 (idlwave-uniquify
5929 (all-completions part list selector))))))) 6225 (all-completions part list
6226 (or special-selector
6227 selector))))))
6228 (equal dpart dcompletion)))
5930 ;; This is already complete 6229 ;; This is already complete
5931 (idlwave-after-successful-completion type slash beg) 6230 (idlwave-after-successful-completion type slash beg)
5932 (message "%s is already the complete %s" part isa) 6231 (message "%s is already the complete %s" part isa)
5933 nil) 6232 nil)
5934 (t 6233 (t
5935 ;; We cannot add something - offer a list. 6234 ;; We cannot add something - offer a list.
5936 (message "Making completion list...") 6235 (message "Making completion list...")
6236
6237 (unless idlwave-completion-help-links ; already set somewhere?
6238 (mapcar (lambda (x) ; Pass link prop through to highlight-linked
6239 (let ((link (get-text-property 0 'link (car x))))
6240 (if link
6241 (push (cons (car x) link)
6242 idlwave-completion-help-links))))
6243 list))
5937 (let* ((list all-completions) 6244 (let* ((list all-completions)
5938 ;; "complete" means, this is already a valid completion 6245 ;; "complete" means, this is already a valid completion
5939 (complete (memq spart all-completions)) 6246 (complete (memq spart all-completions))
5940 (completion-highlight-first-word-only t) ; XEmacs 6247 (completion-highlight-first-word-only t)) ; XEmacs
5941 (completion-fixup-function ; Emacs 6248; (completion-fixup-function ; Emacs
5942 (lambda () (and (eq (preceding-char) ?>) 6249; (lambda () (and (eq (preceding-char) ?>)
5943 (re-search-backward " <" beg t))))) 6250; (re-search-backward " <" beg t)))))
6251
5944 (setq list (sort list (lambda (a b) 6252 (setq list (sort list (lambda (a b)
5945 (string< (downcase a) (downcase b))))) 6253 (string< (downcase a) (downcase b)))))
5946 (if prepare-display-function 6254 (if prepare-display-function
@@ -5950,7 +6258,7 @@ PROMPT in echo area. TYPE is one of 'function, 'procedure,
5950 idlwave-complete-empty-string-as-lower-case) 6258 idlwave-complete-empty-string-as-lower-case)
5951 (not idlwave-completion-force-default-case)) 6259 (not idlwave-completion-force-default-case))
5952 (setq list (mapcar (lambda (x) 6260 (setq list (mapcar (lambda (x)
5953 (if (listp x) 6261 (if (listp x)
5954 (setcar x (downcase (car x))) 6262 (setcar x (downcase (car x)))
5955 (setq x (downcase x))) 6263 (setq x (downcase x)))
5956 x) 6264 x)
@@ -5970,13 +6278,22 @@ PROMPT in echo area. TYPE is one of 'function, 'procedure,
5970 (re-search-backward "\\<\\(pro\\|function\\)[ \t]+\\=" 6278 (re-search-backward "\\<\\(pro\\|function\\)[ \t]+\\="
5971 (- (point) 15) t) 6279 (- (point) 15) t)
5972 (goto-char (point-min)) 6280 (goto-char (point-min))
5973 (re-search-forward 6281 (re-search-forward
5974 "^[ \t]*\\(pro\\|function\\)[ \t]+\\([a-zA-Z0-9_]+::\\)" nil t)))) 6282 "^[ \t]*\\(pro\\|function\\)[ \t]+\\([a-zA-Z0-9_]+::\\)" nil t))))
5975 ;; Yank the full class specification 6283 ;; Yank the full class specification
5976 (insert (match-string 2)) 6284 (insert (match-string 2))
5977 ;; Do the completion 6285 ;; Do the completion, using list gathered from `idlwave-routines'
5978 (idlwave-complete-in-buffer 'class 'class (idlwave-class-alist) nil 6286 (idlwave-complete-in-buffer
5979 "Select a class" "class"))) 6287 'class 'class (idlwave-class-alist) nil
6288 "Select a class" "class"
6289 '(lambda (list) ;; Push it to help-links if system help available
6290 (mapcar (lambda (x)
6291 (let* ((entry (idlwave-class-info x))
6292 (link (nth 1 (assq 'link entry))))
6293 (if link (push (cons x link)
6294 idlwave-completion-help-links))
6295 x))
6296 list)))))
5980 6297
5981(defun idlwave-attach-classes (list type show-classes) 6298(defun idlwave-attach-classes (list type show-classes)
5982 ;; Attach the proper class list to a LIST of completion items. 6299 ;; Attach the proper class list to a LIST of completion items.
@@ -5985,7 +6302,7 @@ PROMPT in echo area. TYPE is one of 'function, 'procedure,
5985 ;; SHOW-CLASSES is the value of `idlwave-completion-show-classes'. 6302 ;; SHOW-CLASSES is the value of `idlwave-completion-show-classes'.
5986 (if (or (null show-classes) ; don't want to see classes 6303 (if (or (null show-classes) ; don't want to see classes
5987 (null class-selector) ; not a method call 6304 (null class-selector) ; not a method call
5988 (and 6305 (and
5989 (stringp class-selector) ; the class is already known 6306 (stringp class-selector) ; the class is already known
5990 (not super-classes))) ; no possibilities for inheritance 6307 (not super-classes))) ; no possibilities for inheritance
5991 ;; In these cases, we do not have to do anything 6308 ;; In these cases, we do not have to do anything
@@ -6000,22 +6317,22 @@ PROMPT in echo area. TYPE is one of 'function, 'procedure,
6000 (max (abs show-classes)) 6317 (max (abs show-classes))
6001 (lmax (if do-dots (apply 'max (mapcar 'length list)))) 6318 (lmax (if do-dots (apply 'max (mapcar 'length list))))
6002 classes nclasses class-info space) 6319 classes nclasses class-info space)
6003 (mapcar 6320 (mapcar
6004 (lambda (x) 6321 (lambda (x)
6005 ;; get the classes 6322 ;; get the classes
6006 (if (eq type 'class-tag) 6323 (if (eq type 'class-tag)
6007 ;; Just one class for tags 6324 ;; Just one class for tags
6008 (setq classes 6325 (setq classes
6009 (list 6326 (list
6010 (idlwave-class-or-superclass-with-tag class-selector x))) 6327 (idlwave-class-or-superclass-with-tag class-selector x)))
6011 ;; Multiple classes for method of method-keyword 6328 ;; Multiple classes for method or method-keyword
6012 (setq classes 6329 (setq classes
6013 (if (eq type 'kwd) 6330 (if (eq type 'kwd)
6014 (idlwave-all-method-keyword-classes 6331 (idlwave-all-method-keyword-classes
6015 method-selector x type-selector) 6332 method-selector x type-selector)
6016 (idlwave-all-method-classes x type-selector))) 6333 (idlwave-all-method-classes x type-selector)))
6017 (if inherit 6334 (if inherit
6018 (setq classes 6335 (setq classes
6019 (delq nil 6336 (delq nil
6020 (mapcar (lambda (x) (if (memq x inherit) x nil)) 6337 (mapcar (lambda (x) (if (memq x inherit) x nil))
6021 classes))))) 6338 classes)))))
@@ -6036,8 +6353,8 @@ PROMPT in echo area. TYPE is one of 'function, 'procedure,
6036 ;; We do want properties 6353 ;; We do want properties
6037 (setq x (copy-sequence x)) 6354 (setq x (copy-sequence x))
6038 (put-text-property 0 (length x) 6355 (put-text-property 0 (length x)
6039 'help-echo (mapconcat 'identity classes " ") 6356 'help-echo (mapconcat 'identity classes " ")
6040 x)) 6357 x))
6041 (if class-info 6358 (if class-info
6042 (list x class-info) 6359 (list x class-info)
6043 x)) 6360 x))
@@ -6052,7 +6369,7 @@ PROMPT in echo area. TYPE is one of 'function, 'procedure,
6052(defun idlwave-attach-class-tag-classes (list) 6369(defun idlwave-attach-class-tag-classes (list)
6053 ;; Call idlwave-attach-classes with class structure tags 6370 ;; Call idlwave-attach-classes with class structure tags
6054 (idlwave-attach-classes list 'class-tag idlwave-completion-show-classes)) 6371 (idlwave-attach-classes list 'class-tag idlwave-completion-show-classes))
6055 6372
6056 6373
6057;;---------------------------------------------------------------------- 6374;;----------------------------------------------------------------------
6058;;---------------------------------------------------------------------- 6375;;----------------------------------------------------------------------
@@ -6073,7 +6390,7 @@ sort the list before displaying"
6073 ((= 1 (length list)) 6390 ((= 1 (length list))
6074 (setq rtn (car list))) 6391 (setq rtn (car list)))
6075 ((featurep 'xemacs) 6392 ((featurep 'xemacs)
6076 (if sort (setq list (sort list (lambda (a b) 6393 (if sort (setq list (sort list (lambda (a b)
6077 (string< (upcase a) (upcase b)))))) 6394 (string< (upcase a) (upcase b))))))
6078 (setq menu 6395 (setq menu
6079 (append (list title) 6396 (append (list title)
@@ -6084,7 +6401,7 @@ sort the list before displaying"
6084 (setq resp (get-popup-menu-response menu)) 6401 (setq resp (get-popup-menu-response menu))
6085 (funcall (event-function resp) (event-object resp))) 6402 (funcall (event-function resp) (event-object resp)))
6086 (t 6403 (t
6087 (if sort (setq list (sort list (lambda (a b) 6404 (if sort (setq list (sort list (lambda (a b)
6088 (string< (upcase a) (upcase b)))))) 6405 (string< (upcase a) (upcase b))))))
6089 (setq menu (cons title 6406 (setq menu (cons title
6090 (list 6407 (list
@@ -6175,7 +6492,7 @@ sort the list before displaying"
6175 (setq idlwave-before-completion-wconf (current-window-configuration))) 6492 (setq idlwave-before-completion-wconf (current-window-configuration)))
6176 6493
6177 (if (featurep 'xemacs) 6494 (if (featurep 'xemacs)
6178 (idlwave-display-completion-list-xemacs 6495 (idlwave-display-completion-list-xemacs
6179 list) 6496 list)
6180 (idlwave-display-completion-list-emacs list)) 6497 (idlwave-display-completion-list-emacs list))
6181 6498
@@ -6204,7 +6521,7 @@ sort the list before displaying"
6204 (if (and (eq major-mode 'idlwave-shell-mode) 6521 (if (and (eq major-mode 'idlwave-shell-mode)
6205 (boundp 'font-lock-mode) 6522 (boundp 'font-lock-mode)
6206 (not font-lock-mode)) 6523 (not font-lock-mode))
6207 ;; Remove the fontification of the word before point 6524 ;; For the shell, remove the fontification of the word before point
6208 (let ((beg (save-excursion 6525 (let ((beg (save-excursion
6209 (skip-chars-backward "a-zA-Z0-9_") 6526 (skip-chars-backward "a-zA-Z0-9_")
6210 (point)))) 6527 (point))))
@@ -6224,6 +6541,94 @@ sort the list before displaying"
6224 idlwave-before-completion-wconf 6541 idlwave-before-completion-wconf
6225 (set-window-configuration idlwave-before-completion-wconf))) 6542 (set-window-configuration idlwave-before-completion-wconf)))
6226 6543
6544(defun idlwave-one-key-select (sym prompt delay)
6545 "Make the user select an element from the alist in the variable SYM.
6546The keys of the alist are expected to be strings. The function returns the
6547car of the selected association.
6548To do this, PROMPT is displayed and and the user must hit a letter key to
6549select an entry. If the user does not reply within DELAY seconds, a help
6550window with the options is displayed automatically.
6551The key which is associated with each option is generated automatically.
6552First, the strings are checked for preselected keys, like in \"[P]rint\".
6553If these don't exist, a letter in the string is automatically selected."
6554 (let* ((alist (symbol-value sym))
6555 (temp-buffer-show-hook (if (fboundp 'fit-window-to-buffer)
6556 '(fit-window-to-buffer)))
6557 keys-alist char)
6558 ;; First check the cache
6559 (if (and (eq (symbol-value sym) (get sym :one-key-alist-last)))
6560 (setq keys-alist (get sym :one-key-alist-cache))
6561 ;; Need to make new list
6562 (setq keys-alist (idlwave-make-one-key-alist alist))
6563 (put sym :one-key-alist-cache keys-alist)
6564 (put sym :one-key-alist-last alist))
6565 ;; Display prompt and wait for quick reply
6566 (message "%s[%s]" prompt
6567 (mapconcat (lambda(x) (char-to-string (car x)))
6568 keys-alist ""))
6569 (if (sit-for delay)
6570 ;; No quick reply: Show help
6571 (save-window-excursion
6572 (with-output-to-temp-buffer "*Completions*"
6573 (mapcar (lambda(x)
6574 (princ (nth 1 x))
6575 (princ "\n"))
6576 keys-alist))
6577 (setq char (read-char)))
6578 (setq char (read-char)))
6579 (message nil)
6580 ;; Return the selected result
6581 (nth 2 (assoc char keys-alist))))
6582
6583;; Used for, e.g., electric debug super-examine.
6584(defun idlwave-make-one-key-alist (alist)
6585 "Make an alist for single key selection."
6586 (let ((l alist) keys-alist name start char help
6587 (cnt 0)
6588 (case-fold-search nil))
6589 (while l
6590 (setq name (car (car l))
6591 l (cdr l))
6592 (catch 'exit
6593 ;; First check if the configuration predetermined a key
6594 (if (string-match "\\[\\(.\\)\\]" name)
6595 (progn
6596 (setq char (string-to-char (downcase (match-string 1 name)))
6597 help (format "%c: %s" char name)
6598 keys-alist (cons (list char help name) keys-alist))
6599 (throw 'exit t)))
6600 ;; Then check for capital letters
6601 (setq start 0)
6602 (while (string-match "[A-Z]" name start)
6603 (setq start (match-end 0)
6604 char (string-to-char (downcase (match-string 0 name))))
6605 (if (not (assoc char keys-alist))
6606 (progn
6607 (setq help (format "%c: %s" char
6608 (replace-match
6609 (concat "[" (match-string 0 name) "]")
6610 t t name))
6611 keys-alist (cons (list char help name) keys-alist))
6612 (throw 'exit t))))
6613 ;; Now check for lowercase letters
6614 (setq start 0)
6615 (while (string-match "[a-z]" name start)
6616 (setq start (match-end 0)
6617 char (string-to-char (match-string 0 name)))
6618 (if (not (assoc char keys-alist))
6619 (progn
6620 (setq help (format "%c: %s" char
6621 (replace-match
6622 (concat "[" (match-string 0 name) "]")
6623 t t name))
6624 keys-alist (cons (list char help name) keys-alist))
6625 (throw 'exit t))))
6626 ;; Bummer, nothing found! Use a stupid number
6627 (setq char (string-to-char (int-to-string (setq cnt (1+ cnt))))
6628 help (format "%c: %s" char name)
6629 keys-alist (cons (list char help name) keys-alist))))
6630 (nreverse keys-alist)))
6631
6227(defun idlwave-set-local (var value &optional buffer) 6632(defun idlwave-set-local (var value &optional buffer)
6228 "Set the buffer-local value of VAR in BUFFER to VALUE." 6633 "Set the buffer-local value of VAR in BUFFER to VALUE."
6229 (save-excursion 6634 (save-excursion
@@ -6288,7 +6693,7 @@ sort the list before displaying"
6288(defun idlwave-make-modified-completion-map-emacs (old-map) 6693(defun idlwave-make-modified-completion-map-emacs (old-map)
6289 "Replace `choose-completion' and `mouse-choose-completion' in OLD-MAP." 6694 "Replace `choose-completion' and `mouse-choose-completion' in OLD-MAP."
6290 (let ((new-map (copy-keymap old-map))) 6695 (let ((new-map (copy-keymap old-map)))
6291 (substitute-key-definition 6696 (substitute-key-definition
6292 'choose-completion 'idlwave-choose-completion new-map) 6697 'choose-completion 'idlwave-choose-completion new-map)
6293 (substitute-key-definition 6698 (substitute-key-definition
6294 'mouse-choose-completion 'idlwave-mouse-choose-completion new-map) 6699 'mouse-choose-completion 'idlwave-mouse-choose-completion new-map)
@@ -6309,13 +6714,25 @@ sort the list before displaying"
6309;;---------------------------------------------------------------------- 6714;;----------------------------------------------------------------------
6310 6715
6311;;; ------------------------------------------------------------------------ 6716;;; ------------------------------------------------------------------------
6312;;; Sturucture parsing code, and code to manage class info 6717;;; Stucture parsing code, and code to manage class info
6313 6718
6314;; 6719;;
6315;; - Go again over the documentation how to write a completion 6720;; - Go again over the documentation how to write a completion
6316;; plugin. It is in self.el, but currently still very bad. 6721;; plugin. It is in self.el, but currently still very bad.
6317;; This could be in a separate file in the distribution, or 6722;; This could be in a separate file in the distribution, or
6318;; in an appendix for the manual. 6723;; in an appendix for the manual.
6724
6725(defvar idlwave-struct-skip
6726 "[ \t]*\\(\\$.*\n\\(^[ \t]*\\(\\$[ \t]*\\)?\\(;.*\\)?\n\\)*\\)?[ \t]*"
6727 "Regexp for skipping continued blank or comment-only lines in
6728structures")
6729
6730(defvar idlwave-struct-tag-regexp
6731 (concat "[{,]" ;leading comma/brace
6732 idlwave-struct-skip ; 4 groups
6733 "\\([a-zA-Z][a-zA-Z0-9_]*\\)" ;the tag itself, group 5
6734 "[ \t]*:") ; the final colon
6735 "Regexp for structure tags.")
6319 6736
6320(defun idlwave-struct-tags () 6737(defun idlwave-struct-tags ()
6321 "Return a list of all tags in the structure defined at point. 6738 "Return a list of all tags in the structure defined at point.
@@ -6326,13 +6743,15 @@ Point is expected just before the opening `{' of the struct definition."
6326 (end (cdr borders)) 6743 (end (cdr borders))
6327 tags) 6744 tags)
6328 (goto-char beg) 6745 (goto-char beg)
6329 (while (re-search-forward "[{,][ \t]*\\(\\$.*\n\\(^[ \t]*\\(\\$[ \t]*\\)?\\(;.*\\)?\n\\)*[ \t]*\\)?\\([a-zA-Z][a-zA-Z0-9_]*\\)[ \t]*:" end t) 6746 (save-restriction
6330 ;; Check if we are still on the top level of the structure. 6747 (narrow-to-region beg end)
6331 (if (and (condition-case nil (progn (up-list -1) t) (error nil)) 6748 (while (re-search-forward idlwave-struct-tag-regexp end t)
6332 (= (point) beg)) 6749 ;; Check if we are still on the top level of the structure.
6333 (push (match-string 5) tags)) 6750 (if (and (condition-case nil (progn (up-list -1) t) (error nil))
6334 (goto-char (match-end 0))) 6751 (= (point) beg))
6335 (nreverse tags)))) 6752 (push (match-string-no-properties 5) tags))
6753 (goto-char (match-end 0))))
6754 (nreverse tags))))
6336 6755
6337(defun idlwave-find-struct-tag (tag) 6756(defun idlwave-find-struct-tag (tag)
6338 "Find a given TAG in the structure defined at point." 6757 "Find a given TAG in the structure defined at point."
@@ -6340,7 +6759,7 @@ Point is expected just before the opening `{' of the struct definition."
6340 (beg (car borders)) 6759 (beg (car borders))
6341 (end (cdr borders)) 6760 (end (cdr borders))
6342 (case-fold-search t)) 6761 (case-fold-search t))
6343 (re-search-forward (concat "\\(^[ \t]*\\|[,{][ \t]*\\)" tag "[ \t]*:") 6762 (re-search-forward (concat "\\(^[ \t]*\\|[,{][ \t]*\\)" tag "[ \t]*:")
6344 end t))) 6763 end t)))
6345 6764
6346(defun idlwave-struct-inherits () 6765(defun idlwave-struct-inherits ()
@@ -6353,16 +6772,24 @@ Point is expected just before the opening `{' of the struct definition."
6353 (case-fold-search t) 6772 (case-fold-search t)
6354 names) 6773 names)
6355 (goto-char beg) 6774 (goto-char beg)
6356 (while (re-search-forward "[{,][ \t]*\\(\\$.*\n[ \t]*\\)?inherits[ \t]*\\(\\$.*\n[ \t]*\\)?\\([a-zA-Z][a-zA-Z0-9_]*\\)" end t) 6775 (save-restriction
6357 ;; Check if we are still on the top level of the structure. 6776 (narrow-to-region beg end)
6358 (if (and (condition-case nil (progn (up-list -1) t) (error nil)) 6777 (while (re-search-forward
6359 (= (point) beg)) 6778 (concat "[{,]" ;leading comma/brace
6360 (push (match-string 3) names)) 6779 idlwave-struct-skip ; 4 groups
6361 (goto-char (match-end 0))) 6780 "inherits" ; The INHERITS tag
6781 idlwave-struct-skip ; 4 more
6782 "\\([a-zA-Z][a-zA-Z0-9_]*\\)") ; The super-group, #9
6783 end t)
6784 ;; Check if we are still on the top level of the structure.
6785 (if (and (condition-case nil (progn (up-list -1) t) (error nil))
6786 (= (point) beg))
6787 (push (match-string-no-properties 9) names))
6788 (goto-char (match-end 0))))
6362 (nreverse names)))) 6789 (nreverse names))))
6363 6790
6364(defun idlwave-in-structure () 6791(defun idlwave-in-structure ()
6365 "Return t if point is inside an IDL structure." 6792 "Return t if point is inside an IDL structure definition."
6366 (let ((beg (point))) 6793 (let ((beg (point)))
6367 (save-excursion 6794 (save-excursion
6368 (if (not (or (idlwave-in-comment) (idlwave-in-quote))) 6795 (if (not (or (idlwave-in-comment) (idlwave-in-quote)))
@@ -6382,12 +6809,13 @@ Point is expected just before the opening `{' of the struct definition."
6382 (cons beg (point))))) 6809 (cons beg (point)))))
6383 6810
6384(defun idlwave-find-structure-definition (&optional var name bound) 6811(defun idlwave-find-structure-definition (&optional var name bound)
6385 "Search forward for a structure definition. 6812 "Search forward for a structure definition. If VAR is non-nil,
6386If VAR is non-nil, search for a structure assigned to variable VAR. 6813search for a structure assigned to variable VAR. If NAME is non-nil,
6387If NAME is non-nil, search for a named structure NAME. If BOUND is an 6814search for a named structure NAME, if a string, or a generic named
6388integer, limit the search. If BOUND is the symbol `all', we search 6815structure otherwise. If BOUND is an integer, limit the search. If
6389first back and then forward through the entire file. If BOUND is the 6816BOUND is the symbol `all', we search first back and then forward
6390symbol `back' we search only backward." 6817through the entire file. If BOUND is the symbol `back' we search only
6818backward."
6391 (let* ((ws "[ \t]*\\(\\$.*\n[ \t]*\\)*") 6819 (let* ((ws "[ \t]*\\(\\$.*\n[ \t]*\\)*")
6392 (case-fold-search t) 6820 (case-fold-search t)
6393 (lim (if (integerp bound) bound nil)) 6821 (lim (if (integerp bound) bound nil))
@@ -6396,36 +6824,53 @@ symbol `back' we search only backward."
6396 (concat "\\<" (regexp-quote (downcase var)) "\\>" ws) 6824 (concat "\\<" (regexp-quote (downcase var)) "\\>" ws)
6397 "\\(\\)") 6825 "\\(\\)")
6398 "=" ws "\\({\\)" 6826 "=" ws "\\({\\)"
6399 (if name (concat ws "\\<" (downcase name) "[^a-zA-Z0-9_$]") "")))) 6827 (if name
6828 (if (stringp name)
6829 (concat ws "\\(\\<" (downcase name) "\\)[^a-zA-Z0-9_$]")
6830 ;; Just a generic name
6831 (concat ws "\\<\\([a-zA-Z_0-9$]+\\)" ws ","))
6832 ""))))
6400 (if (or (and (or (eq bound 'all) (eq bound 'back)) 6833 (if (or (and (or (eq bound 'all) (eq bound 'back))
6401 (re-search-backward re nil t)) 6834 (re-search-backward re nil t))
6402 (and (not (eq bound 'back)) (re-search-forward re lim t))) 6835 (and (not (eq bound 'back)) (re-search-forward re lim t)))
6403 (goto-char (match-beginning 3))))) 6836 (progn
6837 (goto-char (match-beginning 3))
6838 (match-string-no-properties 5)))))
6839
6840(defvar idlwave-class-info nil)
6841(defvar idlwave-system-class-info nil) ; Gathered from idlw-rinfo
6842(defvar idlwave-class-reset nil) ; to reset buffer-local classes
6404 6843
6405(defvar idlwave-class-info nil)
6406(defvar idlwave-system-class-info nil)
6407(add-hook 'idlwave-update-rinfo-hook 6844(add-hook 'idlwave-update-rinfo-hook
6408 (lambda () (setq idlwave-class-info nil))) 6845 (lambda () (setq idlwave-class-reset t)))
6409(add-hook 'idlwave-after-load-rinfo-hook 6846(add-hook 'idlwave-after-load-rinfo-hook
6410 (lambda () (setq idlwave-class-info nil))) 6847 (lambda () (setq idlwave-class-info nil)))
6411 6848
6412(defun idlwave-class-info (class) 6849(defun idlwave-class-info (class)
6413 (let (list entry) 6850 (let (list entry)
6414 (unless idlwave-class-info 6851 (if idlwave-class-info
6415 ;; Info is nil, put in the system stuff. 6852 (if idlwave-class-reset
6853 (setq
6854 idlwave-class-reset nil
6855 idlwave-class-info ; Remove any visited in a buffer
6856 (delq nil (mapcar
6857 (lambda (x)
6858 (let ((filebuf
6859 (idlwave-class-file-or-buffer
6860 (or (cdr (assq 'found-in x)) (car x)))))
6861 (if (cdr filebuf)
6862 nil
6863 x)))
6864 idlwave-class-info))))
6865 ;; Info is nil, put in the system stuff to start.
6416 (setq idlwave-class-info idlwave-system-class-info) 6866 (setq idlwave-class-info idlwave-system-class-info)
6417 (setq list idlwave-class-info) 6867 (setq list idlwave-class-info)
6418 (while (setq entry (pop list)) 6868 (while (setq entry (pop list))
6419 (idlwave-sintern-class-info entry))) 6869 (idlwave-sintern-class-info entry)))
6420 (setq class (idlwave-sintern-class class)) 6870 (setq class (idlwave-sintern-class class))
6421 (setq entry (assq class idlwave-class-info)) 6871 (or (assq class idlwave-class-info)
6422 (unless entry 6872 (progn (idlwave-scan-class-info class)
6423 (setq entry (idlwave-find-class-info class)) 6873 (assq class idlwave-class-info)))))
6424 (when entry
6425 ;; Sintern and cache the info
6426 (idlwave-sintern-class-info entry)
6427 (push entry idlwave-class-info)))
6428 entry))
6429 6874
6430(defun idlwave-sintern-class-info (entry) 6875(defun idlwave-sintern-class-info (entry)
6431 "Sintern the class names in a class-info entry." 6876 "Sintern the class names in a class-info entry."
@@ -6436,28 +6881,50 @@ symbol `back' we search only backward."
6436 (setcdr inherits (mapcar (lambda (x) (idlwave-sintern-class x 'set)) 6881 (setcdr inherits (mapcar (lambda (x) (idlwave-sintern-class x 'set))
6437 (cdr inherits)))))) 6882 (cdr inherits))))))
6438 6883
6439(defun idlwave-find-class-definition (class) 6884(defun idlwave-find-class-definition (class &optional all-hook alt-class)
6440 (let ((case-fold-search t)) 6885 "Find class structure definition(s)
6441 (if (re-search-forward 6886If ALL-HOOK is set, find all named structure definitions in a given
6442 (concat "^[ \t]*pro[ \t]+" (downcase class) "__define" "\\>") nil t) 6887class__define routine, on which ALL-HOOK will be run. If ALT-CLASS is
6443 ;; FIXME: should we limit to end of pro here? 6888set, look for the name__define pro, and inside of it, for the ALT-CLASS
6444 (idlwave-find-structure-definition nil class)))) 6889class/struct definition"
6890 (let ((case-fold-search t) end-lim list name)
6891 (when (re-search-forward
6892 (concat "^[ \t]*pro[ \t]+" (downcase class) "__define" "\\>") nil t)
6893 (if all-hook
6894 (progn
6895 ;; For everything there
6896 (setq end-lim (save-excursion (idlwave-end-of-subprogram) (point)))
6897 (while (setq name
6898 (idlwave-find-structure-definition nil t end-lim))
6899 (funcall all-hook name)))
6900 (idlwave-find-structure-definition nil (or alt-class class))))))
6445 6901
6446(defun idlwave-find-class-info (class) 6902
6447 "Find the __define procedure for a class structure and return info entry." 6903(defun idlwave-class-file-or-buffer (class)
6904 "Find buffer visiting CLASS definition"
6448 (let* ((pro (concat (downcase class) "__define")) 6905 (let* ((pro (concat (downcase class) "__define"))
6449 (class (idlwave-sintern-class class)) 6906 (file (idlwave-routine-source-file
6450 (idlwave-auto-routine-info-updates nil) 6907 (nth 3 (idlwave-rinfo-assoc pro 'pro nil
6451 (file (cdr (nth 3 (idlwave-rinfo-assoc pro 'pro nil 6908 (idlwave-routines))))))
6452 (idlwave-routines))))) 6909 (cons file (if file (idlwave-get-buffer-visiting file)))))
6453 buf) 6910
6454 (if (or (not file) 6911
6455 (not (file-regular-p 6912(defun idlwave-scan-class-info (class)
6456 (setq file (idlwave-expand-lib-file-name file))))) 6913 "Scan all class and named structure info in the class__define pro"
6457 nil ; Cannot get info 6914 (let* ((idlwave-auto-routine-info-updates nil)
6915 (filebuf (idlwave-class-file-or-buffer class))
6916 (file (car filebuf))
6917 (buf (cdr filebuf))
6918 (class (idlwave-sintern-class class)))
6919 (if (or
6920 (not file)
6921 (and ;; neither a regular file nor a visited buffer
6922 (not buf)
6923 (not (file-regular-p file))))
6924 nil ; Cannot find the file/buffer to get any info
6458 (save-excursion 6925 (save-excursion
6459 (if (setq buf (idlwave-get-buffer-visiting file)) 6926 (if buf (set-buffer buf)
6460 (set-buffer buf) 6927 ;; Read the file in temporarily
6461 (set-buffer (get-buffer-create " *IDLWAVE-tmp*")) 6928 (set-buffer (get-buffer-create " *IDLWAVE-tmp*"))
6462 (erase-buffer) 6929 (erase-buffer)
6463 (unless (eq major-mode 'idlwave-mode) 6930 (unless (eq major-mode 'idlwave-mode)
@@ -6465,11 +6932,22 @@ symbol `back' we search only backward."
6465 (insert-file-contents file)) 6932 (insert-file-contents file))
6466 (save-excursion 6933 (save-excursion
6467 (goto-char 1) 6934 (goto-char 1)
6468 (if (idlwave-find-class-definition class) 6935 (idlwave-find-class-definition class
6469 (list class 6936 ;; Scan all of the structures found there
6470 (cons 'tags (idlwave-struct-tags)) 6937 (lambda (name)
6471 (cons 'inherits (idlwave-struct-inherits))))))))) 6938 (let* ((this-class (idlwave-sintern-class name))
6472 6939 (entry
6940 (list this-class
6941 (cons 'tags (idlwave-struct-tags))
6942 (cons 'inherits (idlwave-struct-inherits)))))
6943 (if (not (eq this-class class))
6944 (setq entry (nconc entry (list (cons 'found-in class)))))
6945 (idlwave-sintern-class-info entry)
6946 (push entry idlwave-class-info)))))))))
6947
6948(defun idlwave-class-found-in (class)
6949 "Return the FOUND-IN property of the class."
6950 (cdr (assq 'found-in (idlwave-class-info class))))
6473(defun idlwave-class-tags (class) 6951(defun idlwave-class-tags (class)
6474 "Return the native tags in CLASS." 6952 "Return the native tags in CLASS."
6475 (cdr (assq 'tags (idlwave-class-info class)))) 6953 (cdr (assq 'tags (idlwave-class-info class))))
@@ -6477,12 +6955,13 @@ symbol `back' we search only backward."
6477 "Return the direct superclasses of CLASS." 6955 "Return the direct superclasses of CLASS."
6478 (cdr (assq 'inherits (idlwave-class-info class)))) 6956 (cdr (assq 'inherits (idlwave-class-info class))))
6479 6957
6958
6480(defun idlwave-all-class-tags (class) 6959(defun idlwave-all-class-tags (class)
6481 "Return a list of native and inherited tags in CLASS." 6960 "Return a list of native and inherited tags in CLASS."
6482 (condition-case err 6961 (condition-case err
6483 (apply 'append (mapcar 'idlwave-class-tags 6962 (apply 'append (mapcar 'idlwave-class-tags
6484 (cons class (idlwave-all-class-inherits class)))) 6963 (cons class (idlwave-all-class-inherits class))))
6485 (error 6964 (error
6486 (idlwave-class-tag-reset) 6965 (idlwave-class-tag-reset)
6487 (error "%s" (error-message-string err))))) 6966 (error "%s" (error-message-string err)))))
6488 6967
@@ -6518,6 +6997,49 @@ The list is cached in `idlwave-class-info' for faster access."
6518 (nconc info (list (cons 'all-inherits all-inherits))) 6997 (nconc info (list (cons 'all-inherits all-inherits)))
6519 all-inherits)))))) 6998 all-inherits))))))
6520 6999
7000(defun idlwave-entry-keywords (entry &optional record-link)
7001 "Return the flat entry keywords alist from routine-info entry.
7002If RECORD-LINK is non-nil, the keyword text is copied and a text
7003property indicating the link is added."
7004 (let (kwds)
7005 (mapcar
7006 (lambda (key-list)
7007 (let ((file (car key-list)))
7008 (mapcar (lambda (key-cons)
7009 (let ((key (car key-cons))
7010 (link (cdr key-cons)))
7011 (when (and record-link file)
7012 (setq key (copy-sequence key))
7013 (put-text-property
7014 0 (length key)
7015 'link
7016 (concat
7017 file
7018 (if link
7019 (concat idlwave-html-link-sep
7020 (number-to-string link))))
7021 key))
7022 (push (list key) kwds)))
7023 (cdr key-list))))
7024 (nthcdr 5 entry))
7025 (nreverse kwds)))
7026
7027(defun idlwave-entry-find-keyword (entry keyword)
7028 "Find keyword KEYWORD in entry ENTRY, and return (with link) if set"
7029 (catch 'exit
7030 (mapc
7031 (lambda (key-list)
7032 (let ((file (car key-list))
7033 (kwd (assoc keyword (cdr key-list))))
7034 (when kwd
7035 (setq kwd (cons (car kwd)
7036 (if (and file (cdr kwd))
7037 (concat file
7038 idlwave-html-link-sep
7039 (number-to-string (cdr kwd)))
7040 (cdr kwd))))
7041 (throw 'exit kwd))))
7042 (nthcdr 5 entry))))
6521 7043
6522;;========================================================================== 7044;;==========================================================================
6523;; 7045;;
@@ -6539,7 +7061,7 @@ The list is cached in `idlwave-class-info' for faster access."
6539 (case-fold-search t)) 7061 (case-fold-search t))
6540 (if (save-excursion 7062 (if (save-excursion
6541 ;; Check if the context is right 7063 ;; Check if the context is right
6542 (skip-chars-backward "[a-zA-Z0-9._$]") 7064 (skip-chars-backward "a-zA-Z0-9._$")
6543 (and (< (point) (- pos 4)) 7065 (and (< (point) (- pos 4))
6544 (looking-at "self\\."))) 7066 (looking-at "self\\.")))
6545 (let* ((class-selector (nth 2 (idlwave-current-routine))) 7067 (let* ((class-selector (nth 2 (idlwave-current-routine)))
@@ -6550,14 +7072,14 @@ The list is cached in `idlwave-class-info' for faster access."
6550 ;; Check if we need to update the "current" class 7072 ;; Check if we need to update the "current" class
6551 (if (not (equal class-selector idlwave-current-tags-class)) 7073 (if (not (equal class-selector idlwave-current-tags-class))
6552 (idlwave-prepare-class-tag-completion class-selector)) 7074 (idlwave-prepare-class-tag-completion class-selector))
6553 (setq idlwave-completion-help-info 7075 (setq idlwave-completion-help-info
6554 (list 'idlwave-complete-class-structure-tag-help 7076 (list 'idlwave-complete-class-structure-tag-help
6555 (idlwave-sintern-routine 7077 (idlwave-sintern-routine
6556 (concat class-selector "__define")) 7078 (concat class-selector "__define"))
6557 nil)) 7079 nil))
6558 (let ((idlwave-cpl-bold idlwave-current-native-class-tags)) 7080 (let ((idlwave-cpl-bold idlwave-current-native-class-tags))
6559 (idlwave-complete-in-buffer 7081 (idlwave-complete-in-buffer
6560 'class-tag 'class-tag 7082 'class-tag 'class-tag
6561 idlwave-current-class-tags nil 7083 idlwave-current-class-tags nil
6562 (format "Select a tag of class %s" class-selector) 7084 (format "Select a tag of class %s" class-selector)
6563 "class tag" 7085 "class tag"
@@ -6582,9 +7104,7 @@ The list is cached in `idlwave-class-info' for faster access."
6582;=========================================================================== 7104;===========================================================================
6583;; 7105;;
6584;; Completing system variables and their structure fields 7106;; Completing system variables and their structure fields
6585;; This is also a plugin. It is a bit bigger since we support loading 7107;; This is also a plugin.
6586;; current system variables from the shell and highlighting in the
6587;; completions buffer.
6588 7108
6589(defvar idlwave-sint-sysvars nil) 7109(defvar idlwave-sint-sysvars nil)
6590(defvar idlwave-sint-sysvartags nil) 7110(defvar idlwave-sint-sysvartags nil)
@@ -6592,13 +7112,14 @@ The list is cached in `idlwave-class-info' for faster access."
6592(idlwave-new-sintern-type 'sysvartag) 7112(idlwave-new-sintern-type 'sysvartag)
6593(add-to-list 'idlwave-complete-special 'idlwave-complete-sysvar-or-tag) 7113(add-to-list 'idlwave-complete-special 'idlwave-complete-sysvar-or-tag)
6594(add-hook 'idlwave-update-rinfo-hook 'idlwave-sysvars-reset) 7114(add-hook 'idlwave-update-rinfo-hook 'idlwave-sysvars-reset)
6595(add-hook 'idlwave-after-load-rinfo-hook 'idlwave-remember-builtin-sysvars)
6596(add-hook 'idlwave-after-load-rinfo-hook 'idlwave-sintern-sysvar-alist) 7115(add-hook 'idlwave-after-load-rinfo-hook 'idlwave-sintern-sysvar-alist)
6597 7116
7117(defvar idlwave-executive-commands-alist nil
7118 "Alist of system variables and their help files.")
7119
6598(defvar idlwave-system-variables-alist nil 7120(defvar idlwave-system-variables-alist nil
6599 "Alist of system variables and the associated structure tags. 7121 "Alist of system variables and the associated structure tags.
6600Gets set in `idlw-rinfo.el'.") 7122Gets set in `idlw-rinfo.el'.")
6601(defvar idlwave-builtin-system-variables nil)
6602 7123
6603(defun idlwave-complete-sysvar-or-tag () 7124(defun idlwave-complete-sysvar-or-tag ()
6604 "Complete a system variable." 7125 "Complete a system variable."
@@ -6610,69 +7131,90 @@ Gets set in `idlw-rinfo.el'.")
6610 (skip-chars-backward "[a-zA-Z0-9_$]") 7131 (skip-chars-backward "[a-zA-Z0-9_$]")
6611 (equal (char-before) ?!)) 7132 (equal (char-before) ?!))
6612 (setq idlwave-completion-help-info '(idlwave-complete-sysvar-help)) 7133 (setq idlwave-completion-help-info '(idlwave-complete-sysvar-help))
6613 (idlwave-complete-in-buffer 'sysvar 'sysvar 7134 (idlwave-complete-in-buffer 'sysvar 'sysvar
6614 idlwave-system-variables-alist nil 7135 idlwave-system-variables-alist nil
6615 "Select a system variable" 7136 "Select a system variable"
6616 "system variable") 7137 "system variable")
6617 t) ; return t to skip other completions 7138 t) ; return t to skip other completions
6618 ((save-excursion 7139 ((save-excursion
6619 ;; Check if the context is right for sysvar tag 7140 ;; Check if the context is right for sysvar tag
6620 (skip-chars-backward "[a-zA-Z0-9_$.]") 7141 (skip-chars-backward "a-zA-Z0-9_$.")
6621 (and (equal (char-before) ?!) 7142 (and (equal (char-before) ?!)
6622 (looking-at "\\([a-zA-Z][a-zA-Z0-9_$]*\\)\\.") 7143 (looking-at "\\([a-zA-Z][a-zA-Z0-9_$]*\\)\\.")
6623 (<= (match-end 0) pos))) 7144 (<= (match-end 0) pos)))
6624 ;; Complete a system variable tag 7145 ;; Complete a system variable tag
6625 (let* ((var (idlwave-sintern-sysvar (match-string 1))) 7146 (let* ((var (idlwave-sintern-sysvar (match-string 1)))
6626 (entry (assq var idlwave-system-variables-alist)) 7147 (entry (assq var idlwave-system-variables-alist))
6627 (tags (cdr entry))) 7148 (tags (cdr (assq 'tags entry))))
6628 (or entry (error "!%s is not know to be a system variable" var)) 7149 (or entry (error "!%s is not a known system variable" var))
6629 (or tags (error "System variable !%s is not a structure" var)) 7150 (or tags (error "System variable !%s is not a structure" var))
6630 (setq idlwave-completion-help-info 7151 (setq idlwave-completion-help-info
6631 (list 'idlwave-complete-sysvar-help var)) 7152 (list 'idlwave-complete-sysvar-tag-help var))
6632 (idlwave-complete-in-buffer 'sysvartag 'sysvartag 7153 (idlwave-complete-in-buffer 'sysvartag 'sysvartag
6633 tags nil 7154 tags nil
6634 "Select a system variable tag" 7155 "Select a system variable tag"
6635 "system variable tag") 7156 "system variable tag")
6636 t)) ; return t to skip other completions 7157 t)) ; return t to skip other completions
6637 (t nil)))) 7158 (t nil))))
6638 7159
6639;; Here we fake help using the routine "system variables" with keyword
6640;; set to the sysvar. Name and kwd are global variables here.
6641(defvar name)
6642(defvar kwd)
6643(defun idlwave-complete-sysvar-help (mode word) 7160(defun idlwave-complete-sysvar-help (mode word)
6644 (cond 7161 (let ((word (or (nth 1 idlwave-completion-help-info) word))
6645 ((eq mode 'test) 7162 (entry (assoc word idlwave-system-variables-alist)))
6646 (or (and (eq nil (nth 1 idlwave-completion-help-info)) 7163 (cond
6647 (member (downcase word) idlwave-builtin-system-variables)) 7164 ((eq mode 'test)
6648 (and (stringp (nth 1 idlwave-completion-help-info)) 7165 (and (stringp word) entry (nth 1 (assq 'link entry))))
6649 (member (downcase (nth 1 idlwave-completion-help-info)) 7166 ((eq mode 'set)
6650 idlwave-builtin-system-variables)))) 7167 (if entry (setq link (nth 1 (assq 'link entry))))) ;; setting dynamic!!!
6651 ((eq mode 'set) 7168 (t (error "This should not happen")))))
6652 (setq name "system variables" 7169
6653 kwd (concat "!" 7170(defun idlwave-complete-sysvar-tag-help (mode word)
6654 (if (stringp (nth 1 idlwave-completion-help-info)) 7171 (let* ((var (nth 1 idlwave-completion-help-info))
6655 (nth 1 idlwave-completion-help-info) 7172 (entry (assoc var idlwave-system-variables-alist))
6656 word)))) 7173 (tags (cdr (assq 'tags entry)))
6657 (t (error "This should not happen")))) 7174 (main (nth 1 (assq 'link entry)))
7175 target main-base)
7176 (cond
7177 ((eq mode 'test) ; we can at least link the main
7178 (and (stringp word) entry main))
7179 ((eq mode 'set)
7180 (if entry
7181 (setq link
7182 (if (setq target (cdr (assoc word tags)))
7183 (idlwave-substitute-link-target main target)
7184 main)))) ;; setting dynamic!!!
7185 (t (error "This should not happen")))))
7186
7187(defun idlwave-substitute-link-target (link target)
7188 "Substitute the target anchor for the given link."
7189 (let (main-base)
7190 (setq main-base (if (string-match "#" link)
7191 (substring link 0 (match-beginning 0))
7192 link))
7193 (if target
7194 (concat main-base idlwave-html-link-sep (number-to-string target))
7195 link)))
6658 7196
6659;; Fake help in the source buffer for class structure tags. 7197;; Fake help in the source buffer for class structure tags.
6660;; kwd and name are global-variables here. 7198;; KWD AND NAME ARE GLOBAL-VARIABLES HERE.
7199(defvar name)
7200(defvar kwd)
6661(defvar idlwave-help-do-class-struct-tag nil) 7201(defvar idlwave-help-do-class-struct-tag nil)
6662(defun idlwave-complete-class-structure-tag-help (mode word) 7202(defun idlwave-complete-class-structure-tag-help (mode word)
6663 (cond 7203 (cond
6664 ((eq mode 'test) ; nothing gets fontified for class tags 7204 ((eq mode 'test) ; nothing gets fontified for class tags
6665 nil) 7205 nil)
6666 ((eq mode 'set) 7206 ((eq mode 'set)
6667 (let (class-with) 7207 (let (class-with found-in)
6668 (when (setq class-with 7208 (when (setq class-with
6669 (idlwave-class-or-superclass-with-tag 7209 (idlwave-class-or-superclass-with-tag
6670 idlwave-current-tags-class 7210 idlwave-current-tags-class
6671 word)) 7211 word))
6672 (if (assq (idlwave-sintern-class class-with) 7212 (if (assq (idlwave-sintern-class class-with)
6673 idlwave-system-class-info) 7213 idlwave-system-class-info)
6674 (error "No help available for system class tags.")) 7214 (error "No help available for system class tags."))
6675 (setq name (concat class-with "__define")))) 7215 (if (setq found-in (idlwave-class-found-in class-with))
7216 (setq name (cons (concat found-in "__define") class-with))
7217 (setq name (concat class-with "__define")))))
6676 (setq kwd word 7218 (setq kwd word
6677 idlwave-help-do-class-struct-tag t)) 7219 idlwave-help-do-class-struct-tag t))
6678 (t (error "This should not happen")))) 7220 (t (error "This should not happen"))))
@@ -6680,7 +7222,7 @@ Gets set in `idlw-rinfo.el'.")
6680(defun idlwave-class-or-superclass-with-tag (class tag) 7222(defun idlwave-class-or-superclass-with-tag (class tag)
6681 "Find and return the CLASS or one of its superclass with the 7223 "Find and return the CLASS or one of its superclass with the
6682associated TAG, if any." 7224associated TAG, if any."
6683 (let ((sclasses (cons class (cdr (assq 'all-inherits 7225 (let ((sclasses (cons class (cdr (assq 'all-inherits
6684 (idlwave-class-info class))))) 7226 (idlwave-class-info class)))))
6685 cl) 7227 cl)
6686 (catch 'exit 7228 (catch 'exit
@@ -6689,13 +7231,14 @@ associated TAG, if any."
6689 (let ((tags (idlwave-class-tags cl))) 7231 (let ((tags (idlwave-class-tags cl)))
6690 (while tags 7232 (while tags
6691 (if (eq t (compare-strings tag 0 nil (car tags) 0 nil t)) 7233 (if (eq t (compare-strings tag 0 nil (car tags) 0 nil t))
6692 (throw 'exit cl)) 7234 (throw 'exit cl))
6693 (setq tags (cdr tags)))))))) 7235 (setq tags (cdr tags))))))))
6694 7236
6695 7237
6696(defun idlwave-sysvars-reset () 7238(defun idlwave-sysvars-reset ()
6697 (if (and (fboundp 'idlwave-shell-is-running) 7239 (if (and (fboundp 'idlwave-shell-is-running)
6698 (idlwave-shell-is-running)) 7240 (idlwave-shell-is-running)
7241 idlwave-idlwave_routine_info-compiled)
6699 (idlwave-shell-send-command "idlwave_get_sysvars" 7242 (idlwave-shell-send-command "idlwave_get_sysvars"
6700 'idlwave-process-sysvars 'hide))) 7243 'idlwave-process-sysvars 'hide)))
6701 7244
@@ -6705,34 +7248,45 @@ associated TAG, if any."
6705 idlwave-sint-sysvartags nil) 7248 idlwave-sint-sysvartags nil)
6706 (idlwave-sintern-sysvar-alist)) 7249 (idlwave-sintern-sysvar-alist))
6707 7250
6708(defun idlwave-remember-builtin-sysvars ()
6709 (setq idlwave-builtin-system-variables
6710 (mapcar 'downcase
6711 (mapcar 'car idlwave-system-variables-alist))))
6712
6713(defun idlwave-sintern-sysvar-alist () 7251(defun idlwave-sintern-sysvar-alist ()
6714 (let ((list idlwave-system-variables-alist) entry) 7252 (let ((list idlwave-system-variables-alist) entry tags)
6715 (while (setq entry (pop list)) 7253 (while (setq entry (pop list))
6716 (setcar entry (idlwave-sintern-sysvar (car entry) 'set)) 7254 (setcar entry (idlwave-sintern-sysvar (car entry) 'set))
6717 (setcdr entry (mapcar (lambda (x) 7255 (setq tags (assq 'tags entry))
6718 (list (idlwave-sintern-sysvartag (car x) 'set))) 7256 (if tags
6719 (cdr entry)))))) 7257 (setcdr tags
7258 (mapcar (lambda (x)
7259 (cons (idlwave-sintern-sysvartag (car x) 'set)
7260 (cdr x)))
7261 (cdr tags)))))))
6720 7262
6721(defvar idlwave-shell-command-output) 7263(defvar idlwave-shell-command-output)
6722(defun idlwave-shell-filter-sysvars () 7264(defun idlwave-shell-filter-sysvars ()
6723 "Get the system variables and structure tags." 7265 "Get any new system variables and tags."
6724 (let ((text idlwave-shell-command-output) 7266 (let ((text idlwave-shell-command-output)
6725 (start 0) 7267 (start 0)
6726 (old idlwave-system-variables-alist) 7268 (old idlwave-system-variables-alist)
6727 var tags type name class) 7269 var tags type name class link old-entry)
6728 (setq idlwave-system-variables-alist nil) 7270 (setq idlwave-system-variables-alist nil)
6729 (while (string-match "^IDLWAVE-SYSVAR: !\\([a-zA-Z0-9_$]+\\)\\( \\(.*\\)\\)?" 7271 (while (string-match "^IDLWAVE-SYSVAR: !\\([a-zA-Z0-9_$]+\\)\\( \\(.*\\)\\)?"
6730 text start) 7272 text start)
6731 (setq start (match-end 0) 7273 (setq start (match-end 0)
6732 var (match-string 1 text) 7274 var (match-string 1 text)
6733 tags (if (match-end 3) (idlwave-split-string (match-string 3 text)))) 7275 tags (if (match-end 3)
7276 (idlwave-split-string (match-string 3 text))))
7277 ;; Maintain old links, if present
7278 (setq old-entry (assq (idlwave-sintern-sysvar var) old))
7279 (setq link (assq 'link old-entry))
6734 (setq idlwave-system-variables-alist 7280 (setq idlwave-system-variables-alist
6735 (cons (cons var (mapcar 'list tags)) 7281 (cons (list var
7282 (cons
7283 'tags
7284 (mapcar (lambda (x)
7285 (cons x
7286 (cdr (assq
7287 (idlwave-sintern-sysvartag x)
7288 (cdr (assq 'tags old-entry))))))
7289 tags)) link)
6736 idlwave-system-variables-alist))) 7290 idlwave-system-variables-alist)))
6737 ;; Keep the old value if query was not successful 7291 ;; Keep the old value if query was not successful
6738 (setq idlwave-system-variables-alist 7292 (setq idlwave-system-variables-alist
@@ -6751,10 +7305,13 @@ associated TAG, if any."
6751 'face 'font-lock-string-face))))))) 7305 'face 'font-lock-string-face)))))))
6752 7306
6753(defun idlwave-uniquify (list) 7307(defun idlwave-uniquify (list)
6754 (let (nlist) 7308 (let ((ht (make-hash-table :size (length list) :test 'equal)))
6755 (loop for x in list do 7309 (delq nil
6756 (add-to-list 'nlist x)) 7310 (mapcar (lambda (x)
6757 nlist)) 7311 (unless (gethash x ht)
7312 (puthash x t ht)
7313 x))
7314 list))))
6758 7315
6759(defun idlwave-after-successful-completion (type slash &optional verify) 7316(defun idlwave-after-successful-completion (type slash &optional verify)
6760 "Add `=' or `(' after successful completion of keyword and function. 7317 "Add `=' or `(' after successful completion of keyword and function.
@@ -6779,11 +7336,11 @@ Restore the pre-completion window configuration if possible."
6779 nil))) 7336 nil)))
6780 7337
6781 ;; Restore the pre-completion window configuration if this is safe. 7338 ;; Restore the pre-completion window configuration if this is safe.
6782 7339
6783 (if (or (eq verify 'force) ; force 7340 (if (or (eq verify 'force) ; force
6784 (and 7341 (and
6785 (get-buffer-window "*Completions*") ; visible 7342 (get-buffer-window "*Completions*") ; visible
6786 (idlwave-local-value 'idlwave-completion-p 7343 (idlwave-local-value 'idlwave-completion-p
6787 "*Completions*") ; cib-buffer 7344 "*Completions*") ; cib-buffer
6788 (eq (marker-buffer idlwave-completion-mark) 7345 (eq (marker-buffer idlwave-completion-mark)
6789 (current-buffer)) ; buffer OK 7346 (current-buffer)) ; buffer OK
@@ -6810,62 +7367,21 @@ visits the source file, finding help in the header (if
6810`idlwave-help-source-try-header' is non-nil) or the routine definition 7367`idlwave-help-source-try-header' is non-nil) or the routine definition
6811itself." 7368itself."
6812 (interactive "P") 7369 (interactive "P")
6813 (idlwave-require-online-help)
6814 (idlwave-do-context-help arg)) 7370 (idlwave-do-context-help arg))
6815 7371
6816(defun idlwave-mouse-completion-help (ev) 7372(defun idlwave-mouse-completion-help (ev)
6817 "Display online help about the completion at point." 7373 "Display online help about the completion at point."
6818 (interactive "eP") 7374 (interactive "eP")
6819 (idlwave-require-online-help) 7375 ;; Restore last-command for next command, to make
6820 ;; Restore last-command for next command, to make scrolling of completions 7376 ;; scrolling/cancelling of completions work.
6821 ;; work.
6822 (setq this-command last-command) 7377 (setq this-command last-command)
6823 (idlwave-do-mouse-completion-help ev)) 7378 (idlwave-do-mouse-completion-help ev))
6824 7379
6825(defvar idlwave-help-is-loaded nil
6826 "Is online help avaiable?")
6827;; The following variables will be defined by `idlw-help.el'.
6828(defvar idlwave-help-frame-width nil)
6829(defvar idlwave-help-file nil)
6830(defvar idlwave-help-topics nil)
6831
6832(defun idlwave-help-directory ()
6833 "Return the help directory, or nil if that is not known."
6834 (or (and (stringp idlwave-help-directory)
6835 (> (length idlwave-help-directory) 0)
6836 idlwave-help-directory)
6837 (getenv "IDLWAVE_HELP_DIRECTORY")))
6838
6839(defun idlwave-require-online-help ()
6840 (if idlwave-help-is-loaded
6841 t ;; everything is OK.
6842 (let* ((dir (or (idlwave-help-directory)
6843 (error "Online Help not installed (help directory unknown) - download at idlwave.org")))
6844 (lfile1 (expand-file-name "idlw-help.elc" dir))
6845 (lfile2 (expand-file-name "idlw-help.el" dir))
6846 (hfile (expand-file-name "idlw-help.txt" dir)))
6847 (if (or (and (file-regular-p lfile1) (load-file lfile1))
6848 (and (file-regular-p lfile2) (load-file lfile2)))
6849 (progn
6850 (if (and idlwave-help-frame-parameters
6851 (not (assoc 'width idlwave-help-frame-parameters)))
6852 (push (cons 'width idlwave-help-frame-width)
6853 idlwave-help-frame-parameters))
6854 (or idlwave-help-topics
6855 (error "File `%s' in help dir `%s' does not define `idlwave-help-topics'"
6856 "idlw-help.el" dir)))
6857 (error "No such file `%s' in help dir `%s'" "idlw-help.el" dir))
6858 (if (file-regular-p hfile)
6859 (setq idlwave-help-is-loaded t
6860 idlwave-help-file hfile)
6861 (error "No such file `%s' in dir `%s'" "idlw-help.txt" dir)))))
6862
6863(defun idlwave-routine-info (&optional arg external) 7380(defun idlwave-routine-info (&optional arg external)
6864 "Display a routines calling sequence and list of keywords. 7381 "Display a routines calling sequence and list of keywords. When
6865When point is on the name a function or procedure, or in the argument 7382point is on the name a function or procedure, or in the argument list
6866list of a function or procedure, this command displays a help buffer 7383of a function or procedure, this command displays a help buffer with
6867with the information. When called with prefix arg, enforce class 7384the information. When called with prefix arg, enforce class query.
6868query.
6869 7385
6870When point is on an object operator `->', display the class stored in 7386When point is on an object operator `->', display the class stored in
6871this arrow, if any (see `idlwave-store-inquired-class'). With a 7387this arrow, if any (see `idlwave-store-inquired-class'). With a
@@ -6903,7 +7419,7 @@ prefix arg, the class property is cleared out."
6903 (error "Don't know which calling sequence to show"))))) 7419 (error "Don't know which calling sequence to show")))))
6904 7420
6905(defun idlwave-resolve (&optional arg) 7421(defun idlwave-resolve (&optional arg)
6906 "Call RESOLVE on the module name at point. 7422 "Call RESOLVE_ROUTINE on the module name at point.
6907Like `idlwave-routine-info', this looks for a routine call at point. 7423Like `idlwave-routine-info', this looks for a routine call at point.
6908After confirmation in the minibuffer, it will use the shell to issue 7424After confirmation in the minibuffer, it will use the shell to issue
6909a RESOLVE call for this routine, to attempt to make it defined and its 7425a RESOLVE call for this routine, to attempt to make it defined and its
@@ -6922,7 +7438,7 @@ With ARG, enforce query for the class of object methods."
6922 (if (string-match "\\(pro\\|function\\)[ \t]+\\(\\(.*\\)::\\)?\\(.*\\)" 7438 (if (string-match "\\(pro\\|function\\)[ \t]+\\(\\(.*\\)::\\)?\\(.*\\)"
6923 resolve) 7439 resolve)
6924 (setq type (match-string 1 resolve) 7440 (setq type (match-string 1 resolve)
6925 class (if (match-beginning 2) 7441 class (if (match-beginning 2)
6926 (match-string 3 resolve) 7442 (match-string 3 resolve)
6927 nil) 7443 nil)
6928 name (match-string 4 resolve))) 7444 name (match-string 4 resolve)))
@@ -6931,44 +7447,54 @@ With ARG, enforce query for the class of object methods."
6931 7447
6932 (cond 7448 (cond
6933 ((null class) 7449 ((null class)
6934 (idlwave-shell-send-command 7450 (idlwave-shell-send-command
6935 (format "resolve_routine,'%s'%s" (downcase name) kwd) 7451 (format "resolve_routine,'%s'%s" (downcase name) kwd)
6936 'idlwave-update-routine-info 7452 'idlwave-update-routine-info
6937 nil t)) 7453 nil t))
6938 (t 7454 (t
6939 (idlwave-shell-send-command 7455 (idlwave-shell-send-command
6940 (format "resolve_routine,'%s__define'%s" (downcase class) kwd) 7456 (format "resolve_routine,'%s__define'%s" (downcase class) kwd)
6941 (list 'idlwave-shell-send-command 7457 (list 'idlwave-shell-send-command
6942 (format "resolve_routine,'%s__%s'%s" 7458 (format "resolve_routine,'%s__%s'%s"
6943 (downcase class) (downcase name) kwd) 7459 (downcase class) (downcase name) kwd)
6944 '(idlwave-update-routine-info) 7460 '(idlwave-update-routine-info)
6945 nil t)))))) 7461 nil t))))))
6946 7462
6947(defun idlwave-find-module (&optional arg) 7463(defun idlwave-find-module (&optional arg)
6948 "Find the source code of an IDL module. 7464 "Find the source code of an IDL module.
6949Works for modules for which IDLWAVE has routine info available. 7465Works for modules for which IDLWAVE has routine info available. The
6950The function offers as default the module name `idlwave-routine-info' would 7466function offers as default the module name `idlwave-routine-info'
6951use. With ARG force class query for object methods." 7467would use. With ARG limit to this buffer. With two prefix ARG's
7468force class query for object methods."
6952 (interactive "P") 7469 (interactive "P")
6953 (let* ((idlwave-query-class nil) 7470 (let* ((idlwave-query-class nil)
6954 (idlwave-force-class-query (equal arg '(4))) 7471 (idlwave-force-class-query (equal arg '(16)))
7472 (this-buffer (equal arg '(4)))
6955 (module (idlwave-fix-module-if-obj_new (idlwave-what-module))) 7473 (module (idlwave-fix-module-if-obj_new (idlwave-what-module)))
6956 (default (concat (idlwave-make-full-name (nth 2 module) (car module)) 7474 (default (if module
6957 (if (eq (nth 1 module) 'pro) "<p>" "<f>"))) 7475 (concat (idlwave-make-full-name
6958 (list 7476 (nth 2 module) (car module))
6959 (delq nil 7477 (if (eq (nth 1 module) 'pro) "<p>" "<f>"))
6960 (mapcar (lambda (x) 7478 "none"))
6961 (if (eq 'system (car-safe (nth 3 x))) 7479 (list
6962 ;; Take out system routines with no source. 7480 (idlwave-uniquify
6963 nil 7481 (delq nil
6964 (cons 7482 (mapcar (lambda (x)
6965 (concat (idlwave-make-full-name (nth 2 x) (car x)) 7483 (if (eq 'system (car-safe (nth 3 x)))
6966 (if (eq (nth 1 x) 'pro) "<p>" "<f>")) 7484 ;; Take out system routines with no source.
6967 (cdr x)))) 7485 nil
6968 (idlwave-routines)))) 7486 (list
7487 (concat (idlwave-make-full-name
7488 (nth 2 x) (car x))
7489 (if (eq (nth 1 x) 'pro) "<p>" "<f>")))))
7490 (if this-buffer
7491 (idlwave-save-buffer-update)
7492 (idlwave-routines))))))
6969 (name (idlwave-completing-read 7493 (name (idlwave-completing-read
6970 (format "Module (Default %s): " 7494 (if (or (not this-buffer)
6971 (if default default "none")) 7495 (assoc default list))
7496 (format "Module (Default %s): " default)
7497 (format "Module in this file: "))
6972 list)) 7498 list))
6973 type class) 7499 type class)
6974 (if (string-match "\\`\\s-*\\'" name) 7500 (if (string-match "\\`\\s-*\\'" name)
@@ -6985,47 +7511,51 @@ use. With ARG force class query for object methods."
6985 type (cond ((equal type "f") 'fun) 7511 type (cond ((equal type "f") 'fun)
6986 ((equal type "p") 'pro) 7512 ((equal type "p") 'pro)
6987 (t t))) 7513 (t t)))
6988 (idlwave-do-find-module name type class))) 7514 (idlwave-do-find-module name type class nil this-buffer)))
6989 7515
6990(defun idlwave-do-find-module (name type class &optional force-source) 7516(defun idlwave-do-find-module (name type class
7517 &optional force-source this-buffer)
6991 (let ((name1 (idlwave-make-full-name class name)) 7518 (let ((name1 (idlwave-make-full-name class name))
6992 source buf1 entry 7519 source buf1 entry
6993 (buf (current-buffer)) 7520 (buf (current-buffer))
6994 (pos (point)) 7521 (pos (point))
6995 name2) 7522 file name2)
6996 (setq entry (idlwave-best-rinfo-assq name type class (idlwave-routines)) 7523 (setq entry (idlwave-best-rinfo-assq name type class (idlwave-routines)
7524 'WITH-FILE)
6997 source (or force-source (nth 3 entry)) 7525 source (or force-source (nth 3 entry))
6998 name2 (if (nth 2 entry) 7526 name2 (if (nth 2 entry)
6999 (idlwave-make-full-name (nth 2 entry) name) 7527 (idlwave-make-full-name (nth 2 entry) name)
7000 name1)) 7528 name1))
7529 (if source
7530 (setq file (idlwave-routine-source-file source)))
7531 (unless file ; Try to find it on the path.
7532 (setq file
7533 (idlwave-expand-lib-file-name
7534 (if class
7535 (format "%s__define.pro" (downcase class))
7536 (format "%s.pro" (downcase name))))))
7001 (cond 7537 (cond
7002 ((or (null name) (equal name "")) 7538 ((or (null name) (equal name ""))
7003 (error "Abort")) 7539 (error "Abort"))
7004 ((null entry)
7005 (error "Nothing known about a module %s" name2))
7006 ((eq (car source) 'system) 7540 ((eq (car source) 'system)
7007 (error "Source code for system routine %s is not available" 7541 (error "Source code for system routine %s is not available"
7008 name2)) 7542 name2))
7009 ((equal (cdr source) "") 7543 ((or (not file) (not (file-regular-p file)))
7010 (error "Source code for routine %s is not available" 7544 (error "Source code for routine %s is not available"
7011 name2)) 7545 name2))
7012 ((memq (car source) '(buffer lib compiled)) 7546 (t
7013 (setq buf1 7547 (when (not this-buffer)
7014 (if (eq (car source) 'lib) 7548 (setq buf1
7015 (idlwave-find-file-noselect 7549 (idlwave-find-file-noselect file 'find))
7016 (idlwave-expand-lib-file-name 7550 (pop-to-buffer buf1 t))
7017 (or (cdr source)
7018 (format "%s.pro" (downcase name)))) 'find)
7019 (idlwave-find-file-noselect (cdr source) 'find)))
7020 (pop-to-buffer buf1 t)
7021 (goto-char (point-max)) 7551 (goto-char (point-max))
7022 (let ((case-fold-search t)) 7552 (let ((case-fold-search t))
7023 (if (re-search-backward 7553 (if (re-search-backward
7024 (concat "^[ \t]*\\<" 7554 (concat "^[ \t]*\\<"
7025 (cond ((equal type "f") "function") 7555 (cond ((eq type 'fun) "function")
7026 ((equal type "p") "pro") 7556 ((eq type 'pro) "pro")
7027 (t "\\(pro\\|function\\)")) 7557 (t "\\(pro\\|function\\)"))
7028 "\\>[ \t]+" 7558 "\\>[ \t]+"
7029 (regexp-quote (downcase name2)) 7559 (regexp-quote (downcase name2))
7030 "[^a-zA-Z0-9_$]") 7560 "[^a-zA-Z0-9_$]")
7031 nil t) 7561 nil t)
@@ -7045,12 +7575,12 @@ Used by `idlwave-routine-info' and `idlwave-find-module'."
7045 ;; This is a function or procedure definition statement 7575 ;; This is a function or procedure definition statement
7046 ;; We return the defined routine as module. 7576 ;; We return the defined routine as module.
7047 (list 7577 (list
7048 (idlwave-sintern-routine-or-method (match-string 4) 7578 (idlwave-sintern-routine-or-method (match-string-no-properties 4)
7049 (match-string 2)) 7579 (match-string-no-properties 2))
7050 (if (equal (downcase (match-string 1)) "pro") 'pro 'fun) 7580 (if (equal (downcase (match-string 1)) "pro") 'pro 'fun)
7051 (idlwave-sintern-class (match-string 3))) 7581 (idlwave-sintern-class (match-string 3)))
7052 7582
7053 ;; Not a definition statement - analyze precise positon. 7583 ;; Not a definition statement - analyze precise position.
7054 (let* ((where (idlwave-where)) 7584 (let* ((where (idlwave-where))
7055 (cw (nth 2 where)) 7585 (cw (nth 2 where))
7056 (pro (car (nth 0 where))) 7586 (pro (car (nth 0 where)))
@@ -7062,17 +7592,17 @@ Used by `idlwave-routine-info' and `idlwave-find-module'."
7062 (cond 7592 (cond
7063 ((and (eq cw 'procedure) 7593 ((and (eq cw 'procedure)
7064 (not (equal this-word ""))) 7594 (not (equal this-word "")))
7065 (setq this-word (idlwave-sintern-routine-or-method 7595 (setq this-word (idlwave-sintern-routine-or-method
7066 this-word (nth 2 (nth 3 where)))) 7596 this-word (nth 2 (nth 3 where))))
7067 (list this-word 'pro 7597 (list this-word 'pro
7068 (idlwave-determine-class 7598 (idlwave-determine-class
7069 (cons this-word (cdr (nth 3 where))) 7599 (cons this-word (cdr (nth 3 where)))
7070 'pro))) 7600 'pro)))
7071 ((and (eq cw 'function) 7601 ((and (eq cw 'function)
7072 (not (equal this-word "")) 7602 (not (equal this-word ""))
7073 (or (eq next-char ?\() ; exclude arrays, vars. 7603 (or (eq next-char ?\() ; exclude arrays, vars.
7074 (looking-at "[a-zA-Z0-9_]*[ \t]*("))) 7604 (looking-at "[a-zA-Z0-9_]*[ \t]*(")))
7075 (setq this-word (idlwave-sintern-routine-or-method 7605 (setq this-word (idlwave-sintern-routine-or-method
7076 this-word (nth 2 (nth 3 where)))) 7606 this-word (nth 2 (nth 3 where))))
7077 (list this-word 'fun 7607 (list this-word 'fun
7078 (idlwave-determine-class 7608 (idlwave-determine-class
@@ -7109,8 +7639,9 @@ Used by `idlwave-routine-info' and `idlwave-find-module'."
7109 class))) 7639 class)))
7110 7640
7111(defun idlwave-fix-module-if-obj_new (module) 7641(defun idlwave-fix-module-if-obj_new (module)
7112 "Check if MODULE points to obj_new. If yes, and if the cursor is in the 7642 "Check if MODULE points to obj_new.
7113keyword region, change to the appropriate Init method." 7643If yes, and if the cursor is in the keyword region, change to the
7644appropriate Init method."
7114 (let* ((name (car module)) 7645 (let* ((name (car module))
7115 (pos (point)) 7646 (pos (point))
7116 (case-fold-search t) 7647 (case-fold-search t)
@@ -7129,9 +7660,10 @@ keyword region, change to the appropriate Init method."
7129 (idlwave-sintern-class class))))) 7660 (idlwave-sintern-class class)))))
7130 module)) 7661 module))
7131 7662
7132 7663(defun idlwave-fix-keywords (name type class keywords &optional super-classes)
7133(defun idlwave-fix-keywords (name type class keywords) 7664 "Update a list of keywords.
7134 ;; This fixes the list of keywords. 7665Translate OBJ_NEW, adding all super-class keywords, or all keywords
7666from all classes if class equals t."
7135 (let ((case-fold-search t)) 7667 (let ((case-fold-search t))
7136 7668
7137 ;; If this is the OBJ_NEW function, try to figure out the class and use 7669 ;; If this is the OBJ_NEW function, try to figure out the class and use
@@ -7147,48 +7679,50 @@ keyword region, change to the appropriate Init method."
7147 string) 7679 string)
7148 (setq class (idlwave-sintern-class (match-string 1 string))) 7680 (setq class (idlwave-sintern-class (match-string 1 string)))
7149 (setq idlwave-current-obj_new-class class) 7681 (setq idlwave-current-obj_new-class class)
7150 (setq keywords 7682 (setq keywords
7151 (append keywords 7683 (append keywords
7152 (nth 5 (idlwave-rinfo-assq 7684 (idlwave-entry-keywords
7153 (idlwave-sintern-method "INIT") 7685 (idlwave-rinfo-assq
7154 'fun 7686 (idlwave-sintern-method "INIT")
7155 class 7687 'fun
7156 (idlwave-routines)))))))) 7688 class
7157 7689 (idlwave-routines)) 'do-link))))))
7690
7158 ;; If the class is `t', combine all keywords of all methods NAME 7691 ;; If the class is `t', combine all keywords of all methods NAME
7159 (when (eq class t) 7692 (when (eq class t)
7160 (loop for x in (idlwave-routines) do 7693 (mapc (lambda (entry)
7161 (and (nth 2 x) ; non-nil class 7694 (and
7162 (eq (nth 1 x) type) ; correct type 7695 (nth 2 entry) ; non-nil class
7163 (eq (car x) name) ; correct name 7696 (eq (nth 1 entry) type) ; correct type
7164 (mapcar (lambda (k) (add-to-list 'keywords k)) 7697 (setq keywords
7165 (nth 5 x)))) 7698 (append keywords
7699 (idlwave-entry-keywords entry 'do-link)))))
7700 (idlwave-all-assq name (idlwave-routines)))
7166 (setq keywords (idlwave-uniquify keywords))) 7701 (setq keywords (idlwave-uniquify keywords)))
7167 7702
7168 ;; If we have inheritance, add all keywords from superclasses, if 7703 ;; If we have inheritance, add all keywords from superclasses, if
7169 ;; the user indicated that method in 7704 ;; the user indicated that method in `idlwave-keyword-class-inheritance'
7170 ;; `idlwave-keyword-class-inheritance' 7705 (when (and
7171 (when (and 7706 super-classes
7172 idlwave-keyword-class-inheritance 7707 idlwave-keyword-class-inheritance
7173 (stringp class) 7708 (stringp class)
7174 (or (assq (idlwave-sintern-keyword "_extra") keywords) 7709 (or (assq (idlwave-sintern-keyword "_extra") keywords)
7175 (assq (idlwave-sintern-keyword "_ref_extra") keywords)) 7710 (assq (idlwave-sintern-keyword "_ref_extra") keywords))
7176 (boundp 'super-classes)
7177 ;; Check if one of the keyword-class regexps matches the name 7711 ;; Check if one of the keyword-class regexps matches the name
7178 (let ((regexps idlwave-keyword-class-inheritance) re) 7712 (let ((regexps idlwave-keyword-class-inheritance) re)
7179 (catch 'exit 7713 (catch 'exit
7180 (while (setq re (pop regexps)) 7714 (while (setq re (pop regexps))
7181 (if (string-match re name) (throw 'exit t)))))) 7715 (if (string-match re name) (throw 'exit t))))))
7182 (loop for x in (idlwave-routines) do 7716
7183 (and (nth 2 x) ; non-nil class 7717 (loop for entry in (idlwave-routines) do
7184 (or (eq (nth 2 x) class) ; the right class 7718 (and (nth 2 entry) ; non-nil class
7185 (memq (nth 2 x) super-classes)) ; an inherited class 7719 (memq (nth 2 entry) super-classes) ; an inherited class
7186 (eq (nth 1 x) type) ; correct type 7720 (eq (nth 1 entry) type) ; correct type
7187 (eq (car x) name) ; correct name 7721 (eq (car entry) name) ; correct name
7188 (mapcar (lambda (k) (add-to-list 'keywords k)) 7722 (mapcar (lambda (k) (add-to-list 'keywords k))
7189 (nth 5 x)))) 7723 (idlwave-entry-keywords entry 'do-link))))
7190 (setq keywords (idlwave-uniquify keywords))) 7724 (setq keywords (idlwave-uniquify keywords)))
7191 7725
7192 ;; Return the final list 7726 ;; Return the final list
7193 keywords)) 7727 keywords))
7194 7728
@@ -7208,19 +7742,19 @@ If we do not know about MODULE, just return KEYWORD literally."
7208 (class (nth 2 module)) 7742 (class (nth 2 module))
7209 (kwd (idlwave-sintern-keyword keyword)) 7743 (kwd (idlwave-sintern-keyword keyword))
7210 (entry (idlwave-best-rinfo-assoc name type class (idlwave-routines))) 7744 (entry (idlwave-best-rinfo-assoc name type class (idlwave-routines)))
7211 (kwd-alist (nth 5 entry)) 7745 (kwd-alist (idlwave-entry-keywords entry))
7212 (extra (or (assq (idlwave-sintern-keyword "_EXTRA") kwd-alist) 7746 (extra (or (assq (idlwave-sintern-keyword "_EXTRA") kwd-alist)
7213 (assq (idlwave-sintern-keyword "_REF_EXTRA") kwd-alist))) 7747 (assq (idlwave-sintern-keyword "_REF_EXTRA") kwd-alist)))
7214 (completion-ignore-case t) 7748 (completion-ignore-case t)
7215 candidates) 7749 candidates)
7216 (cond ((assq kwd kwd-alist) 7750 (cond ((assq kwd kwd-alist)
7217 kwd) 7751 kwd)
7218 ((setq candidates (all-completions kwd kwd-alist)) 7752 ((setq candidates (all-completions kwd kwd-alist))
7219 (if (= (length candidates) 1) 7753 (if (= (length candidates) 1)
7220 (car candidates) 7754 (car candidates)
7221 candidates)) 7755 candidates))
7222 ((and entry extra) 7756 ((and entry extra)
7223 ;; Inheritance may cause this keyword to be correct 7757 ;; Inheritance may cause this keyword to be correct
7224 keyword) 7758 keyword)
7225 (entry 7759 (entry
7226 ;; We do know the function, which does not have the keyword. 7760 ;; We do know the function, which does not have the keyword.
@@ -7232,13 +7766,13 @@ If we do not know about MODULE, just return KEYWORD literally."
7232 7766
7233(defvar idlwave-rinfo-mouse-map (make-sparse-keymap)) 7767(defvar idlwave-rinfo-mouse-map (make-sparse-keymap))
7234(defvar idlwave-rinfo-map (make-sparse-keymap)) 7768(defvar idlwave-rinfo-map (make-sparse-keymap))
7235(define-key idlwave-rinfo-mouse-map 7769(define-key idlwave-rinfo-mouse-map
7236 (if (featurep 'xemacs) [button2] [mouse-2]) 7770 (if (featurep 'xemacs) [button2] [mouse-2])
7237 'idlwave-mouse-active-rinfo) 7771 'idlwave-mouse-active-rinfo)
7238(define-key idlwave-rinfo-mouse-map 7772(define-key idlwave-rinfo-mouse-map
7239 (if (featurep 'xemacs) [(shift button2)] [(shift mouse-2)]) 7773 (if (featurep 'xemacs) [(shift button2)] [(shift mouse-2)])
7240 'idlwave-mouse-active-rinfo-shift) 7774 'idlwave-mouse-active-rinfo-shift)
7241(define-key idlwave-rinfo-mouse-map 7775(define-key idlwave-rinfo-mouse-map
7242 (if (featurep 'xemacs) [button3] [mouse-3]) 7776 (if (featurep 'xemacs) [button3] [mouse-3])
7243 'idlwave-mouse-active-rinfo-right) 7777 'idlwave-mouse-active-rinfo-right)
7244(define-key idlwave-rinfo-mouse-map " " 'idlwave-active-rinfo-space) 7778(define-key idlwave-rinfo-mouse-map " " 'idlwave-active-rinfo-space)
@@ -7264,7 +7798,7 @@ If we do not know about MODULE, just return KEYWORD literally."
7264 (let* ((initial-class (or initial-class class)) 7798 (let* ((initial-class (or initial-class class))
7265 (entry (or (idlwave-best-rinfo-assq name type class 7799 (entry (or (idlwave-best-rinfo-assq name type class
7266 (idlwave-routines)) 7800 (idlwave-routines))
7267 (idlwave-rinfo-assq name type class 7801 (idlwave-rinfo-assq name type class
7268 idlwave-unresolved-routines))) 7802 idlwave-unresolved-routines)))
7269 (name (or (car entry) name)) 7803 (name (or (car entry) name))
7270 (class (or (nth 2 entry) class)) 7804 (class (or (nth 2 entry) class))
@@ -7272,34 +7806,25 @@ If we do not know about MODULE, just return KEYWORD literally."
7272 (twins (idlwave-routine-twins entry)) 7806 (twins (idlwave-routine-twins entry))
7273 (dtwins (idlwave-study-twins twins)) 7807 (dtwins (idlwave-study-twins twins))
7274 (all dtwins) 7808 (all dtwins)
7275 (system (idlwave-rinfo-assq 7809 (system (eq (car (nth 3 entry)) 'system))
7276 name type class idlwave-system-routines))
7277 (have-sysdoc (and system (idlwave-help-directory)))
7278 ;; (source (nth 3 entry))
7279 (have-olh (and (or system idlwave-extra-help-function)
7280 (idlwave-help-directory)))
7281 (calling-seq (nth 4 entry)) 7810 (calling-seq (nth 4 entry))
7282 (keywords (nth 5 entry)) 7811 (keywords (idlwave-entry-keywords entry 'do-link))
7283 (olh (nth 6 entry)) 7812 (html-file (car (nth 5 entry)))
7284 (help-echo-kwd 7813 (help-echo-kwd
7285 (if have-olh 7814 "Button2: Insert KEYWORD (SHIFT=`/KEYWORD') | Button3: Online Help ")
7286 "Button2: Insert KEYWORD (SHIFT=`/KEYWORD') Button3: Online Help "
7287 "Button2: Insert KEYWORD (SHIFT=`/KEYWORD')."))
7288 (help-echo-use 7815 (help-echo-use
7289 (if have-olh 7816 "Button2/3: Online Help")
7290 "Button2/3: Online Help"
7291 nil))
7292 (help-echo-src 7817 (help-echo-src
7293 (if (idlwave-help-directory) 7818 "Button2: Jump to source and back | Button3: Source in Help window.")
7294 "Button2: Pop to source and back. Button3: Source in Help window."
7295 "Button2: Pop to source and back."))
7296 (help-echo-class 7819 (help-echo-class
7297 "Button2: Display info about same method in superclass") 7820 "Button2: Display info about same method in superclass")
7298 (col 0) 7821 (col 0)
7299 (data (list name type class (current-buffer) olh initial-class)) 7822 (data (list name type class (current-buffer) nil initial-class))
7300 (km-prop (if (featurep 'xemacs) 'keymap 'local-map)) 7823 (km-prop (if (featurep 'xemacs) 'keymap 'local-map))
7301 (face 'idlwave-help-link-face) 7824 (face 'idlwave-help-link-face)
7302 beg props win cnt total) 7825 beg props win cnt total)
7826 ;; Fix keywords, but don't add chained super-classes, since these
7827 ;; are shown separately for that super-class
7303 (setq keywords (idlwave-fix-keywords name type class keywords)) 7828 (setq keywords (idlwave-fix-keywords name type class keywords))
7304 (cond 7829 (cond
7305 ((null entry) 7830 ((null entry)
@@ -7308,7 +7833,7 @@ If we do not know about MODULE, just return KEYWORD literally."
7308 ((or (null name) (equal name "")) 7833 ((or (null name) (equal name ""))
7309 (error "No function or procedure call at point")) 7834 (error "No function or procedure call at point"))
7310 ((null calling-seq) 7835 ((null calling-seq)
7311 (error "Calling sequence of %s %s is not available" type name)) 7836 (error "Calling sequence of %s %s not available" type name))
7312 (t 7837 (t
7313 (save-excursion 7838 (save-excursion
7314 (move-marker idlwave-rinfo-marker (point)) 7839 (move-marker idlwave-rinfo-marker (point))
@@ -7332,56 +7857,62 @@ If we do not know about MODULE, just return KEYWORD literally."
7332 (insert c) 7857 (insert c)
7333 (if (equal (downcase c) (downcase class)) 7858 (if (equal (downcase c) (downcase class))
7334 (add-text-properties beg (point) (list 'face 'bold)) 7859 (add-text-properties beg (point) (list 'face 'bold))
7860 ;; If Method exists in a different class link it
7335 (if (idlwave-rinfo-assq name type c (idlwave-routines)) 7861 (if (idlwave-rinfo-assq name type c (idlwave-routines))
7336 (add-text-properties beg (point) props)))) 7862 (add-text-properties beg (point) props))))
7337 (insert "\n"))) 7863 (insert "\n")))
7338 (setq props (if have-olh 7864 (setq props (list 'mouse-face 'highlight
7339 (list 'mouse-face 'highlight 7865 km-prop idlwave-rinfo-mouse-map
7340 km-prop idlwave-rinfo-mouse-map 7866 'help-echo help-echo-use
7341 'help-echo help-echo-use 7867 'data (cons 'usage data)))
7342 'data (cons 'usage data)))) 7868 (if html-file (setq props (append (list 'face face 'link html-file)
7343 (if have-sysdoc (setq props (append (list 'face face) props))) 7869 props)))
7344 (insert "Usage: ") 7870 (insert "Usage: ")
7345 (setq beg (point)) 7871 (setq beg (point))
7346 (insert (if class 7872 (insert (if class
7347 (format calling-seq class name) 7873 (format calling-seq class name class name class name)
7348 (format calling-seq name)) 7874 (format calling-seq name name name name))
7349 "\n") 7875 "\n")
7350 (add-text-properties beg (point) props) 7876 (add-text-properties beg (point) props)
7351 7877
7352 (insert "Keywords:") 7878 (insert "Keywords:")
7353 (if (null keywords) 7879 (if (null keywords)
7354 (insert " No keywords accepted.") 7880 (insert " No keywords accepted.")
7355 (setq col 9) 7881 (setq col 9)
7356 (mapcar 7882 (mapcar
7357 (lambda (x) 7883 (lambda (x)
7358 (if (>= (+ col 1 (length (car x))) 7884 (if (>= (+ col 1 (length (car x)))
7359 (window-width)) 7885 (window-width))
7360 (progn 7886 (progn
7361 (insert "\n ") 7887 (insert "\n ")
7362 (setq col 9))) 7888 (setq col 9)))
7363 (insert " ") 7889 (insert " ")
7364 (setq beg (point) 7890 (setq beg (point)
7891 ;; Relevant keywords already have link property attached
7365 props (list 'mouse-face 'highlight 7892 props (list 'mouse-face 'highlight
7366 km-prop idlwave-rinfo-mouse-map 7893 km-prop idlwave-rinfo-mouse-map
7367 'data (cons 'keyword data) 7894 'data (cons 'keyword data)
7368 'help-echo help-echo-kwd 7895 'help-echo help-echo-kwd
7369 'keyword (car x))) 7896 'keyword (car x)))
7370 (if have-sysdoc (setq props (append (list 'face face) props))) 7897 (if system (setq props (append (list 'face face) props)))
7371 (insert (car x)) 7898 (insert (car x))
7372 (add-text-properties beg (point) props) 7899 (add-text-properties beg (point) props)
7373 (setq col (+ col 1 (length (car x))))) 7900 (setq col (+ col 1 (length (car x)))))
7374 keywords)) 7901 keywords))
7375 7902
7376 (setq cnt 1 total (length all)) 7903 (setq cnt 1 total (length all))
7904 ;; Here entry is (key file (list of type-conses))
7377 (while (setq entry (pop all)) 7905 (while (setq entry (pop all))
7378 (setq props (list 'mouse-face 'highlight 7906 (setq props (list 'mouse-face 'highlight
7379 km-prop idlwave-rinfo-mouse-map 7907 km-prop idlwave-rinfo-mouse-map
7380 'help-echo help-echo-src 7908 'help-echo help-echo-src
7381 'source (cons (car (nth 2 entry)) (nth 1 entry)) 7909 'source (list (car (car (nth 2 entry))) ;type
7910 (nth 1 entry)
7911 nil
7912 (cdr (car (nth 2 entry))))
7382 'data (cons 'source data))) 7913 'data (cons 'source data)))
7383 (idlwave-insert-source-location 7914 (idlwave-insert-source-location
7384 (format "\n%-8s %s" 7915 (format "\n%-8s %s"
7385 (if (equal cnt 1) 7916 (if (equal cnt 1)
7386 (if (> total 1) "Sources:" "Source:") 7917 (if (> total 1) "Sources:" "Source:")
7387 "") 7918 "")
@@ -7390,11 +7921,11 @@ If we do not know about MODULE, just return KEYWORD literally."
7390 (incf cnt) 7921 (incf cnt)
7391 (when (and all (> cnt idlwave-rinfo-max-source-lines)) 7922 (when (and all (> cnt idlwave-rinfo-max-source-lines))
7392 ;; No more source lines, please 7923 ;; No more source lines, please
7393 (insert (format 7924 (insert (format
7394 "\n Source information truncated to %d entries." 7925 "\n Source information truncated to %d entries."
7395 idlwave-rinfo-max-source-lines)) 7926 idlwave-rinfo-max-source-lines))
7396 (setq all nil))) 7927 (setq all nil)))
7397 7928 (beginning-of-buffer)
7398 (setq buffer-read-only t)) 7929 (setq buffer-read-only t))
7399 (display-buffer "*Help*") 7930 (display-buffer "*Help*")
7400 (if (and (setq win (get-buffer-window "*Help*")) 7931 (if (and (setq win (get-buffer-window "*Help*"))
@@ -7404,24 +7935,25 @@ If we do not know about MODULE, just return KEYWORD literally."
7404 (unwind-protect 7935 (unwind-protect
7405 (progn 7936 (progn
7406 (select-window win) 7937 (select-window win)
7407 (enlarge-window (- (/ (frame-height) 2) 7938 (enlarge-window (- (/ (frame-height) 2)
7408 (window-height))) 7939 (window-height)))
7409 (shrink-window-if-larger-than-buffer)) 7940 (shrink-window-if-larger-than-buffer))
7410 (select-window ww))))))))) 7941 (select-window ww)))))))))
7411 7942
7412(defun idlwave-insert-source-location (prefix entry &optional file-props) 7943(defun idlwave-insert-source-location (prefix entry &optional file-props)
7413 "Insert a source location into the routine info buffer. 7944 "Insert a source location into the routine info buffer.
7414Start line with PREFIX. 7945Start line with PREFIX. If a file name is inserted, add FILE-PROPS to
7415If a file name is inserted, add FILE-PROPS to it." 7946it."
7416
7417 (let* ((key (car entry)) 7947 (let* ((key (car entry))
7418 (file (nth 1 entry)) 7948 (file (nth 1 entry))
7419 (types (nth 2 entry)) 7949 (types (nth 2 entry))
7420 (shell-flag (member 'compiled types)) 7950 (shell-flag (assq 'compiled types))
7421 (buffer-flag (member 'buffer types)) 7951 (buffer-flag (assq 'buffer types))
7422 (lib-flag (member 'lib types)) 7952 (user-flag (assq 'user types))
7423 (ndupl (or (and buffer-flag (idlwave-count-eq 'buffer types)) 7953 (lib-flag (assq 'lib types))
7424 (and lib-flag (idlwave-count-eq 'lib types)) 7954 (ndupl (or (and buffer-flag (idlwave-count-memq 'buffer types))
7955 (and user-flag (idlwave-count-memq 'user types))
7956 (and lib-flag (idlwave-count-memq 'lib types))
7425 1)) 7957 1))
7426 (doflags t) 7958 (doflags t)
7427 beg special) 7959 beg special)
@@ -7431,30 +7963,47 @@ If a file name is inserted, add FILE-PROPS to it."
7431 (cond 7963 (cond
7432 ((eq key 'system) 7964 ((eq key 'system)
7433 (setq doflags nil) 7965 (setq doflags nil)
7434 (insert "System ")) 7966 (insert "System "))
7967
7435 ((eq key 'builtin) 7968 ((eq key 'builtin)
7436 (setq doflags nil) 7969 (setq doflags nil)
7437 (insert "Builtin ")) 7970 (insert "Builtin "))
7971
7438 ((and (not file) shell-flag) 7972 ((and (not file) shell-flag)
7439 (insert "Unresolved")) 7973 (insert "Unresolved"))
7440 ((null file) (insert "ERROR")) 7974
7441 ((setq special (idlwave-special-lib-test file)) 7975 ((null file)
7442 (insert (format "%-10s" special))) 7976 (insert "ERROR"))
7977
7443 ((idlwave-syslib-p file) 7978 ((idlwave-syslib-p file)
7444 (if (string-match "obsolete" (file-name-directory file)) 7979 (if (string-match "obsolete" (file-name-directory file))
7445 (insert "Obsolete ") 7980 (insert "Obsolete ")
7446 (insert "SystemLib "))) 7981 (insert "SystemLib ")))
7982
7983 ;; New special syntax: taken directly from routine-info for
7984 ;; library catalog routines
7985 ((setq special (or (cdr lib-flag) (cdr user-flag)))
7986 (insert (format "%-10s" special)))
7987
7988 ;; Old special syntax: a matching regexp
7989 ((setq special (idlwave-special-lib-test file))
7990 (insert (format "%-10s" special)))
7991
7992 ;; Catch-all with file
7447 ((idlwave-lib-p file) (insert "Library ")) 7993 ((idlwave-lib-p file) (insert "Library "))
7994
7995 ;; Sanity catch all
7448 (t (insert "Other "))) 7996 (t (insert "Other ")))
7449 7997
7450 (when doflags 7998 (when doflags
7451 (insert (concat 7999 (insert (concat
7452 " [" 8000 " ["
7453 (if lib-flag "C" "-") 8001 (if lib-flag "L" "-")
8002 (if user-flag "C" "-")
7454 (if shell-flag "S" "-") 8003 (if shell-flag "S" "-")
7455 (if buffer-flag "B" "-") 8004 (if buffer-flag "B" "-")
7456 "] "))) 8005 "] ")))
7457 (when (> ndupl 1) 8006 (when (> ndupl 1)
7458 (setq beg (point)) 8007 (setq beg (point))
7459 (insert (format "(%dx) " ndupl)) 8008 (insert (format "(%dx) " ndupl))
7460 (add-text-properties beg (point) (list 'face 'bold))) 8009 (add-text-properties beg (point) (list 'face 'bold)))
@@ -7478,7 +8027,7 @@ Return the name of the special lib if there is a match."
7478 alist nil))) 8027 alist nil)))
7479 rtn) 8028 rtn)
7480 (t nil)))) 8029 (t nil))))
7481 8030
7482(defun idlwave-mouse-active-rinfo-right (ev) 8031(defun idlwave-mouse-active-rinfo-right (ev)
7483 (interactive "e") 8032 (interactive "e")
7484 (idlwave-mouse-active-rinfo ev 'right)) 8033 (idlwave-mouse-active-rinfo ev 'right))
@@ -7497,34 +8046,35 @@ Optional args RIGHT and SHIFT indicate, if mouse-3 was used, and if SHIFT
7497was pressed." 8046was pressed."
7498 (interactive "e") 8047 (interactive "e")
7499 (if ev (mouse-set-point ev)) 8048 (if ev (mouse-set-point ev))
7500 (let (data id name type class buf keyword bufwin source word initial-class) 8049 (let (data id name type class buf bufwin source word initial-class)
7501 (setq data (get-text-property (point) 'data) 8050 (setq data (get-text-property (point) 'data)
7502 source (get-text-property (point) 'source) 8051 source (get-text-property (point) 'source)
7503 keyword (get-text-property (point) 'keyword) 8052 keyword (get-text-property (point) 'keyword)
8053 link (get-text-property (point) 'link)
7504 id (car data) 8054 id (car data)
7505 name (nth 1 data) type (nth 2 data) class (nth 3 data) 8055 name (nth 1 data) type (nth 2 data) class (nth 3 data)
7506 buf (nth 4 data) 8056 buf (nth 4 data)
7507 initial-class (nth 6 data) 8057 initial-class (nth 6 data)
7508 word (idlwave-this-word) 8058 word (idlwave-this-word)
7509 bufwin (get-buffer-window buf t)) 8059 bufwin (get-buffer-window buf t))
7510 (cond ((eq id 'class) 8060
8061 (cond ((eq id 'class) ; Switch class being displayed
7511 (if (window-live-p bufwin) (select-window bufwin)) 8062 (if (window-live-p bufwin) (select-window bufwin))
7512 (idlwave-display-calling-sequence 8063 (idlwave-display-calling-sequence
7513 (idlwave-sintern-method name) 8064 (idlwave-sintern-method name)
7514 type (idlwave-sintern-class word) 8065 type (idlwave-sintern-class word)
7515 initial-class)) 8066 initial-class))
7516 ((eq id 'usage) 8067 ((eq id 'usage) ; Online help on this routine
7517 (idlwave-require-online-help) 8068 (idlwave-online-help link name type class))
7518 (idlwave-online-help nil name type class)) 8069 ((eq id 'source) ; Source in help or buffer
7519 ((eq id 'source) 8070 (if right ; In help
7520 (if (and right (idlwave-help-directory))
7521 (let ((idlwave-extra-help-function 'idlwave-help-with-source) 8071 (let ((idlwave-extra-help-function 'idlwave-help-with-source)
7522 (idlwave-help-source-try-header nil) 8072 (idlwave-help-source-try-header nil)
7523 ;; Fake idlwave-routines, to make help find the right entry 8073 ;; Fake idlwave-routines so help will find the right entry
7524 (idlwave-routines 8074 (idlwave-routines
7525 (list (list (nth 1 data) (nth 2 data) (nth 3 data) source "")))) 8075 (list (list name type class source ""))))
7526 (idlwave-require-online-help)
7527 (idlwave-help-get-special-help name type class nil)) 8076 (idlwave-help-get-special-help name type class nil))
8077 ;; Otherwise just pop to the source
7528 (setq idlwave-popup-source (not idlwave-popup-source)) 8078 (setq idlwave-popup-source (not idlwave-popup-source))
7529 (if idlwave-popup-source 8079 (if idlwave-popup-source
7530 (condition-case err 8080 (condition-case err
@@ -7539,9 +8089,7 @@ was pressed."
7539 (goto-char (marker-position idlwave-rinfo-marker))))) 8089 (goto-char (marker-position idlwave-rinfo-marker)))))
7540 ((eq id 'keyword) 8090 ((eq id 'keyword)
7541 (if right 8091 (if right
7542 (progn 8092 (idlwave-online-help link name type class keyword)
7543 (idlwave-require-online-help)
7544 (idlwave-online-help nil name type class keyword))
7545 (idlwave-rinfo-insert-keyword keyword buf shift)))))) 8093 (idlwave-rinfo-insert-keyword keyword buf shift))))))
7546 8094
7547(defun idlwave-rinfo-insert-keyword (keyword buffer &optional shift) 8095(defun idlwave-rinfo-insert-keyword (keyword buffer &optional shift)
@@ -7555,9 +8103,9 @@ was pressed."
7555 (setq bwin (get-buffer-window buffer))) 8103 (setq bwin (get-buffer-window buffer)))
7556 (if (eq (preceding-char) ?/) 8104 (if (eq (preceding-char) ?/)
7557 (insert keyword) 8105 (insert keyword)
7558 (unless (save-excursion 8106 (unless (save-excursion
7559 (re-search-backward 8107 (re-search-backward
7560 "[(,][ \t]*\\(\\$[ \t]*\\(;.*\\)?\n\\)?[ \t]*\\=" 8108 "[(,][ \t]*\\(\\$[ \t]*\\(;.*\\)?\n\\)?[ \t]*\\="
7561 (min (- (point) 100) (point-min)) t)) 8109 (min (- (point) 100) (point-min)) t))
7562 (insert ", ")) 8110 (insert ", "))
7563 (if shift (insert "/")) 8111 (if shift (insert "/"))
@@ -7608,20 +8156,21 @@ When IDL hits a routine call which is not defined, it will search on
7608the load path in order to find a definition. The output of this 8156the load path in order to find a definition. The output of this
7609command can be used to detect possible name clashes during this process." 8157command can be used to detect possible name clashes during this process."
7610 (idlwave-routines) ; Make sure everything is loaded. 8158 (idlwave-routines) ; Make sure everything is loaded.
7611 (unless idlwave-library-routines 8159 (unless (or idlwave-user-catalog-routines idlwave-library-catalog-routines)
7612 (or (y-or-n-p 8160 (or (y-or-n-p
7613 "You don't have a library catalog. Continue anyway? ") 8161 "You don't have any user or library catalogs. Continue anyway? ")
7614 (error "Abort"))) 8162 (error "Abort")))
7615 (let* ((routines (append idlwave-system-routines 8163 (let* ((routines (append idlwave-system-routines
7616 idlwave-compiled-routines 8164 idlwave-compiled-routines
7617 idlwave-library-routines 8165 idlwave-library-catalog-routines
8166 idlwave-user-catalog-routines
7618 idlwave-buffer-routines 8167 idlwave-buffer-routines
7619 nil)) 8168 nil))
7620 (km-prop (if (featurep 'xemacs) 'keymap 'local-map)) 8169 (km-prop (if (featurep 'xemacs) 'keymap 'local-map))
7621 (keymap (make-sparse-keymap)) 8170 (keymap (make-sparse-keymap))
7622 (props (list 'mouse-face 'highlight 8171 (props (list 'mouse-face 'highlight
7623 km-prop keymap 8172 km-prop keymap
7624 'help-echo "Mouse2: Find source")) 8173 'help-echo "Mouse2: Find source"))
7625 (nroutines (length (or special-routines routines))) 8174 (nroutines (length (or special-routines routines)))
7626 (step (/ nroutines 99)) 8175 (step (/ nroutines 99))
7627 (n 0) 8176 (n 0)
@@ -7645,13 +8194,13 @@ command can be used to detect possible name clashes during this process."
7645 (message "Sorting routines...done") 8194 (message "Sorting routines...done")
7646 8195
7647 (define-key keymap (if (featurep 'xemacs) [(button2)] [(mouse-2)]) 8196 (define-key keymap (if (featurep 'xemacs) [(button2)] [(mouse-2)])
7648 (lambda (ev) 8197 (lambda (ev)
7649 (interactive "e") 8198 (interactive "e")
7650 (mouse-set-point ev) 8199 (mouse-set-point ev)
7651 (apply 'idlwave-do-find-module 8200 (apply 'idlwave-do-find-module
7652 (get-text-property (point) 'find-args)))) 8201 (get-text-property (point) 'find-args))))
7653 (define-key keymap [(return)] 8202 (define-key keymap [(return)]
7654 (lambda () 8203 (lambda ()
7655 (interactive) 8204 (interactive)
7656 (apply 'idlwave-do-find-module 8205 (apply 'idlwave-do-find-module
7657 (get-text-property (point) 'find-args)))) 8206 (get-text-property (point) 'find-args))))
@@ -7674,18 +8223,19 @@ command can be used to detect possible name clashes during this process."
7674 ;; Mark all twins as dealt with 8223 ;; Mark all twins as dealt with
7675 (setq done (append twins done)) 8224 (setq done (append twins done))
7676 (when (or (> (length dtwins) 1) 8225 (when (or (> (length dtwins) 1)
7677 (> (idlwave-count-eq 'lib (nth 2 (car dtwins))) 1) 8226 (> (idlwave-count-memq 'lib (nth 2 (car dtwins))) 1)
7678 (> (idlwave-count-eq 'buffer (nth 2 (car dtwins))) 1)) 8227 (> (idlwave-count-memq 'user (nth 2 (car dtwins))) 1)
8228 (> (idlwave-count-memq 'buffer (nth 2 (car dtwins))) 1))
7679 (incf cnt) 8229 (incf cnt)
7680 (insert (format "\n%s%s" 8230 (insert (format "\n%s%s"
7681 (idlwave-make-full-name (nth 2 routine) (car routine)) 8231 (idlwave-make-full-name (nth 2 routine)
8232 (car routine))
7682 (if (eq (nth 1 routine) 'fun) "()" ""))) 8233 (if (eq (nth 1 routine) 'fun) "()" "")))
7683 (while (setq twin (pop dtwins)) 8234 (while (setq twin (pop dtwins))
7684 (setq props1 (append (list 'find-args 8235 (setq props1 (append (list 'find-args
7685 (list (nth 0 routine) 8236 (list (nth 0 routine)
7686 (nth 1 routine) 8237 (nth 1 routine)
7687 (nth 2 routine) 8238 (nth 2 routine)))
7688 (cons 'lib (nth 1 twin))))
7689 props)) 8239 props))
7690 (idlwave-insert-source-location "\n - " twin props1)))) 8240 (idlwave-insert-source-location "\n - " twin props1))))
7691 (goto-char (point-min)) 8241 (goto-char (point-min))
@@ -7701,16 +8251,13 @@ command can be used to detect possible name clashes during this process."
7701(defun idlwave-print-source (routine) 8251(defun idlwave-print-source (routine)
7702 (let* ((source (nth 3 routine)) 8252 (let* ((source (nth 3 routine))
7703 (stype (car source)) 8253 (stype (car source))
7704 (sfile (cdr source))) 8254 (sfile (idlwave-routine-source-file source)))
7705 (if (and (eq stype 'lib) sfile) 8255 (if (idlwave-syslib-p sfile) (setq stype 'syslib))
7706 (progn
7707 (setq sfile (idlwave-expand-lib-file-name sfile))
7708 (if (idlwave-syslib-p sfile) (setq stype 'syslib))))
7709 (if (and (eq stype 'compiled) 8256 (if (and (eq stype 'compiled)
7710 (or (not (stringp sfile)) 8257 (or (not (stringp sfile))
7711 (not (string-match "\\S-" sfile)))) 8258 (not (string-match "\\S-" sfile))))
7712 (setq stype 'unresolved)) 8259 (setq stype 'unresolved))
7713 (princ (format " %-10s %s\n" 8260 (princ (format " %-10s %s\n"
7714 stype 8261 stype
7715 (if sfile sfile "No source code available"))))) 8262 (if sfile sfile "No source code available")))))
7716 8263
@@ -7729,52 +8276,56 @@ ENTRY will also be returned, as the first item of this list."
7729 (eq type (nth 1 candidate)) 8276 (eq type (nth 1 candidate))
7730 (eq class (nth 2 candidate))) 8277 (eq class (nth 2 candidate)))
7731 (push candidate twins))) 8278 (push candidate twins)))
7732 (if (setq candidate (idlwave-rinfo-assq name type class 8279 (if (setq candidate (idlwave-rinfo-assq name type class
7733 idlwave-unresolved-routines)) 8280 idlwave-unresolved-routines))
7734 (push candidate twins)) 8281 (push candidate twins))
7735 (cons entry (nreverse twins)))) 8282 (cons entry (nreverse twins))))
7736 8283
7737(defun idlwave-study-twins (entries) 8284(defun idlwave-study-twins (entries)
7738 "Return dangerous twins of first entry in TWINS. 8285 "Return dangerous twins of first entry in ENTRIES.
7739Dangerous twins are routines with same name, but in different files 8286Dangerous twins are routines with same name, but in different files on
7740on the load path. 8287the load path. If a file is in the system library and has an entry in
7741If a file is in the system library and has an entry in the 8288the `idlwave-system-routines' list, we omit the latter as
7742`idlwave-system-routines' list, we omit the latter because many IDL 8289non-dangerous because many IDL routines are implemented as library
7743routines are implemented as library routines." 8290routines, and may have been scanned."
7744 (let* ((entry (car entries)) 8291 (let* ((entry (car entries))
7745 (name (car entry)) ; 8292 (name (car entry)) ;
7746 (type (nth 1 entry)) ; Must be bound for 8293 (type (nth 1 entry)) ; Must be bound for
7747 (class (nth 2 entry)) ; idlwave-routine-twin-compare 8294 (class (nth 2 entry)) ; idlwave-routine-twin-compare
7748 (cnt 0) 8295 (cnt 0)
7749 source type file thefile alist syslibp key) 8296 source type type-cons file alist syslibp key)
7750 (while (setq entry (pop entries)) 8297 (while (setq entry (pop entries))
7751 (incf cnt) 8298 (incf cnt)
7752 (setq source (nth 3 entry) 8299 (setq source (nth 3 entry)
7753 type (car source) 8300 type (car source)
7754 file (cdr source)) 8301 type-cons (cons type (nth 3 source))
7755 (if (eq type 'lib) 8302 file (idlwave-routine-source-file source))
7756 (setq file (idlwave-expand-lib-file-name file))) 8303
7757 ;; Make KEY to index entry properly 8304 ;; Make KEY to index entry properly
7758 (setq key (cond ((eq type 'system) type) 8305 (setq key (cond ((eq type 'system) type)
7759 (file (file-truename file)) 8306 (file (file-truename file))
7760 (t 'unresolved))) 8307 (t 'unresolved)))
7761 (if (and file 8308
8309 ;; Check for an entry in the system library
8310 (if (and file
7762 (not syslibp) 8311 (not syslibp)
7763 (idlwave-syslib-p file)) 8312 (idlwave-syslib-p file))
7764 ;; We do have an entry in the system library
7765 (setq syslibp t)) 8313 (setq syslibp t))
7766 8314
7767 (setq thefile (or thefile file)) 8315 ;; If there's more than one matching entry for the same file, just
8316 ;; append the type-cons to the type list.
7768 (if (setq entry (assoc key alist)) 8317 (if (setq entry (assoc key alist))
7769 (push type (nth 2 entry)) 8318 (push type-cons (nth 2 entry))
7770 (push (list key file (list type)) alist))) 8319 (push (list key file (list type-cons)) alist)))
7771 8320
7772 (setq alist (nreverse alist)) 8321 (setq alist (nreverse alist))
7773 8322
7774 (when syslibp 8323 (when syslibp
7775 ;; File is system *library* - remove any system entry 8324 ;; File is in system *library* - remove any 'system entry
7776 (setq alist (delq (assoc 'system alist) alist))) 8325 (setq alist (delq (assq 'system alist) alist)))
7777 8326
8327 ;; If 'system remains and we've scanned the syslib, it's a builtin
8328 ;; (rather than a !DIR/lib/.pro file bundled as source).
7778 (when (and (idlwave-syslib-scanned-p) 8329 (when (and (idlwave-syslib-scanned-p)
7779 (setq entry (assoc 'system alist))) 8330 (setq entry (assoc 'system alist)))
7780 (setcar entry 'builtin)) 8331 (setcar entry 'builtin))
@@ -7809,23 +8360,22 @@ compares twins on the basis of their file names and path locations."
7809 ((not (eq type (nth 1 b))) 8360 ((not (eq type (nth 1 b)))
7810 ;; Type decides 8361 ;; Type decides
7811 (< (if (eq type 'fun) 1 0) (if (eq (nth 1 b) 'fun) 1 0))) 8362 (< (if (eq type 'fun) 1 0) (if (eq (nth 1 b) 'fun) 1 0)))
7812 (t 8363 (t
7813 ;; A and B are twins - so the decision is more complicated. 8364 ;; A and B are twins - so the decision is more complicated.
7814 ;; Call twin-compare with the proper arguments. 8365 ;; Call twin-compare with the proper arguments.
7815 (idlwave-routine-entry-compare-twins a b))))) 8366 (idlwave-routine-entry-compare-twins a b)))))
7816 8367
7817(defun idlwave-routine-entry-compare-twins (a b) 8368(defun idlwave-routine-entry-compare-twins (a b)
7818 "Compare two routine entries, under the assumption that they are twins. 8369 "Compare two routine entries, under the assumption that they are
7819This basically calles `idlwave-routine-twin-compare' with the correct args." 8370twins. This basically calls `idlwave-routine-twin-compare' with the
7820 (let ((name (car a)) (type (nth 1 a)) (class (nth 2 a)) ; needed outside 8371correct args."
7821 (atype (car (nth 3 a))) 8372 (let* ((name (car a)) (type (nth 1 a)) (class (nth 2 a)) ; needed outside
7822 (btype (car (nth 3 b))) 8373 (asrc (nth 3 a))
7823 (afile (cdr (nth 3 a))) 8374 (atype (car asrc))
7824 (bfile (cdr (nth 3 b)))) 8375 (bsrc (nth 3 b))
7825 (if (eq atype 'lib) 8376 (btype (car bsrc))
7826 (setq afile (idlwave-expand-lib-file-name afile))) 8377 (afile (idlwave-routine-source-file asrc))
7827 (if (eq btype 'lib) 8378 (bfile (idlwave-routine-source-file bsrc)))
7828 (setq bfile (idlwave-expand-lib-file-name bfile)))
7829 (idlwave-routine-twin-compare 8379 (idlwave-routine-twin-compare
7830 (if (stringp afile) 8380 (if (stringp afile)
7831 (list (file-truename afile) afile (list atype)) 8381 (list (file-truename afile) afile (list atype))
@@ -7860,8 +8410,10 @@ This expects NAME TYPE CLASS to be bound to the right values."
7860 (bbufp (memq 'buffer btypes)) 8410 (bbufp (memq 'buffer btypes))
7861 ;; On search path? 8411 ;; On search path?
7862 (tpath-alist (idlwave-true-path-alist)) 8412 (tpath-alist (idlwave-true-path-alist))
7863 (apathp (assoc akey tpath-alist)) 8413 (apathp (and (stringp akey)
7864 (bpathp (assoc bkey tpath-alist)) 8414 (assoc (file-name-directory akey) tpath-alist)))
8415 (bpathp (and (stringp bkey)
8416 (assoc (file-name-directory bkey) tpath-alist)))
7865 ;; How early on search path? High number means early since we 8417 ;; How early on search path? High number means early since we
7866 ;; measure the tail of the path list 8418 ;; measure the tail of the path list
7867 (anpath (length (memq apathp tpath-alist))) 8419 (anpath (length (memq apathp tpath-alist)))
@@ -7895,6 +8447,11 @@ This expects NAME TYPE CLASS to be bound to the right values."
7895 ((> anpath bnpath) t) ; Who is first on path? 8447 ((> anpath bnpath) t) ; Who is first on path?
7896 (t nil)))) ; Default 8448 (t nil)))) ; Default
7897 8449
8450(defun idlwave-routine-source-file (source)
8451 (if (nth 2 source)
8452 (expand-file-name (nth 1 source) (nth 2 source))
8453 (nth 1 source)))
8454
7898(defun idlwave-downcase-safe (string) 8455(defun idlwave-downcase-safe (string)
7899 "Donwcase if string, else return unchanged." 8456 "Donwcase if string, else return unchanged."
7900 (if (stringp string) 8457 (if (stringp string)
@@ -7905,8 +8462,12 @@ This expects NAME TYPE CLASS to be bound to the right values."
7905 "How often is ELT in LIST?" 8462 "How often is ELT in LIST?"
7906 (length (delq nil (mapcar (lambda (x) (eq x elt)) list)))) 8463 (length (delq nil (mapcar (lambda (x) (eq x elt)) list))))
7907 8464
8465(defun idlwave-count-memq (elt alist)
8466 "How often is ELT a key in ALIST?"
8467 (length (delq nil (mapcar (lambda (x) (eq (car x) elt)) alist))))
8468
7908(defun idlwave-syslib-p (file) 8469(defun idlwave-syslib-p (file)
7909 "Non-nil of FILE is in the system library." 8470 "Non-nil if FILE is in the system library."
7910 (let* ((true-syslib (file-name-as-directory 8471 (let* ((true-syslib (file-name-as-directory
7911 (file-truename 8472 (file-truename
7912 (expand-file-name "lib" (idlwave-sys-dir))))) 8473 (expand-file-name "lib" (idlwave-sys-dir)))))
@@ -7918,9 +8479,20 @@ This expects NAME TYPE CLASS to be bound to the right values."
7918 (let ((true-dir (file-name-directory (file-truename file)))) 8479 (let ((true-dir (file-name-directory (file-truename file))))
7919 (assoc true-dir (idlwave-true-path-alist)))) 8480 (assoc true-dir (idlwave-true-path-alist))))
7920 8481
8482(defun idlwave-path-alist-add-flag (list-entry flag)
8483 "Add a flag to the path list entry, if not set."
8484 (let ((flags (cdr list-entry)))
8485 (add-to-list 'flags flag)
8486 (setcdr list-entry flags)))
8487
8488(defun idlwave-path-alist-remove-flag (list-entry flag)
8489 "Remove a flag to the path list entry, if set."
8490 (let ((flags (delq flag (cdr list-entry))))
8491 (setcdr list-entry flags)))
8492
7921(defun idlwave-true-path-alist () 8493(defun idlwave-true-path-alist ()
7922 "Return `idlwave-path-alist' alist with true-names. 8494 "Return `idlwave-path-alist' alist with true-names.
7923Info is cached, but relies on the functons setting `idlwave-path-alist' 8495Info is cached, but relies on the functions setting `idlwave-path-alist'
7924to reset the variable `idlwave-true-path-alist' to nil." 8496to reset the variable `idlwave-true-path-alist' to nil."
7925 (or idlwave-true-path-alist 8497 (or idlwave-true-path-alist
7926 (setq idlwave-true-path-alist 8498 (setq idlwave-true-path-alist
@@ -7966,7 +8538,8 @@ Assumes that point is at the beginning of the unit as found by
7966 (forward-sexp 2) 8538 (forward-sexp 2)
7967 (forward-sexp -1) 8539 (forward-sexp -1)
7968 (let ((begin (point))) 8540 (let ((begin (point)))
7969 (re-search-forward "[a-zA-Z][a-zA-Z0-9$_]+\\(::[a-zA-Z][a-zA-Z0-9$_]+\\)?") 8541 (re-search-forward
8542 "[a-zA-Z_][a-zA-Z0-9$_]+\\(::[a-zA-Z_][a-zA-Z0-9$_]+\\)?")
7970 (if (fboundp 'buffer-substring-no-properties) 8543 (if (fboundp 'buffer-substring-no-properties)
7971 (buffer-substring-no-properties begin (point)) 8544 (buffer-substring-no-properties begin (point))
7972 (buffer-substring begin (point))))) 8545 (buffer-substring begin (point)))))
@@ -7982,7 +8555,7 @@ Assumes that point is at the beginning of the unit as found by
7982 'imenu) 8555 'imenu)
7983 (error nil))))) 8556 (error nil)))))
7984 8557
7985;; Here we kack func-menu.el in order to support this new mode. 8558;; Here we hack func-menu.el in order to support this new mode.
7986;; The latest versions of func-menu.el already have this stuff in, so 8559;; The latest versions of func-menu.el already have this stuff in, so
7987;; we hack only if it is not already there. 8560;; we hack only if it is not already there.
7988(when (fboundp 'eval-after-load) 8561(when (fboundp 'eval-after-load)
@@ -8005,12 +8578,12 @@ Assumes that point is at the beginning of the unit as found by
8005 (start-process "idldeclient" nil 8578 (start-process "idldeclient" nil
8006 idlwave-shell-explicit-file-name "-c" "-e" 8579 idlwave-shell-explicit-file-name "-c" "-e"
8007 (buffer-file-name) "&")) 8580 (buffer-file-name) "&"))
8008 8581
8009(defun idlwave-launch-idlhelp () 8582(defun idlwave-launch-idlhelp ()
8010 "Start the IDLhelp application." 8583 "Start the IDLhelp application."
8011 (interactive) 8584 (interactive)
8012 (start-process "idlhelp" nil idlwave-help-application)) 8585 (start-process "idlhelp" nil idlwave-help-application))
8013 8586
8014;; Menus - using easymenu.el 8587;; Menus - using easymenu.el
8015(defvar idlwave-mode-menu-def 8588(defvar idlwave-mode-menu-def
8016 `("IDLWAVE" 8589 `("IDLWAVE"
@@ -8065,15 +8638,15 @@ Assumes that point is at the beginning of the unit as found by
8065 ["9 Class Name" idlwave-complete-class t])) 8638 ["9 Class Name" idlwave-complete-class t]))
8066 ("Routine Info" 8639 ("Routine Info"
8067 ["Show Routine Info" idlwave-routine-info t] 8640 ["Show Routine Info" idlwave-routine-info t]
8068 ["Online Context Help" idlwave-context-help (idlwave-help-directory)] 8641 ["Online Context Help" idlwave-context-help t]
8069 "--" 8642 "--"
8070 ["Find Routine Source" idlwave-find-module t] 8643 ["Find Routine Source" idlwave-find-module t]
8071 ["Resolve Routine" idlwave-resolve (featurep 'idlw-shell)] 8644 ["Resolve Routine" idlwave-resolve (featurep 'idlw-shell)]
8072 "--" 8645 "--"
8073 ["Update Routine Info" idlwave-update-routine-info t] 8646 ["Update Routine Info" idlwave-update-routine-info t]
8074 "--" 8647 "--"
8075 "IDL Library Catalog" 8648 "IDL User Catalog"
8076 ["Select Catalog Directories" (idlwave-create-libinfo-file nil) t] 8649 ["Select Catalog Directories" (idlwave-create-user-catalog-file nil) t]
8077 ["Scan Directories" (idlwave-update-routine-info '(16)) 8650 ["Scan Directories" (idlwave-update-routine-info '(16))
8078 (and idlwave-path-alist (not idlwave-catalog-process))] 8651 (and idlwave-path-alist (not idlwave-catalog-process))]
8079 ["Scan Directories &" (idlwave-update-routine-info '(64)) 8652 ["Scan Directories &" (idlwave-update-routine-info '(64))
@@ -8097,7 +8670,7 @@ Assumes that point is at the beginning of the unit as found by
8097 ("Customize" 8670 ("Customize"
8098 ["Browse IDLWAVE Group" idlwave-customize t] 8671 ["Browse IDLWAVE Group" idlwave-customize t]
8099 "--" 8672 "--"
8100 ["Build Full Customize Menu" idlwave-create-customize-menu 8673 ["Build Full Customize Menu" idlwave-create-customize-menu
8101 (fboundp 'customize-menu-create)]) 8674 (fboundp 'customize-menu-create)])
8102 ("Documentation" 8675 ("Documentation"
8103 ["Describe Mode" describe-mode t] 8676 ["Describe Mode" describe-mode t]
@@ -8114,22 +8687,22 @@ Assumes that point is at the beginning of the unit as found by
8114 '("Debug" 8687 '("Debug"
8115 ["Start IDL shell" idlwave-shell t] 8688 ["Start IDL shell" idlwave-shell t]
8116 ["Save and .RUN buffer" idlwave-shell-save-and-run 8689 ["Save and .RUN buffer" idlwave-shell-save-and-run
8117 (and (boundp 'idlwave-shell-automatic-start) 8690 (and (boundp 'idlwave-shell-automatic-start)
8118 idlwave-shell-automatic-start)])) 8691 idlwave-shell-automatic-start)]))
8119 8692
8120(if (or (featurep 'easymenu) (load "easymenu" t)) 8693(if (or (featurep 'easymenu) (load "easymenu" t))
8121 (progn 8694 (progn
8122 (easy-menu-define idlwave-mode-menu idlwave-mode-map 8695 (easy-menu-define idlwave-mode-menu idlwave-mode-map
8123 "IDL and WAVE CL editing menu" 8696 "IDL and WAVE CL editing menu"
8124 idlwave-mode-menu-def) 8697 idlwave-mode-menu-def)
8125 (easy-menu-define idlwave-mode-debug-menu idlwave-mode-map 8698 (easy-menu-define idlwave-mode-debug-menu idlwave-mode-map
8126 "IDL and WAVE CL editing menu" 8699 "IDL and WAVE CL editing menu"
8127 idlwave-mode-debug-menu-def))) 8700 idlwave-mode-debug-menu-def)))
8128 8701
8129(defun idlwave-customize () 8702(defun idlwave-customize ()
8130 "Call the customize function with idlwave as argument." 8703 "Call the customize function with idlwave as argument."
8131 (interactive) 8704 (interactive)
8132 ;; Try to load the code for the shell, so that we can customize it 8705 ;; Try to load the code for the shell, so that we can customize it
8133 ;; as well. 8706 ;; as well.
8134 (or (featurep 'idlw-shell) 8707 (or (featurep 'idlw-shell)
8135 (load "idlw-shell" t)) 8708 (load "idlw-shell" t))
@@ -8140,11 +8713,11 @@ Assumes that point is at the beginning of the unit as found by
8140 (interactive) 8713 (interactive)
8141 (if (fboundp 'customize-menu-create) 8714 (if (fboundp 'customize-menu-create)
8142 (progn 8715 (progn
8143 ;; Try to load the code for the shell, so that we can customize it 8716 ;; Try to load the code for the shell, so that we can customize it
8144 ;; as well. 8717 ;; as well.
8145 (or (featurep 'idlw-shell) 8718 (or (featurep 'idlw-shell)
8146 (load "idlw-shell" t)) 8719 (load "idlw-shell" t))
8147 (easy-menu-change 8720 (easy-menu-change
8148 '("IDLWAVE") "Customize" 8721 '("IDLWAVE") "Customize"
8149 `(["Browse IDLWAVE group" idlwave-customize t] 8722 `(["Browse IDLWAVE group" idlwave-customize t]
8150 "--" 8723 "--"
@@ -8192,7 +8765,7 @@ This function was written since `list-abbrevs' looks terrible for IDLWAVE mode."
8192 (let ((table (symbol-value 'idlwave-mode-abbrev-table)) 8765 (let ((table (symbol-value 'idlwave-mode-abbrev-table))
8193 abbrevs 8766 abbrevs
8194 str rpl func fmt (len-str 0) (len-rpl 0)) 8767 str rpl func fmt (len-str 0) (len-rpl 0))
8195 (mapatoms 8768 (mapatoms
8196 (lambda (sym) 8769 (lambda (sym)
8197 (if (symbol-value sym) 8770 (if (symbol-value sym)
8198 (progn 8771 (progn
@@ -8218,7 +8791,7 @@ This function was written since `list-abbrevs' looks terrible for IDLWAVE mode."
8218 (with-output-to-temp-buffer "*Help*" 8791 (with-output-to-temp-buffer "*Help*"
8219 (if arg 8792 (if arg
8220 (progn 8793 (progn
8221 (princ "Abbreviations and Actions in IDLWAVE-Mode\n") 8794 (princ "Abbreviations and Actions in IDLWAVE-Mode\n")
8222 (princ "=========================================\n\n") 8795 (princ "=========================================\n\n")
8223 (princ (format fmt "KEY" "REPLACE" "HOOK")) 8796 (princ (format fmt "KEY" "REPLACE" "HOOK"))
8224 (princ (format fmt "---" "-------" "----"))) 8797 (princ (format fmt "---" "-------" "----")))
@@ -8241,19 +8814,15 @@ This function was written since `list-abbrevs' looks terrible for IDLWAVE mode."
8241;; Add .pro files to speedbar for support, if it's loaded 8814;; Add .pro files to speedbar for support, if it's loaded
8242(eval-after-load "speedbar" '(speedbar-add-supported-extension ".pro")) 8815(eval-after-load "speedbar" '(speedbar-add-supported-extension ".pro"))
8243 8816
8244;; Try to load online help, but catch any errors.
8245(condition-case nil
8246 (idlwave-require-online-help)
8247 (error nil))
8248
8249;; Set an idle timer to load the routine info. 8817;; Set an idle timer to load the routine info.
8250;; Will only work on systems which support this. 8818;; Will only work on systems which support this.
8251(or idlwave-routines (idlwave-start-load-rinfo-timer)) 8819(or idlwave-routines (idlwave-start-load-rinfo-timer))
8252 8820
8821;;;###autoload(add-to-list 'auto-mode-alist '("\\.[Pp][Rr][Oo]\\'" . idlwave-mode))
8822
8253;; Run the hook 8823;; Run the hook
8254(run-hooks 'idlwave-load-hook) 8824(run-hooks 'idlwave-load-hook)
8255 8825
8256(provide 'idlwave) 8826(provide 'idlwave)
8257 8827
8258;;; arch-tag: f77f3b0c-c37c-424f-a328-0886fd42b6fb
8259;;; idlwave.el ends here 8828;;; idlwave.el ends here