|
From: <nat...@us...> - 2003-08-09 17:04:59
|
Update of /cvsroot/jcharts/krysalis-jcharts/src/java/org/krysalis/jcharts/designer/common/font
In directory sc8-pr-cvs1:/tmp/cvs-serv1663
Added Files:
FontChooser.java StylesCombo.java
Log Message:
initial revision
--- NEW FILE: FontChooser.java ---
package org.krysalis.jcharts.designer.common.font;
import org.krysalis.jcharts.designer.common.LabelledCombo;
import org.krysalis.jcharts.designer.common.LabelledTextfield;
import org.krysalis.jcharts.designer.exceptions.DesignerException;
import org.krysalis.jcharts.properties.util.ChartFont;
import javax.swing.*;
import java.awt.*;
public class FontChooser extends JPanel
{
private static String[] ALL_FONT_NAMES;
static
{
Font[] allFonts = GraphicsEnvironment.getLocalGraphicsEnvironment().getAllFonts();
ALL_FONT_NAMES = new String[ allFonts.length ];
for( int i = 0; i < allFonts.length; i++ )
{
ALL_FONT_NAMES[ i ] = allFonts[ i ].getName();
}
}
private String title;
private LabelledCombo fontCombo;
private LabelledTextfield size;
private LabelledCombo styleCombo;
/***********************************************************************************
*
* @param title
**********************************************************************************/
public FontChooser( String title )
{
super();
this.title= title;
super.setBorder( BorderFactory.createCompoundBorder( BorderFactory.createTitledBorder( this.title ),
BorderFactory.createEmptyBorder( 5, 5, 5, 5 ) ) );
this.setLayout( new FlowLayout() );
this.fontCombo = new LabelledCombo( "Name:", ALL_FONT_NAMES );
this.add( this.fontCombo );
this.size= new LabelledTextfield( "Size:" );
this.add( this.size );
this.styleCombo= new StylesCombo();
this.add( this.styleCombo );
}
/*********************************************************************************
*
* @return ChartFont
********************************************************************************/
public ChartFont getChartFont() throws DesignerException
{
if( this.size.getText().trim().equals( "" ) )
{
throw new DesignerException( this.title + " can not be NULL." );
}
Font font= new Font( this.fontCombo.getSelected(), this.styleCombo.getSelectedIndex(), Integer.parseInt( this.size.getText() ) );
//todo Paint implementation?
ChartFont chartFont= new ChartFont( font, Color.black );
return chartFont;
}
}
--- NEW FILE: StylesCombo.java ---
/***********************************************************************************************
* File Info: Id: $
* Copyright (C) 2002
* Author: Nathaniel G. Auvil
* Contributor(s):
*
* Copyright 2002 (C) Nathaniel G. Auvil. All Rights Reserved.
*
* Redistribution and use of this software and associated documentation ("Software"), with or
* without modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain copyright statements and notices.
* Redistributions must also contain a copy of this document.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list of
* conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* 3. The name "jCharts" or "Nathaniel G. Auvil" must not be used to endorse or promote
* products derived from this Software without prior written permission of Nathaniel G.
* Auvil. For written permission, please contact nat...@us...
*
* 4. Products derived from this Software may not be called "jCharts" nor may "jCharts" appear
* in their names without prior written permission of Nathaniel G. Auvil. jCharts is a
* registered trademark of Nathaniel G. Auvil.
*
* 5. Due credit should be given to the jCharts Project (http://jcharts.sourceforge.net/).
*
* THIS SOFTWARE IS PROVIDED BY Nathaniel G. Auvil AND CONTRIBUTORS ``AS IS'' AND ANY
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* jCharts OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
************************************************************************************************/
package org.krysalis.jcharts.designer.common.font;
import org.krysalis.jcharts.designer.common.LabelledCombo;
public class StylesCombo extends LabelledCombo
{
private static String[] ALL_STYLES;
static
{
ALL_STYLES= new String[]{ "BOLD", "ITALIC", "PLAIN" };
}
/*******************************************************************************
*
********************************************************************************/
public StylesCombo()
{
super( "Style", ALL_STYLES );
}
}
|