net.sf.freecol.client.gui.action
Class ScaleMapAction

java.lang.Object
  extended by javax.swing.AbstractAction
      extended by net.sf.freecol.client.gui.action.FreeColAction
          extended by net.sf.freecol.client.gui.action.ScaleMapAction
All Implemented Interfaces:
java.awt.event.ActionListener, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, javax.swing.Action, Option<FreeColAction>

public class ScaleMapAction
extends FreeColAction

An action for scaling a map. This action is a part of the map editor.

See Also:
Serialized Form

Nested Class Summary
private  class ScaleMapAction.MapSize
           
 
Nested classes/interfaces inherited from class net.sf.freecol.client.gui.action.FreeColAction
FreeColAction.InnerMenuKeyListener
 
Field Summary
static java.lang.String id
           
 
Fields inherited from class net.sf.freecol.client.gui.action.FreeColAction
ACTION_ID, BUTTON_DISABLED_IMAGE, BUTTON_IMAGE, BUTTON_PRESSED_IMAGE, BUTTON_ROLLOVER_IMAGE, freeColClient, gui, NO_MNEMONIC
 
Fields inherited from class javax.swing.AbstractAction
changeSupport, enabled
 
Fields inherited from interface javax.swing.Action
ACCELERATOR_KEY, ACTION_COMMAND_KEY, DEFAULT, DISPLAYED_MNEMONIC_INDEX_KEY, LARGE_ICON_KEY, LONG_DESCRIPTION, MNEMONIC_KEY, NAME, SELECTED_KEY, SHORT_DESCRIPTION, SMALL_ICON
 
Constructor Summary
ScaleMapAction(FreeColClient freeColClient, GUI gui)
          Creates a new ScaleMapAction.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
          Applies this action.
private  void scaleMapTo(int width, int height)
          Scales the current map into the specified size.
protected  boolean shouldBeEnabled()
          Checks if this action should be enabled.
private  ScaleMapAction.MapSize showMapSizeDialog()
          Displays a dialog for choosing the new map size.
 
Methods inherited from class net.sf.freecol.client.gui.action.FreeColAction
addImageIcons, clone, getAccelerator, getFreeColClient, getId, getKeyStrokeText, getMenuKeyListener, getMnemonic, getName, getShortDescription, getValue, getXMLElementTagName, hasOrderButtons, readFromXML, readFromXMLImpl, setAccelerator, setMnemonic, setValue, toString, toXML, toXMLImpl, update
 
Methods inherited from class javax.swing.AbstractAction
addPropertyChangeListener, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

id

public static final java.lang.String id
See Also:
Constant Field Values
Constructor Detail

ScaleMapAction

ScaleMapAction(FreeColClient freeColClient,
               GUI gui)
Creates a new ScaleMapAction.

Parameters:
freeColClient - The main controller object for the client.
gui -
Method Detail

shouldBeEnabled

protected boolean shouldBeEnabled()
Checks if this action should be enabled.

Overrides:
shouldBeEnabled in class FreeColAction
Returns:
false if there is no active map.

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Applies this action.

Parameters:
e - The ActionEvent.

showMapSizeDialog

private ScaleMapAction.MapSize showMapSizeDialog()
Displays a dialog for choosing the new map size.

Returns:
The size of the new map.

scaleMapTo

private void scaleMapTo(int width,
                        int height)
Scales the current map into the specified size. The current map is given by freeColClient.getGame().getMap().

Parameters:
width - The width of the resulting map.
height - The height of the resulting map.