Class BuildAction
-
- All Implemented Interfaces:
IAction
,ISelectionChangedListener
public class BuildAction extends WorkspaceAction
Standard actions for full and incremental builds of the selected project(s) and their references project build configurations.This class may be instantiated; it is not intended to be subclassed.
- Restriction:
- This class is not intended to be subclassed by clients.
-
-
Field Summary
Fields Modifier and Type Field Description static String
ID_BUILD
The id of an incremental build action.static String
ID_REBUILD_ALL
The id of a rebuild all action.-
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, HANDLED, IMAGE, RESULT, TEXT, TOOL_TIP_TEXT
-
-
Constructor Summary
Constructors Constructor Description BuildAction(IShellProvider provider, int type)
Creates a new action of the appropriate type.BuildAction(Shell shell, int type)
Deprecated.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected List<? extends IResource>
getActionResources()
Returns the elements that the action is to be performed on.protected List<? extends IBuildConfiguration>
getBuildConfigurationsToBuild()
This collection of project build configs, derived from the selected resources, is passed to the workspace for building.protected String
getOperationMessage()
Returns the string to display for this action's operation.protected String
getProblemsMessage()
Returns the string to display for this action's problems dialog.protected String
getProblemsTitle()
Returns the title for this action's problems dialog.boolean
isEnabled()
Returns whether this action is enabled.static boolean
isSaveAllSet()
Returns whether the user's preference is set to automatically save modified resources before a manual build is done.void
run()
TheCoreWrapperAction
implementation of thisIAction
method uses aProgressMonitorDialog
to run the operation.void
runInBackground(ISchedulingRule rule, Object[] jobFamilies)
Run the action in the background rather than with the progress dialog.protected boolean
shouldPerformResourcePruning()
Returns whether this action should attempt to optimize the resources being operated on.protected boolean
updateSelection(IStructuredSelection s)
TheBuildAction
implementation of thisSelectionListenerAction
method ensures that this action is enabled only if all of the selected resources have buildable projects.-
Methods inherited from class org.eclipse.ui.actions.WorkspaceAction
createOperation, invokeOperation, runInBackground, runInBackground
-
Methods inherited from class org.eclipse.ui.actions.SelectionListenerAction
clearCache, getSelectedNonResources, getSelectedResources, resourceIsType, selectionIsOfType
-
Methods inherited from class org.eclipse.ui.actions.BaseSelectionListenerAction
getStructuredSelection, runWithEvent, selectionChanged, selectionChanged
-
Methods inherited from class org.eclipse.jface.action.Action
convertAccelerator, convertAccelerator, findKeyCode, findKeyString, findModifier, findModifierString, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isHandled, notifyResult, removeAcceleratorText, removeMnemonics, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText
-
Methods inherited from class org.eclipse.jface.action.AbstractAction
addPropertyChangeListener, firePropertyChange, firePropertyChange, removePropertyChangeListener
-
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
-
-
-
-
Field Detail
-
ID_BUILD
public static final String ID_BUILD
The id of an incremental build action.- See Also:
- Constant Field Values
-
ID_REBUILD_ALL
public static final String ID_REBUILD_ALL
The id of a rebuild all action.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BuildAction
@Deprecated public BuildAction(Shell shell, int type)
Deprecated.Creates a new action of the appropriate type. The action id isID_BUILD
for incremental builds andID_REBUILD_ALL
for full builds.- Parameters:
shell
- the shell for any dialogstype
- the type of build; one ofIncrementalProjectBuilder.INCREMENTAL_BUILD
orIncrementalProjectBuilder.FULL_BUILD
-
BuildAction
public BuildAction(IShellProvider provider, int type)
Creates a new action of the appropriate type. The action id isID_BUILD
for incremental builds andID_REBUILD_ALL
for full builds.- Parameters:
provider
- the shell provider for any dialogstype
- the type of build; one ofIncrementalProjectBuilder.INCREMENTAL_BUILD
orIncrementalProjectBuilder.FULL_BUILD
- Since:
- 3.4
-
-
Method Detail
-
getActionResources
protected List<? extends IResource> getActionResources()
Description copied from class:WorkspaceAction
Returns the elements that the action is to be performed on. By default return the selected resources.Subclasses may override this method.
- Overrides:
getActionResources
in classWorkspaceAction
- Returns:
- list of resource elements (element type:
IResource
)
-
getOperationMessage
protected String getOperationMessage()
Description copied from class:WorkspaceAction
Returns the string to display for this action's operation.Note that this hook method is invoked in a non-UI thread.
Subclasses must implement this method.
- Specified by:
getOperationMessage
in classWorkspaceAction
- Returns:
- the message
-
getProblemsMessage
protected String getProblemsMessage()
Description copied from class:WorkspaceAction
Returns the string to display for this action's problems dialog.The
WorkspaceAction
implementation of this method returns a vague message (localized counterpart of something like "The following problems occurred."). Subclasses may reimplement to provide something more suited to the particular action.- Overrides:
getProblemsMessage
in classWorkspaceAction
- Returns:
- the problems message
-
getProblemsTitle
protected String getProblemsTitle()
Description copied from class:WorkspaceAction
Returns the title for this action's problems dialog.The
WorkspaceAction
implementation of this method returns a generic title (localized counterpart of "Problems"). Subclasses may reimplement to provide something more suited to the particular action.- Overrides:
getProblemsTitle
in classWorkspaceAction
- Returns:
- the problems dialog title
-
getBuildConfigurationsToBuild
protected List<? extends IBuildConfiguration> getBuildConfigurationsToBuild()
This collection of project build configs, derived from the selected resources, is passed to the workspace for building. The Workspace is responsible for resolving references.- Returns:
- List of project build configurations to build.
- Since:
- 3.7
-
isEnabled
public boolean isEnabled()
Description copied from interface:IAction
Returns whether this action is enabled.This method is associated with the
ENABLED
property; property change events are reported when its value changes.- Specified by:
isEnabled
in interfaceIAction
- Overrides:
isEnabled
in classAction
- Returns:
true
if enabled, andfalse
if disabled- See Also:
IAction.ENABLED
-
isSaveAllSet
public static boolean isSaveAllSet()
Returns whether the user's preference is set to automatically save modified resources before a manual build is done.- Returns:
true
if Save All Before Build is enabled
-
run
public void run()
Description copied from class:WorkspaceAction
TheCoreWrapperAction
implementation of thisIAction
method uses aProgressMonitorDialog
to run the operation. The operation callsexecute
(which, in turn, callsinvokeOperation
). Afterwards, anyCoreException
s encountered while running the operation are reported to the user via a problems dialog.Subclasses may extend this method.
- Specified by:
run
in interfaceIAction
- Overrides:
run
in classWorkspaceAction
- See Also:
How radio buttons are handled
,How check boxes are handled
-
runInBackground
public void runInBackground(ISchedulingRule rule, Object[] jobFamilies)
Description copied from class:WorkspaceAction
Run the action in the background rather than with the progress dialog.- Overrides:
runInBackground
in classWorkspaceAction
- Parameters:
rule
- The rule to apply to the background job ornull
if there isn't one.jobFamilies
- the families the job should belong to ornull
if none.
-
shouldPerformResourcePruning
protected boolean shouldPerformResourcePruning()
Description copied from class:WorkspaceAction
Returns whether this action should attempt to optimize the resources being operated on. This kind of pruning makes sense when the operation has depth infinity semantics (when the operation is applied explicitly to a resource then it is also applied implicitly to all the resource's descendents).The
WorkspaceAction
implementation of this method returnstrue
. Subclasses should reimplement to returnfalse
if pruning is not required.- Overrides:
shouldPerformResourcePruning
in classWorkspaceAction
- Returns:
true
if pruning should be performed, andfalse
if pruning is not desired
-
updateSelection
protected boolean updateSelection(IStructuredSelection s)
TheBuildAction
implementation of thisSelectionListenerAction
method ensures that this action is enabled only if all of the selected resources have buildable projects.- Overrides:
updateSelection
in classWorkspaceAction
- Parameters:
s
- the new selection- Returns:
true
if the action should be enabled for this selection, andfalse
otherwise
-
-