Package com.inductiveautomation.rm.tool
Class RMTableTool<T extends RMTable>
- java.lang.Object
-
- com.inductiveautomation.snap.ui.UIOwner<SwingEvent,javax.swing.JComponent>
-
- com.inductiveautomation.snap.swing.SwingOwner
-
- com.inductiveautomation.rm.tool.RMTool<T>
-
- com.inductiveautomation.rm.tool.RMParentShapeTool<T>
-
- com.inductiveautomation.rm.tool.RMTableTool<T>
-
- All Implemented Interfaces:
RMSortPanel.Owner
public class RMTableTool<T extends RMTable> extends RMParentShapeTool<T> implements RMSortPanel.Owner
This class provides Swing UI editing for Tables.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.inductiveautomation.rm.tool.RMTool
RMTool.RMShapeHandle
-
-
Field Summary
-
Fields inherited from class com.inductiveautomation.rm.tool.RMTool
HandleE, HandleN, HandleNE, HandleNW, HandleS, HandleSE, HandleSW, HandleW, HandleWidth, SPLIT_RESET
-
Fields inherited from class com.inductiveautomation.snap.ui.UIOwner
DragDrop, DragEnter, DragEvents, DragExit, DragOver, KeyEvents, KeyFinished, KeyPressed, KeyReleased, KeyTyped, MouseClicked, MouseDragged, MouseEntered, MouseEvents, MouseExited, MouseFinished, MouseMoved, MousePressed, MouseReleased
-
-
Constructor Summary
Constructors Constructor Description RMTableTool()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddGroupingKey(java.lang.String aKey)Adds a grouping key to the currently selected table.static voidaddTable(RMEditor anEditor, java.lang.String aKeyPath)Adds a new table to the given editor with the given dataset key.static RMShapeaddTable(RMEditor anEditor, java.lang.String aKeyPath, RMPoint anchorPoint, RMSize tableSize)RMGroupinggetGrouping()Returns the selected grouping for this table.javax.swing.JPopupMenugetGroupingTablePopupMenu()Returns the popup menu for the grouping table.intgetHandleCount(T aShape)Overrides shape implementation to declare no handles when the child of a table group.doublegetResizeBarPopupX(RMTableRow aTableRow)Returns the x location of the given resize bar popup.java.lang.ClassgetShapeClass()Returns the shape class this tool edits (RMTable).RMTablegetTable()Returns the selected table.java.lang.StringgetWindowTitle()Returns the display name for this tool ("Table Inspector").protected voidinitUI()Initialize UI panel.booleanisSuperSelectable(RMShape aShape)Overridden to make table super-selectable.booleanisUngroupable(RMShape aShape)Overridden to make table not ungroupable.voidmouseDragged(T aTable, java.awt.event.MouseEvent anEvent)Event handling for table editing.voidmouseMoved(T aTable, java.awt.event.MouseEvent anEvent)MouseMoved implementation to update cursor for resize bars.voidmousePressed(T aTable, java.awt.event.MouseEvent anEvent)Event handling for table editing.voidmouseReleased(T aTable, java.awt.event.MouseEvent anEvent)Event handling for table editing.voidresetUI()Updates UI panel from currently tablevoidrespondUI(SwingEvent anEvent)Updates currently selected table from UI panel.voidrunMenuForShape(RMShape aShape, int x, int y)Opens a popup menu specific for table row divider under mouse.-
Methods inherited from class com.inductiveautomation.rm.tool.RMParentShapeTool
dropString
-
Methods inherited from class com.inductiveautomation.rm.tool.RMTool
acceptsDrag, activateTool, attachEventBus, createUI, deactivateTool, didBecomeSuperSelectedShapeInEditor, dragEnter, dragExit, dragOver, drop, dropClass, dropColor, dropDragKey, dropFiles, flavorForClass, flushChanges, getAcceptsChildren, getBoundsSuperSelected, getDatasetEntity, getDragDisplayBounds, getEditor, getEditorPane, getFont, getFontDeep, getGalleryClone, getHandleAtPoint, getHandleCursor, getHandleOpposing, getHandlePoint, getHandleRect, getIcon, getIcon, getPointsFromUnits, getSelectedShape, getSelectedShapes, getSelectTool, getShapeFillInspector, getShapeHandleAtPoint, getTool, getTool, getToolTipText, getUnitsFromPoints, isSelected, isSuperSelected, mouseDragged, mouseMoved, mousePressed, mousePressedSelection, mouseReleased, moveShapeHandle, newInstance, paintShapeHandles, paintTool, processKeyEvent, reactivateTool, setFont, setFontBold, setFontBoldDeep, setFontFamily, setFontFamilyDeep, setFontItalic, setFontItalicDeep, setFontName, setFontNameDeep, setFontSize, setFontSizeDeep, willLoseSuperSelectionInEditor
-
Methods inherited from class com.inductiveautomation.snap.swing.SwingOwner
addKeyActionEvent, createTimer, createUI, createWindow, getNode, getNode, getNodeHelper, getTimer, getTimer, getUI, getWindow, isEventThread, isWindowVisible, requestFocus, requestFocusImpl, runLater, sendEvent, setWindowVisible
-
Methods inherited from class com.inductiveautomation.snap.ui.UIOwner
addNodeBinding, disableEvents, enableEvents, getBindingModelValue, getBindingNodeValue, getConversionMap, getConversionMapKey, getConversionMaps, getConversionMapValue, getFirstFocus, getModelValue, getNode, getNodeAction, getNodeBoolValue, getNodeFloatValue, getNodeIntValue, getNodeItemDisplayKey, getNodeItems, getNodeSelectedIndex, getNodeSelectedItem, getNodeStringValue, getNodeText, getNodeValue, getUI, getUIHpr, initUI, isNodeEnabled, isNodeValueAdjusting, isSendEventDisabled, isUISet, processResetUI, processRespondUI, resetLater, resetNodeBindings, runLaterDelayed, runLaterOnce, sendEvent, sendNodeAction, setBindingModelValue, setBindingNodeValue, setFirstFocus, setModelValue, setNodeAction, setNodeEnabled, setNodeItemDisplayKey, setNodeItems, setNodeItems, setNodeSelectedIndex, setNodeSelectedItem, setNodeText, setNodeValue, setSendEventDisabled
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.inductiveautomation.rm.tool.RMSortPanel.Owner
getSelectedShape
-
-
-
-
Method Detail
-
initUI
protected void initUI()
Initialize UI panel.- Overrides:
initUIin classUIOwner<SwingEvent,javax.swing.JComponent>
-
resetUI
public void resetUI()
Updates UI panel from currently table- Overrides:
resetUIin classUIOwner<SwingEvent,javax.swing.JComponent>
-
respondUI
public void respondUI(SwingEvent anEvent)
Updates currently selected table from UI panel.- Specified by:
respondUIin interfaceRMSortPanel.Owner- Overrides:
respondUIin classUIOwner<SwingEvent,javax.swing.JComponent>
-
getTable
public RMTable getTable()
Returns the selected table.
-
getGrouping
public RMGrouping getGrouping()
Returns the selected grouping for this table.- Specified by:
getGroupingin interfaceRMSortPanel.Owner
-
getShapeClass
public java.lang.Class getShapeClass()
Returns the shape class this tool edits (RMTable).- Overrides:
getShapeClassin classRMParentShapeTool<T extends RMTable>
-
getWindowTitle
public java.lang.String getWindowTitle()
Returns the display name for this tool ("Table Inspector").- Overrides:
getWindowTitlein classRMParentShapeTool<T extends RMTable>
-
isSuperSelectable
public boolean isSuperSelectable(RMShape aShape)
Overridden to make table super-selectable.- Overrides:
isSuperSelectablein classRMTool<T extends RMTable>
-
isUngroupable
public boolean isUngroupable(RMShape aShape)
Overridden to make table not ungroupable.- Overrides:
isUngroupablein classRMTool<T extends RMTable>
-
getGroupingTablePopupMenu
public javax.swing.JPopupMenu getGroupingTablePopupMenu()
Returns the popup menu for the grouping table.
-
addGroupingKey
public void addGroupingKey(java.lang.String aKey)
Adds a grouping key to the currently selected table.
-
addTable
public static RMShape addTable(RMEditor anEditor, java.lang.String aKeyPath, RMPoint anchorPoint, RMSize tableSize)
-
addTable
public static void addTable(@Nonnull RMEditor anEditor, @Nullable java.lang.String aKeyPath)Adds a new table to the given editor with the given dataset key.
-
mouseMoved
public void mouseMoved(T aTable, java.awt.event.MouseEvent anEvent)
MouseMoved implementation to update cursor for resize bars.- Overrides:
mouseMovedin classRMTool<T extends RMTable>
-
mousePressed
public void mousePressed(T aTable, java.awt.event.MouseEvent anEvent)
Event handling for table editing.- Overrides:
mousePressedin classRMTool<T extends RMTable>
-
getResizeBarPopupX
public double getResizeBarPopupX(RMTableRow aTableRow)
Returns the x location of the given resize bar popup.
-
mouseDragged
public void mouseDragged(T aTable, java.awt.event.MouseEvent anEvent)
Event handling for table editing.- Overrides:
mouseDraggedin classRMTool<T extends RMTable>
-
mouseReleased
public void mouseReleased(T aTable, java.awt.event.MouseEvent anEvent)
Event handling for table editing.- Overrides:
mouseReleasedin classRMTool<T extends RMTable>
-
runMenuForShape
public void runMenuForShape(RMShape aShape, int x, int y)
Opens a popup menu specific for table row divider under mouse.
-
getHandleCount
public int getHandleCount(T aShape)
Overrides shape implementation to declare no handles when the child of a table group.- Overrides:
getHandleCountin classRMTool<T extends RMTable>
-
-