Class TLcyDockableApplicationPaneFactory

java.lang.Object
com.luciad.lucy.gui.TLcyDockableApplicationPaneFactory
All Implemented Interfaces:
ILcyApplicationPaneFactory

public class TLcyDockableApplicationPaneFactory extends Object implements ILcyApplicationPaneFactory

Implementation of ILcyApplicationPaneFactory that creates panels that support docking: they can be moved and re-arranged by the end-user.

Users of this class are responsible to add the Component returned by getComponent somewhere in the Swing user interface, for example to the content pane of a frame. No panels will be visible otherwise.

It supports workspaces, meaning that the panel layout is stored and restored.

Only once instance of TLcyDockingApplicationPaneFactory can be used per ILcyLucyEnv.

This class performs the required JIDE license checking (Lm.verifyLicense). This can be disabled by adding the following JVM argument: -Dcom.luciad.lucy.verifyJIDELicense=false .

  • Constructor Details

    • TLcyDockableApplicationPaneFactory

      public TLcyDockableApplicationPaneFactory(JFrame aFrame)
      Creates a new TLcyDockingApplicationPaneFactory with support for heavy weight components, and which places the map at the right side. An ILcyLucyEnv must be set before this instance can be used.
      Parameters:
      aFrame - The main frame of the application. This must be the same frame as in which the getComponent() will be added later on.
    • TLcyDockableApplicationPaneFactory

      public TLcyDockableApplicationPaneFactory(JFrame aFrame, boolean aSupportHeavyWeight, boolean aPreferRightSide)
      Creates a new TLcyDockingApplicationPaneFactory. An ILcyLucyEnv must be set before this instance can be used.
      Parameters:
      aFrame - The main frame of the application. This must be the same frame as in which the getComponent() will be added later on.
      aSupportHeavyWeight - True to support heavy weight components, false otherwise. Heavy weight components are primarily used for the 3D view. Supporting heavy weight without having 3D does not harm.
      aPreferRightSide - If true, it positions the ILcyApplicationPanes at position 0 (typically maps) and 1 at the right side. False puts the locations at 0 and 1 at the left side.
    • TLcyDockableApplicationPaneFactory

      public TLcyDockableApplicationPaneFactory(JFrame aFrame, boolean aSupportHeavyWeight, boolean aPreferRightSide, boolean aSupportUndoRedo)
      Creates a new TLcyDockingApplicationPaneFactory. An ILcyLucyEnv must be set before this instance can be used.
      Parameters:
      aFrame - The main frame of the application. This must be the same frame as in which the getComponent() will be added later on.
      aSupportHeavyWeight - True to support heavy weight components, false otherwise. Heavy weight components are primarily used for the 3D view. Supporting heavy weight without having 3D does not harm.
      aPreferRightSide - If true, it positions the ILcyApplicationPanes at position 0 (typically maps) and 1 at the right side. False puts the locations at 0 and 1 at the left side.
      aSupportUndoRedo - If true, the application panes will provide UI to undo and redo layout changes. The recommended value for this setting is false. The undo/redo layout changes actions clutter the UI and are barely used.
  • Method Details

    • getLucyEnv

      public ILcyLucyEnv getLucyEnv()
      Returns the ILcyLucyEnv.
      Returns:
      the ILcyLucyEnv.
    • setLucyEnv

      public void setLucyEnv(ILcyLucyEnv aLucyEnv)

      Sets the ILcyLucyEnv.

      Parameters:
      aLucyEnv - The ILcyLucyEnv to plug into.
    • getComponent

      public Component getComponent()
      Returns the component that contains the created ILcyApplicationPanes. It is the responsibility of the user of this class to add this component to some visual component, such as for example the content pane of a frame (e.g. JFrame.getContentPane()).
      Returns:
      the component that contains the created ILcyApplicationPanes.
    • createApplicationPane

      public ILcyApplicationPane createApplicationPane(ILcyApplicationPaneOwner aOwner)
      Description copied from interface: ILcyApplicationPaneFactory
      Creates and returns an application pane. The application pane is also added in the user interface.
      Specified by:
      createApplicationPane in interface ILcyApplicationPaneFactory
      Parameters:
      aOwner - The owner of the pane.
      Returns:
      The created application pane.
    • createApplicationPane

      public ILcyApplicationPane createApplicationPane(int aLocationIndex, ILcyApplicationPaneOwner aOwner)
      Description copied from interface: ILcyApplicationPaneFactory
      Creates and returns an application pane for the given location. The application pane is also added in the user interface.
      Specified by:
      createApplicationPane in interface ILcyApplicationPaneFactory
      Parameters:
      aLocationIndex - The location of the application pane.
      aOwner - The owner of the pane.
      Returns:
      The created application pane.