Archive for January, 2010

Java desktop links of the week, February 1 0

The latest Java desktop news, in particular Swing, JavaFX and Griffon.

Go to Source

Building a 2d game framework 0

An example layout for a simple 2D game for JavaFX.

Go to Source

Oracle/Sun Strategy: We will invest heavily in JavaFX (What, me worry?) 0

Today was a busy interesting day for lots of my fellow geeks (like you, perhaps) in that I found myself listening to two webcasts at the same time: The Apple iPad announcement, and the Oracle/Sun Strategy announcements. Being a JavaFX developer, I was particularly interested in the extent to which Oracle is going to embrace JavaFX (and how much crow I would have to eat from my April 21, 2009 What, Me Worry post).

Go to Source

Oracle/Sun Strategy: We will invest heavily in JavaFX 0

Alfred-e-newman Today was a busy interesting day for lots of my fellow geeks (like you, perhaps) in that I found myself listening to two webcasts at the same time: The Apple iPad announcement, and the Oracle/Sun Strategy announcements.  Being a JavaFX developer, I was particularly interested in the extent to which Oracle is going to embrace JavaFX (and how much crow I would have to eat from my April 21, 2009 What, Me Worry post).

In the live Oracle/Sun Strategy webcast, I heard encouraging statements like:

  • We will invest heavily in JavaFX
  • Significant investment will be made in JavaFX; focus on designers; fusion of DHTML, JavaScript, Java, JavaFX

Screen shot 2010-01-27 at 7.46.19 PM

In the Java-specific Oracle/Sun Strategy webcast, Jeet Kaul (VP of Java Development shown in the screen shot above), made statements such as the following:

  • A JDK 7 release will happen in 2010
  • The Java runtime environment is currently installed on over 840 million Internet-connected desktop machines worldwide, and the JavaFX functionality has been added to the Java core runtime.
  • Oracle will continue investing in Java, including on the desktop, in the enterprise, and on mobile. Glassfish will continue to move forward.
  • The core Java ME platform will be optimized to run JavaFX
  • The APIs for Java SE and Java ME will be unified.
  • Efforts are underway to make Java, JavaFX and JavaScript increasingly interoperable.
  • Oracle is committed to JavaFX proliferation on TV and mobile platforms.  JavaFX will complement the work that Oracle has done with ADF and ADF Mobile.
  • Oracle will expand partnerships with vendors in the area of embedded Java devices, Java Card, etc.

During the webcast, it was announced that JavaOne will now be co-located with OracleWorld, and will occur in San Francisco on Sep. 19-23, 2010.  JavaOne will also be held in Brazil, Russia, India and China later in 2010.

I am even more convinced by today’s events that JavaFX will continue to move forward and be chosen with increasing frequency as the rich internet application (RIA) platform for new applications.  There are at least three big challenges for JavaFX that need to be overcome, so I trust that Oracle’s resources will be focused quickly on these challenges:

  1. Deployment speed and reliability, especially in the browser.  In my experience, deploying JavaFX applications via Java Web Start has been deterministic and relatively fast.  Deploying in the browser has been slow, unpredictable, and frustrating for the user and developer.  Browser deployment is always compared to Flash/Flex, which is way ahead of the game in this regard (except on the iPad announced today, which has some folks *really* peeved).  But I digress…
  2. A full complement of JavaFX UI components.  I know that more are coming soon, and that great care is being taken to create the right UI components for today’s varying application-styles and platforms.  However, I think that this needs to happen at a faster pace, and I’m hopeful that the Oracle/Sun strategy will make this happen.
  3. Availability on mobile devices.  It is my understanding that JavaFX is supported on Windows Mobile devices, but for JavaFX to really be on “all the screens of my life”, it needs to run on a variety of popular smart phones.  What I wouldn’t give to be able to develop JavaFX applications for my Android, for example :-)

I am looking forward to seeing Java continue to be open and embraced by the thriving Java community.  I’m also excited about the prospect of JavaFX continuing to flourish and being the platform of choice for rich internet applications.

What, me worry?

Jim Weaver


Go to Source

JavaFX data visualisation app by Nik Silver 0

Because of its rich UI capabilities, one very natural and powerful use of JavaFX technology is data visualization.  In today’s post I’d like to highlight the JavaFX applet that Nik Silver created to visualize and navigate news.  Nik’s app accesses the Guardian Open Platform API from Guardian News and Media Limited, and presents it in the bubbles-style interface shown below:

Screen shot 2010-01-26 at 3.06.42 PM

The purple border in the screen shot is my desktop, where this applet is located after having been dragged from the browser. 

The bubbles shown above represent tags with which articles are categorized.  You can drag the bubbles around and observe the physical interaction between them.  You can also double click on a bubble to drill down into the tag. 

Also, the sliders shown above enable you to configure spacing and size of the bubbles. They appear as a result of clicking the Show Controls button.

Take the applet for a spin, and join me in congratulating Nik Silver on this excellent facility!

Regards,

Jim Weaver


Go to Source

Say Well-it-come: TabbedPane V.3 0

TabbedPane in Action !

……..

How to control TabbedPane !

……..
This version is a little cleaner than the previous.
……..

  • But he can always make something ugly playing with CSS. :D
  • It may or may not have multiple buttons to close the tab (as was possible before) But now they are made from the component ComboButtons.
  • These are only displayed when the Tab is selected. This avoids the unfortunate mistakes …
  • The titles of the tabs are automatically shortcuts with “…” when the name is too long compared to the available space in the tab.
  • Tabs can be colored or not.
  • It is possible to configure the behavior of selections when adding or removing tabs.
  • The TabbedPane inherits Resizable and behaves as such – ie the number of tabs is visible depending on the size of the component. You can scroll tabs with appropriate functions or with wheel mouse.
  • It is possible to define content as “persistent” for optimization (Scenario: All the tabs are associated with something that is in fact the same … For example a list.) Demonstrator that I show would have made the very good example.
  • It has three Callback functions for each tab ( onClosedCallback / onSelectedCallback / onUnSelectedCallback ).
  • It has four Callback functions but reachable from TabbedPane instance ( onAddedTabCallback / onClosedTabCallback / onSelectedTabCallback / onUnSelectedTabCallback ) they are actually used in this example to put sounds on TabbedPane’s actions
  • You can press “Space” to switch to another tab and keys ”X, C, D” to close the one selected.”N or INSERT” to create a new tab (without control buttons! – Because since TabbedPane.fx not test.fx …). ”Keys left / right arrows to scroll through tabs visible.

……..

• For a short explanation of packages that revolve around TabbedPane is just below here:

……..

Packages explanation

……..

• Try it !


……..

• Get it !


……..

The French equivalent:

http://www.blog.saturny.com/?p=239

……..

Posted in controls, graphics, real world, utility

Go to Source

Making waves 0

Keyboard Cat

Play him off, Keyboard Cat…!

Jonathan Giles recently suggested demos should feature more Keyboard Cats.  I was happy to oblige.  The links below lead off to a couple of very basic animation demos written in JavaFX featuring a still image and (thanks to Jonathan’s inspiration) a video.  In both cases clicking the app/applet will cause ripples to animate across the display.  The video uses WMV format — if you have trouble playing it please post a comment (an error message should appear in the Java console).

[ Image JNLP ] [ Image applet ] – [ Video JNLP ] [ Video applet ]

Posted in animation

Go to Source

Java desktop links of the week, January 25 0

The latest Java desktop news from the last week, covering Swing, JavaFX and Griffon.

Go to Source

Wipe library demo 0

Wipe demo UI

A smart phone style interface.

The Wipe library is an experimental JavaFX package making animated transitions between pages in a UI easy.   For desktop apps it could be used to create simple slide shows, but its real power comes in environments with small UIs (like widgets or smart phone apps) were page-based navigation is more common. 

Building such a library is trickier than it might first seem, particularly if developers can write their own wipes.  One way to uncover bugs is to try writing simple demo code.  The WipeDemo app provides a very basic smart phone mock-up, with a paged menu that uses the SlideWipe to navigate, and a FadeZoomWipe to move into and out of an app.

[ WipeDemo JNLP ] [ WipeDemo applet ] [ Wipe library ]

Posted in Uncategorized

Go to Source

JavaFX chat application for focus groups 0

Over the last months, we have worked on an application that allows companies and organizations to chat with a dedicated focus group in a controlled environment. We already have some users for this, e.g. a marketing company that wants to get the first impressions from users on a new campaign. The chat client is written in JavaFX and the backend runs on Glassfish v3 with Comet support enabled.

Go to Source

Next Page »