3 Replies Latest reply: Dec 23, 2012 4:28 PM by jsmith RSS

    System menubar on osx

    981404
      Is there any way to access and modify the application menu in javafx 2.* when the system menu bar is used so that additional menu items other than "Quit" can be provided on the menu?

      On OS X deployed apps, the Application Menu (the one to the right of the "Apple" menu) is supposed to have, among other things, the "About Program" item, the "Preferences" item, a "Services" item, as well as the "Quit" item.

      As Javafx 2.* apps are currently deployed, only a "Quit" item is provided, and I have found no information anywhere on how to modify this menu so that the 'look & feel' of a javafx 2.* deployed app on OS X conforms to Apple's interface guidelines.

      Anyone out there know how to do this?

      Thanks.
        • 1. Re: System menubar on osx
          jsmith
          Did you call setUseSystemMenuBar? And if so, is your question that it is not providing enough customization or expected standard Apple menus?

          http://docs.oracle.com/javafx/2/api/javafx/scene/control/MenuBar.html#setUseSystemMenuBar(boolean)
          • 2. Re: System menubar on osx
            981404
            Yes, to your question.

            I am setting that boolean value, and javaFX behaves correctly in that when that value is true, it puts the menu bar at the top of the screen as expected on Mac OS X, instead of in the window.

            The problem is, at it stands now, when you run or deploy an OS X app using JavaFX, the expected Macintosh Application Menu is incomplete. All you get is a "Quit" item. On the mac, you should see menu items for "Preferences", "Services", "About", as well as "Quit", but I don't see any calls or 'hooks' to modify the application menu to make it look right for the Mac.

            In fact, what I am seeing on deployed JavaFX apps for the Mac by other developers are the "About" and "Preference" menu items under either the "File" menu, or under the "Help" menu, not under the Application menu, where they are expected by Mac users.

            Even more interesting, even though you don't see a proper Mac Application menu created with a pure JavaFX app with the system menu bar selected as true, it is correctly implemented if you create a project with a JavaFX/Swing hybrid app. That is certainly one work around for this particular issue, but it is a bit wasteful to implement a Swing app with the additional overhead just for this one menu.

            So, my original question was, is this a feature not yet implemented in JavaFX, or is there a method that permits one to modify the Application menu when the system menu bar is implemented?
            • 3. Re: System menubar on osx
              jsmith
              is this a feature not yet implemented in JavaFX
              Probably not yet implemented.

              You can lodge a feature request against the runtime project at http://javafx-jira.kenai.com/ and link back to this forum post in the request.
              is there a method that permits one to modify the Application menu when the system menu bar is implemented?
              Probably not.