Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8102068

request: show() of modal dialog that blocks waiting for dialog to be closed

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P4
    • Resolution: Duplicate
    • Affects Version/s: 7u6
    • Fix Version/s: None
    • Component/s: javafx
    • Labels:
    • Environment:

      all

      Description

      Our company provides enterprise applications written using SWT. I decided to look into offering a JavaFX version of our software. After a day of kicking the tires, I've come to the conclusion that JavaFX as it exists today is unusable for us.

      Our applications use dozens of modal dialogs sprinkled throughout the application. These dialogs are created by instantiating a child of a Dialog class, then block on the show() method which blocks until the dialog is closed, then our code retrieve values from controls in the dialog, and then our code disposes of the dialog. Internally, I believe that the SWT dialog show method calls an event dispatcher so keystrokes and mouse events are handled, and then returns when the dialog is closed. All of this happens on the user interface thread in other event handling code. It all works quite well in SWT. I saw one posting on the Oracle forum where someone tried to implement such a pattern using a custom Event Dispatcher as a child of an obviously non-public class, but he couldn't get it work. That desperate attempt, even if it could be made to work, would not but acceptable for our code base. We need a public API that works as I described.

      This needs to be address in 2.2 or later before our company can consider providing a version of our software that uses JavaFX.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                kcr Kevin Rushforth
                Reporter:
                duke J. Duke (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Imported: