package com.vaadin.addon.spreadsheet.shared; /* * #%L * Vaadin Spreadsheet * %% * Copyright (C) 2013 - 2015 Vaadin Ltd * %% * This program is available under Commercial Vaadin Add-On License 3.0 * (CVALv3). * * See the file license.html distributed with this software for more * information about licensing. * * You should have received a copy of the CVALv3 along with this program. * If not, see <http://vaadin.com/license/cval-3>. * #L% */ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Set; import com.vaadin.addon.spreadsheet.client.MergedRegion; import com.vaadin.addon.spreadsheet.client.OverlayInfo; import com.vaadin.shared.annotations.DelegateToWidget; import com.vaadin.shared.ui.TabIndexState; @SuppressWarnings("serial") public class SpreadsheetState extends TabIndexState { @DelegateToWidget public int rowBufferSize = 200; @DelegateToWidget public int columnBufferSize = 200; @DelegateToWidget public int rows; @DelegateToWidget public int cols; @DelegateToWidget public List<GroupingData> colGroupingData; @DelegateToWidget public List<GroupingData> rowGroupingData; @DelegateToWidget public int colGroupingMax; @DelegateToWidget public int rowGroupingMax; @DelegateToWidget public boolean colGroupingInversed; @DelegateToWidget public boolean rowGroupingInversed; @DelegateToWidget public float defRowH; @DelegateToWidget public int defColW; @DelegateToWidget public float[] rowH; @DelegateToWidget public int[] colW; /** should the sheet be reloaded on client side */ public boolean reload; /** 1-based */ public int sheetIndex = 1; public String[] sheetNames = null; @DelegateToWidget public HashMap<Integer, String> cellStyleToCSSStyle = null; @DelegateToWidget public HashMap<Integer, Integer> rowIndexToStyleIndex = null; @DelegateToWidget public HashMap<Integer, Integer> columnIndexToStyleIndex = null; @DelegateToWidget public Set<Integer> lockedColumnIndexes = null; @DelegateToWidget public Set<Integer> lockedRowIndexes = null; @DelegateToWidget public ArrayList<String> shiftedCellBorderStyles = null; /** * All conditional formatting styles for this sheet. */ @DelegateToWidget public HashMap<Integer, String> conditionalFormattingStyles = null; /** 1-based */ @DelegateToWidget public ArrayList<Integer> hiddenColumnIndexes = null; /** 1-based */ @DelegateToWidget public ArrayList<Integer> hiddenRowIndexes = null; @DelegateToWidget public int[] verticalScrollPositions; @DelegateToWidget public int[] horizontalScrollPositions; public boolean sheetProtected; @DelegateToWidget public boolean workbookProtected; public HashMap<String, String> cellKeysToEditorIdMap; public HashMap<String, String> componentIDtoCellKeysMap; // Cell CSS key to link tooltip (usually same as address) @DelegateToWidget public HashMap<String, String> hyperlinksTooltips; public HashMap<String, String> cellComments; public HashMap<String, String> cellCommentAuthors; public ArrayList<String> visibleCellComments; public Set<String> invalidFormulaCells; public boolean hasActions; public HashMap<String, OverlayInfo> overlays; public ArrayList<MergedRegion> mergedRegions; @DelegateToWidget public boolean displayGridlines = true; @DelegateToWidget public boolean displayRowColHeadings = true; @DelegateToWidget public int verticalSplitPosition = 0; @DelegateToWidget public int horizontalSplitPosition = 0; @DelegateToWidget public String infoLabelValue; public boolean workbookChangeToggle; @DelegateToWidget public String invalidFormulaErrorMessage = "Invalid formula"; @DelegateToWidget public boolean lockFormatColumns = true; @DelegateToWidget public boolean lockFormatRows = true; }