Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.ui.dialogs
Class PropertyDialogAction

    java.lang.Object
      org.eclipse.jface.action.Action
          org.eclipse.ui.actions.SelectionProviderAction
              org.eclipse.ui.dialogs.PropertyDialogAction

All Implemented Interfaces:
  IAction, ISelectionChangedListener

public class PropertyDialogAction
extends SelectionProviderAction

Standard action for opening a Property Pages Dialog on the currently selected element.

This class may be instantiated; it is not intended to be subclassed.

Generally speaking, this action is useful in pop-up menus because it allows the user to browse and change properties of selected elements. When performed, the action will bring up a Property Pages Dialog containing property pages registered with the workbench for elements of the selected type.

Although the action is capable of calculating if there are any applicable pages for the current selection, this calculation is costly because it require searching the workbench registry. Where performance is critical, the action can simply be added to the pop-up menu. In the event of no applicable pages, the action will just open an appropriate message dialog.

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
`PropertyDialogAction(Shell shell, ISelectionProvider provider)` Creates a new action for opening a property dialog on the elements from the given selection provider.

Method Summary
`boolean` | `isApplicableForSelection()` Returns whether this action is actually applicable to the current selection.
`boolean` | `isApplicableForSelection(IStructuredSelection selection)` Returns whether this action is applicable to the current selection.
`void` | `run()` The `PropertyDialogAction` implementation of this `IAction` method performs the action by opening the Property Page Dialog for the current selection.
`void` | `selectionChanged(IStructuredSelection selection)` The `PropertyDialogAction` implementation of this `SelectionProviderAction` method enables the action only if the given selection contains exactly one element.

Methods inherited from class org.eclipse.ui.actions.SelectionProviderAction
`dispose, getSelection, getSelectionProvider, getStructuredSelection, selectionChanged, selectionChanged`

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

### PropertyDialogAction

    public PropertyDialogAction(Shell shell,
                                ISelectionProvider provider)

  Creates a new action for opening a property dialog on the elements from the given selection provider.

Parameters:
  `shell` - the shell in which the dialog will open
  `provider` - the selection provider whose elements the property dialog will describe

Method Detail

### isApplicableForSelection

    public boolean isApplicableForSelection()

  Returns whether this action is actually applicable to the current selection. If this action is disabled, it will return `false` without further calculation. If it is enabled, it will check with the workbench's property page manager to see if there are any property pages registered for the selected element's type.

  This method is generally too expensive to use when updating the enabled state of the action on each selection change.

  Returns:
    `true` if the selection is of size 1 and there are property pages for the selected element, and `false` otherwise

### isApplicableForSelection

    public boolean isApplicableForSelection(IStructuredSelection selection)

  Returns whether this action is applicable to the current selection. This checks that the selection is of size 1, and checks with the workbench's property page manager to see if there are any property pages registered for the selected element's type.

  This method is generally too expensive to use when updating the enabled state of the action on each selection change.

  Parameters:
    `selection` - The selection to test
  Returns:
    `true` if the selection is of size 1 and there are property pages for the selected element, and `false` otherwise

### run

    public void run()

  The `PropertyDialogAction` implementation of this `IAction` method performs the action by opening the Property Page Dialog for the current selection. If no pages are found, an informative message dialog is presented instead.

  Specified by:
    `run` in interface `IAction`
  Overrides:
    `run` in class `Action`

### selectionChanged

    public void selectionChanged(IStructuredSelection selection)

  The `PropertyDialogAction` implementation of this `SelectionProviderAction` method enables the action only if the given selection contains exactly one element.

  Overrides:
    `selectionChanged` in class `SelectionProviderAction`
  Parameters:
    `selection` - the new selection

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.