All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.noos.xing.mydoggy.ContentManagerUI Maven / Gradle / Ivy

Go to download

MyDoggy-Api contains the application program interface of MyDoggy to manage every aspects of the framework.

There is a newer version: 1.6.0
Show newest version
package org.noos.xing.mydoggy;

/**
 * A ContentManagerUI is an interface to modify the ui behaviours of
 * a content manager. For example this is used to modify the way a content
 * is shown.
 *
 * @author Angelo De Caro ([email protected])
 * @see TabbedContentManagerUI
 * @see DesktopContentManagerUI
 * @since 1.1.0
 */
public interface ContentManagerUI extends Observable {

    /**
     * Set the closeable property. All new ContentUI will obtain this value for their closeable property.
     * Furthermore sets the closeable property of all contents already registered to content manager.
     *
     * @param closeable true if all contents can be closed using the ui, false otherwise.
     * @since 1.1.0
     */
    void setCloseable(boolean closeable);

    /**
     * Returns the closeable property value.
     *
     * @return the closeable property value.
     * @since 1.4.0
     */
    boolean isCloseable();

    /**
     * Set the detachable property. All new ContentUI will obtain this value for their detachable property.
     * Furthermore sets the detachable property of all contents already registered to content manager.
     *
     * @param detachable true if all contents can be detached using the ui, false otherwise.
     * @since 1.1.0
     */
    void setDetachable(boolean detachable);

    /**
     * Returns the detachable property value.
     *
     * @return the detachable property value.
     * @since 1.4.0
     */
    boolean isDetachable();

    /**
     * Returns whether this content manager permits the contents to be maximized using the ui.
     *
     * @return true if this content can be maximized using the ui, false otherwise.
     * @since 1.5.0
     */
    boolean isMaximizable();

    /**
     * Sets the maximizable property of this manager.
     *
     * @param maximizable true if this content can be maximized using the ui, false otherwise.
     * @since 1.5.0
     * @see #isDetachable()
     */
    void setMaximizable(boolean maximizable);

    /**
     * Returns whether this content manager permits the contents to be minimized using the ui.
     *
     * @return true if this content can be minimized using the ui, false otherwise.
     * @since 1.4.2
     */
    boolean isMinimizable();

    /**
     * Sets the minimizable property of this manager.
     *
     * @param minimizable true if this content can be minimized using the ui, false otherwise.
     * @since 1.4.2
     * @see #isDetachable()
     */
    void setMinimizable(boolean minimizable);

    /**
     * Enables or disabled the popup menu for this manager.
     *
     * @param popupMenuEnabled
     * @since 1.5.0
     */
    void setPopupMenuEnabled(boolean popupMenuEnabled);

    /**
     * Returns whether this content manager permits the popup menu to be shown.
     *
     * @return true if the popup menu can be shown, false otherwise.
     * @since 1.5.0
     */
    boolean isPopupMenuEnabled();

    /**
     * Returns the ui part to which this manager maps the specified content.
     *
     * @param content content whose associated ui part is to be returned.
     * @return the ui part to which this manager maps the specified content.
     * @since 1.1.0
     */
    C getContentUI(Content content);

    /**
     * Registers listener so that it will receive events when
     * contentUIs are removed or detached.
     * If listener listener is null,
     * no exception is thrown and no action is performed.
     *
     * @param listener the ContentManagerUIListener to register.
     * @see ContentManagerListener
     * @since 1.2.0
     */
    void addContentManagerUIListener(ContentManagerUIListener listener);

    /**
     * Unregisters listener so that it will no longer receive
     * events. This method performs no function, nor does it throw an exception, if the listener
     * specified by the argument was not previously added to this group.
     * If listener listener is null,
     * no exception is thrown and no action is performed.
     *
     * @param listener the ContentManagerUIListener to be removed
     * @see #addContentManagerUIListener(ContentManagerUIListener)
     * @since 1.2.0
     */
    void removeContentManagerUIListener(ContentManagerUIListener listener);

    /**
     * Returns an array of all the content manager listeners
     * registered on this manager.
     *
     * @return all of the ContentManagerUI's ContentManagerUIListeners
     *         or an empty array if no tool window manager listeners are currently registered.
     * @see #addContentManagerUIListener(ContentManagerUIListener)
     * @see #removeContentManagerUIListener(ContentManagerUIListener)
     * @since 1.2.0
     */
    ContentManagerUIListener[] getContentManagerUiListener();

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy