Package gov.nasa.arc.mct.table.view

Source Code of gov.nasa.arc.mct.table.view.TableCellSettings

/*******************************************************************************
* Mission Control Technologies, Copyright (c) 2009-2012, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* The MCT platform is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*
* MCT includes source code licensed under additional open source licenses. See
* the MCT Open Source Licenses file included with this distribution or the About
* MCT Licenses dialog available at runtime from the MCT Help menu for additional
* information.
*******************************************************************************/
package gov.nasa.arc.mct.table.view;

import gov.nasa.arc.mct.components.AbstractComponent;
import gov.nasa.arc.mct.table.view.BorderState.BorderEdge;
import gov.nasa.arc.mct.table.view.TableFormattingConstants.JVMFontFamily;
import gov.nasa.arc.mct.table.view.TimeFormat.DateFormatItem;

import java.awt.Color;
import java.text.SimpleDateFormat;

/**
* Implements a holder of cell formatting settings.
*/
public class TableCellSettings {
 
  /** The default number of decimals to use when displaying numeric values. */
  public static final int DEFAULT_DECIMALS = 2;

  private ContentAlignment alignment = ContentAlignment.LEFT;
  private int numberOfDecimals = DEFAULT_DECIMALS;
  private AbstractComponent evaluator;
  private LabelAbbreviations abbreviations;
  private DateFormatItem dateFormat = DateFormatItem.None;
  private BorderState borderState = new BorderState(BorderEdge.NONE.value());
  private JVMFontFamily cellFontName = TableFormattingConstants.defaultJVMFontFamily;
  private int fontStyle = TableFormattingConstants.defaultFontStyle;
  private int fontSize = TableFormattingConstants.defaultFontSize;
  private Color foregroundColor;
  private Color backgroundColor;
  private int textAttributeUnderline = TableFormattingConstants.UNDERLINE_OFF;
 
  /**
   * Gets the cell content alignment.
   *
   * @return the content alignment
   */
  public ContentAlignment getAlignment() {
    return alignment;
  }
 
  /**
   * Sets the cell content alignment.
   *
   * @param alignment the new alignment
   */
  public void setAlignment(ContentAlignment alignment) {
    this.alignment = alignment;
  }
 
  /**
   * Gets the number of decimal places to display.
   *
   * @return the number of decimals to show
   */
  public int getNumberOfDecimals() {
    return numberOfDecimals;
  }
 
  /**
   * Sets the number of decimals to display.
   *
   * @param numberOfDecimals the number of decimals to show
   */
  public void setNumberOfDecimals(int numberOfDecimals) {
    this.numberOfDecimals = numberOfDecimals;
  }
 
  /**
   * Gets date formatter.
   *
   * @return date formatter object
   */
  public SimpleDateFormat getDateFormatter() {
    DateFormatItem dfSetting = this.getDateFormat();
    return dfSetting.getFormatter();
  }
 
  /**
   * Gets date format.
   *
   * @return date format
   */
  public DateFormatItem getDateFormat() {
    return dateFormat;
  }
 
  /**
   * Sets date format.
   *
   * @param setting date format
   */
  public void setDateFormat(DateFormatItem setting) {
    this.dateFormat = setting;
  }

 
  /**
   * Gets the evaluator for the cell value, if any.
   *
   * @return the evaluator to use, or null for no evaulator
   */
  public AbstractComponent getEvaluator() {
    return evaluator;
  }
 
  /**
   * Sets the evaluator for the cell value.
   *
   * @param evaluator the evaluator, or null for no evaluator
   */
  public void setEvaluator(AbstractComponent evaluator) {
    this.evaluator = evaluator;
  }

  /**
   * Gets the abbreviations that have been chosen for this cell.
   *
   * @return the cell abbreviation settings
   */
  public LabelAbbreviations getAbbreviations() {
    return abbreviations;
  }

  /**
   * Sets the abbreviations for this cell.
   *
   * @param abbreviations the label abbreviations for the cell
   */
  public void setAbbreviations(LabelAbbreviations abbreviations) {
    this.abbreviations = abbreviations;
  }

  /**
   * Gets cell border state.
   * @return state
   */
  public BorderState getCellBorderState() {
    return borderState;
  }

  /**
   * Sets cell border type.
   * @param borderState the border state
   */
  public void setCellBorderState(BorderState borderState) {
    this.borderState = borderState;
  }

  /** Get the font for the cell
   * @return the font object of the cell
   */
  public JVMFontFamily getCellFont() {
    return cellFontName;
  }

  /** Set the font for the cell
   * @param cellFont
   */
  public void setCellFont(JVMFontFamily cellFont) {
    this.cellFontName = cellFont;
  }

  /**Get the font style for this cell
   * @return fontStyle the font style for this cell
   */
  public int getFontStyle() {
    return fontStyle;
  }
 
  /**Get the font textAttribute for this cell
   * @return textAttributeUnderline the font text attribute for this cell
   */
  public int getTextAttributeUnderline() {
    return textAttributeUnderline;
  }

  /** Set the font style for this cell
   * @param fontStyle the font style for this cell
   */
  public void setFontStyle(int fontStyle) {
    this.fontStyle = fontStyle;
  }
 
  /** Set the font style for this cell
   * @param textAttribute the font style for this cell
   */
  public void setTextAttributeUnderline(int textAttribute) {
    this.textAttributeUnderline = textAttribute;
  }

  /**Get the foreground color for this cell
   * @return the foreground color for this cell
   */
  public Color getForegroundColor() {
    return foregroundColor;
  }

  /**Set the foreground color for this cell
   * @param foregroundColor
   */
  public void setForegroundColor(Color foregroundColor) {
    this.foregroundColor = foregroundColor;
  }
 
  /**Get the background color for this cell
   * @return the background color for this cell
   */
  public Color getBackgroundColor() {
    return backgroundColor;
  }

  /**Set the background color for this cell
   * @param backgroundColor
   */
  public void setBackgroundColor(Color backgroundColor) {
    this.backgroundColor = backgroundColor;
  }

  /**Get the font size for this cell
   * @return the font size for this cell
   */
  public int getFontSize() {
    return fontSize;
  }

  /**Set the font size for this cell
   * @param fontSize font size for this cell
   */
  public void setFontSize(int fontSize) {
    this.fontSize = fontSize;
  }
 
  /**Get the font color for this cell
   * Same as getForegroundColor, for font objects
   * @return the font color for this cell
   */
  public Color getFontColor() {
    return foregroundColor;
  }

  /**Set the font color for this cell
   * @param afontColor font size for this cell
   */
  public void setFontColor(Color afontColor) {
    this.foregroundColor = afontColor;
  }
 
}
TOP

Related Classes of gov.nasa.arc.mct.table.view.TableCellSettings

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.