Interface FloatPolicy

All Known Implementing Classes:
DefaultFloatPolicy, FloatPolicy.NullFloatPolicy

public interface FloatPolicy
This interface describes a set of method used to determine how floating events should be handled. Classes implementing this interface should be plugged into to the FloatPolicyManager to affect floating behavior of the framework at runtime.
Author:
Christopher Butler
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
    Provides a default implementation of the FloatPolicy interface.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Indicates whether floating should be allowed for the specified DockingEvent at the end of a drag operation.
    boolean
    Returns true if floating should be allowed for the specified Dockable.
  • Method Details

    • isFloatingAllowed

      boolean isFloatingAllowed(Dockable dockable)
      Returns true if floating should be allowed for the specified Dockable. This method will be invoked by the FloatPolicyManager at the beginning of a drag operation to determine whether or not floating support will be enabled for the Dockable as a result of the drag. If this method returns false, floating will not be allowed for the drag operation against the specified Dockable.
      Parameters:
      dockable - the Dockable to be checked for floating support
      Returns:
      true if floating should be allowed for the specified Dockable; false otherwise.
    • isFloatDropAllowed

      boolean isFloatDropAllowed(DockingEvent evt)
      Indicates whether floating should be allowed for the specified DockingEvent at the end of a drag operation. The FloatPolicyManager will catch all attempts to float a Dockable at the end of a drag operation and invoke this method on all installed FloatPolicies. If any of them returns false, the docking operation will be canceled.
      Parameters:
      evt - the DockingEvent to be checked for drop-to-float support
      Returns:
      true if floating should be allowed for the specified DockingEvent; false otherwise.