Package com.ribsapp.shapes
Class JSplitPaneTool
java.lang.Object
com.reportmill.base.RMObject
com.reportmill.panels.Tool
com.ribsapp.shapes.RBTool
com.ribsapp.shapes.JSplitPaneTool
- All Implemented Interfaces:
RMArchiver.Archiving,Cloneable
A Ribs app tool for JSplitPanes.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.reportmill.panels.Tool
Tool.RMShapeHandle -
Field Summary
Fields inherited from class com.reportmill.panels.Tool
HandleMaxXMaxY, HandleMaxXMidY, HandleMaxXMinY, HandleMidXMaxY, HandleMidXMinY, HandleMinXMaxY, HandleMinXMidY, HandleMinXMinY, HandleWidth -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbuildShapesFromComponents(JComponent aComponent, RJShape aShape, RMShape aParentShape) Creates the appropriate RJShape for given RJComponent and adds it to given shape.static JSplitPanebuildSplitpaneWithChildren(JComponent c1, JComponent c2, int splitways) Returns the class that this tool is responsible for.getUI()Returns the Swing UI panel for this inspector.Returns the name to be used for this tool in inspector window title.static JSplitPaneShapegroupInSplitpanes(List allShapes) Group multiple shapes into splitpanes.voidmouseDragged(RMShape aShape, MouseEvent anEvent) Event handling for shape editing.voidmousePressed(RMShape aShape, MouseEvent anEvent) Event handling for shape editing.voidpaintSuperSelectedShape(RMShape aShape, Graphics2D g) Draw some sort of indicator for super-selected splitpanes.voidresetUI()Updates the Swing UI panel controls from the currently selected button shape.voidrespondUI(JComponent anObj) Updates the currently selected button shape from the Swing UI panel controls.voidsyncComponentsFromShapes(RMShape aShape) Synchronizes component heirarchy from shape heirarchy (shapes may have been added, removed, reordered).Methods inherited from class com.ribsapp.shapes.RBTool
BuildShapesFromComponents, getComponentPacked, getHandleCount, getToolRB, SyncComponentsFromShapesMethods 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, mouseMoved, mousePressed, mousePressedSelection, mouseReleased, mouseReleased, moveShapeHandle, newInstance, paintSelectedShape, paintTool, processKeyEvent, reactivateTool, respondUI, willLoseSuperSelectionInEditorMethods inherited from class com.reportmill.base.RMObject
clone, copy, didChange, didUndo, getAnimAttribute, getClassNameShort, initWithArchiver, undoClone, undoCopy, undoEquals
-
Constructor Details
-
JSplitPaneTool
public JSplitPaneTool()Creates a tabbed pane tool.
-
-
Method Details
-
getShapeClass
Returns the class that this tool is responsible for.- Overrides:
getShapeClassin classTool
-
getWindowTitle
Returns the name to be used for this tool in inspector window title.- Overrides:
getWindowTitlein classTool
-
getUI
Returns the Swing UI panel for this inspector. -
resetUI
public void resetUI()Updates the Swing UI panel controls from the currently selected button shape. -
respondUI
Updates the currently selected button shape from the Swing UI panel controls. -
buildShapesFromComponents
Creates the appropriate RJShape for given RJComponent and adds it to given shape.- Overrides:
buildShapesFromComponentsin classRBTool
-
syncComponentsFromShapes
Synchronizes component heirarchy from shape heirarchy (shapes may have been added, removed, reordered).- Overrides:
syncComponentsFromShapesin classRBTool
-
mousePressed
Event handling for shape editing.- Overrides:
mousePressedin classTool
-
mouseDragged
Event handling for shape editing.- Overrides:
mouseDraggedin classTool
-
groupInSplitpanes
Group multiple shapes into splitpanes. Splitpanes have only two children, so this routine recursively groups the list of shapes into a tree of splitpanes. 98% of the time it will probably be called with just 2 shapes, but we might as well cover all the cases. Also, every shape will go into its own pane. Selecting 10 random shapes & choosing "group in splitpane" is awfully ambiguous, so you get what you get - quit your bitching. -
buildSplitpaneWithChildren
-
paintSuperSelectedShape
Draw some sort of indicator for super-selected splitpanes.- Overrides:
paintSuperSelectedShapein classTool
-