2016-03-21 7 views
-4

私は、Eclipse用のIDEリモートを開発しています。ユーザーは、WebブラウザからコマンドをEclipseにHTTP要求として転送し、それに応じてEclipseを制御できます。たとえば、http://localhost/openfileと入力すると、[ファイルを開く]ウィンドウが開きます。私はすでに要求を処理しています。しかし、私はそれぞれの行動をどのように実行しますか?Eclipse-プラグインを使用してEclipseワークベンチアクションを実装する方法は?

は私が要求http://localhost/newを受信したときに新しいファイル/プロジェクトウィンドウを開くようにしたいと言いますか?プラグインを使ってどうすればいいですか?どのプラグイン拡張機能を使用しますか?

+0

あなたは「保存開いているプロジェクト」とはどういう意味ですか:あなたはのようなものを使用して、既存のコマンドorg.eclipse.ui.newWizardを使用することができる新しいウィザードを開くには

? Eclipseには、プロジェクトを保存するという概念はありません。 –

+0

私は、現在開いているプロジェクトに既に保存されていないすべてのファイルを保存することを意味しました。しかし、それは他にもある可能性があります。ユーザーがhttp:// localhost/openfileと入力すると、Open Fileウィンドウが開きます。私は質問を更新します。 – samurdhilbk

答えて

0

これには一般的な答えはありません。実行する必要がある操作は、操作によって大きく異なります。

IHandlerService handlerService = PlatformUI.getWorkbench().getService(IHandlerService.class); 

String commandId = IWorkbenchCommandConstants.FILE_NEW; 

handlerService.executeCommand(commandId, event); 
+0

ありがとうgreg!しかし、私はどのようにイベントパラメータを取得するのですか?私はボタンや何かをクリックしていません。コードから完全に実行されます。 – samurdhilbk

+0

Eventはnullにすることも、 'new Event()'で自分でイベントを作成することもできます。いくつかのコマンドは賢明なイベントを期待するかもしれないし、他のコマンドは気にしないかもしれない。 –

+0

ありがとう!私はそれが働いている!しかし、新しいウィンドウが複数回開いています!約10個の新しいウィンドウが1つずつ開きます。多分トリガー関数が複数回呼び出されているからです。そのウィンドウがすでに開いているかどうかをチェックし、そうであればそれを開いていないかどうかを確認するにはどうしますか? – samurdhilbk

関連する問題