All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hfg.util.collection.DataColumn Maven / Gradle / Ivy

There is a newer version: 20240423
Show newest version
package com.hfg.util.collection;

import com.hfg.graphics.units.GfxSize;
import com.hfg.html.attribute.Align;

import java.awt.*;
import java.util.regex.Pattern;

//------------------------------------------------------------------------------
/**
 Column info for a DataTable column.
 
@author J. Alex Taylor, hairyfatguy.com
*/ //------------------------------------------------------------------------------ // com.hfg Library // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either // version 2.1 of the License, or (at your option) any later version. // // This library 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 // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // // J. Alex Taylor, President, Founder, CEO, COO, CFO, OOPS hairyfatguy.com // [email protected] //------------------------------------------------------------------------------ public class DataColumn { private String mTitle; private String mDescription; private Align mTextAlign; private String mCssStyle; private GfxSize mWidth; private Font mFont; private String mFormatString; private boolean mIsRequired; private Pattern mTitlePattern; private Integer mIndex; //########################################################################## // CONSTRUCTORS //########################################################################## //-------------------------------------------------------------------------- public DataColumn(String inTitle) { mTitle = inTitle; } //########################################################################## // PUBLIC METHODS //########################################################################## //-------------------------------------------------------------------------- @Override public String toString() { return getTitle(); } //-------------------------------------------------------------------------- public String getTitle() { return mTitle; } //-------------------------------------------------------------------------- public DataColumn setDescription(String inValue) { mDescription = inValue; return this; } //-------------------------------------------------------------------------- public String getDescription() { return mDescription; } //-------------------------------------------------------------------------- public DataColumn setTextAlign(Align inValue) { mTextAlign = inValue; return this; } //-------------------------------------------------------------------------- public Align getTextAlign() { return mTextAlign; } //-------------------------------------------------------------------------- public DataColumn setCssStyle(String inValue) { mCssStyle = inValue; return this; } //-------------------------------------------------------------------------- public String getCssStyle() { return mCssStyle; } //-------------------------------------------------------------------------- public GfxSize getWidth() { return mWidth; } //-------------------------------------------------------------------------- public DataColumn setWidth(GfxSize inValue) { this.mWidth = inValue; return this; } //-------------------------------------------------------------------------- public Font getFont() { return mFont; } //-------------------------------------------------------------------------- public DataColumn setFont(Font inValue) { mFont = inValue; return this; } //-------------------------------------------------------------------------- /** Sets a formatting string (like "%.1f%%") to be used by the DataTable's getFormatted(). * @param inValue formatting string * @return this DataColumn object */ public DataColumn setFormatString(String inValue) { mFormatString = inValue; return this; } //-------------------------------------------------------------------------- public String getFormatString() { return mFormatString; } //-------------------------------------------------------------------------- public boolean isRequired() { return mIsRequired; } //-------------------------------------------------------------------------- public DataColumn setIsRequired(boolean inValue) { mIsRequired = inValue; return this; } //-------------------------------------------------------------------------- public Pattern getTitlePattern() { return mTitlePattern; } //-------------------------------------------------------------------------- /** Sets a pattern which can be used to match this column definition to column header from a spreadsheet. * @param inValue pattern for matching * @return this DataColumn object */ public DataColumn setTitlePattern(Pattern inValue) { mTitlePattern = inValue; return this; } //-------------------------------------------------------------------------- public Integer getIndex() { return mIndex; } //-------------------------------------------------------------------------- public DataColumn setIndex(Integer inValue) { mIndex = inValue; return this; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy