// 一覧用テンプレート
#topicpath
----


*** [[Google Web APIs>Webサービス/Google Web APIs]] でプラグインを作る [#v5867095]
Eclipseプラグイン開発の練習として、[[Google Web APIs>Webサービス/Google Web APIs]]を使ったプラグインを作ってみました。要件としては

-Eclipseでコーディング中に、Googleにアクセスしたい。
-エディタ上のテキストを選択して、ポップアップメニューからGoogle検索
-検索結果一覧から、ダブルクリックとかポップアップメニューでブラウザを起動して、そのサイトを表示する。
-結果一覧からドラッグ&ドロップでURLを作りたい

といった感じですかね。

#ref(shortcut.png)
~
#ref(shortcut2.png)

Eclipse自体を見ていると、プラグイン開発はGUI部分とビジネスロジックのCore部分を分けて作るのが基本みたいです。なので今回作成するプラグイン構成は
-nu.mine.kino.plugin.google.core
-nu.mine.kino.plugin.google.ui

な感じにしました。

-[[まずはCoreをつくる>Eclipse/プラグイン開発のTIPS集/GooglePlugin/まずはCoreをつくる]]
-[[UI部のロジックをつくる>Eclipse/プラグイン開発のTIPS集/GooglePlugin/UI部のロジックをつくる]]
-[[設定を保持するIPreferenceStoreを使う>Eclipse/プラグイン開発のTIPS集/GooglePlugin/設定を保持するIPreferenceStoreを使う]]
-[[検索結果一覧を表示するビュー>Eclipse/プラグイン開発のTIPS集/GooglePlugin/検索結果一覧を表示するビューの作成]]
-[[前回の状態を復元する処理>Eclipse/プラグイン開発のTIPS集/GooglePlugin/前回の状態を復元する処理]]
-[[検索ロジックをビューに実装>Eclipse/プラグイン開発のTIPS集/GooglePlugin/実際の検索ロジックをビューに実装]]
-[[ポップアップメニューをエディタに実装>Eclipse/プラグイン開発のTIPS集/GooglePlugin/ポップアップメニューをエディタに実装]]
-[[LabelProviderを設定して、TableViewに情報を表示>Eclipse/プラグイン開発のTIPS集/GooglePlugin/LabelProviderで表示を制御する]]
-[[ダブルクリックやポップアップメニューから、ブラウザを開く>Eclipse/プラグイン開発のTIPS集/GooglePlugin/ダブルクリックやポップアップメニューから、ブラウザを開く]]
-[[ビューのツールバーにいろいろな機能を実装>Eclipse/プラグイン開発のTIPS集/GooglePlugin/ビューのツールバーにいろいろな機能を実装]]
-[[ドラッグアンドドロップを実装>Eclipse/プラグイン開発のTIPS集/GooglePlugin/ドラッグアンドドロップを実装する]]
-[[Featureを作成してUpdateSiteを作成する>Eclipse/プラグイン開発のTIPS集/GooglePlugin/Featureを作成してUpdateSiteを作成する]]

***インストール [#v2ca31ab]
更新サイトよりインストール可能です。
URLはこちら。
-http://www.masatom.in/update/

Eclipse3.1で開発しているので、今のところ3.1でしか稼動しないかも?

***ライセンス [#b13b1642]
基本的にCPLとか、適当にやっちゃいたいところですが、Google Web APIsが個人・非商用のみOKなのでそれに準じる、とするべきなんですかねえ。Google Web APIsのライセンスについては[[Terms and Conditions for Google Web API Service:http://www.google.com/apis/api_terms.html]]をご確認ください((具体的にはgoogleapi.jarを使わないでWSDLから直接ライブラリを作成してるので、このライセンスに準じるべきなのかどうかなどもようわからんです))。

結局、ライセンスはとりあえず無難にGPLにすることにしました。





----
この記事は
#vote(おもしろかった[12],そうでもない[1])

#topicpath


SIZE(10){現在のアクセス:&counter;}


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS