unoh.github.com

はじめてでも簡単、Mac OSX用ウィジェットの作り方

Tue Jan 09 02:01:48 -0800 2007


hideです。

Dashborad
Dashboard posted from フォト蔵
Mac OS X 10.4(Tiger)から追加された機能にDashboardというものがあります(右図)。F12キーを押すと現在のデスクトップ画面上に重ねてウィジェットというユーティリティが表示されます。電卓やカレンダー、天気予報など、ちょっと使いたい時にいちいちアプリケーションを起動することなく、これらの機能が利用できるので、とても使い勝手がよいです。

このウィジェットですが、中身はHTML、CSSやJavaScriptといったお馴染みの技術でできていて、実は簡単に作ることができます。また先日にベータ版ではありますが、Appleからウィジェット開発環境のDashcodeというソフトウェアが公開されました。次期Mac OS XのLeopardにバンドルされる予定のものなのですが、このソフトを使うと1行もプログラムを記述することなしにウィジェットを作成することができます。

Dashcodeのダウンロードには、Apple Developer Connectionのアカウントが必要なのですが、無料でユーザ登録できます。使い方も簡単で、あらかじめ用意されたパーツ類をドラッグ&ドロップで組み合わせていくことで、ウィジェットが作成できるようになっています。また、汎用的なテンプレートも用意されていて、RSSリーダ程度のものでしたら、本当に1行もコードを書くことなく作れてしまいます。

→ Dashcode beta - Apple Developer Connection

Dashcodeの画面はこのような感じです。
Dashcode
Dashcode posted from フォト蔵

このDashcodeを使って作ったのが、「映画生活ランキング」ウィジェットです。映画生活のサイトからランキング情報が記述されたHTMLを取得し、内容を表示しているだけで難しいことはしていません。そのプログラムを一部紹介すると、XMLHttpRequestを使って非同期でリクエストを実行し、responseTextを取得するという一般的なAjaxアプリケーションの動作となんら変わりはありません。
映画生活ランキング・ウィジェット

ダウンロード(145KB)

注意すべき点を一つあげるとすると、「URLリンクにはwidget.openURL()関数を使う」ということくらいでしょうか。リンクをブラウザで開くためには、次のようにこの関数を利用して記述します。
<a href="javascript:widget.openURL('http://www.hoge.com/')">リンク</a>

Macをお使いの方は、ぜひオリジナルのウィジェットを作成してみてはどうでしょうか。新しい年初めのこの時期、今年の抱負をWidgetに表示して毎日眺められるようにしておくのもいいかもしれません。