/* * @(#)FrameContainerTest.java 3/19/2012 * * Copyright 2002 - 2012 JIDE Software Inc. All rights reserved. */ import java.awt.Color; import javax.swing.border.Border; import com.jidesoft.docking.DockableFrame; import com.jidesoft.docking.DockingManager; import com.jidesoft.docking.FrameContainer; public class FrameContainer_test extends FrameContainer{ public FrameContainer_test(DockingManager dockingManager) { super(dockingManager); initialize(); } public FrameContainer_test(DockingManager dockingManager, int tabPlacement, int tabLayoutPolicy) { super(dockingManager, tabPlacement, tabLayoutPolicy); initialize(); } private void initialize() { } @Override public void updateUI() { super.updateUI(); setUI(new Extended_TabbedpaneUI()); } @Override public void insertTab(DockableFrame frame, int index, boolean suppressEvents) { super.insertTab(frame, index, suppressEvents); } @Override public NoFocusButton createNoFocusButton(int arg0) { return new ExtendedNoFocusButton(arg0); } public class ExtendedNoFocusButton extends NoFocusButton { /** * */ private static final long serialVersionUID = 1L; public ExtendedNoFocusButton(int type) { super(type); } @Override public void setOpaque(boolean isOpaque) { super.setOpaque(false); } @Override public void setBorder(Border border) { } @Override protected Color getForegroundColor() { return Color.RED; } @Override protected Color getShadowColor() { return Color.RED.brighter().brighter().brighter(); } @Override protected Color getPressedShadowColor() { return Color.RED.darker().darker().darker(); } } } =========================================================================================================================== Extended_TabbedpaneUI - class.. import java.awt.Color; import java.awt.Component; import java.awt.Graphics; import com.jidesoft.plaf.basic.BasicJideTabbedPaneUI; import com.jidesoft.swing.JideTabbedPane; public class Extended_TabbedpaneUI extends BasicJideTabbedPaneUI{ public Extended_TabbedpaneUI() { } @Override public void paintBackground(Graphics arg0, Component arg1) { JideTabbedPane jideTabbedPane = (JideTabbedPane)arg1; jideTabbedPane.setOpaque(false); try { int index = jideTabbedPane.getSelectedIndex(); for (int i = 0; i < jideTabbedPane.getTabCount(); i++) { if (i == index) { jideTabbedPane.setForegroundAt(i,Color.WHITE); jideTabbedPane.setBackgroundAt(i,Color.GREEN); } else { jideTabbedPane.setForegroundAt(i,Color.WHITE); jideTabbedPane.setBackgroundAt(i,Color.RED); } } } catch (Exception e2) { e2.printStackTrace(); } super.paintBackground(arg0, arg1); } @Override protected void paintTabBorder(Graphics arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, boolean arg7) { if(arg7){ arg0.setColor(Color.GREEN); }else { arg0.setColor(Color.RED); } super.paintTabBorder(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7); } @Override public void installColorTheme() { } } ===========================================================================================================================