# Class HandlerUtil

java.lang.Object
org.eclipse.ui.handlers.HandlerUtil

public class HandlerUtil extends Object
Some common utilities for working with handlers in Platform UI.

Note: this class should not be instantiated or extended by clients.

Since:
  3.3
Restriction:
  This class is not intended to be subclassed by clients.
Restriction:
  This class is not intended to be instantiated by clients.

## Constructor Summary

Constructors
Constructor
Description
`HandlerUtil()`

## Method Summary

Modifier and Type
Method
Description
`static Collection`
`getActiveContexts(ExecutionEvent event)`
Return the active contexts.
`static Collection`
`getActiveContextsChecked(ExecutionEvent event)`
Return the active contexts.
`static IEditorPart`
`getActiveEditor(ExecutionEvent event)`
Return the active editor.
`static IEditorPart`
`getActiveEditorChecked(ExecutionEvent event)`
Return the active editor.
`static String`
`getActiveEditorId(ExecutionEvent event)`
Return the part id of the active editor.
`static String`
`getActiveEditorIdChecked(ExecutionEvent event)`
Return the part id of the active editor.
`static IEditorInput`
`getActiveEditorInput(ExecutionEvent event)`
Return the input of the active editor.
`static IEditorInput`
`getActiveEditorInputChecked(ExecutionEvent event)`
Return the input of the active editor.
`static ISelection`
`getActiveMenuEditorInput(ExecutionEvent event)`
Return the active menu editor input, if available.
`static ISelection`
`getActiveMenuEditorInputChecked(ExecutionEvent event)`
Return the active menu editor input.
`static Collection`
`getActiveMenus(ExecutionEvent event)`
Return the menu IDs that were applied to the registered context menu.
`static Collection`
`getActiveMenusChecked(ExecutionEvent event)`
Return the menu IDs that were applied to the registered context menu.
`static ISelection`
`getActiveMenuSelection(ExecutionEvent event)`
Return the active menu selection.
`static ISelection`
`getActiveMenuSelectionChecked(ExecutionEvent event)`
Return the active menu selection.
`static IWorkbenchPart`
`getActivePart(ExecutionEvent event)`
Return the active part.
`static IWorkbenchPart`
`getActivePartChecked(ExecutionEvent event)`
Return the active part.
`static String`
`getActivePartId(ExecutionEvent event)`
Return the part id of the active part.
`static String`
`getActivePartIdChecked(ExecutionEvent event)`
Return the part id of the active part.
`static Shell`
`getActiveShell(ExecutionEvent event)`
Return the active shell.
`static Shell`
`getActiveShellChecked(ExecutionEvent event)`
Return the active shell.
`static IWorkbenchSite`
`getActiveSite(ExecutionEvent event)`
Return the active part site.
`static IWorkbenchSite`
`getActiveSiteChecked(ExecutionEvent event)`
Return the active part site.
`static IWorkbenchWindow`
`getActiveWorkbenchWindow(ExecutionEvent event)`
Return the active workbench window.
`static IWorkbenchWindow`
`getActiveWorkbenchWindowChecked(ExecutionEvent event)`
Return the active workbench window.
`static ISelection`
`getCurrentSelection(ExecutionEvent event)`
Return the current selection.
`static ISelection`
`getCurrentSelectionChecked(ExecutionEvent event)`
Return the current selection.
`static IStructuredSelection`
`getCurrentStructuredSelection(ExecutionEvent event)`
Return the current structured selection, or `StructuredSelection.EMPTY` if the current selection is not a structured selection or `null`.
`static Object`
`getShowInInput(ExecutionEvent event)`
Return the ShowInContext input.
`static Object`
`getShowInInputChecked(ExecutionEvent event)`
Return the ShowInContext input.
`static ISelection`
`getShowInSelection(ExecutionEvent event)`
Return the ShowInContext selection.
`static ISelection`
`getShowInSelectionChecked(ExecutionEvent event)`
Return the ShowInContext selection.
`static Object`
`getVariable(Object context, String name)`
Extract the variable.
`static Object`
`getVariable(ExecutionEvent event, String name)`
Extract the variable.
`static Object`
`getVariableChecked(ExecutionEvent event, String name)`
Extract the variable.
`static boolean`
`matchesRadioState(ExecutionEvent event)`
Checks whether the radio state of the command is same as the radio state parameter's value
`static boolean`
`toggleCommandState(Command command)`
Toggles the command's state.
`static void`
`updateRadioState(Command command, String newState)`
Updates the radio state of the command to the given value

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### HandlerUtil

public HandlerUtil()

## Method Details

### getVariable

public static Object getVariable(ExecutionEvent event, String name)
Extract the variable.

Parameters:
  `event` - The execution event that contains the application context
  `name` - The variable name to extract.
Returns:
  The object from the application context, or `null` if it could not be found.

### getVariableChecked

public static Object getVariableChecked(ExecutionEvent event, String name) throws ExecutionException
Extract the variable.

Parameters:
  `event` - The execution event that contains the application context
  `name` - The variable name to extract.
Returns:
  The object from the application context. Will not return `null`.
Throws:
  `ExecutionException` - if the variable is not found.

### getVariable

public static Object getVariable(Object context, String name)
Extract the variable.

Parameters:
  `context` - The IEvaluationContext or `null`
  `name` - The variable name to extract.
Returns:
  The object from the application context, or `null` if it could not be found.
Since:
  3.4

### getActiveContexts

public static Collection getActiveContexts(ExecutionEvent event)
Return the active contexts.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  a collection of String contextIds, or `null`.

### getActiveContextsChecked

public static Collection getActiveContextsChecked(ExecutionEvent event) throws ExecutionException
Return the active contexts.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  a collection of String contextIds. Will not return `null`.
Throws:
  `ExecutionException` - If the context variable is not found.

### getActiveShell

public static Shell getActiveShell(ExecutionEvent event)
Return the active shell. Is not necessarily the active workbench window shell.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active shell, or `null`.

### getActiveShellChecked

public static Shell getActiveShellChecked(ExecutionEvent event) throws ExecutionException
Return the active shell. Is not necessarily the active workbench window shell.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active shell. Will not return `null`.
Throws:
  `ExecutionException` - If the active shell variable is not found.

### getActiveWorkbenchWindow

public static IWorkbenchWindow getActiveWorkbenchWindow(ExecutionEvent event)
Return the active workbench window.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active workbench window, or `null`.

### getActiveWorkbenchWindowChecked

public static IWorkbenchWindow getActiveWorkbenchWindowChecked(ExecutionEvent event) throws ExecutionException
Return the active workbench window.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active workbench window. Will not return `null`.
Throws:
  `ExecutionException` - If the active workbench window variable is not found.

### getActiveEditor

public static IEditorPart getActiveEditor(ExecutionEvent event)
Return the active editor.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active editor, or `null`.

### getActiveEditorChecked

public static IEditorPart getActiveEditorChecked(ExecutionEvent event) throws ExecutionException
Return the active editor.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active editor. Will not return `null`.
Throws:
  `ExecutionException` - If the active editor variable is not found.

### getActiveEditorId

public static String getActiveEditorId(ExecutionEvent event)
Return the part id of the active editor.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the part id of the active editor, or `null`.

### getActiveEditorIdChecked

public static String getActiveEditorIdChecked(ExecutionEvent event) throws ExecutionException
Return the part id of the active editor.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the part id of the active editor. Will not return `null`.
Throws:
  `ExecutionException` - If the active editor id variable is not found.

### getActiveEditorInput

public static IEditorInput getActiveEditorInput(ExecutionEvent event)
Return the input of the active editor.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the input of the active editor, or `null`.
Since:
  3.7

### getActiveEditorInputChecked

public static IEditorInput getActiveEditorInputChecked(ExecutionEvent event) throws ExecutionException
Return the input of the active editor.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the input of the active editor. Will not return `null` .
Throws:
  `ExecutionException` - If the active editor input variable is not found.
Since:
  3.7

### getActivePart

public static IWorkbenchPart getActivePart(ExecutionEvent event)
Return the active part.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active part, or `null`.

### getActivePartChecked

public static IWorkbenchPart getActivePartChecked(ExecutionEvent event) throws ExecutionException
Return the active part.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active part. Will not return `null`.
Throws:
  `ExecutionException` - If the active part variable is not found.

### getActivePartId

public static String getActivePartId(ExecutionEvent event)
Return the part id of the active part.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the part id of the active part, or `null`.

### getActivePartIdChecked

public static String getActivePartIdChecked(ExecutionEvent event) throws ExecutionException
Return the part id of the active part.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the part id of the active part. Will not return `null`.
Throws:
  `ExecutionException` - If the active part id variable is not found.

### getActiveSite

public static IWorkbenchSite getActiveSite(ExecutionEvent event)
Return the active part site.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active part site, or `null`.

### getActiveSiteChecked

public static IWorkbenchSite getActiveSiteChecked(ExecutionEvent event) throws ExecutionException
Return the active part site.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active part site. Will not return `null`.
Throws:
  `ExecutionException` - If the active part site variable is not found.

### getCurrentSelection

public static ISelection getCurrentSelection(ExecutionEvent event)
Return the current selection.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the current selection, or `null`.

### getCurrentStructuredSelection

public static IStructuredSelection getCurrentStructuredSelection(ExecutionEvent event)
Return the current structured selection, or `StructuredSelection.EMPTY` if the current selection is not a structured selection or `null`.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the current IStructuredSelection, or `StructuredSelection.EMPTY`.
Since:
  3.108

### getCurrentSelectionChecked

public static ISelection getCurrentSelectionChecked(ExecutionEvent event) throws ExecutionException
Return the current selection.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the current selection. Will not return `null`.
Throws:
  `ExecutionException` - If the current selection variable is not found.

### getActiveMenus

public static Collection getActiveMenus(ExecutionEvent event)
Return the menu IDs that were applied to the registered context menu. For example, #CompilationUnitEditorContext.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the menu IDs, or `null`.

### getActiveMenusChecked

public static Collection getActiveMenusChecked(ExecutionEvent event) throws ExecutionException
Return the menu IDs that were applied to the registered context menu. For example, #CompilationUnitEditorContext.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the menu IDs. Will not return `null`.
Throws:
  `ExecutionException` - If the active menus variable is not found.

### getActiveMenuSelection

public static ISelection getActiveMenuSelection(ExecutionEvent event)
Return the active menu selection. The active menu is a registered context menu.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active menu selection, or `null`.

### getActiveMenuSelectionChecked

public static ISelection getActiveMenuSelectionChecked(ExecutionEvent event) throws ExecutionException
Return the active menu selection. The active menu is a registered context menu.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active menu selection. Will not return `null`.
Throws:
  `ExecutionException` - If the active menu selection variable is not found.

### getActiveMenuEditorInput

public static ISelection getActiveMenuEditorInput(ExecutionEvent event)
Return the active menu editor input, if available. The active menu is a registered context menu.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active menu editor, or `null`.

### getActiveMenuEditorInputChecked

public static ISelection getActiveMenuEditorInputChecked(ExecutionEvent event) throws ExecutionException
Return the active menu editor input. The active menu is a registered context menu. Some context menus do not include the editor input which will throw an exception.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the active menu editor input. Will not return `null`.
Throws:
  `ExecutionException` - If the active menu editor input variable is not found.

### getShowInSelection

public static ISelection getShowInSelection(ExecutionEvent event)
Return the ShowInContext selection.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the show in selection, or `null`.
Since:
  3.4

### getShowInSelectionChecked

public static ISelection getShowInSelectionChecked(ExecutionEvent event) throws ExecutionException
Return the ShowInContext selection. Will not return `null`.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the show in selection, or `null`.
Throws:
  `ExecutionException` - If the show in selection variable is not found.
Since:
  3.4

### getShowInInput

public static Object getShowInInput(ExecutionEvent event)
Return the ShowInContext input.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the show in input, or `null`.
Since:
  3.4

### getShowInInputChecked

public static Object getShowInInputChecked(ExecutionEvent event) throws ExecutionException
Return the ShowInContext input. Will not return `null`.

Parameters:
  `event` - The execution event that contains the application context
Returns:
  the show in input, or `null`.
Throws:
  `ExecutionException` - If the show in input variable is not found.
Since:
  3.4

### toggleCommandState

public static boolean toggleCommandState(Command command) throws ExecutionException
Toggles the command's state.

Parameters:
  `command` - The command whose state needs to be toggled
Returns:
  the original value before toggling
Throws:
  `ExecutionException` - When the command doesn't contain the toggle state or when the state doesn't contain a boolean value
Since:
  3.5

### matchesRadioState

public static boolean matchesRadioState(ExecutionEvent event) throws ExecutionException
Checks whether the radio state of the command is same as the radio state parameter's value

Parameters:
  `event` - The execution event that contains the application context
Returns:
  `true` whe the values are same, `false` otherwise
Throws:
  `ExecutionException` - When the command doesn't have the radio state or the event doesn't have the radio state parameter
Since:
  3.5

### updateRadioState

public static void updateRadioState(Command command, String newState) throws ExecutionException
Updates the radio state of the command to the given value

Parameters:
  `command` - the command whose state should be updated
  `newState` - the new state
Throws:
  `ExecutionException` - When the command doesn't have a radio state
Since:
  3.5