Class SpreadsheetTable
- java.lang.Object
-
- com.vaadin.flow.component.spreadsheet.SpreadsheetTable
-
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
SpreadsheetFilterTable
public class SpreadsheetTable extends Object implements Serializable
Represents a "table" inside a spreadsheet. A table is a region (CellRangeAddress), that hasPopupButtonon the column header cells of the region. In this context the column header cells refer to the cells on the first row of the region.- Author:
- Vaadin Ltd.
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<org.apache.poi.ss.util.CellReference,PopupButton>popupButtons
-
Constructor Summary
Constructors Constructor Description SpreadsheetTable(Spreadsheet spreadsheet, org.apache.poi.ss.usermodel.Sheet sheet, org.apache.poi.ss.util.CellRangeAddress fullTableRegion)Creates a new table for the given spreadsheet component, sheet and region.SpreadsheetTable(Spreadsheet spreadsheet, org.apache.poi.ss.util.CellRangeAddress tableRegion)Creates a new table for the given spreadsheet component, its active sheet (returned bySpreadsheet.getActiveSheet()) and the given region.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()Clears all the table's pop-up buttons and their pop-up content.org.openxmlformats.schemas.spreadsheetml.x2006.main.CTAutoFiltergetCtWorksheetAutoFilter()org.apache.poi.ss.util.CellRangeAddressgetFullTableRegion()Gets the full table region,CellRangeAddressfor this table.PopupButtongetPopupButton(int col)Gets thePopupButtonfor the given column.PopupButtongetPopupButton(org.apache.poi.ss.util.CellReference filterCellReference)Gets thePopupButtonfor the header cell pointed byCellReference.Collection<PopupButton>getPopupButtons()Returns all of thePopupButtons for this table.org.apache.poi.ss.usermodel.SheetgetSheet()Gets theSheetthis table belongs to.SpreadsheetgetSpreadsheet()Gets theSpreadsheetcomponent this table belongs to.org.apache.poi.xssf.usermodel.XSSFTablegetXssfTable()protected voidinitPopupButtons()Initializes the pop-up buttons of this table.booleanisTableSheetCurrentlyActive()Returns true if the spreadsheet component is currently displaying the sheet that this table belongs to.voidreload()Reload the table's pop-up buttons, if spreadsheet component is currently presenting the sheet this table belongs to.protected voidsetCtWorksheetAutoFilter(org.openxmlformats.schemas.spreadsheetml.x2006.main.CTAutoFilter ctWorksheetAutoFilter)Sets the CTAutoFilter object that represents this table in the underlying POI model.protected voidsetXssfTable(org.apache.poi.xssf.usermodel.XSSFTable xssfTable)Sets the XSSFTable object that represents this table in the underlying POI model.
-
-
-
Field Detail
-
popupButtons
protected final Map<org.apache.poi.ss.util.CellReference,PopupButton> popupButtons
-
-
Constructor Detail
-
SpreadsheetTable
public SpreadsheetTable(Spreadsheet spreadsheet, org.apache.poi.ss.util.CellRangeAddress tableRegion)
Creates a new table for the given spreadsheet component, its active sheet (returned bySpreadsheet.getActiveSheet()) and the given region. Adds pop-up buttons for table headers (cells in the first row).- Parameters:
spreadsheet- Target spreadsheettableRegion- Cell range to build the table in
-
SpreadsheetTable
public SpreadsheetTable(Spreadsheet spreadsheet, org.apache.poi.ss.usermodel.Sheet sheet, org.apache.poi.ss.util.CellRangeAddress fullTableRegion)
Creates a new table for the given spreadsheet component, sheet and region. If the component is currently displaying the sheet that the table belongs to, pop-up buttons are added to table headers (first row cells).- Parameters:
spreadsheet- Target spreadsheetsheet- Target sheet within the spreadsheetfullTableRegion- Cell range to build the table in
-
-
Method Detail
-
reload
public void reload()
Reload the table's pop-up buttons, if spreadsheet component is currently presenting the sheet this table belongs to.If there are no pop-up buttons stored, when
clear()has been called, the pop-up buttons are recreated. Otherwise they are just added to the spreadsheet component again.
-
clear
public void clear()
Clears all the table's pop-up buttons and their pop-up content.
-
isTableSheetCurrentlyActive
public boolean isTableSheetCurrentlyActive()
Returns true if the spreadsheet component is currently displaying the sheet that this table belongs to.- Returns:
- true if the sheet this table belongs to is active
-
initPopupButtons
protected void initPopupButtons()
Initializes the pop-up buttons of this table.
-
getSheet
public org.apache.poi.ss.usermodel.Sheet getSheet()
Gets theSheetthis table belongs to.- Returns:
- Sheet this table belongs to
-
getSpreadsheet
public Spreadsheet getSpreadsheet()
Gets theSpreadsheetcomponent this table belongs to.- Returns:
- Spreadsheet this table belongs to
-
getFullTableRegion
public org.apache.poi.ss.util.CellRangeAddress getFullTableRegion()
Gets the full table region,CellRangeAddressfor this table.- Returns:
- Table region
-
getPopupButton
public PopupButton getPopupButton(int col)
Gets thePopupButtonfor the given column. If given column is outside of the table region,nullwill be returned.- Parameters:
col- Column index, 0-based- Returns:
- the
PopupButtoncontained in the header column of this table.
-
getPopupButton
public PopupButton getPopupButton(org.apache.poi.ss.util.CellReference filterCellReference)
Gets thePopupButtonfor the header cell pointed byCellReference. If given reference is not a header cell for this table, or is outside of the table region,nullwill be returned.- Parameters:
filterCellReference- header cell reference- Returns:
- Pop-up button from the given cell, or null if not found
-
getPopupButtons
public Collection<PopupButton> getPopupButtons()
Returns all of thePopupButtons for this table.- Returns:
- the pop-up buttons for this table in no specific order.
-
setCtWorksheetAutoFilter
protected void setCtWorksheetAutoFilter(org.openxmlformats.schemas.spreadsheetml.x2006.main.CTAutoFilter ctWorksheetAutoFilter)
Sets the CTAutoFilter object that represents this table in the underlying POI model.- Parameters:
ctWorksheetAutoFilter- Referenced autofilter.
-
getCtWorksheetAutoFilter
public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTAutoFilter getCtWorksheetAutoFilter()
- Returns:
- Returns the CTAutoFilter object that represents this table in the underlying POI model. Can be null if this table is not backed by a Worksheet CTAutoFilter.
-
setXssfTable
protected void setXssfTable(org.apache.poi.xssf.usermodel.XSSFTable xssfTable)
Sets the XSSFTable object that represents this table in the underlying POI model.- Parameters:
xssfTable- Referenced table.
-
getXssfTable
public org.apache.poi.xssf.usermodel.XSSFTable getXssfTable()
- Returns:
- Returns the XSSFTable object that represents this table in the underlying POI model. Can be null if this table is not backed by a XSSFTable.
-
-