/* * Copyright 2009 Google Inc. * * 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. */ package com.google.gwt.gen2.table.client.property; /** * A {@link ColumnProperty} that describes whether or not the contents of the * column can be truncated. */ public class TruncationProperty extends ColumnProperty { /** * Property type. */ public static final Type<TruncationProperty> TYPE = new Type<TruncationProperty>() { private TruncationProperty instance; @Override public TruncationProperty getDefault() { if (instance == null) { instance = new TruncationProperty(true); } return instance; } }; private boolean isTruncatable; private boolean isFooterTruncatable; private boolean isHeaderTruncatable; /** * Construct a new {@link TruncationProperty}. */ public TruncationProperty() { this(true); } /** * Construct a new {@link TruncationProperty}. * * @param isTruncatable true if the column is truncatable, false if not */ public TruncationProperty(boolean isTruncatable) { this.isTruncatable = isTruncatable; this.isHeaderTruncatable = true; this.isFooterTruncatable = true; } /** * @return true (default) if the column is truncatable */ public boolean isColumnTruncatable() { return isTruncatable; } /** * @return true (default) if column in the footer is truncatable */ public boolean isFooterTruncatable() { return isFooterTruncatable; } /** * @return true (default) if column in the header is truncatable */ public boolean isHeaderTruncatable() { return isHeaderTruncatable; } /** * Set whether or not column are truncatable. * * @param isTruncatable true to make truncatable */ public void setColumnTruncatable(boolean isTruncatable) { this.isTruncatable = isTruncatable; } /** * Set whether or not the column in the footer is truncatable. * * @param isTruncatable true to make truncatable */ public void setFooterTruncatable(boolean isTruncatable) { this.isFooterTruncatable = isTruncatable; } /** * Set whether or not the column in the header is truncatable. * * @param isTruncatable true to make truncatable */ public void setHeaderTruncatable(boolean isTruncatable) { this.isHeaderTruncatable = isTruncatable; } }