CLASS_NAME: itoolwaprofile PURPOSE (one line): To plot profiles of an extracted array of data. CATEGORY: Widgets SUPERCLASSES: SUBCLASSES: CREATION: See itoolwaprofile::init METHODS: itoolwaprofile::cleanup itoolwaprofile::process itoolwaprofile::refresh itoolwaprofile::getproperty itoolwaprofile::realize itoolwaprofile::init MODIFICATION HISTORY: 2004/04, Written by Doug Loucks, Consultant for Lowell Observatory. (See cw_pfile.pro) Removed all remnants of compound-widget code; replaced with stand-alone code that is compatible with the new object-oriented version of itool. Modified the usage of the state-structure variable. A pointer to the state structure is stored in the object instance of this tool and this tool's object reference is stored in its top-level base. Modified the incoming argument. Now, it is the object reference of the host instance of itool, which is stored in this tool's object instance. ----------------------------------------------------------------------------- METHOD NAME: itoolwaprofile::cleanup PURPOSE: Self-explanatory CALLING SEQUENCE: obj_destroy, oref INPUTS: oref : An itoolwaprofile object reference. OPTIONAL INPUTS: KEYWORD PARAMETERS: OUTPUTS: OPTIONAL OUTPUTS: COMMON BLOCKS: SIDE EFFECTS: RESTRICTIONS: PROCEDURE: EXAMPLE: MODIFICATION HISTORY: ----------------------------------------------------------------------------- METHOD NAME: itoolwaprofile::process PURPOSE: To perform all processing for the draw widget and the hardcopy (Post Script) device. CALLING SEQUENCE: oref->process INPUTS: OPTIONAL INPUTS: KEYWORD PARAMETERS: HARDCOPY : Set this keyword to print a copy of the graphics display to the default printer device. OUTPUTS: OPTIONAL OUTPUTS: COMMON BLOCKS: SIDE EFFECTS: RESTRICTIONS: PROCEDURE: EXAMPLE: MODIFICATION HISTORY: ----------------------------------------------------------------------------- METHOD NAME: itoolwaprofile::refresh PURPOSE: To refresh this widget. CALLING SEQUENCE: oref->refresh, value INPUTS: value : A structure defined as {image:array, xset:xs, yset:ys} where "array" is an array of data, "xs" and "ys" are the coordinates of the lower-left corner of "array" in a larger array from which "array" was extracted. OPTIONAL INPUTS: KEYWORD PARAMETERS: TITLE : Set this keyword to a string containing the title to be displayed on the title bar of the main widget. OUTPUTS: OPTIONAL OUTPUTS: COMMON BLOCKS: SIDE EFFECTS: RESTRICTIONS: PROCEDURE: EXAMPLE: MODIFICATION HISTORY: ----------------------------------------------------------------------------- METHOD NAME: itoolwaprofile::getproperty PURPOSE: To retrieves "properties" defined for the itoolwaprofile object class. Properties are specified as keyword arguments. CALLING SEQUENCE: oref->getproperty INPUTS: OPTIONAL INPUTS: KEYWORD PARAMETERS: PSTATE : Set this keyword to a named variable into which will be placed a pointer to the state structure. OUTPUTS: OPTIONAL OUTPUTS: COMMON BLOCKS: SIDE EFFECTS: RESTRICTIONS: PROCEDURE: EXAMPLE: MODIFICATION HISTORY: ----------------------------------------------------------------------------- METHOD NAME: itoolwaprofile::realize PURPOSE: To realize a new, managed instance of the itoolwaprofile object class. CALLING SEQUENCE: oref->realize INPUTS: OPTIONAL INPUTS: KEYWORD PARAMETERS: NO_BLOCK : Set this keyword to cause the widget application to run in non-blocked mode. OUTPUTS: OPTIONAL OUTPUTS: COMMON BLOCKS: SIDE EFFECTS: RESTRICTIONS: PROCEDURE: EXAMPLE: MODIFICATION HISTORY: ----------------------------------------------------------------------------- METHOD NAME: itoolwaprofile::init PURPOSE: To initialize a new instance of the itoolwaprofile object class. CALLING SEQUENCE: oref = obj_new('itoolwaprofile', oitool) INPUTS: oitool : An object reference of a host instance of the object class "itool." OPTIONAL INPUTS: KEYWORD PARAMETERS: GROUP_LEADER = The group leader for this tool. HCTITLE = Title of Hard Copy. PLATESCALE = Plate Scale in arcseconds per pixel (used at display time). If supplied and non-zero, display the bottom axis in arcseconds and the top axis in pixels, else display the bottom axis in pixels. TITLE = The string to be displayed on the title bar. This keyword may be specified on the call to the "refresh" method, as well, to update the title dynamically. OUTPUTS: oref = The object reference of the new instance of the itoolwaprofile object class. OPTIONAL OUTPUTS: COMMON BLOCKS: SIDE EFFECTS: RESTRICTIONS: PROCEDURE: After creating a new instance of this object-oriented widget application, it must be realized and then be given a "value" to display. EXAMPLE: oref = obj_new('itoolwaprofile', oitool, GROUP_LEADER=group_leader) oref->realize oref->refresh, {image:array, xset:xs, yset:ys}, TITLE=title MODIFICATION HISTORY: -----------------------------------------------------------------------------