com.jasperassistant.designer.viewer.actions
Class AbstractReportViewerAction

java.lang.Object
  extended byorg.eclipse.jface.action.Action
      extended bycom.jasperassistant.designer.viewer.actions.AbstractReportViewerAction
All Implemented Interfaces:
java.util.EventListener, org.eclipse.jface.action.IAction, IReportViewerListener
Direct Known Subclasses:
AbstractExportAction, ExportMenuAction, FirstPageAction, LastPageAction, NativePrintAction, NextPageAction, PreviousPageAction, PrintAction, ReloadAction, ZoomActualSizeAction, ZoomFitPageAction, ZoomFitPageWidthAction, ZoomInAction, ZoomOutAction

public abstract class AbstractReportViewerAction
extends org.eclipse.jface.action.Action
implements IReportViewerListener

Base class for report viewer actions

Author:
Peter Severin (peter_p_s@users.sourceforge.net)

Field Summary
 
Fields inherited from interface org.eclipse.jface.action.IAction
AS_CHECK_BOX, AS_DROP_DOWN_MENU, AS_PUSH_BUTTON, AS_RADIO_BUTTON, AS_UNSPECIFIED, CHECKED, DESCRIPTION, ENABLED, IMAGE, RESULT, TEXT, TOOL_TIP_TEXT
 
Constructor Summary
AbstractReportViewerAction(IReportViewer viewer)
          Constructs the action by specifying the report viewer to associate with the action.
AbstractReportViewerAction(IReportViewer viewer, int style)
          Constructs the action by specifying the report viewer to associate with the action.
 
Method Summary
protected abstract  boolean calculateEnabled()
          Calculates the enablement condition
 void dispose()
          An explicit dispose method that must be called in case when the action is removed from its container dynamically (as opposed to the static toolbar/menu constructed only once).
protected  IReportViewer getReportViewer()
          Returns the reference to the report viewer associated to the action
 void run()
           
protected  void runBusy()
          Subclasses can override this method to run the action with busy cursor.
 void viewerStateChanged(ReportViewerEvent evt)
          This method is invoked when the state of the report viewer has changed.
 
Methods inherited from class org.eclipse.jface.action.Action
addPropertyChangeListener, convertAccelerator, convertAccelerator, findKeyCode, findKeyString, findModifier, findModifierString, firePropertyChange, firePropertyChange, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isEnabled, notifyResult, removeAcceleratorText, removeMnemonics, removePropertyChangeListener, runWithEvent, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractReportViewerAction

public AbstractReportViewerAction(IReportViewer viewer)
Constructs the action by specifying the report viewer to associate with the action.

Parameters:
viewer - the report viewer

AbstractReportViewerAction

public AbstractReportViewerAction(IReportViewer viewer,
                                  int style)
Constructs the action by specifying the report viewer to associate with the action. An additional style style parameter allows to customize the action style.

Parameters:
viewer - the report viewer
style - action style
See Also:
IAction
Method Detail

calculateEnabled

protected abstract boolean calculateEnabled()
Calculates the enablement condition

Returns:
true if the action should be enabled

viewerStateChanged

public void viewerStateChanged(ReportViewerEvent evt)
Description copied from interface: IReportViewerListener
This method is invoked when the state of the report viewer has changed.

Specified by:
viewerStateChanged in interface IReportViewerListener
Parameters:
evt - change event
See Also:
IReportViewerListener.viewerStateChanged(com.jasperassistant.designer.viewer.ReportViewerEvent)

getReportViewer

protected IReportViewer getReportViewer()
Returns the reference to the report viewer associated to the action

Returns:
the report viewer

run

public void run()
Specified by:
run in interface org.eclipse.jface.action.IAction
See Also:
Action.run()

runBusy

protected void runBusy()
Subclasses can override this method to run the action with busy cursor.


dispose

public void dispose()
An explicit dispose method that must be called in case when the action is removed from its container dynamically (as opposed to the static toolbar/menu constructed only once). Calling this method will detach the action from the associated report viewer.