#119 make jchempaint able to work properly on the mac

open
nobody
cdk.render (13)
5
2012-10-08
2008-12-07
No

JChemPaint is currently designed for linux, and possibly windows. On the mac, it does not conform to application conventions.

If there is a way to get it to do so for mac, and if that is a desirable thing (I certainly think so) then it needs to:

1) Use the proper shortcut modifier : it's not Ctrl, but the apple key.
2) Use standard shortcuts - Apple-W for close window, Apple-S for save, etc.
3) Closing the last window should probably not close the application. This could be a preference option.
4) Have a single top level menu, instead of a menu for each frame.

Obviously this is a kind of wish list, and in no way vital, but these are the osx style guidelines, and users come to expect programs on the mac (even java programs) to play by these rules.

I will be happy to implement/test/fix these things if they are seen as an okay possibility...

Discussion

  • Rajarshi Guha
    Rajarshi Guha
    2008-12-07

    Sounds like good ideas

     
  • 1) Use the proper shortcut modifier : it's not Ctrl, but the apple key.

    Yes, makes sense.

    2) Use standard shortcuts - Apple-W for close window, Apple-S for save,
    etc.

    Agreed. Those match nowadays Linux conventions too.

    3) Closing the last window should probably not close the application. This
    could be a preference option.

    Mmm... that was actually deliberately added to JCP at some point... what should be done when the last editing window is closed?

    4) Have a single top level menu, instead of a menu for each frame.

    Neither am I sure how to do this... can a Swing program have a floating singleton menu? Do you have example Swing code that does that?

    Egon

     
  • "what should be done when the last editing window is closed?" : The application should remain open. In fact, not all mac programs follow this convention, but it is very useful, as you get into the habit of closing the current document (with cmd-w), and if there is only one document, you don't have to re-start.

    "can a Swing program have a floating singleton menu? Do you have example Swing code that does that?" : Java on OSX handles this through special libraries, so it's not difficult to do. In fact, now that I look it up again, it's as simple as:

    -Dcom.apple.macos.useScreenMenuBar=true

    from this http://java.sun.com/developer/technicalArticles/JavaLP/JavaToMac/ page.