Archive for January, 2006

Fuse available on java.net

I just released Fuse on java.net. It already changed a bit since the first time I talked about it. Now, here is how you load and inject resources: // Can be an InputStream, a URL, a File, a String or a Class/String pair ResourceInjector.load(“/resources/theme.properties”); ResourceInjector.inject(componentInstance); Fuse now handles component hierarchies as in the following example: [...]


Find a Regression in Mustang, Win an Ultra20

Sun is launching a contest to find regressions between J2SE 5.0 (“Tiger”) and Java SE 6 (“Mustang”). David Herron explains the details but basically, if you help Sun find a regression, we will do our best to fix it before Mustang goes final. David clearly explains why, in some cases, a regression might no get [...]


Fuse, UI Oriented Resource Injection

I spend a lot of time designing and creating graphical user interfaces. Hence, the bulk of my work is not to design object oriented architectures or think of complicated algorithms. Instead, I mostly tweak values: colors, opacities, gradients, rendering hints and so forth. Creating nice mockups in an image manipulation program is unfortunately not enough [...]


Getting Mouse Location on Screen

I have seen many people asking how you can get the mouse location on screen. Before Java SE 6, a MouseEvent can only tell you where the mouse is in coordinates relative to the component that issued the event. Even though you can combine the MouseEvent.getLocation() and Component.getLocationOnScreen() to discover the mouse location in screen [...]


Google Home Page Has Changed?!

Wow, I just noticed Google homepage has changed. It now displays a bunch of personnalized boxes, like news from the New York Times, a GMail notifier, etc. And it’s customizable. I don’t like it :( So much for the simplicity of the good ol’ Google homepage. Anyway, there’s a link to revert back to the [...]


Mustang Roadmap

Do you want to know when Java SE 6 will be declared final? Ray Gan offers a Mustang roadmap on his blog. Mustang slipped to autumn but the good news is it will leave us more time to fix bugs. We might even be able to merge GroupLayout (used by Matisse) in the JDK, who [...]


Eclipse @#!

I installed Eclipse 3.2 M4 a few days ago and I need to say it… ye gods I am pissed! Every time I upgrade Eclipse, be it a final version or a milestone I run into a shitload of issues. When I switched from 3.0 to 3.1 I lost the ability to use the References [...]


JTable Can Now Fill the Viewport

A long time frustration for Swing users has been the inability for JTable to fill the viewport of its enclosing scroll pane. There are work arounds but they are annoying (for instance you need to subclass JTable). Shannon Hickey, member of the Swing Team, posted a new blog entry in his series about drag and [...]


Sunfleet Blog

The team members of Sunfleet opened their blog. This blog is all about design and user experience research so feed it to your blog reader.


San Francisco and the Golden Gate

Golden Gate


Be Ready for Java SE 6, Remove This Hack!

Swing provides a very interesting class called com.sun.java.swing.SwingUtilities2. This class can be used for many things, like setting antialiased text on component in J2SE 5.0. Yet, SwingUtilities2 has never been part of the API and might work only with Sun's VM: it is an undocumented, unsupported class used only for internal implementation details. And if [...]


Yet Another Reason to Use Java SE 1.6!

Chris Campbell, from the Java2D team, has posted a very nice blog entry about ImageIO performance improvement in Mustang (aka Java SE 6). He shows off the amazing perf increase from 1.4 to 1.5 to 1.6 b62 to 1.6 b63. If you are still sticking with 1.4 it's high time you switched! I recommend you [...]


NetBeans 5.0 RC1 is Available, Will I Switch?

Wow, a great news today, NetBeans 5.0 RC1 is available. If you haven't tried NetBeans 5.0 yet, do it now, it is really impressive how better it has become compared to 4.x. And don't forget to try out the new GUI builder ;-) To be honest, the more I use NetBeans, the more I like [...]


I Hate java.awt.Cursor @#!

I love Swing and Java2D because they give me the liberty I need to create cool GUIs and special effects. That said, there are a few things I don't like much in those APIs. But the worst ever is the Cursor class. For instance, here is how you can set the “hand” cursor on a [...]


Want to Work in the Swing Team?

The Swing Team is looking for a talented Swing developer to work full time on a extra cool and super secret project. If you have experience in building applications, know Swing and Java2D very well and got skills in GUI design just drop me an email (see the left sidebar) or consult the job offer [...]


Apple's Future UI Designer?

Apple recently filed the patent US 20050285965 entitled User-Interface design. This patent describes a way to render UI elements on display using a different resolution than the one used at design time. This would allow for instance to define a widget with a set of properties (shadow, whatever) on your 96dpi screen and render it [...]


Meet the Swing Team, Part 2

In part 1 of Meet the Swing Team, you met Jeff, Chet, Richard, Scott and Josh. In this second installment, meet some other members and discover Santa Clara's campus. You can also view all the pictures of the Swing Team as a slideshow. Hans Muller has a very messy office but he keeps teaching me [...]


Meet the Swing Team, Part 1

Millions of developers use Swing every day thanks to a team of few. As you may already know, I am working as an intern in the Swing Team, in Santa Clara, California. This means I spend a lot of time with the people behind Swing, AWT and Java2D. In this short series of posts I'd [...]