Skip to: Site menu | Main content

A Grails-like Rich Internet Framework

TridentBuilder Print

TridentBuilder is a Groovy builder for the open source Trident animation library

Description

The goal of this project is to provide a powerful and extensible animation library for Java applications.

Download

tridentbuilder-0.1

Installing

Drop tridentbuilder-0.1 into $GROOVY_HOME/lib along with its dependencies

All these dependencies can be downloaded from this directory too.

Warning

Trident and TridentBuilder require Jdk6 to be installed.

Pre-requisites

Groovy 1.6.0 is the required minimum version to run TridentBuilder 0.1

It is recommended that you upgrade to the 1.6.x series in order to take advantage of

  • @Bindable and ASTTransformations
  • short binding syntax
  • numerous enhancements made to SwingBuilder and FactoryBuilderSupport

Documentation

An example application can be found at http://github.com/aalmiray/TridentDemo/tree/master, it recreates some of Trident's samples in a friendly Griffon manner.

These are the nodes currently supported by TridentBuilder 0.1, they are listed in groups. Component groups are a good way to organize nodes, they also serve another purpose when used with Griffon's CompositeBuilder.

Properties

The following table summarizes the properties required by the node factories, there are other properties that can be set on the built nodes, refer to Trident's javadocs to know more about them.

Trident            
Node Property Type Default Required Bindable Notes
timeline

[Timeline]
start boolean    
  loop Timeline.RepeatBehavior   alternative values are [true, "loop", "reverse"]
  target Object   also can be set as the node's value
timelineCallback

[TimelineCallbackFactory]
timelinePulse Closure   can be defined as a nested closure

args are (float durationFraction, float timelinePosition)
  timelineStateChanged Closure   can be defined as a nested closure

args are (TimelineState oldState,

TimelineState newState, float durationFraction,

float timelinePosition)
interpolatedProperty property String   or set the property's as the node's value
  from Object    
  to Object    
  interpolator PropertyInterpolator    
keyFrames

[List]
property String   or set the property's as the node's value
  interpolator PropertyInterpolator    
keyFrame offset float      
  value Object      
  ease TimelineEase      
linearEase

[Linear]
           
sineEase

[Sine]
           
splineEase

[Sine]
amount float   must be in the range [0..1]
timelineScenario

[TimelineScenario]
           
parallelScenario

[TimelineScenario.Parallel]
           
sequenceScenario

[TimelineScenario.Sequence]
           
rendevouzScenario

[TimelineScenario.RendezvousSequence]
           
timelineScenarioCallback

[TimelineScenarioCallbackFactory]
onDone Closure   can be defined as a nested closure
swingRepaintTimeline

[SwingRepaintTimeline]
start boolean    
  loop Timeline.RepeatBehavior   alternative values are [true, "loop", "reverse"]
  target Object   also can be set as the node's value
  zone Rectangle    
timelineRunnable

[TimelineRunnable] ]
           

Developers

Andres Almiray

Building

TridentBuilder uses Ant as its build tool, which means that if you want to

build your own version of TridentBuilder from source you'll need to have it

installed. Follow the instructions at http://ant.apache.org

Contributing

Please contact the Griffon team members by e-mail.