jfig.commands
Class SnapToGridCommand

java.lang.Object
  extended byjfig.commands.Command
      extended byjfig.commands.SnapToGridCommand

public class SnapToGridCommand
extends Command

align jfig objects to the editor grid.

SnapToGridCommand allows the user to snap object control points (rectangle or image corners, polyline or spline control points, etc.) to the current "magnetic" editor snap grid. Note that all control points of the selected object will be snapped to the current editor grid.

This operation is useful to realign scaled objects, to align merged objects from existings files, and to align objects after changing the editor units. It also helps to align objects after changing the grid, e.g. from no snapping to 1/8 grid snapping.


Field Summary
protected  java.awt.Point[] newPoints
           
protected  FigObject object
           
protected  java.awt.Point[] oldPoints
           
 
Fields inherited from class jfig.commands.Command
editor, objectCanvas, ready
 
Constructor Summary
SnapToGridCommand(FigBasicEditor editor, FigCanvas objectCanvas)
           
 
Method Summary
 void execute()
          execute the current editor command
 java.lang.String getDescription()
          one-line description of this command
 FigObject[] getModifiedObjects()
          return an array-wrapped reference to the FigObject whose vertices are (to be) grid-snapped by this command.
 void mousePressed(FigCanvasEvent evt)
          select the object to snap to the grid.
 java.lang.String toString()
          return a (possibly verbose) description of this Command object
 void undo()
          undo this command
 
Methods inherited from class jfig.commands.Command
cancel, isReady, message, notifyEditor, statusMessage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

oldPoints

protected java.awt.Point[] oldPoints

newPoints

protected java.awt.Point[] newPoints

object

protected FigObject object
Constructor Detail

SnapToGridCommand

public SnapToGridCommand(FigBasicEditor editor,
                         FigCanvas objectCanvas)
Method Detail

getModifiedObjects

public FigObject[] getModifiedObjects()
return an array-wrapped reference to the FigObject whose vertices are (to be) grid-snapped by this command. The FigObject reference may be null.

Overrides:
getModifiedObjects in class Command

execute

public void execute()
Description copied from class: Command
execute the current editor command

This method is empty for class Command.

Overrides:
execute in class Command

undo

public void undo()
Description copied from class: Command
undo this command

Try to undo this command as far as possible. Don't try to undo() a command that has never been execute()d before. This method is empty for class Command.

Overrides:
undo in class Command

mousePressed

public void mousePressed(FigCanvasEvent evt)
select the object to snap to the grid.

This method does not currently support stacked object - the topmost/first found object is used always.

Overrides:
mousePressed in class Command

getDescription

public java.lang.String getDescription()
Description copied from class: Command
one-line description of this command

return a one-line desription of this command, e.g. to label the undo/redo buttons, if any

Overrides:
getDescription in class Command

toString

public java.lang.String toString()
Description copied from class: Command
return a (possibly verbose) description of this Command object

Overrides:
toString in class Command