Package com.reportmill.panels
Class TableTool
- java.lang.Object
-
- com.reportmill.base.RMObject
-
- com.reportmill.panels.Tool
-
- com.reportmill.panels.TableTool
-
- All Implemented Interfaces:
RMArchiver.Archiving,java.lang.Cloneable
public class TableTool extends Tool
This class provides Swing UI editing for Tables.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTableTool.TTCellRendererA DefaultTableCellRenderer subclass to add tool tips.static classTableTool.TTTableA JTable subclass to make table as big as scrollpane for drag and drop.-
Nested classes/interfaces inherited from class com.reportmill.panels.Tool
Tool.RMShapeHandle
-
-
Field Summary
Fields Modifier and Type Field Description static javax.swing.IconNoPageBreakIconstatic javax.swing.IconPageBreakIconstatic javax.swing.IconSortAscIconstatic javax.swing.IconSortDescIcon-
Fields inherited from class com.reportmill.panels.Tool
HandleMaxXMaxY, HandleMaxXMidY, HandleMaxXMinY, HandleMidXMaxY, HandleMidXMinY, HandleMinXMaxY, HandleMinXMidY, HandleMinXMinY, HandleWidth
-
-
Constructor Summary
Constructors Constructor Description TableTool()
-
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.voidaddSortingKey(java.lang.String aKey)Adds a sorting 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 list key.intgetHandleCount(RMShape aShape)Overrides shape implementation to declare no handles when the child of a table group.RMGroupinggetSelectedGrouping()Returns the selected grouping for this table.RMSortgetSelectedSort()Returns the selected sort for this table.RMTablegetSelectedTable()Returns the selected table.java.lang.ClassgetShapeClass()Returns the shape class this tool edits (RMTable).RJPanelgetUI()Returns the Swing UI panel for this tool.java.lang.StringgetWindowTitle()Returns the display name for this tool ("Table Inspector").voidmouseDragged(RMShape aShape, java.awt.event.MouseEvent anEvent)Event handling for splitshape editing.voidmouseMoved(RMShape aShape, java.awt.event.MouseEvent anEvent)MouseMoved implementation to update cursor for resize bars.voidmousePressed(RMShape aShape, java.awt.event.MouseEvent anEvent)Event handling for table editing.voidmouseReleased(RMShape aShape, java.awt.event.MouseEvent anEvent)Event handling for splitshape editing.voidmoveGrouping(int index1, int index2)Moves a grouping from the first given index to the second given index.voidmoveSort(int index1, int index2)Moves a sort from the first given index to the second given index.voidresetUI()Updates Swing UI panel from currently selected tablevoidrespondUI(java.lang.Object anObj)Updates currently selected table from Swing UI panel.voidrunMenuForShape(RMShape aShape, int x, int y)Opens a popup menu specific for table row divider under mouse.voidtakeValueFromDrop(java.lang.Object anObj, RJAction anAction)Handles drag and drop on grouping or sort tables.-
Methods inherited from class com.reportmill.panels.Tool
activateTool, deactivateTool, didBecomeSuperSelectedShapeInEditor, editor, flushChanges, getCoreTool, getCoreToolIndex, getHandleAtPoint, getHandlePoint, getHandleRect, getImageIcon, getImageIcon, getSelectedShape, getSelectedShapes, getSelectTool, getShapeHandleAtPoint, getTool, getTool, isInstance, isSelected, isSuperSelected, mouseDragged, mouseMoved, mousePressed, mousePressedSelection, mouseReleased, moveShapeHandle, newInstance, paintSelectedShape, paintSuperSelectedShape, paintTool, processKeyEvent, reactivateTool, willLoseSuperSelectionInEditor
-
Methods inherited from class com.reportmill.base.RMObject
clone, copy, didChange, didUndo, getAnimAttribute, getClassNameShort, initWithArchiver, undoClone, undoCopy, undoEquals
-
-
-
-
Method Detail
-
getSelectedTable
public RMTable getSelectedTable()
Returns the selected table.
-
getSelectedGrouping
public RMGrouping getSelectedGrouping()
Returns the selected grouping for this table.
-
getSelectedSort
public RMSort getSelectedSort()
Returns the selected sort for this table.
-
getUI
public RJPanel getUI()
Returns the Swing UI panel for this tool.
-
resetUI
public void resetUI()
Updates Swing UI panel from currently selected table
-
respondUI
public void respondUI(java.lang.Object anObj)
Updates currently selected table from Swing UI panel.
-
takeValueFromDrop
public void takeValueFromDrop(java.lang.Object anObj, RJAction anAction)Handles drag and drop on grouping or sort tables.
-
getShapeClass
public java.lang.Class getShapeClass()
Returns the shape class this tool edits (RMTable).- Overrides:
getShapeClassin classTool
-
getWindowTitle
public java.lang.String getWindowTitle()
Returns the display name for this tool ("Table Inspector").- Overrides:
getWindowTitlein classTool
-
addGroupingKey
public void addGroupingKey(java.lang.String aKey)
Adds a grouping key to the currently selected table.
-
addSortingKey
public void addSortingKey(java.lang.String aKey)
Adds a sorting key to the currently selected table.
-
moveGrouping
public void moveGrouping(int index1, int index2)Moves a grouping from the first given index to the second given index.
-
moveSort
public void moveSort(int index1, int index2)Moves a sort from the first given index to the second given index.
-
addTable
public static void addTable(RMEditor anEditor, java.lang.String aKeyPath)
Adds a new table to the given editor with the given list key.
-
mouseMoved
public void mouseMoved(RMShape aShape, java.awt.event.MouseEvent anEvent)
MouseMoved implementation to update cursor for resize bars.- Overrides:
mouseMovedin classTool
-
mousePressed
public void mousePressed(RMShape aShape, java.awt.event.MouseEvent anEvent)
Event handling for table editing.- Overrides:
mousePressedin classTool
-
mouseDragged
public void mouseDragged(RMShape aShape, java.awt.event.MouseEvent anEvent)
Event handling for splitshape editing.- Overrides:
mouseDraggedin classTool
-
mouseReleased
public void mouseReleased(RMShape aShape, java.awt.event.MouseEvent anEvent)
Event handling for splitshape editing.- Overrides:
mouseReleasedin classTool
-
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(RMShape aShape)
Overrides shape implementation to declare no handles when the child of a table group.- Overrides:
getHandleCountin classTool
-
-