import java.awt.Container; import javax.swing.RootPaneContainer; import com.jidesoft.docking.DefaultDockingManager; import com.jidesoft.docking.FrameContainer; public class DockingManager_Test extends DefaultDockingManager { public JideTabbedPaneTest tp; public JideTabbedPaneTest.ExtendedNoFocusButton t; public DockingManager_Test(RootPaneContainer holderpanel, Container arg1) { super(holderpanel, arg1); } @Override public FrameContainer createFrameContainer() { super.createFrameContainer(); FrameContainer framecontainer_instance = new FrameContainer(this) { @Override public NoFocusButton createNoFocusButton(int arg0) { tp = new JideTabbedPaneTest(); t = tp.new ExtendedNoFocusButton(); return t; } }; framecontainer_instance.setVisible(true); customizeFrameContainer(framecontainer_instance); return framecontainer_instance; } public void setExternalCustomizer(){ tp = new JideTabbedPaneTest(); TabCust_Test cust_Test = new TabCust_Test(tp); cust_Test.customize(tp); setTabbedPaneCustomizer(cust_Test); } @Override public void setTabbedPaneCustomizer(TabbedPaneCustomizer arg0) { super.setTabbedPaneCustomizer(arg0); } } ------------------------------------------------------------------ import javax.swing.SwingConstants; import com.jidesoft.docking.DockingManager.TabbedPaneCustomizer; import com.jidesoft.swing.JideTabbedPane; public class TabCust_Test implements TabbedPaneCustomizer{ private JideTabbedPane saved_tabpane = null; public TabCust_Test(JideTabbedPane savedjide) { this.saved_tabpane = savedjide; } public void customize(JideTabbedPane arg0) { arg0.setTabPlacement(SwingConstants.TOP); arg0.setTabShape(JideTabbedPane.SHAPE_OFFICE2003); arg0.setUseDefaultShowCloseButtonOnTab(true); arg0.setTabClosableAt(0, true); arg0.setShowCloseButtonOnTab(true); } } ------------------------------------------------------------------------------- import java.awt.Component; import java.awt.Container; import javax.swing.JLayeredPane; import javax.swing.RootPaneContainer; import com.jidesoft.docking.DockableHolderPanel; import com.jidesoft.docking.DockingManager; public class test_holderpanel extends DockableHolderPanel implements RootPaneContainer{ /** * */ private static final long serialVersionUID = 1L; private DockingManager_Test extendedDockingManager; Container holder_container = null; public test_holderpanel(Container hold_dock_container) { setContentPane(hold_dock_container); setVisible(true); } protected DockingManager createDockingManager(Container contentContainer) { extendedDockingManager = new DockingManager_Test(this, holder_container); return extendedDockingManager; } @Override public DockingManager getDockingManager() { return extendedDockingManager; } public void setContentPane(Container contentPane) { this.holder_container = contentPane; System.out.println("setcontentpane"); } public Container getContentPane() { return holder_container; } public void setLayeredPane(JLayeredPane layeredPane) { // TODO Auto-generated method stub } public JLayeredPane getLayeredPane() { // TODO Auto-generated method stub return null; } public void setGlassPane(Component glassPane) { // TODO Auto-generated method stub } public Component getGlassPane() { // TODO Auto-generated method stub return null; } } --------------------------------------------------------------