We just launched a new website, guigeeks.com, where we will be writing about Swing, JavaFX and other UI related stuff as well. Our other sites, swingrocks.com and feedjii, are still available but don’t expect to much activity there. GuiGeeks.com seems like a much better name, now we can write about anything that we like just as long as it’s UI related and geeky.
Archive for the 'Feedjii' Category
We just added Feedjii to Kenai so if you’re interested in the code, want to take part in the development or just want to try out the application go to
http://kenai.com/projects/feedjii
and browse around but before you do you should know that we don’t consider the codebase to be complete or perfect. We know of several bugs and some really bad design choices but after all this is just a hobby project and if you don’t like what you see fix it youself
It seems like all energy was drained from us after the JavaOne event and that’s the reason why it’s been eerily silent. After a long and appreciated summer vacation it’s now time to do some fun java coding again. The positive feedback we got from the conference really mades us want to come back and talk more about Swing and good looking UIs. I can’t give any details or show any screenshots yet (because there are none) but we are working on a lot of new stuff both with Swing and JavaFX. We’ll write more about that later.
A thing that’s been bugging me is the lack of KineticScrolling examples. Guess there’s no one to blaim but myself and that’s we I’m currently writing a ”Top 50 Project Kenai” application. The reason I think this is a good idea is not only because I want to demonstrate the KineticScrolling component but also because it seems to me that Project Kenai is litteraly flooded with crappy projects that the world would be much better without. I really think that Kenai is a good idea but I want to be able to browse other projects without all the “This is a just a test project” comming in my way all the time. So “Top 50 Project Kenai” is nothing but an application that shows the top 50 projects on Kenai excluding, among other things, all projects that contains one of the words “test” and “hello”.
One last thing, we’ve been talking about adding Feedjii to Kenai and event though it’s not “perfect” I still think it’s a good idea. Maybe someone else would like to help us out?
This is the first release of the KineticScrolling component (version 0.1), we hope you find it useful. If you find bugs or if you need help to make it work please feel free to mail us.
To get started you need feedjii.jar, which you’ll find under downloads, and the timingframework which you’ll find here.
feedjii-source.jar contains the source code, the java doc is not completely up to date yet.
This is an example of how easy it is to use:
JPanel panel = new JPanel(); // populate the panel with child elements JKineticScrolling scrolling = new JKineticScrolling(panel, JKineticScrolling.Direction.VERTICAL); scrolling.setAnimationTime(1300); scrolling.setSpeed(0.5f); frame.add(scrolling);
Enjoy!
We got a lot of questions and positiv feedback on our presentation and we are very thankful for that. There were also two persons who pointed out, what they believed was, mistakes/errors in our presentation. This post is about those errors.
First of all one person told us that when we draw our component in the paintComponent() method we must consider the space that the border will use. If the border uses five pixels on the edges then we cannot paint anything on those 5 pixels. Yes that’s understood and maybe we should have said it but our goal is to make the code, in the presentation, easy to understand and that’s why we didn’t include it.
Secondly someone told us that when we change the location of the component in the Kinetic Scrolling code we shouldn’t do it directly but instead do it later, probably by using SwingUtilities.invokeLater(). The reason was that every time we changed the location of the component events will be fired and the source of those events will be our KineticScrolling component. I don’t understand what’s wrong with that? I believe that the KineticScrolling component should be what caused the event and nothing else, At least as long as we are running on the EDT. I’m going to investigate this further and let you know what the right way is.
Yes I know that our presentations are named “Swing Rocks” but I just have to save that I think that JavaFX really Rocks. At least the new 1.2 version. The controls are really good looking, performance seems to have increased a lot and I know there are other really nice featues in this version. Can wait to start working with JavaFX.
Today we held our presentation at JavaOne and I think it went alright. No tomatoes were thrown at us and all our demos worked as expected. We had a couple of questions that we, thankfully, could answer and some good discussions afterwards. Now it’s time to relax, attend a few sessions, have a few beers (not at the same time as the sessions) and perhaps start to think about our next application.
By the way someone commented on the thread safety (of lack of?) when we change the location of the Kinetic Scrolling component. Don’t know if it’s a big deal but we will have a look at it before we open source the code. Thank you for telling us.
Now it’s only one day left until we get to get up ridiculously early, stand in way too many lines at various airport, and hopefully end up safe in San Francisco. I’m not that excited about the flight from Frankfurt to San Francisco, flights shouldn’t have to take a two-digit number of hours. I’ve bought a big battery for my little netbook, but I really hope to sleep through as much of the flight as possible. We aren’t super prepared for our talk yet, but we have some time to rehearse in San Francisco, and we’re both pretty confident that we’ll be ready well in time for thursday.
The last few days we’ve fixed the problem that prevented Feedjii from running on OS X, but our solution isn’t perfect yet. As we’ll probably be busy preparing for our talk in San Francisco, I wouldn’t count on a new beta release until we’re back home again. Feel free to drop us an e-mail if you’re going to JavaOne and feel like meeting up. I’m sure we’ll have time for a beer or two, despite our busy schedule
A lot of people have let us know that Feedjii doesn’t seem to play well with OS X. This is of course a shame, especially since I’m a long time mac-user. The thing most people seem to have problems with is the class com.sun.awt.AWTUtilities is missing. I could be wrong, but I believe this class was introduced in Java 6 update 10, and with the latest official Java version from Apple, I think all we’re getting is Java 6 update 7. In Feedjii, this class is used to create the (custom) rounded corners of the application window, and we should clearly have some kind of fallback mechanism here.
The somewhat embarrassing reason we didn’t test this ourselves is that I was totally convinced I couldn’t run Java 6 on my iMac. As far as I know, it’s only available for 64-bit Intel processors, and I simply didn’t think my Core 2 Duo was one of them. When I checked this morning, I was surprised to see that I actually had Java 6 installed, so I guess I was simply wrong. I hope we can add a nice workaround for this problem, and ultimately also get our application running on Java 5. Obviously without some of the bling-bling, but running nonetheless.
Thanks for your patience!
Recent comments