/*
Violet - A program for editing UML diagrams.
Copyright (C) 2007 Cay S. Horstmann (http://horstmann.com)
Alexandre de Pellegrin (http://alexdp.free.fr);
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package com.horstmann.violet.framework.theme;
import java.awt.Color;
import java.awt.Font;
import javax.swing.plaf.ColorUIResource;
import javax.swing.plaf.metal.MetalLookAndFeel;
import com.pagosoft.plaf.PgsLookAndFeel;
import com.pagosoft.plaf.themes.VistaTheme;
/**
* Implements Vista Blue theme
*
* @author Alexandre de Pellegrin
*
*/
public class BlueAmbianceTheme extends AbstractTheme
{
@Override
public ThemeInfo getThemeInfo() {
return new ThemeInfo("Blue Ambiance", BlueAmbianceTheme.class, PgsLookAndFeel.class);
}
@Override
protected void configure()
{
VistaTheme vistaTheme = new VistaTheme()
{
public ColorUIResource getMenuBackground()
{
return new ColorUIResource(new Color(255, 255, 255));
}
public ColorUIResource getSecondary3()
{
return new ColorUIResource(new Color(224, 231, 242));
}
};
PgsLookAndFeel.setCurrentTheme(vistaTheme);
}
public Color getWhiteColor()
{
return Color.WHITE;
}
public Color getBlackColor()
{
return Color.BLACK;
}
public Color getGridColor()
{
return new Color(250, 250, 250);
}
public Color getBackgroundColor()
{
return new Color(224, 231, 242);
}
public Font getMenubarFont()
{
return MetalLookAndFeel.getMenuTextFont();
}
public Color getMenubarBackgroundColor()
{
return new Color(73, 103, 145);
}
public Color getMenubarForegroundColor()
{
return Color.WHITE;
}
public Color getRolloverButtonDefaultColor()
{
return getMenubarBackgroundColor();
}
public Color getRolloverButtonRolloverBorderColor()
{
return getMenubarForegroundColor();
}
public Color getRolloverButtonRolloverColor()
{
return getMenubarBackgroundColor();
}
public Color getSidebarBackgroundEndColor()
{
return new Color(125, 156, 201);
}
public Color getSidebarBackgroundStartColor()
{
return getMenubarBackgroundColor();
}
public Color getSidebarBorderColor()
{
return getGridColor();
}
public Color getSidebarElementBackgroundColor()
{
return getBackgroundColor();
}
public Color getSidebarElementTitleBackgroundEndColor()
{
return getMenubarBackgroundColor();
}
public Color getSidebarElementTitleBackgroundStartColor()
{
return getMenubarBackgroundColor().darker();
}
public Color getSidebarElementForegroundColor()
{
return getBackgroundColor();
}
public Color getSidebarElementTitleOverColor()
{
return getBackgroundColor().brighter();
}
public Color getStatusbarBackgroundColor()
{
return getMenubarBackgroundColor();
}
public Color getStatusbarBorderColor()
{
return getMenubarBackgroundColor();
}
public Font getToggleButtonFont()
{
return MetalLookAndFeel.getMenuTextFont().deriveFont(Font.PLAIN);
}
public Color getToggleButtonSelectedBorderColor()
{
return new Color(247, 154, 24);
}
public Color getToggleButtonSelectedColor()
{
return new Color(255, 203, 107);
}
public Color getToggleButtonUnselectedColor()
{
return getSidebarElementBackgroundColor();
}
public Font getWelcomeBigFont()
{
return MetalLookAndFeel.getWindowTitleFont().deriveFont((float) 28.0);
}
public Font getWelcomeSmallFont()
{
return MetalLookAndFeel.getWindowTitleFont().deriveFont((float) 12.0).deriveFont(Font.PLAIN);
}
public Color getWelcomeBackgroundEndColor()
{
return getSidebarBackgroundStartColor();
}
public Color getWelcomeBackgroundStartColor()
{
return getSidebarBackgroundEndColor().brighter();
}
public Color getWelcomeBigForegroundColor()
{
return Color.WHITE;
}
public Color getWelcomeBigRolloverForegroundColor()
{
return new Color(255, 203, 151);
}
}