IBM Rational Rhapsody 中的模态框架

A modal frame in IBM Rational Rhapsody

我目前正在为 IBM Rational Rhapsody 创建一个插件。了解该工具并不是本次讨论所必需的,但我想提一下以防万一。 基本上,我在 Eclipse 中编写了 Java 代码,并通过 Jar 将其 运行 导入到 Rhapsody 中。

插件可能需要用户交互 运行:例如,插件可能正在创建模型的一个元素,但不知道将其放入哪个包中,因此它会提示用户输入指示。 为此,我创建了一个调用 setModal(true) 方法的 JDialog class;如您所知,这可确保创建对话框的线程停止 运行ning,直到用户提供输入。 在 Eclipse 上,这一切都完美无缺,但是当 jar 运行s 在 Rhapsody 上时,它并没有达到我的预期。除了从 运行ning 停止插件直到提供输入之外,它还会停止 Rhapsody 应用程序并导致 UML 模型不可用。 更明确地说,为了让用户知道在哪里插入他们的输入,他们必须能够使用和分析 UML 模型。我想要实现的是我的对话框只停止 运行ning 的插件,而不是整个模型。

我没有写一行代码,因为这是一个概念问题:我如何制作一个在线程上运行的工具外部插件,允许在插件运行时使用该工具运行宁?

我希望我的问题很清楚,我很难解释这个问题。

谢谢大家的帮助, 佐丹奴

Rhapsody 插件 运行 在与 Rhapsody 应用程序相同的进程中,因此您可以尝试的一件事是使用助手而不是插件。 Rhapsody 助手 运行 在一个单独的进程中。您可以在工具 -> 自定义 -> 助手下添加助手。从那里您可以调用您的 Swing 应用程序并使用 Rhapsody API 到 query/change 模型。