operators
Class PSClosepath

java.lang.Object
  extended byoperators.PSClosepath
All Implemented Interfaces:
PSObject, PSOperator, PSPathOperator

public class PSClosepath
extends java.lang.Object
implements PSPathOperator

Implements PSPathOperator interface.

Methods such as getOperatorToken() are inherited from PSPathOperator interface which, in turn, are inherited from PSOperator. This concrete class is responsible for closing the current path by connecting the end and the beginning with a line.


Constructor Summary
PSClosepath()
           
 
Method Summary
 void action(PSStack s, PSPath p)
          Creates a new DrawableLine and adds it to the contents of the Graphics Stack if the current position is not null.
 java.lang.String getOperatorToken()
          Returns the token identifying this operator.
 boolean isValid(PSStack s)
          Checks if it valid to use this operator now.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PSClosepath

public PSClosepath()
Method Detail

getOperatorToken

public java.lang.String getOperatorToken()
Returns the token identifying this operator.

Returns the name of the operand that this concrete class simulates, here "closepath".

Precondition : A valid operator class has been created.
Postcondition : A string is returned, labeling the semantics of this class.

Specified by:
getOperatorToken in interface PSOperator
Returns:
The token identifying this operator.

isValid

public boolean isValid(PSStack s)
                throws PSSyntaxException
Checks if it valid to use this operator now.

The closing of a path can occur anytime (sometimes with no obvious result).

Precondition : A valid instance of PSStack.
Postcondition : A reply to the question whether the operator can perfom its defined behaviour.

Specified by:
isValid in interface PSOperator
Parameters:
s - A reference to PSStack instance.
Returns:
True if the operation can be executed, false otherwise.
Throws:
PSSyntaxException - The syntax of the token is wrong.

action

public void action(PSStack s,
                   PSPath p)
Creates a new DrawableLine and adds it to the contents of the Graphics Stack if the current position is not null.

Precondition : A valid Runtime Stack and Graphics Stack are given to method.
Postcondition : The line will be added to the contents of the Graphics Stack from the current position to the last move, if the current position is not null. It also resets the variable holding the current position.

Specified by:
action in interface PSPathOperator
Parameters:
s - The Runtime Stack which serves no actual purpose here.
p - The Graphics Stack.