Class EditorSelectionDialog

All Implemented Interfaces:
IShellProvider
Direct Known Subclasses:
LargeFileLimitsPreferenceHandler.LargeFileEditorSelectionDialog

public class EditorSelectionDialog extends Dialog
This class is used to allow the user to select a dialog from the set of internal and external editors.
Since:
3.3
Restriction:
This class is not intended to be subclassed by clients.
  • Field Details

    • STORE_ID_INTERNAL_EXTERNAL

      protected static final String STORE_ID_INTERNAL_EXTERNAL
      For internal use only.
      Since:
      3.7
      See Also:
      Restriction:
      This field is not intended to be referenced by clients.
  • Constructor Details

    • EditorSelectionDialog

      public EditorSelectionDialog(Shell parentShell)
      Create an instance of this class.
      Parameters:
      parentShell - the parent shell
  • Method Details

    • buttonPressed

      protected void buttonPressed(int buttonId)
      This method is called if a button has been pressed.
      Overrides:
      buttonPressed in class Dialog
      Parameters:
      buttonId - the id of the button that was pressed (see IDialogConstants.*_ID constants)
    • close

      public boolean close()
      Close the window.
      Overrides:
      close in class Dialog
      Returns:
      true if the window is (or was already) closed, and false if it is still open
      See Also:
    • configureShell

      protected void configureShell(Shell shell)
      Description copied from class: Window
      Configures the given shell in preparation for opening this window in it.

      The default implementation of this framework method sets the shell's image and gives it a grid layout. Subclasses may extend or reimplement.

      Overrides:
      configureShell in class Window
      Parameters:
      shell - the shell
    • createDialogArea

      protected Control createDialogArea(Composite parent)
      Creates and returns the contents of the upper part of the dialog (above the button bar). Subclasses should overide.
      Overrides:
      createDialogArea in class Dialog
      Parameters:
      parent - the parent composite to contain the dialog area
      Returns:
      the dialog area control
    • fillEditorTable

      protected void fillEditorTable()
      Fills the editor table.
    • getDialogSettings

      protected IDialogSettings getDialogSettings()
      Return the dialog store to cache values into
    • getExternalEditors

      protected IEditorDescriptor[] getExternalEditors()
      Get a list of registered programs from the OS
    • filterEditors

      protected IEditorDescriptor[] filterEditors(IEditorDescriptor[] editors)
      Returns an array of editors which have been filtered according to the array of editors in the editorsToFilter instance variable.
      Parameters:
      editors - an array of editors to filter
      Returns:
      a filtered array of editors
    • getInternalEditors

      protected IEditorDescriptor[] getInternalEditors()
      Returns the internal editors
    • getSelectedEditor

      public IEditorDescriptor getSelectedEditor()
      Return the editor the user selected
      Returns:
      the selected editor
    • promptForExternalEditor

      protected void promptForExternalEditor()
      Opens the prompt to select an external editor.
    • handleDoubleClickEvent

      protected void handleDoubleClickEvent()
      Handle a double click event on the list
    • restoreWidgetValues

      protected void restoreWidgetValues()
      Use the dialog store to restore widget values to the values that they held last time this wizard was used to completion, if the previous file has same extension.
    • saveWidgetValues

      protected void saveWidgetValues()
      Since Finish was pressed, write widget values to the dialog store so that they will persist into the next invocation of this wizard page
    • setMessage

      public void setMessage(String aMessage)
      Set the message displayed by this message dialog
      Parameters:
      aMessage - the message
    • setFileName

      public void setFileName(String fileName)
      Set the file name which can be used to store the selected editor preference
      Parameters:
      fileName - the file name
      Since:
      3.107
    • setEditorsToFilter

      public void setEditorsToFilter(IEditorDescriptor[] editors)
      Set the editors which will not appear in the dialog.
      Parameters:
      editors - an array of editors
    • updateEnableState

      protected void updateEnableState()
      Update enabled state.
    • createButtonsForButtonBar

      protected void createButtonsForButtonBar(Composite parent)
      Description copied from class: Dialog
      Adds buttons to this dialog's button bar.

      The Dialog implementation of this framework method adds standard ok and cancel buttons using the createButton framework method. These standard buttons will be accessible from getCancelButton, and getOKButton. Subclasses may override.

      Note: The common button order is: {other buttons}, OK, Cancel. On some platforms, Dialog.initializeBounds() will move the default button to the right.

      Overrides:
      createButtonsForButtonBar in class Dialog
      Parameters:
      parent - the button bar composite
    • updateOkButton

      protected void updateOkButton()
      Update the button enablement state.
    • isResizable

      protected boolean isResizable()
      Description copied from class: Dialog
      Returns a boolean indicating whether the dialog should be considered resizable when the shell style is initially set.

      This method is used to ensure that all style bits appropriate for resizable dialogs are added to the shell style. Individual dialogs may always set the shell style to ensure that a dialog is resizable, but using this method ensures that resizable dialogs will be created with the same set of style bits.

      Style bits will never be removed based on the return value of this method. For example, if a dialog returns false, but also sets a style bit for a SWT.RESIZE border, the style bit will be honored.

      Overrides:
      isResizable in class Dialog
      Returns:
      a boolean indicating whether the dialog is resizable and should have the default style bits for resizable dialogs