/** * Calls <code>run</code> once the owning {@link Dockable} of this action has the focus * @param dockable the element for which this panel is shown * @param run some piece of code to run, usually it will open the popup-dialog created by {@link #createDialogWindow(Component)}. * Should be called by the <code>EDT</code>. */ protected void executeOneDockableHasFocus( Dockable dockable, Runnable run ){ DockController controller = dockable.getController(); if( controller != null ){ controller.getFocusController().onFocusRequestCompletion( run ); } else { run.run(); } }