Mac Widgets for Java

September 8, 2008

I’ve just released Mac Widgets for Java version 0.9.0. The Source List component (pictured below) is the only component fully ready to use. You can download the library here and you’ll find the documentation here. Feedback and comments are welcome. More widgets are on the way!
Java iTunes style Source ListJava Mail style Source List

18 Responses to “Mac Widgets for Java”

  1. Uwe Says:

    Very nice!
    Thanks for taking the trouble to release this as a library.
    I definitely have to try this sometime…


  2. Ken Says:

    No problem Uwe! Be sure to let me know how the library works for you.


  3. Jesse Wilson Says:

    Dude, this is fantastic. Nice work. I think I might have to try this out…

  4. obinna henry Says:

    this is totally awesome. keep it up


  5. […] finally, Ken Orr has announced the Mac Widgets for Java project. The goal of this project is to provide a collection of widgets […]

  6. Jeremy Says:

    Looks great. Now I’m trying to think of excuses to introduce this element into an application. :)

  7. Robert Lebel Says:

    Looking forward to more components. Do you plan to make the sources available on google code?

  8. Ken Says:

    Hi Robert,

    The code will be available at the Google Code project sometime this week. I’ll post a comment here when its up.


  9. Zack Says:

    Very nice.

  10. lowell Says:

    hey boss, i appreciate your asking for clarification about my earlier post..

    i’m glad that you’re utilizing apple’s hig and that you’re sharing those best practices.. based on the posts, it looks as though many of those benefiting the most are the ones that unlike you and i, code outside of the cocoa world.

    everyone benefits whenever there is a contribution to the community, especially with a license as permissive as the lgpl..

    the issue i have with your project is the use and inclusion of non-free apple assets.. the hig is a set of guidelines designed to maintain a consistent experience within the cocoa environment; it isnt a free pass to use their graphics _outside_ of cocoa.

    when say, i code an application using cocoa ui widgets and elements, i’m actually only using references to libraries already installed in os x (*.rsrc) – i am not repacking them when they are distributed.. if you are going to release a project like this under the lgpl, you’ve got to use your own assets (or say, swing’s) if it leaves cocoa.. you know how apple is about their look and feel being used outside of the mac os.

    thats my only issue – the graphics are not yours to redistribute. and no, i’m not going any further (ie google, apple) with this than this blog lol..

    but anyways, i like what you’re doing and have subscribed to your blog – the world needs more ui evangelists.

    /sorry for the lateness

  11. lowell Says:

    oh yeah.. about my last sentence above.. umm.. yeah.. you need a rss button (or i need a better monitor).. i cant find it lol

  12. Ken Says:

    Hi Lowell,

    I’m not sure if you’ve misunderstood my project – it only uses Java Graphics 2D and component customization (no native libraries are involved). My target audience is Java Mac developers. The fact that my API works on other platforms is a happy coincidence.

    I certainly don’t think there any legal issues with making an app look “Mac-like” on a non-mac platform. Apple has in fact done this itself with the release of iTunes and Safari for Windows. Thus, it would seem to me to be a non-issue.

    Thanks for the thoughtful commentary.


  13. Christian Says:

    Hi Ken,

    very nice work!! I must say that I am a bit jealous because such a project is on my own start-a-project whishlist for months and I didn’t find the time…

    Keep up the good work! What are the next widges to come?


  14. Ken Says:

    Thanks Christian! Here’s what widgets are currently planned:

    * Heads Up Display (HUD)
    * iTunes style table
    * Preferences window

    Let me know if there are other widgets you’d like to see.


  15. Lawal Olawale Says:

    I just heard about the Mac HUD et al. But the issue is that I have been unable to use everything especially the unconvential component like the SourceList, UnifiedBar in my regular J2SE programmes.
    Can you forward a sample program source code in which “these unconvential components” are used and added to a Container?

  16. Ken Says:

    Hi Lawal,

    You’ll find example usages here:

    Let know if you have further questions.


  17. Lawal Olawale Says:

    The examples are for the creation not for adding the conventional containers like JPanel.
    I worked with the creation but I need to add it to a container to see it fully work.
    Kindly send me snippets of code where they are added to a container, by “they” I mean SourceList, TriAreaComponent etc.
    As a Nigerian, I really appreciate this kind gesture.

  18. Ken Says:

    Hi Lawal,

    Use the getComponent methods like this:

    SourceListModel model = new SourceListModel();
    SourceList sourceList = new SourceList(model);
    JPanel myPanel = new JPanel(new BorderLayout());
    myPanel.add(sourceList.getComponent(), BorderLayout.CENTER);


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: