[Beta v1.0.0] - [Beta v1.0.1] - Bugfix: popup menu of a DockTitle did not open on right click under Windows XP - Bugfix: Connection between DockableDisplayer and Dockable was not broken automatically (memory leak) - Bugfix: Connection between MultiDockActionSource and its children was not broken automatically (memory leak) - Bugfix: FullScreenListener was not removed from Map (memory leak) - API: StackDockStation now reads a StackDockComponentFactory out of the DockProperties, and changes its StackDockComponent according to the factory. DockThemes no longer have to exchange the components manually. - Layout: Left-click on AbstractDockTitle will open a popup menu more often - Bugfix: SplitDockStation did not properly remove the front-dockable when requested - Layout: FlapDockStation now changes the selected child when the mouse is released, not when the mouse is pressed. - Layout: The DockTitles shown as Buttons for FlapDockStation have additional behavior when the mouse is pressed. - Bugfix: added some dirty hacks to ensure that the title-drag-window will close itself when the first event was ignored. That happend when the Window was not visible when dispose was called. - Bugfix: PopupController did not calculate the correct position of the mouse - Bugfix: AbstractDockTitle did not calculate the correct position and size of its icon when explicitly asked - Bugfix: NPE thrown by SecureFlapWindow when closing the window a second time - API: delete some subclasses of Combiner which are no longer needed (Bubble/FlatCombiner) - Layout: BasicStationPaint now uses the highlight-background color of TextField to paint. That should look better with different look and feels. - Bugfix: SplitDockStation's compare-method now ensures that the station does not overlap other, smaller stations - Layout: New "Eclipse Theme", written by Janni Kovacs - API: DockableDisplayer now tells whether a point lies inside its title or not. The drag n drop gets more flexibel this way - Bugfix: SecureScreenDockDialog throws NPE when closing - API: DockActionSource has now to implement Iterable - API: New DockActionSource "FilteredDockActionSource" - Bugfix: EclipseStackDockComponent now shows all DockActions - API: New DockHierarchyListener gets informed when the path to a Dockable changes - API: New HierarchyDockActionSource, lists all actions of a Dockable even when the hierarchy changes - API: No rebind of DockTitles after a drag&drop event, the DockHierarchyListener can be used by the titles which need change - API: Dockable now offers a "local" and a "global" DockActionSource. The global source always contains all available actions - Layout, API: MenuableButtonPanel, allows to use menus when there is no space for buttons. Automatically used by AbstractDockTitle - API: DockableDisplayer is now an interface - API, Bugfix: replaced every occurence of "binded" by "bound", thanks Uwe for correcting me - API: When adding a Dockable to a DockStation, the station will ensure that no cycles are built into the dock-tree, and that the Dockable is properly removed from its former parent - Layout: StackDockStation tries to paint the insertion-line now between its tabs - API: ScreenDockDialog should always stay in the screen in which it has been created, this feature is not tested [Release 1.0 - v1.0.2] - API: new DoubleClickController, allows handling double clicks on a global scale. Makes the FullScreenClickableListener obsolete. - Layout: double click on shaped- or rect-tabs in EclipseTheme has now the same effects a double click on a title. - Bugfix: DockHierarchyEvents were not properly dispatched by the SplitDockStation - Bugfix: ShapedGradientPainter did not recognize MouseEvents properly - Layout, API: the TabPainter of the EclipseTheme now determines the border of some components - Bugfix: Some DockHierarchyEvents were lost - API: KeyEvents are caught by the KeyBoardController. Some DockActions can now be triggered by a KeyEvent. - API: DockAction has additional method "trigger" which results in the execution of a default-action. - API: all create*-methods of DockController moved into a new interface DockControllerFactory - API: new DockRelocatorMode, changes behaviour of drag&drop operations subject to the pressed keys on the keyboard. - API: DockController can tell which Component is child (in the logic of the dock-tree) of which Dockable. Scheme can be influenced by clients through DockController#putRepresentative. - Layout, API: DockStations have to decide whether a child can be accepted or not, the DockRelocator no longer does this. That gives more flexibility. - API: MovingTitleGetter replaced by DockableMovingImageFactory, gives more flexibility - Layout: FlatTheme now shows a screencapture of the Dockable that is moved by the user instead of the DockTitle - Bugfix: The method "drop" on many DockStations did not ensure that the tree gets no cycles - Bugfix: MultiDockActionSource added the wrong listener to its children, the effect was that some updates were lost - Bugfix: SplitDockStation: full-screen elements not properly removed on drag-operation. - API: new SplitDockPathProperty, allows to store the location of a child of a SplitDockStation. Replaces SplitDockProperty whenever possible, but the SplitDockProperty remains a valid way to describe the boundaries of a Dockable. - Bugfix: DockUtilities.isAnchestor failed when the ancestor was a ScreenDockStation - Bugfix: Memoryleak in ButtonPanel - Bugfix: ButtonPanel did not show all visualisations if a DockAction occurred more than once in the DockActionSource - Bugfix: MenuMenuHandler could create a memoryleak by not properly unbinding the visualization of a DockAction - API: ComponentHierarchyObserver collects all Components which are used in the realm of a specific DockController - Bugfix: empty SplitDockStation could throw NullPointerException during drag&drop operation - API: removed the necessity to create GlassedPane's in a restricted environment manually - API: extensive reorganisation of packages in order to let the important classes/interfaces be in the top-level packages ! API: OverpaintablePanel, using a "base" and a "content"-pane, calls to "setContentPane" now have to be replaced by "setBasePane" - Bugfix: ScreencaupterMovingImageFactory could throw IllegalArgumentException, thanks Peter for finding that bug - Bugfix: DockController.ensureFocusSet could throw NPE - API, Bugfix: AbstractDockable, changing the "action-offers" through "setActionOffers" will immediately be visible anywhere. - Bugfix: DockFrontend.clean could be stuck in an infinite loop - API: DockFrontendListener.showed renamed to shown - API: DockFrontendListener.shown/hidden is now called for every Dockable, even if the Dockable was not shown or hidden through the methods of DockFrontend. - API: The SingleParentRemover of DockController can now be exchanged, the property "singleParentRemove" has been deleted: if a remover is present, it is used. Otherwise the feature is disabled. - API: DockControllerListener replaced by several smaller listeners that handle only one kind of events. - API: New property ScreenDockStation.BOUNDARY_RESTRICTION: allows to put restrictions on size and location of children of a ScreenDockStation. - Bugfix: FlapDockStationFactory did not read layout correctly when Dockables were missing - API: Many factories divided in two parts. Part 1 is the factory, part 2 is the "layout". A layout is snapshot of some data. Factories can read and write layouts from/to streams and xml files. Factories can convert layouts into the original data. - API: Support for xml, intended for debugging purposes. - Bugfix: SplitDockStation fired dockableAdding/Added-Event to often.