/*
 * @(#)FColor.java
 *
 * Copyright 2001 by Intelligent Technology Inc. All rights reserved.
 */

package jp.co.iti.fagot.fob;

import java.awt.Color;

import jp.co.iti.fagot.util.ZGraphicUtil;
/**
 * Color
 * @author  千曳秀喜
 * @version 1.01 2001/01/07
 */
public class FColor extends FElement {

	/**
	 * コンストラクタ
	 */
	public FColor() {
	super();
	}

	/**
	 * コンストラクタ
	 */
	public FColor( Color data ) {
	super( data );
	}

	/**
	 * コンストラクタ
	 */
	public FColor( FColor data ) {
	super();
	set(data);
	}

	/**
	 * コンストラクタ
	 */
	public FColor( String data ) {
	super();
	setString(data);
	}

	/**
	 * 値の取得
	 */
	public Color get() {
	return ( (Color)getData() ) ;
	}

	/**
	 * 値の取得
	 */
/*	public Color getColor() {
	if ( isNull() ) {
		return null;
	}
	return ( new Color(((Color)getData()).getRGB()) ) ;
	}
*/
	/**
	 * 値の取得
	 */
	public String getString() {
	if ( isNull() ) {
		return null;
	}
	Color color = (Color)getData();
	String szColor = ZGraphicUtil.colorToString(color);
	return szColor;
	}

	/**
	 * 値の設定
	 */
	public void set( Color data) {
	setData( data ) ;
	}

	/**
	 * 値の設定
	 */
	public void set( FColor data) {
	setData( data.getData() ) ;
	}

	/**
	 * 値の設定
	 * @param szColor 色文字列
	 */
	public void setString(String szColor) {
	if ( szColor == null ) {
		setData( null ) ;
	} else {
		setData( ZGraphicUtil.stringToColor(szColor) );
	}
	}

	//## CLONE ########################################################
	/**
	 * 複製インスタンスの作成
	 * 各実現クラスにおいてインスタンスを生成する
	 * 仮想クラス（およびインスタンス化されないクラス）ではnullを返す
	 */
	public Object createClone() {
	return new FColor();
	}
}
