1 名前:デフォルトの名無しさん [04/04/09 22:24] 統合開発環境Eclipse用プラグイン開発に関する質問と回答です。 Eclipseの使い方や、プラグインの使い方は、 このスレでは扱いませんので、↓のほうへどうぞ。 pc5.2ch.net/test/read.cgi/tech/1076074293
820 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 10:40:41 ] plugin.xml にて popupMenus に action を追加しています。 メニューを表示すると、このactionの表示順序が記述した順序の逆になっています。 これは今後も絶対に逆になるものなのでしょうか? それとも表示順序を指定する方法があるのでしょうか? よろしくお願いします。
821 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 14:30:27 ] >>820 答にはなってないが、 IAction系は3.3で標準からはずれてる。 今から勉強するくらいなら、新しいの覚えた方がいい。 wiki.eclipse.org/Platform_Command_Framework 分かりにくいけど、分かっちゃえばずっと楽になる。
822 名前:820 mailto:sage [2008/08/09(土) 06:53:28 ] >>821 ありがとう 勉強してきます!!!
823 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 12:27:38 ] たとえば、 「foo1」 「foo2」 「foo3」 というメニューにxxxを追加するとき、foo2をパスに指定すると、 「foo1」 「foo2」 「xxx」 「foo3」 となる。さらにfoo2のパスにyyyを追加すると、 「foo1」 「foo2」 「yyy」 「xxx」 「foo3」 となる。 逆になるというより、後に追加したメニューが単純に挿入されただけ。 xxxをパスに指定してyyyを追加すれば、 「foo1」 「foo2」 「xxx」 「yyy」 「foo3」 となる。
824 名前:820 mailto:sage [2008/08/10(日) 15:32:06 ] >>823 なるほど!! ありがとうございます!!
825 名前: mailto:sage [2008/08/10(日) 18:20:45 ] 3.3からpluginの作り方、どのくらい変わったの? 3.2対応って書いてる本買っちゃった。
826 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 18:31:20 ] これくらい。 help.eclipse.org/ganymede/nav/2_3_0 ただあくまでも3.3までの正しい作法に従っていることが前提。
827 名前: mailto:sage [2008/08/10(日) 18:48:39 ] それは3.3から3.4への変更じゃないですか。 でも、同じようなタイトルで調べたらEclipse 3.3 Plug-in Migration Guideがあった。 ありがとうございます。
828 名前:デフォルトの名無しさん [2008/08/20(水) 15:21:11 ] 現在R3.3でAbstractTextEditorを継承したRCPのエディターを作っています。 ActionFactoryのSAVEとSAVE_ASをワークベンチに追加したのですが ファイルを編集すると SAVEボタンはEnableになるのですがSAVE_ASボタンはグレーアウトのままです。 どなたか原因おわかりの方おられましたらご教示お願いいたします。
829 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 16:12:35 ] isSaveAsAllowed()
830 名前:sage [2008/08/20(水) 16:16:19 ] >>829 さん ありがとうございました。
831 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 16:20:58 ] 間違えてageにしてしまった…
832 名前:デフォルトの名無しさん mailto:sage [2008/08/20(水) 16:41:45 ] 解決したと思ったらSAVE_ASは有効になってもファイルダイアログが開きませんでした… 調べに行ってきます。
833 名前:デフォルトの名無しさん [2008/08/21(木) 18:05:55 ] 結局まだSAVE_ASのダイアログは開かずです…
834 名前:デフォルトの名無しさん mailto:sage [2008/08/21(木) 23:54:36 ] dev.eclipse.org/viewcvs/index.cgi/org.eclipse.ui.editors/src/org/eclipse/ui/texteditor/AbstractDecoratedTextEditor.java?view=markup とかAbstractTextEditorのサブクラスのソース一通りよんでみ。
835 名前:デフォルトの名無しさん mailto:sage [2008/08/22(金) 06:34:20 ] あいまいな言葉で命令するだけで、コーディングを全自動で行うプラグインを開発中なんだけど 需要ありますか?
836 名前:デフォルトの名無しさん mailto:sage [2008/08/22(金) 18:07:16 ] >>835 要らない が、どの程度動くのかは見てみたいな
837 名前:デフォルトの名無しさん mailto:sage [2008/08/22(金) 21:51:59 ] あやしげな言葉で命令するだけで、ペッティングを全自動で行うオナホールを開発中なんだけど 需要ありますか?
838 名前: mailto:sage [2008/08/23(土) 11:27:03 ] org.eclipse.jdt.coreのIMethodからそのメソッドがスーパークラスのをオーバーライドしたのかインターフェイスのをインプリメントしたのか、簡単に調べる方法はないでしょうか?
839 名前:デフォルトの名無しさん mailto:sage [2008/08/24(日) 04:16:06 ] ファイルシステムのパスからIFileリソースを取得する際には, IWorkspaceRoot#findFilesForLocationURI(URI location) が使えますが, ファイルシステムのパスからIWorkspaceRootリソースを取得する方法はないのでしょうか? 例えば,ワークスペースフォルダーのファイルシステムパス("C:\eclipse\workspace" など)から, IWorkspaceRootリソースを取得したいのですが,このようなことをする方法はないでしょうか?
840 名前:デフォルトの名無しさん mailto:sage [2008/08/24(日) 11:08:47 ] ひとつのランタイムが保持できるワークスペースはひとつしかないから、 単純にResoucePlugin.getWorkspace().getRoot()でも同じことだとおもう。
841 名前:838 mailto:sage [2008/08/24(日) 19:03:10 ] 838だけど簡単に調べるメソッドはないみたいですね。 自分で型階層たどったりして調べていくしかないみたいですね。 アウトラインページのラベルデコレーターの実装見たらASTをつかって調べてた。
842 名前:839 mailto:sage [2008/08/25(月) 20:58:57 ] >>840 そうなんですか.回答ありがとうございます.
843 名前:デフォルトの名無しさん [2008/08/28(木) 17:41:05 ] R3.3でRCPを作っているのですが eclipseからデバックモードで起動/アプリケーションモードで起動すると正常に起動するのですが エクスポートして.exeを起動しようとすると、パースペクティブにパーツ足りない状態で起動してしまいます。 原因の調べかたってありますでしょうか?
844 名前:デフォルトの名無しさん [2008/08/31(日) 23:42:50 ] eclipse 4.0 の全貌 ttp://wiki.eclipse.org/E4
845 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 23:34:26 ] Ganymedeでプラグイン開発しています。 SourceViewerで行ハイライト、もしくは全文検索かけた際の該当箇所ハイライティング(ForeGround?)がしたいんだけど、分かる人いるかな? CursorLinePainterを使ってハイライトするのはすぐ出来たんだけど、Listnerに食わせる形じゃなくて、指定した行固定で表示したいんだよね・・・
846 名前:845 [2008/09/02(火) 20:34:03 ] こんな感じで出来た。 TextPresentationとは・・・考えてみればそりゃそうだって感じでしょんぼり。 TextPresentation presentation = new TextPresentation(); StyleRange range = new StyleRange(start, length, new Color(null, 0, 0, 0), new Color(null, 206, 204, 207)); presentation.addStyleRange(range); viewer.changeTextPresentation(presentation, false);
847 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 00:18:36 ] 「呼び出し階層」っていう機能がありますよね? あれと同じような奴の発展版で、もっと呼び出し先をじっくり解析して 実行されうるソースコード全ての背景色を変えるようなのを作りたいんですが、 どこかに似たようなサンプルはありませんか?
848 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 01:04:52 ] >>847 カバレッジツールでぐぐれ。
849 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 10:35:30 ] >>848 それは「実行された」コードであって、 「実行されうる」コードではないだろ。静的解析と動的解析の違い。 で、静的解析だけど、メソッドのオーバライドやインタフェースを考え出すと 厳密にやるのは無理じゃないかな。 似たような話だと、Implementorsプラグインが参考になるかもしれない。 これは、インタフェースで定義しているメソッドの実装を見つけるプラグイン。 もう大分更新が止まってるけど。
850 名前:デフォルトの名無しさん [2008/09/07(日) 22:58:06 ] プラグインをR33向けに移行しているのですが、どなたか知っていたら教えてください。 AbstractUIPluginを継承したくラスのstartメソッドの中で PlatformUI.getWorkbench()を呼んでいるのですが 初回起動時(cleanオプションで起動)はワークベンチが出来てからstartメソッドが呼ばれるので いいのですが、2回目以降はワークベンチが出来る前にstartメソッドが呼ばれてしまい、 getWorkbenchメソッドからIllegalStateExceptionが発生してしまいます。 AbstractUIPlugin.startの実行がワークベンチの作成後に出来ればいいのですが、 そもそもプラグインがアクティブになるタイミングはeclipse任せなので AbstractUIPlugin.startの中でPlatformUI.getWorkbenchを呼ぶこと自体アウトなのでしょうか?
851 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 23:30:23 ] リスナ登録して呼んでもらうほうが確実。
852 名前:デフォルトの名無しさん [2008/09/10(水) 20:46:32 ] 850>> AbstractUIPluginのJavaDocで以下の記述がある。 * WARNING: Plug-ins may not be started in the UI thread. * The <code>startup()</code> method should not assume that its code runs in * the UI thread, otherwise SWT thread exceptions may occur on startup.' 『getWorkbenchメソッドからIllegalStateExceptionが発生してしまいます』 とうことは、startメソッドはユーザインターフェイススレッドから 呼ばれていない。 EclipseはSWTを使用していて、ユーザインターフェイススレッド以外の Javaスレッドからオペレーティングシステムのネイティブなリソース にアクセスするには以下メソッドで同期する必要がある。 PlatformUI.getWorkbench().getDisplay.syncExec(runnable)
853 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 22:21:11 ] 現在、学校の方でJavaエクリプス3.2を使用しています。 真剣に悩んでいることがあるのでご教授よろしくおねがいします。 エクリプスで新規にプロジェクトを立ち上げるとルートディレクトリの中に 「bin」や「src」といったフォルダが作成されてしまい開発ができない状況です。 学校ではbinやsrcというフォルダはないのですが、家で新期にプロジェクトを 作成するとbinなどのフォルダが自動的に作成されてしまいます。 家でもプログラムの勉強をしたいのですが、これのせいで手がつけられない状態です。 本当に困っているのですが、どなたか詳しい方お力かしてください><
854 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 12:09:25 ] Javaエクリプス?
855 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 01:15:30 ] Eclipse3.3でCDT使ってますが Ctrl+Jでインクリメンタルサーチできるのは良いが、ヒットした後次のヒットへ飛ぶには どうすれば良いのだろう。
856 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 14:36:22 ] ALT← ?
857 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 17:22:46 ] >>853 srcやbinが無い状態で開発とか信じられない。 その学校では何を教えているのか? まさかjavaファイルの隣にclassファイルができるような設定でやっているのか?
858 名前:デフォルトの名無しさん [2008/10/04(土) 22:54:29 ] >>853 新規プロジェクトウィザードのプロジェクトレイアウト指定で ルートに配置するかsrc、binにするか選べる。 勉強とか動作確認なら分ける必要はない。
859 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 00:52:00 ] ナビゲータービューを拡張するようなプラグインは作成できますか? また、できるとしたら、ナビゲータビューにはファイルのアイコンが表示されていますが、 このアイコンを、ファイルの4byte目が1の時は赤色のアイコン、2の時は 青色のアイコンというようにファイルの内容に応じて変えることはできますか? よろしくお願いします。
860 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 20:59:51 ] でこれた
861 名前:859 mailto:sage [2008/11/03(月) 00:22:06 ] >>860 レスが遅くなりました。すいません・・・ デコレータを調べました。できました。ドンピシャでした。 ありがとうございました。