A system for adding functionality to a graphical user interface of a
non-Java based, or native, application, using the Java programming
language is provided. A Java window, or dialog, is configured to be
accessible by a native application. While the native application is
executed in a first thread, a Java dialog is launched in a second thread.
Execution of the native application in the first thread is then continued.
The Java dialog next calls the native application and registers itself
with the native application. Also, the native code can control the Java
dialog like other dialogs supported by the native code. A command for a
Java dialog from a native application is routed to an invisible dialog.
The invisible dialog passes that command to the Java dialog through a
native interface connection. A very seamless integration between the Java
and native code thus occurs. The graphical user interface operates and
visually appears as if controlled from a single source of code.
Proporcionan un sistema para agregar funcionalidad a un interfaz utilizador gráfico de una no-Java basada, o el natural, uso, usando el lenguaje de programación de Java. Una ventana de Java, o el diálogo, es configurada para ser accesibles por un uso nativo. Mientras que el uso nativo se ejecuta en un primer hilo de rosca, un diálogo de Java se lanza en un segundo hilo de rosca. La ejecución del uso nativo en el primer hilo de rosca entonces se continúa. El diálogo de Java después llama el uso nativo y se coloca con el uso nativo. También, el código nativo puede controlar el diálogo de Java como otros diálogos apoyados por el código nativo. Un comando para un diálogo de Java de un uso nativo se encamina a un diálogo invisible. El diálogo invisible pasa ese comando al diálogo de Java a través de una conexión de interfaz nativa. Una integración muy inconsútil entre la Java y el código nativo ocurre así. El interfaz utilizador gráfico funciona y aparece visualmente como si esté controlado de una sola fuente del código.