2007-01-12 Google Gadgets API 入門 (8)
■[Google Gadgets] Google Gadgets API 入門 (8)
今回は Feature-specific ライブラリから、タブ機能を提供する MiniMessage ライブラリについて解説します。
MiniMessage ライブラリとは
MiniMessage ライブラリとは、Gadget 内にちょっとしたメッセージを表示する機能を提供する Feature-specific ライブラリです。Gadget の状態や最新情報を表示するために使用することができます。
メッセージの種類
MiniMessage ライブラリでは、メッセージを以下の種類に分類しています:
- Dismissible メッセージ
- [x] リンクによってユーザが削除可能なメッセージです。
- Timer メッセージ
- 指定時間経過後に自動的に削除されるメッセージです。
- Static メッセージ
- プログラム的に削除するまで表示され続けるメッセージです。ユーザが直接削除することはできません。
MiniMessage ライブラリの使用
MiniMessage ライブラリを使用するには、以下のように Gadget-Spec で宣言する必要があります:
<Module>
<ModulePrefs ...>
<Require feature="minimessage" />
</ModulePrefs>
...
</Module>
プログラム側では、次のように minimessage オブジェクトをインスタンス化します:
var minimessage = new _IG_MiniMessage(__MODULE_ID__)
メッセージの作成は、以下のように行います:
minimessage.createDismissibleMessage("Now Loading...")
以下に、MiniMessage ライブラリで提供されている関数を示します:
| _IG_MiniMessage(moduleId, opt_container) | MiniMessage のコンストラクタです。パラメータには __MODULE_ID__ を渡します。opt_container はオプショナルであり、メッセージ・コンテナ(メッセージが追加される HTML 要素(通常は )の DOM-ID)を指定します。opt_container が省略された場合は、デフォルトのメッセージ・コンテナが自動生成され、Gadget の上部に配置されます。 |
|---|---|
| createDismissibleMessage(msg, opt_callback) | Dismissible メッセージを作成します。msg には文字列または DOM-Node を指定します。opt_callback はオプショナルであり、削除用の [x] リンクがクリックされたときに呼び出されるコールバック関数を指定します。コールバック関数が false を返した場合はメッセージの削除がキャンセルされます。 例: minimessage.createDismissibleMessage("Now Loading...") minimessage.createDismissibleMessage(_gel("loading")) |
| createTimerMessage(msg, seconds, opt_callback) | Timer メッセージを作成します。msg には文字列または DOM-Node を指定します。seconds にはメッセージが削除されるまでの秒数を指定します。opt_callback はオプショナルであり、指定秒数が経過したときに呼び出されるコールバック関数を指定します。コールバック関数が false を返した場合はメッセージの削除がキャンセルされます。 例: minimessage.createTimerMessage("Your account has been updated.", 5) |
| createStaticMessage(msg) | Static メッセージを作成します。msg には文字列または DOM-Node を指定します。Static メッセージを削除するには dismissMessage() 関数を使用します。戻り値として、作成された Static メッセージを表すオブジェクト(dismissMessage() の引数に使用します)が返されます。 例: var message = minimessage.createStaticMessage("Now Loading...") |
| dismissMessage(msg) | msg に指定された Static メッセージを削除します。 例: var loadMsg = minimessage.createStaticMessage("Now Loading...") minimessage.dismissMessage(loadMsg) |
コールバック関数の使用
createDismissibleMessage() や createTimerMessage() で指定するコールバック関数は、メッセージが削除されるタイミングで呼び出されます。Static メッセージの場合は [x] リンクがクリックされたとき、Timer メッセージの場合は指定秒数が経過したときにコールバックされます。
コールバック関数の戻り値は、そのままメッセージの削除をするかどうかを指定する boolean 値です。false の場合はメッセージの削除がキャンセルされます。
以下にコールバック関数の使用例を示します:
var minimessage = new _IG_MiniMessage(__MODULE_ID__)
minimessage.createTimerMessage("Hello", 5, callback)
function callback()
{
// 削除を許可する
return true
}
条件によってメッセージの削除を許可するかどうか動作を変更したい場合にコールバック関数を使用します。
次回予告
今回までの内容で Google Gadgets API の基本的な範囲の解説はおしまいです。とりあえず本連載は一区切りということにします。
関連
- Google Gadgets - Google Gadgets のトップ・ページです。
- Google Gadgets API - Overview - Google Gadgets API のトップ・ページです。
- Google Gadgets API - Documentation Home - Google Gadgets の Developer Guide です。開発に必要な多くの情報があります。
- 紅孔雀 - Google Gadgets API 入門 - 管理人のサイトにおける「Google Gadgets API 入門」のページです。本連載の各記事へのポインタがあります。
