私は実行時にMWindowを作成します
MWindow window = _modelService.createModelElement(MWindow.class);
window.setWidth(200);
window.setHeight(300);
// add new Window to the application
// @Inject
// MApplication _application;
_application.getChildren().add(window);
パーツを追加するよりも
EModelService windowModelService = window.getContext().get(EModelService.class);
EPartService windowPartService = window.getContext().get(EPartService.class);
// find part if exists
MPart part = windowPartService.findPart("partId");
if (part == null) {
// create if not exists
part = windowPartService.createPart("partId");
}
// Required if initial not visible
part.setVisible(true);
// Show the part
MPart newPart = windowPartService.showPart(part, PartState.VISIBLE);
しかし、このウィンドウが使用されなくなった後、このウィンドウを閉じたり破棄したりする方法がわかりません。Mwindow には、close / dispose または exit 機能はありません。そして、アプリケーションの子から単純に削除しようとすると、npe になります。
ウィンドウを取り除く方法は?