Class SaveAsDialog

  • All Implemented Interfaces:
    IShellProvider

    public class SaveAsDialog
    extends TitleAreaDialog
    A standard "Save As" dialog which solicits a path from the user. The getResult method returns the path. Note that the folder at the specified path might not exist and might need to be created.

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

    See Also:
    ContainerGenerator
    Restriction:
    This class is not intended to be subclassed by clients.
    • Constructor Detail

      • SaveAsDialog

        public SaveAsDialog​(Shell parentShell)
        Creates a new Save As dialog for no specific file.
        Parameters:
        parentShell - the parent shell
    • Method Detail

      • 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
      • createContents

        protected Control createContents​(Composite parent)
        Description copied from class: Dialog
        The Dialog implementation of this Window method creates and lays out the top level composite for the dialog, and determines the appropriate horizontal and vertical dialog units based on the font size. It then calls the createDialogArea and createButtonBar methods to create the dialog area and button bar, respectively. Overriding createDialogArea and createButtonBar are recommended rather than overriding this method.
        Overrides:
        createContents in class TitleAreaDialog
        Parameters:
        parent - the parent composite for the controls in this window. The type of layout used is determined by getLayout()
        Returns:
        the control that will be returned by subsequent calls to getContents()
      • close

        public boolean close()
        The SaveAsDialog implementation of this Window method disposes of the banner image when the dialog is closed.
        Overrides:
        close in class Dialog
        Returns:
        true if the window is (or was already) closed, and false if it is still open
        See Also:
        Window.close()
      • 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
      • createDialogArea

        protected Control createDialogArea​(Composite parent)
        Description copied from class: TitleAreaDialog
        Creates and returns the contents of the upper part of this dialog (above the button bar).

        The Dialog implementation of this framework method creates and returns a new Composite with no margins and spacing. Subclasses should override.

        Overrides:
        createDialogArea in class TitleAreaDialog
        Parameters:
        parent - The parent composite to contain the dialog area
        Returns:
        the dialog area control
      • getResult

        public IPath getResult()
        Returns the full path entered by the user.

        Note that the file and container might not exist and would need to be created. See the IFile.create method and the ContainerGenerator class.

        Returns:
        the path, or null if Cancel was pressed
      • okPressed

        protected void okPressed()
        Description copied from class: Dialog
        Notifies that the ok button of this dialog has been pressed.

        The Dialog implementation of this framework method sets this dialog's return code to Window.OK and closes the dialog. Subclasses may override.

        Overrides:
        okPressed in class Dialog
      • setDialogComplete

        protected void setDialogComplete​(boolean value)
        Sets the completion state of this dialog and adjusts the enable state of the Ok button accordingly.
        Parameters:
        value - true if this dialog is compelete, and false otherwise
      • setOriginalFile

        public void setOriginalFile​(IFile originalFile)
        Sets the original file to use.
        Parameters:
        originalFile - the original file
      • setOriginalName

        public void setOriginalName​(String originalName)
        Set the original file name to use. Used instead of setOriginalFile when the original resource is not an IFile. Must be called before create.
        Parameters:
        originalName - default file name
      • getDialogBoundsSettings

        protected IDialogSettings getDialogBoundsSettings()
        Description copied from class: Dialog
        Gets the dialog settings that should be used for remembering the bounds of of the dialog, according to the dialog bounds strategy.
        Overrides:
        getDialogBoundsSettings in class Dialog
        Returns:
        settings the dialog settings used to store the dialog's location and/or size, or null if the dialog's bounds should never be stored.
        See Also:
        Dialog.getDialogBoundsStrategy()
      • 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