[operations] [attributes] [fields] [template] [definition]
[implementation] [documentation]
To use the search tool you need to use a browser which supports JAVA (c)

[next] [prev] [superclass] [next peer] [prev peer] [subclass] [index] [hierarchy]

AttributeStepListChain

inherits from Object

Object <- AttributeStepListChain



Operations

Get list of all operations

AddDestroyableTarget
ClearLists
SetUpNewChain
SwitchToNextList
SwitchToPreviousList


Attributes

Get list of all attributes

CurrentEditTarget
CurrentStepList
NextList
NextTarget
PreviousList
PreviousTarget


Fields

Field Type
AttributeStepListChain: stepListChain: ObjectList
targetList: ObjectList
destroyableTargets: ObjectList
currentListIndex: Unsigned


Instance template

instance AttributeStepListChain tag;
  stepListChain: nilObject;
     targetList: nilObject;
destroyableTargets: nilObject;
currentListIndex: 0;
end instance;

Class definition

Define Class AttributeStepListChain;
    inherits from Object;
    
    field stepListChain:        ObjectList;
    field targetList:           ObjectList;
    field destroyableTargets:   ObjectList;
    field currentListIndex: Unsigned;
    
    operation SetUpNewChain(newListChain: Object; newTargetList: Object);
        // call to clear out any saved chain of step lists and
        // set up your chain; newListChain and newTargetList can be single
        // objects or object lists
        
    operation AddDestroyableTarget(targetToDestroy: Object);
        // call to add <targetToDestroy> to destroyableTargets list, which gets cleared by ClearLists
        // called by AttributeStepList_EditAttribute
    operation ClearLists();
        // call to clear out the step list chain and the target list, and destroy objects in destroyableTargets
        // called by AttributeWindow when finished editing 
    operation SwitchToNextList(): AttributeWindow;
    operation SwitchToPreviousList(): AttributeWindow;
        // attribute editing machinery calls these to move
        // from one list in the chain to the next
    
    attribute CurrentStepList: AttributeStepList;
        // call to get the current step list
    attribute CurrentEditTarget: Object;
        // call to get the target object for the current step list  
    
    attribute NextList: AttributeStepList;
        // call to get the next step list in the chain
        // returns nilObject if there is no next list
        // inheritors of EditAttributeClient call setter from their
        // overrides of NextStepList
    attribute PreviousList: AttributeStepList;
        // call to get the previous step list in the chain
        // returns nilObject if there is no previous list
        // inheritors of EditAttributeClient call setter from their
        // overrides of PreviousStepList
    
    attribute NextTarget: Object;
        // the target object for the next step list in the chain
    attribute PreviousTarget: Object;
        // the target object for the previous step list in the chain
    
end class;