DZone
Java Zone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
  • Refcardz
  • Trend Reports
  • Webinars
  • Zones
  • |
    • Agile
    • AI
    • Big Data
    • Cloud
    • Database
    • DevOps
    • Integration
    • IoT
    • Java
    • Microservices
    • Open Source
    • Performance
    • Security
    • Web Dev
DZone > Java Zone > The JavaFX SDK Packages are Taking Shape

The JavaFX SDK Packages are Taking Shape

James Weaver user avatar by
James Weaver
·
Jul. 01, 08 · Java Zone · Interview
Like (0)
Save
Tweet
7.14K Views

Join the DZone community and get the full member experience.

Join For Free

Now that we're getting close to the Technology Preview Release of the JavaFX SDK, the classes that have been created so far have been organized into a more fine-grained package structure. The impact is mainly in the import statements as you can see in this updated Hello/Goodbye example from a previous post. As a quick reference, the list below at the end of this post, contains the packages in JavaFX and the classes that are contained in each package. By the way, you can download the latest Technology Preview Release here and see the API documentation in more detail.

Some Other Recent/Upcoming Changes

 

There have been a couple of changes to JavaFX language syntax recently:

  • The "not equals" operator used to be <> but has been changed to the Java-style !=
  • The modulus (remainder) operator has been changed from % to mod.

Also, a new web services library is in the works that will make it even easier to communicate with remote services required by your application. As a result, the JSON and XML libraries are being pruned from the Technical Preview Release branch, but they are still available in the SVN repository if you need them. You can read the current thinking about the web services library in this message on the dev@openjfx-compiler.dev.java.net mailing list. As is typical with JavaFX libraries, the likely outcome will be a simplification of the design in that message.

Finally, I'd like to point out something that is very exciting to me -- the fact that JavaFX is migrating to a "node-centric" approach. As you may know, underneath the covers of the JavaFX UI for the desktop are Java Swing (components) and Java2D classes (graphical nodes). Eventually, most UI constructs in JavaFX will be graphical nodes, including the components (e.g. Button) and layout panels (e.g. BorderPanel). This will eliminate the need for using "adapter" classes like Canvas (to place a node on a panel) and ComponentView (to place a component on a Canvas). This will also make it easier to create UIs that have an "iPhone look and feel" that users will increasingly expect. As you can see by the fact that Dialog, Frame and Window exist in two packages (javafx.application and javafx.ext.swing), this migration has already begun. An examination of the JavaFX documentation for the Frame class in the javafx.application package, for example, will show you that the content attribute of its Window superclass contains a sequence of Node objects. Compare this with the Frame class in the java.ext.swing package whose Window superclass has a content attribute that still contains a sequence of Component objects. The latter, by the way, will be around at least until the migration to a node-centric UI is complete.

 

JavaFX Package Listing

javafx.application

  • Applet
  • Application
  • Dialog
  • Frame
  • Window

javafx.animation

  • Interpolatable
  • Interpolator
  • KeyFrame
  • KeyValue
  • SimpleInterpolator
  • Timeline

javafx.async

  • AbstractAsyncOperation
  • RemoteTextDocument

javafx.ext.swing

  • AbstractButton
  • AbstractPanel
  • BorderPanel
  • Button
  • Canvas
  • CheckBox
  • CheckBoxMenuItem
  • Cluster
  • ClusterElement
  • ClusterPanel
  • ComboBox
  • ComboBoxItem
  • Component
  • ComponentView
  • Container
  • ContainerGap
  • Dialog
  • FlowPanel
  • Frame
  • Gap
  • GridPanel
  • Icon
  • Label
  • Layout
  • Layout.Alignment
  • Layout.Relationship
  • List
  • ListItem
  • Menu
  • MenuItem
  • Panel
  • ParallelCluster
  • PreferredGap
  • RadioButton
  • RadioButtonMenuItem
  • ScrollPane
  • ScrollableComponent
  • SelectableButton
  • SequentialCluster
  • Slider
  • TextField
  • ToggleButton
  • ToggleGroup
  • Window

javafx.input

  • KeyCode
  • KeyEvent
  • MouseEvent

javafx.lang

  • DeferredTask
  • Duration
  • Sequences

javafx.scene

  • Cursor
  • CustomNode
  • Font
  • FontStyle
  • Group
  • HorizontalAlignment
  • Node
  • Orientation
  • VerticalAlignment

javafx.scene.image

  • Image
  • ImageView

javafx.scene.paint

  • Color
  • CycleMethod
  • LinearGradient
  • Paint
  • RadialGradient
  • Stop

javafx.scene.transform

  • Affine
  • Rotate
  • Scale
  • Shear
  • Transform
  • Translate

javafx.scene.layout

  • HBox
  • VBox

javafx.scene.geometry

  • Arc
  • ArcTo
  • ArcType
  • Circle
  • ClosePath
  • CubicCurve
  • CurveTo
  • DelegateShape
  • Ellipse
  • FillRule
  • HLineTo
  • Line
  • LineTo
  • MoveTo
  • Path
  • PathElement
  • Polygon
  • Polyline
  • QuadCurve
  • QuadTo
  • Rectangle
  • SVGPath
  • Shape
  • ShapeIntersect
  • ShapeSubtract
  • StrokeLineCap
  • StrokeLineJoin
  • VLineTo

javafx.scene.text

  • Text
  • TextOrigin

javafx.scene.media

  • Media
  • MediaError
  • MediaPlayer
  • MediaTimer
  • MediaView

javafx.scene.effect

  • Blend
  • BlendMode
  • Bloom
  • ColorAdjust
  • DisplacementMap
  • DropShadow
  • Effect
  • FloatMap
  • Flood
  • GaussianBlur
  • Glow
  • Identity
  • InnerShadow
  • InvertMask
  • Lighting
  • MotionBlur
  • PerspectiveTransform
  • Reflection
  • SepiaTone
  • Shadow
  • Source

javafx.scene.effect.light

  • DistantLight
  • Light
  • PointLight
  • SpotLight

javafx.util

  • StringLocalizer


Have fun, and please post a comment if you have any questions!

JavaFX Software development kit

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Use Lambda Function URL To Write a Serverless App Backed by DynamoDB
  • How BDD Works Well With EDA
  • The End of the Beginning for Apache Cassandra
  • Top Soft Skills to Identify a Great Software Engineer

Comments

Java Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • MVB Program
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends:

DZone.com is powered by 

AnswerHub logo