Interface SpreadsheetCell
- All Known Implementing Classes:
SpreadsheetCellBase
public interface SpreadsheetCell
Interface of the cells used in the
SpreadsheetView.
See SpreadsheetCellBase for a complete and detailed documentation.- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic enumThis enum states the four different corner available for positioning some elements in a cell. -
Property Summary
PropertiesTypePropertyDescriptionjavafx.beans.property.StringPropertyReturns theStringPropertylinked with the format.javafx.beans.property.ObjectProperty<javafx.scene.Node> Returns theObjectPropertyrepresenting this cell graphic.javafx.beans.property.ObjectProperty<Object> The item property represents the currently-set value inside thisSpreadsheetCell.javafx.beans.property.StringPropertyA string representation of the CSS style associated with this specific Node.javafx.beans.property.ReadOnlyStringPropertyReturns the StringProperty of the representation of the value. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final javafx.event.EventType<javafx.event.Event> This EventType can be used with anEventHandlerin order to catch when a corner state of a SpreadsheetCell is changed.static final javafx.event.EventType<javafx.event.Event> This EventType can be used with anEventHandlerin order to catch when the editable state of a SpreadsheetCell is changed.static final javafx.event.EventType<javafx.event.Event> This EventType can be used with anEventHandlerin order to catch when the wrap text state of a SpreadsheetCell is changed. -
Method Summary
Modifier and TypeMethodDescriptionvoidactivateCorner(SpreadsheetCell.CornerPosition position) Activates the givenCornerPositionin order to display a little triangle in the cell.<E extends javafx.event.Event>
voidaddEventHandler(javafx.event.EventType<E> eventType, javafx.event.EventHandler<? super E> eventHandler) Registers an event handler to this SpreadsheetCell.voidThis deactivates the givenCornerPositionso that no triangle will be shown for this cell.javafx.beans.property.StringPropertyReturns theStringPropertylinked with the format.Returns theSpreadsheetCellTypeof this cell.intReturns the column index of this cell.intReturns how much this cell is spanning in column, 1 means the cell is not spanning.Returns the format of this cell or an empty string if no format has been specified.javafx.scene.NodeReturns the graphic node associated with this cell.getItem()Returns the value contained in this cell.If some options cannot be factorized in aSpreadsheetCellTypeand are specific to a cell, you can return them here and theSpreadsheetCellEditorwill receive them.List<javafx.scene.control.MenuItem> IfhasPopup()is set totrue, this method will be called when the user clicks on the cell in order to gather theMenuItemto show in the Popup.intgetRow()Returns the row index of this cell.intReturns how much this cell is spanning in row, 1 means the cell is not spanning.getStyle()A string representation of the CSS style associated with this specific Node.javafx.collections.ObservableSet<String> Returns anObservableListofStringof all the style class associated with this cell.getText()Returns the String representation currently used for display in theSpreadsheetView.Returns the tooltip for this cell.javafx.beans.property.ObjectProperty<javafx.scene.Node> Returns theObjectPropertyrepresenting this cell graphic.booleanhasPopup()Returns true if this cell needs to display a popup when clicked in order to show someMenuItemlike aMenuButton.booleanReturnstrueif this cell contains something particular in its item and a Node given by theCellGraphicFactorywill be used to display it.booleanReturnstrueif a triangle is displayed in the cell for the givenCornerPosition.booleanReturnstrueif this cell can be edited.booleanIf a run of text exceeds the width of the Labeled, then this variable indicates whether the text should wrap onto another line.javafx.beans.property.ObjectProperty<Object> The item property represents the currently-set value inside thisSpreadsheetCell.booleanVerifies that the upcoming cell value can be set to the current cell.<E extends javafx.event.Event>
voidremoveEventHandler(javafx.event.EventType<E> eventType, javafx.event.EventHandler<? super E> eventHandler) Unregisters a previously registered event handler from this SpreadsheetCell.voidsetCellGraphic(boolean isCellGraphic) IfisCellGraphicistrue, this cell item contains something particular and should be display by usingCellGraphicFactoryobject in the CellView.voidsetColumnSpan(int columnSpan) Sets how much this cell is spanning in column.voidsetEditable(boolean editable) Change the editable state of this cellvoidSets a new format for this cell.voidsetGraphic(javafx.scene.Node graphic) Sets a graphic for this cell.voidsetHasPopup(boolean value) Sets totrueif this cell needs to display a popup when clicked in order to show someMenuItemlike aMenuButton.voidSets the value of the property Item.voidsetRowSpan(int rowSpan) Sets how much this cell is spanning in row.voidA string representation of the CSS style associated with this specific Node.voidsetWrapText(boolean wrapText) If a run of text exceeds the width of the Labeled, then this variable indicates whether the text should wrap onto another line.javafx.beans.property.StringPropertyA string representation of the CSS style associated with this specific Node.javafx.beans.property.ReadOnlyStringPropertyReturns the StringProperty of the representation of the value.
-
Property Details
-
item
javafx.beans.property.ObjectProperty<Object> itemPropertyThe item property represents the currently-set value inside thisSpreadsheetCell.- See Also:
-
style
javafx.beans.property.StringProperty stylePropertyA string representation of the CSS style associated with this specific Node. This is analogous to the "style" attribute of an HTML element. Note that, like the HTML style attribute, this variable contains style properties and values and not the selector portion of a style rule.- See Also:
-
format
javafx.beans.property.StringProperty formatPropertyReturns theStringPropertylinked with the format.- See Also:
-
text
javafx.beans.property.ReadOnlyStringProperty textPropertyReturns the StringProperty of the representation of the value.- See Also:
-
graphic
javafx.beans.property.ObjectProperty<javafx.scene.Node> graphicPropertyReturns theObjectPropertyrepresenting this cell graphic.- See Also:
-
-
Field Details
-
EDITABLE_EVENT_TYPE
static final javafx.event.EventType<javafx.event.Event> EDITABLE_EVENT_TYPEThis EventType can be used with anEventHandlerin order to catch when the editable state of a SpreadsheetCell is changed. -
WRAP_EVENT_TYPE
static final javafx.event.EventType<javafx.event.Event> WRAP_EVENT_TYPEThis EventType can be used with anEventHandlerin order to catch when the wrap text state of a SpreadsheetCell is changed. -
CORNER_EVENT_TYPE
static final javafx.event.EventType<javafx.event.Event> CORNER_EVENT_TYPEThis EventType can be used with anEventHandlerin order to catch when a corner state of a SpreadsheetCell is changed.
-
-
Method Details
-
match
Verifies that the upcoming cell value can be set to the current cell. This is currently used by the Copy/Paste.- Parameters:
value- the value that needs to be tested- Returns:
trueif the upcoming cell value can be set to the current cell
-
setItem
Sets the value of the property Item. This should be used only at initialization. PreferGrid.setCellValue(int, int, Object)after because it will compute correctly the modifiedCell. IfisEditable()return false, nothing is done.- Parameters:
value-
-
getItem
Object getItem()Returns the value contained in this cell.- Returns:
- the value contained in this cell
-
itemProperty
javafx.beans.property.ObjectProperty<Object> itemProperty()The item property represents the currently-set value inside thisSpreadsheetCell.- Returns:
- the item property which contains the value.
- See Also:
-
isEditable
boolean isEditable()Returnstrueif this cell can be edited.- Returns:
trueif this cell is editable
-
setEditable
void setEditable(boolean editable) Change the editable state of this cell- Parameters:
editable-trueif this cell should be editable
-
isWrapText
boolean isWrapText()If a run of text exceeds the width of the Labeled, then this variable indicates whether the text should wrap onto another line.- Returns:
trueif the text should wrap onto another line if it exceeds the width of theLabeled
-
isCellGraphic
boolean isCellGraphic()Returnstrueif this cell contains something particular in its item and a Node given by theCellGraphicFactorywill be used to display it.- Returns:
trueif this cell item needs to be given to a particular Node
-
setCellGraphic
void setCellGraphic(boolean isCellGraphic) IfisCellGraphicistrue, this cell item contains something particular and should be display by usingCellGraphicFactoryobject in the CellView.- Parameters:
isCellGraphic- iftrue, a Node will be used to display something particular for the cell
-
setWrapText
void setWrapText(boolean wrapText) If a run of text exceeds the width of the Labeled, then this variable indicates whether the text should wrap onto another line.- Parameters:
wrapText-trueif the text should wrap onto another line if it exceeds the width of theLabeled
-
getOptionsForEditor
If some options cannot be factorized in aSpreadsheetCellTypeand are specific to a cell, you can return them here and theSpreadsheetCellEditorwill receive them.- Returns:
- a
Listof options for theSpreadsheetCellEditor
-
hasPopup
boolean hasPopup()Returns true if this cell needs to display a popup when clicked in order to show someMenuItemlike aMenuButton. The items can be set ingetPopupItems().- Returns:
trueif this cell needs to display a popup
-
setHasPopup
void setHasPopup(boolean value) Sets totrueif this cell needs to display a popup when clicked in order to show someMenuItemlike aMenuButton.- Parameters:
value-trueto display aPopupwhen clicked
-
getPopupItems
List<javafx.scene.control.MenuItem> getPopupItems()IfhasPopup()is set totrue, this method will be called when the user clicks on the cell in order to gather theMenuItemto show in the Popup.- Returns:
- the
MenuItemto show in the Popup
-
setStyle
A string representation of the CSS style associated with this specific Node. This is analogous to the "style" attribute of an HTML element. Note that, like the HTML style attribute, this variable contains style properties and values and not the selector portion of a style rule.- Parameters:
style- a string representation of the CSS style associated with this specific Node
-
getStyle
String getStyle()A string representation of the CSS style associated with this specific Node. This is analogous to the "style" attribute of an HTML element. Note that, like the HTML style attribute, this variable contains style properties and values and not the selector portion of a style rule.- Returns:
- The inline CSS style associated with this Node. If this Node does not have an inline style, an empty String is returned.
-
styleProperty
javafx.beans.property.StringProperty styleProperty()A string representation of the CSS style associated with this specific Node. This is analogous to the "style" attribute of an HTML element. Note that, like the HTML style attribute, this variable contains style properties and values and not the selector portion of a style rule.- Returns:
- a string representation of the CSS style
- See Also:
-
activateCorner
Activates the givenCornerPositionin order to display a little triangle in the cell.- Parameters:
position- the position where the triangle should be displayed
-
deactivateCorner
This deactivates the givenCornerPositionso that no triangle will be shown for this cell.- Parameters:
position- the position where the triangle should be removed if displayed
-
isCornerActivated
Returnstrueif a triangle is displayed in the cell for the givenCornerPosition.- Parameters:
position-- Returns:
trueif a triangle is displayed in the cell for the givenCornerPosition
-
formatProperty
javafx.beans.property.StringProperty formatProperty()Returns theStringPropertylinked with the format.- Returns:
- the
StringPropertylinked with the format state - See Also:
-
getFormat
String getFormat()Returns the format of this cell or an empty string if no format has been specified.- Returns:
- the format of this cell or an empty string if no format has been specified
-
setFormat
Sets a new format for this cell. This format will be used bySpreadsheetCellType.toString(java.lang.Object, java.lang.String). This should be used by numbers for example.- Parameters:
format- a string pattern understood by theSpreadsheetCellType
-
textProperty
javafx.beans.property.ReadOnlyStringProperty textProperty()Returns the StringProperty of the representation of the value.- Returns:
- the StringProperty of the representation of the value
- See Also:
-
getText
String getText()Returns the String representation currently used for display in theSpreadsheetView.- Returns:
- the text representation of the value
-
getCellType
SpreadsheetCellType getCellType()Returns theSpreadsheetCellTypeof this cell.- Returns:
- the
SpreadsheetCellTypeof this cell.
-
getRow
int getRow()Returns the row index of this cell.- Returns:
- the row index of this cell
-
getColumn
int getColumn()Returns the column index of this cell.- Returns:
- the column index of this cell
-
getRowSpan
int getRowSpan()Returns how much this cell is spanning in row, 1 means the cell is not spanning.- Returns:
- how much this cell is spanning in row, 1 is normal
-
setRowSpan
void setRowSpan(int rowSpan) Sets how much this cell is spanning in row. SeeSpreadsheetCelldescription for information. You should useGrid.spanRow(int, int, int)instead of using this method directly. 1 means the cell is not spanning. Thus, the rowSpan should not be inferior to 1.- Parameters:
rowSpan- the rowSpan for this cell
-
getColumnSpan
int getColumnSpan()Returns how much this cell is spanning in column, 1 means the cell is not spanning.- Returns:
- how much this cell is spanning in column, 1 is normal.
-
setColumnSpan
void setColumnSpan(int columnSpan) Sets how much this cell is spanning in column. SeeSpreadsheetCelldescription for information. You should useGrid.spanColumn(int, int, int)instead of using this method directly. 1 means the cell is not spanning. Thus, the rowSpan should not be inferior to 1.- Parameters:
columnSpan- the columnSpan for this cell
-
getStyleClass
javafx.collections.ObservableSet<String> getStyleClass()Returns anObservableListofStringof all the style class associated with this cell. You can easily modify its appearance by adding a style class (previously set in CSS).- Returns:
- an
ObservableListofStringof all the style class of this cell
-
graphicProperty
javafx.beans.property.ObjectProperty<javafx.scene.Node> graphicProperty()Returns theObjectPropertyrepresenting this cell graphic.- Returns:
- an ObjectProperty wrapping a Node for the graphic
- See Also:
-
setGraphic
void setGraphic(javafx.scene.Node graphic) Sets a graphic for this cell. It is displayed aside with the text if any is specified. Otherwise it's fully displayed in the cell.- Parameters:
graphic- a graphic to display for this cell
-
getGraphic
javafx.scene.Node getGraphic()Returns the graphic node associated with this cell. Returns null if nothing has been associated.- Returns:
- the graphic node associated with this cell
-
getTooltip
-
addEventHandler
<E extends javafx.event.Event> void addEventHandler(javafx.event.EventType<E> eventType, javafx.event.EventHandler<? super E> eventHandler) Registers an event handler to this SpreadsheetCell.- Parameters:
eventType- the type of the events to receive by the handlereventHandler- the handler to register- Throws:
NullPointerException- if the event type or handler is null
-
removeEventHandler
<E extends javafx.event.Event> void removeEventHandler(javafx.event.EventType<E> eventType, javafx.event.EventHandler<? super E> eventHandler) Unregisters a previously registered event handler from this SpreadsheetCell.- Parameters:
eventType- the event type from which to unregistereventHandler- the handler to unregister- Throws:
NullPointerException- if the event type or handler is null
-