Apache NetBeans Visual Library Examples
There are a number of examples that can be used as a guide for writing code to the NetBeans Visual Library.
You will need to clone mercurial repository and get example from visual.examples folder
This will produce a NetBeans Java Application project. Open it in NetBeans IDE. A long list of examples, the first few of which are shown below, will be available.
Simply run the project. A dialog containing a list of all the examples will appear. Double-click any of the items in the list to run the example. Note that all the supporting code for the examples is in the project. This is a good source for learning how to use the NetBeans Visual Library APIs.
List of Examples
-
javaone.demo1.IconNodeWidget - how to create a composite widget
-
javaone.demo2.ActionDemo - how to use actions
-
javaone.demo3.ConnectionDemo - how to use
ConnectionWidget
-
javaone.demo4.GraphDemo - how to use graph-oriented scene implemented using
GraphScene
-
javaone.demo5.ManyObjectsDemo - performance test of 1113 nodes and 1110 edges on a single scene. Zoom-out to see more.
-
javaone.demo6.LODDemo - how to use
LevelOfDetailsWidget
. Zoom-in to see more. -
test.action.ActionMapActionTest - how to use
ActionMapAction
-
test.action.PanActionTest - test of
PanAction
-
test.action.PopupMenuActionTest - test of
PopupMenuAction
-
test.action.SelectLockedActionTest - example of proper cooperation of select (which opens another Swing windows) and locking action
-
test.action.WheelPanActionTest - how to use
WheelPanAction
-
test.alignwith.AlignWithClientAreaTest - test of #105285 - align-with action with checking client area of widgets only
-
test.alignwith.AlignWithMoveGuideLinesTest - test of #97034 - incorrectly painted guide-lines for
MoveAlignWithAction
-
test.alignwith.AlignWithTest - how to use
MoveAlignWithAction
-
test.alignwith.AlignWithResizeTest - how to use
AlignWithMoveAction
and AlignWithResizeAction -
test.anchor.ArrowAnchorShapeTest - test of
ArrowAnchorShape
-
test.anchor.AnchorShapeWidthTest - test of bugfix #91613 - Incorrectly rendered AnchorShapes
-
test.anchor.ImageAnchorShapeTest - test of
ImageAnchorShape
-
test.anchor.InvalidAnchorNegativeTest - negative test of invalid anchor (its related widget is not added into scene)
-
test.animator.AnimatorTest - how to use preferred-location animator
-
test.animator.ColorAnimatorTest - how to use background/foreground animator
-
test.bird.BirdViewTest - how to use bird view
-
test.card.CardContainerWidget - how to use
CardLayout
-
test.component.ComponentTest - shows AWT/Swing integration
-
test.component.ComponentModeTest - shows adding/removing modes of
ComponentWidget
-
test.connect.ConnectActionLockTest - test of bugfix #120766 - missing check in lockable actions
-
test.connect.ConnectScene - how to
ConnectAction
andReconnectAction
-
test.connect.ExtendedConnectTest - test of
ExtendedConnectAction
-
test.connectionlabels.ConnectionLabelsTest - how to attach labels to
ConnectionWidget
-
test.connectionlabels.LabelsWithSameAnchorTest - test for issue #121215 - Labels Overlap
-
test.constraint.ConstraintsTest - how to use widget constraints
-
test.context.ContextTest - test of mouse-cursor context resolving
-
test.controlpoint.AddRemoveControlPointTest - how to use
AddRemoveControlPointAction
andMoveControlPointAction
-
test.controlpoint.ControlPointsCursorTest - test of
ConnectionWidget.controlPointsCursor
property -
test.convolve.ConvolveTest - how to use
ConvolveWidget
-
test.custom.CustomWidgetTest - how to create a custom widget
-
test.devolve.DevolveTest - how to use scene-layout
-
test.enable.EnableTest - how to use
Widget.setEnable
method -
test.expand.MouseOverExpandTest - how to create expand/collapse details functionality
-
test.expand.ProxyAnchorExpandTest - how to use proxy anchor for expanding/collapsing functionality
-
test.freeconnect.FreeConnectTest - how to
AddRemoveControlPointAction
,FreeConnectionWidget
,FreeRectangularAnchor
andFreeRouter
-
test.general.GraphSceneTest - how to use
GraphScene
-
test.graph.GraphRemoveTest - test of
GraphPinScene.remove*WithEdges
-
test.graph.GraphTest - test of bug fix on
GraphScene.removeNode
-
test.graph.LoopEdgeTest - how to create a loop edge
-
test.graphlayout.GridGraphLayoutTest - how to use
GridGraphLayout
-
test.graphlayout.TreeGraphLayoutTest - how to implement graph-oriented scene layout
-
test.huge.HugeTest - similar to javaone.demo5.ManyObjectsDemo
-
test.inplace.ExpansionDirectionsTest - how to specify expansion directions for
TextFieldInplaceEditor
-
test.inplace.InplaceEditorTest - how to use
TextFieldInplaceEditor
-
test.inplace.InvokeInplaceEditorTest - how to invoke in-place editor programatically
-
test.inplace.JustifyAlignmentTest - test in-place text editor with justify layout of labels with right alignment
-
test.inplace.RequestFocusTest - test of bugfix #96348 - requestFocus is not forwarded while editor is closing
-
test.justify.JustifyTest - test of layout justification
-
test.keyboard.EnterKeyProcessingTest - test of processing enter key
-
test.keyboard.EnterKeyTest - test of cooperation of Swing with an enter key processing within in-place editor
-
test.keyboard.KeyboardTest - test of
CycleObjectSceneFocusAction
-
test.label.LabelGlyphVectorTest - test of
LabelWidget
rendering using glyph vector -
test.label.LabelOrientationTest - test of orientation vs. alignment of text in
LabelWidget
-
test.layout.CardLayoutWithLabelTest - how to create non-jumping widget with card layout and label widget as child
-
test.layout.FlowLayoutTest - test of bugfix #105400 - FlowLayout does not work correctly with negative location of child widgets
-
test.layout.MinMaxFlowLayoutTest - test of
FlowLayout
cooperation with minimal size -
test.layout.OverlayLayoutWidgetTest - test of justification of
OverlayLayout
-
test.layout.WeightFlowLayoutTest - how to use weights in
FlowLayout
-
test.list.ListTest - how to use
ListWidget
andListItemWidget
-
test.listeners.ObjectSceneListenerTest - how to use
ObjectSceneListener
-
test.lod.LevelOfDetailsTest - how to use
LevelOfDetailsWidget
-
test.lod.TwoLimitsLevelOfDetailsTest - test of bugfix #123711 - Fade between soft/hard max in LevelOfDetailsWidget
-
test.move.SnapToGridTest - how to use snap-to-grid move strategy
-
test.multiline.MultiLineTest - how to create a multi-line label using
JLabel
-
test.multiview.MultiViewTest - how to create satellite views
-
test.multiview.MultiViewTableTest - how to create satellite views
-
test.object.MultiMoveActionTest - how to implement
MoveAction
for multiple objects -
test.object.MultipleWidgetsTest - how to use
ObjectScene
for 1-N mapping between objects and widgets -
test.object.ObjectTest - how to use
ObjectScene
-
test.order.ReverseOrderWidgetDependencyTest - how to implement a connection widget behind a related widgets
-
test.repaint.RepaintTest - test of bugfix of repaint of
ConnectionWidget
-
test.resize.ResizeTest - how to use
ResizeAction
-
test.router.OSRCollisionsCollectorTest - test of bugfix #96462 - Incorrectly routed path by OrthogonalSearchRouter when a target in collision region
-
test.router.OSRComputeControlPointsTest - test of bugfix #96460 - Wrong control points computation in OrthogonalSearchRouter
-
test.routing.ActionsWithRoutingPolicyTest - how to use routing policy with
AddRemoveControlPointAction
andMoveControlPointAction
-
test.routing.RoutingPolicyTest - how to use routing policy of
ConnectionWidget
-
test.sceneresize.LimitedSceneTest - test of cooperation of
OrthogonalSearchRouter
withScene.maximumBounds
property -
test.sceneresize.SceneResizeTest - test of bugfix #84604 - scene resize based on Scene view component
-
test.scroll.ScrollTest - how to use
ScrollWidget
for scrollable view -
test.scroll.SwingScrollTest - how to use
SwingScrollWidget
for scrollable view which usesJScrollBar
from Swing -
test.serialization.SceneSerializerTest - how to implement serialization of graph scene where nodes and edges are represented as Long objects
-
test.swing.JButtonWidgetTest - how to implement zoom-able JButton
-
test.swingborder.SwingBorderTest - how to use borders for Swing
-
test.tool.CtrlKeySwitchToolTest - how to create active-tool switching using ctrl key
-
test.tool.ToolTest - how to use action-tools
-
test.view.OffscreenRenderingTest - how to off-screen render a scene
-
test.view.TooltipTest - test of tool-tips
-
test.visible.NotifyAddedRemovedTest - test of
Widget.notifyAdded
andWidget.notifyRemoved
methods -
test.visible.VisibilityTest - compatibility test of
Layout
implementations withWidget.visible
property -
test.vmd.VMDCollisionTest - test of
WidgetCollisionCollector
-
test.vmd.VMDColorSchemeTest - how to use
VMDColorScheme
-
test.vmd.VMDTest - how to use VMD plug-in
-
test.widget.AnimatedImageTest - test of animated image in ImageWidget
-
test.widget.ConnectionWidgetCutDistanceTest - how to use control point cut distance in
ConnectionWidget
-
test.widget.ConnectionWidgetOrderTest - test of widget order using connection widgets
-
test.widget.IconNodeHeaderTest - how to implement relative header to an IconNodeWidget
-
test.widget.RelativeDecorationTest - how to implement decoration relatively to widget location
-
test.zoom.CenteredZoomTest - how to use
CenteredZoomAction
-
test.zoom.FitToViewTest - how to implement fit-to-view feature
-
test.zoom.MouseCenteredZoomTest - how to use
MouseCenteredZoomAction