Many
Manuals
search
Categories
Brands
Home
ITT Rule
Software manuals
IDL Version 7.0
User Manual
ITT Rule IDL Version 7.0 User Manual Page 292
Download
Share
Sharing
Add to my manuals
Print
Page
/
430
Table of contents
BOOKMARKS
Rated
.
/ 5. Based on
customer reviews
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
292
Ch
apt
er 1
2: U
sing i
Tool
User
In
ter
fac
e Ele
men
ts
Informatio
nal Me
ssages
iT
ool D
ev
el
oper
’
s Guid
e
1
2
...
287
288
289
290
291
292
293
294
295
296
297
...
429
430
Programming
1
Restricted Rights Notice
2
Limitation of Warranty
2
Export Control Information
2
Acknowledgments
2
Contents
3
Overview of iTools
9
What are iTools?
10
About this Manual
12
About the iTools Code Base
13
Framework
15
Part I: Understanding
17
Architecture
19
IDLitVisualization Classes
23
IDLitTool Classes
23
IDLitData Classes
24
IDLitReader Classes
24
IDLitWriter Classes
25
IDLitOperation Classes
25
IDLitManipulator Classes
26
Atomic Graphic Objects
26
• IDLgrPlot • IDLgrText
27
• IDLgrPolygon • IDLgrVolume
27
MY DATA object is visible to
28
Using Identifiers
29
Retrieving Identifiers
29
Proxy Identifiers
30
Object Descriptors
30
OPERATIONS/OPERATIONS/ROTATE
31
FILE READERS/ASCII TEXT
34
FILE WRITERS/WINDOWS BITMAP
34
MANIPULATORS/ROTATE
34
OPERATIONS/FILE/OPEN
34
TOOLBAR/FILE/OPEN
35
WINDOW/VIEW_1
35
Registering Components
38
Specifying Object Identifiers
39
Proxy Registration
39
TOOLBAR/EDIT/UNDO:
40
Sending Notifications
41
Notification Messages
42
Observers
43
System Resources
44
Help System
45
Format of Help Entries
46
Data Management
51
52 Chapter 3: Data Management
52
Chapter 3: Data Management 53
53
Composite Data Types
54
Chapter 3: Data Management 55
55
Data Objects
56
Data Containers
56
Parameter Sets
57
Predefined iTool Data Classes
58
IDLitDataIDLImage
59
IDLitDataIDLImagePixels
59
IDLitDataIDLPalette
59
IDLitDataIDLPolyvertex
59
IDLitDataIDLVector
60
Parameters
61
ParmameterName
62
DataType1
62
DataTypeN
62
Data Type Matching
63
64 Chapter 3: Data Management
64
Data Update Mechanism
65
66 Chapter 3: Data Management
66
Property Management
67
What is a Property?
68
Properties vs. Preferences
68
How are Properties Displayed?
69
Property Data Types
69
Property Registration
70
Property Identifiers
70
Property Attributes
70
Property Aggregation
70
User Defined Property Types
73
Pre-Registered Properties
75
USERDEF (Get, Set)
80
VALID_RANGE (Get, Set)
80
Intersection
82
Property Update Mechanism
84
Part II: Using the
87
Creating an iTool
89
Overview of iTool Creation
90
Creating a New iTool Class
91
PRO FirstExampleTool__Define
92
Registering Visualizations
95
Registering Operations
96
Registering Manipulators
97
ReaderType_Class_Name
98
WriterType_Class_Name
98
Unregistering Components
100
Registering a New Tool Class
101
Arguments
103
Keywords
103
Creating Data Objects
104
Handling Errors
105
Creating an iTool Instance
106
Example: Simple iTool
108
Launch Routine
110
Launch Routine Discussion
111
'Palette'
112
"Example 1 Tool"
112
Creating a Visualization
113
IDLitVisAxis
115
IDLitVisColorbar
115
IDLitVisContour
115
IDLitVisHistogram
115
IDLitVisImage
116
IDLitVisImagePlane
116
IDLitVisIntVol
116
IDLitVisIsosurface
116
IDLitVisLegend
117
IDLitVisLegendItem
117
IDLitVisLight
117
IDLitVisLineProfile
117
IDLitVisMapGrid
117
IDLitVisPlot
118
IDLitVisPlotProfile
118
IDLitVisPlot3D
118
IDLitVisPolygon
118
IDLitVisPolyline
119
IDLitVisRoi
119
IDLitVisShapePoint
119
IDLitVisShapePolygon
119
IDLitVisShapePolyline
119
IDLitVisSurface
120
IDLitVisText
120
IDLitVisVolume
120
ObjectClass
121
Creating an Init Method
123
Superclass Initialization
124
Return Value
125
Registering Parameters
125
Registering Properties
125
PropertyIdentifier
126
TypeCode] $
126
[, ATTRIBUTE = value]
126
Object_Reference
126
Setting Property Attributes
127
Example Init Method
128
Creating a Cleanup Method
130
Creating a GetProperty Method
131
Creating a SetProperty Method
132
ExampleVis object’s
133
_extra structure
133
ExampleVis
135
Specifying Useful Properties
136
Finding the Identifier String
138
Class Definition File
140
Init Method
141
OnDataChangeUpdate Method
142
OnDataDisconnect Method
144
Creating an Operation
145
Predefined iTool Operations
148
Data-Centric Operations
150
Generalized Operations
151
SomeOperationClass
156
Creating an Execute Method
159
) ? 255b : MAX(data)
160
) ? 0b : MIN(data)
160
Example SetProperty Method
163
How an IDLitOperation Works
165
Creating an IDLitOperation
165
Creating a DoAction Method
172
Example UndoOperation Method
178
Example RedoOperation Method
179
Operations and Macros
181
Registering an Operation
182
Unregistering an Operation
184
Execute Method
188
GetProperty Method
189
SetProperty Method
190
Creating a Manipulator
193
Manipulator Visuals
195
Predefined iTool Manipulators
198
Image Manipulators
199
Plot and Contour Manipulators
200
Surface Manipulators
200
Volume Manipulators
201
The RecordUndoValues Method
203
The CommitUndoValues Method
203
Using the ButtonPress Field
204
Creating a New Manipulator
206
The Manipulator Init Function
208
Creating Mouse Event Methods
213
Creating an OnWheel Method
216
Example OnWheel Method
217
Creating an OnKeyboard Method
218
ExampleManip operation:
221
Registering a Manipulator
223
Unregistering a Manipulator
225
Creating a File Reader
229
Predefined iTool File Readers
231
IDLitReadISV
232
IDLitReadJPEG
232
IDLitReadJPEG2000
232
IDLitReadPICT
232
IDLitReadPNG
233
IDLitReadShapefile
233
IDLitReadTIFF
233
IDLitReadWAV
233
Creating a New File Reader
234
SomeFileReaderClass
237
Extensions
237
Creating an IsA Method
242
Creating a GetData Method
243
Registering a File Reader
245
Unregistering a File Reader
246
Example: TIFF File Reader
248
IsA Method
250
GetData Method
250
Creating a File Writer
253
Predefined iTool File Writers
255
IDLitWriteEMF
256
IDLitWriteEPS
256
IDLitWriteISV
256
IDLitWriteJPEG
256
IDLitWriteJPEG2000
257
IDLitWritePICT
257
IDLitWritePNG
257
IDLitWriteTIFF
257
Creating a New File Writer
258
Creating a SetData Method
266
Example SetData Method
267
Registering a File Writer
269
Unregistering a File Writer
270
Example: TIFF File Writer
272
SetData Method
273
RETURN, 1 ; success
275
Part III: Modifying the
277
User Interface Objects
282
Widget Registration Methods
283
AddOnNotifyObserver Method
283
DoAction Method
283
Using iTool User
285
Interface Elements
285
The iTools Feedback Mechanism
286
Status Messages
287
PromptUserYesNo
289
PromptUserText
290
Informational Messages
291
Creating a User
293
Interface Service
293
Predefined iTool UI Services
295
Operation Preview Service
296
Creating a New UI Service
297
and yoffset values when
298
YOFFSET = yoffset)
299
ScaleFactor user
300
Registering a UI Service
302
ScaleFactor user interface
304
Widget Creation Function
306
Event-handling Routines
308
Invoking the opName Operation
310
Interface Panel
311
Creating and Using a UI Panel
312
Creating a UI Panel Interface
313
Adding Observers
315
Create the Widget Hierarchy
315
Create Event Handlers
316
Creating Callback Routines
318
Simple UI Panel” on page 322
319
Registering a UI Panel
320
Example: A Simple UI Panel
322
Panel Creation Routine
323
Panel Event Handler Routine
325
Panel Callback Routine
327
Panel Type Specification
328
Creating a Custom
331
What About Using a UI Panel?
333
What You Will Need to Create
334
Create or Choose an iTool
335
Create the Widget Interface
335
Create Callback Routines
336
Create a Cleanup Routine
336
Routine Signature
340
Error Checking
341
Top Level Base
341
User Interface Object
341
Widget Creation and Layout
342
User Interface Registration
342
Handling Widget Destruction
342
Adding Menus
344
Resizing Menus
345
Adding a Toolbar
346
Modifying Toolbar Contents
347
Resizing Toolbars
347
Adding an iTool Window
348
Resizing iTool Windows
349
Adding a Status Bar
350
Adding a User Interface Panel
351
Handling Callbacks
352
Handling Resize Events
354
Handling Shutdown Events
356
Writing a Cleanup Routine
357
Calling the Cleanup Routine
357
Register Your User Interface
358
Use Your User Interface
358
Discussion
366
Controlling iTools from
379
How to Control an iTool
380
FindIdentifier Examples
382
Property Value Information
386
Changing Property Values
389
Using the SetProperty Method
390
Running Operations
391
Selecting Items in the iTool
393
Replacing Data in an iTool
394
Using the SetData Method
395
Appendix B
397
CW_ITMENU
399
Version History
402
See Also
403
CW_ITPANEL
404
CW_ITSTATUSBAR
408
CW_ITTOOLBAR
411
CW_ITWINDOW
416
Index iTool Developer’s Guide
420
Comments to this Manuals
No comments
Publish
Print document
Print page 292
Comments to this Manuals