2006年4月22日土曜日

Yahoo!WidgetEngineReference-[Widget Packaging]

Widget Packaging

On Windows the files that make up a Widget are stored in a .widget file. This is a standard ZIP file that has had its extension changed to .widget.
WindowsOSでは、ウィジェットを構成するファイル群は".widget"のファイル内に格納される。このファイルは、標準的なZIP形式のファイルの拡張子を".widget"に変更したものである。

On Mac OS X the files are packaged together in a bundle, which is a directory that is treated as a single unit by the operating system. You can control-click on one of the default Widgets and choose the Show Package Contents option to see this structure in use.
Mac OS Xでは、ファイル群はOSによってひとつの構成単位として扱われるディレクトリの中にまとめられる。標準で付属しているウィジェットをCtrlを押しながらクリックし、"パッケージの中身を表示する(?Mac持ってません)"のオプションを選択すると、内部構造を見ることができる。

Both the Mac OS X and Windows versions of the engine can read the zipped up .widget files, so it is the best choice when doing cross-platform Widgets. There is a utility available on the Yahoo! Widgets web site (in Workshop) which can assist you in building or taking apart these .widget bundles called Widget Converter.
Mac OS XとWindowsの両方のバージョンのエンジンで、ZIPアーカイブされた".widget"ファイルを読み取る(実行する)ことができる。よって、クロスプラットフォーム(Mac OS XでもWindowsでも動作する)ウィジェットを作成する場合には、ZIPアーカイブするのがベストな選択だろう。Yahoo! Widgetsウェブサイト(のWorkshop内)では、Widget構成ファイルを".widget"ファイルにアーカイブ化するための、Widget Converterと呼ばれるユーティリティをダウンロードできる。

Whether on Windows or Mac OS X .widget bundle has the following structure:
WindowsでもMac OS Xでも、".widget"アーカイブは以下のような構造になっている。

myWidget.widget
Contents
myWidget.kon
Resources


The .kon file contains the actual Widget code (similar to the sample Widget in the section above). At present, the .kon file must be contained in a folder called Contents.
".kon"ファイルは実際のウィジェットのプログラムコード(これまでのセクションで出てきたサンプルウィジェットに似ている)を含んでいる。現在のところ、".kon"ファイルは"Contents"という名前のフォルダ内に保存しなければならない。

You can put resources like pictures, etc. anywhere you like, but typically they would be put into a Resources folder, as shown above.
画像などのリソースファイルは好きな場所に配置することができるが、上記の例でも挙げたように"Resources"という名前のフォルダに配置するのが普通だろう。

If you do not use the Widget Converter Widget and instead decide to zip these up manually, this is best done on a PC by right clicking the .widget folder and creating a ZIP file from that. On the Mac you can use something like DropZip.
もしWidget Converterを使わずに手動でZIPアーカイブ化する場合、PC上で.widgetフォルダを右クリックし、ZIPファイルを作成するのがベストだ。Macでは、DropZipを使うのが良いだろう。

It should be noted that while you are developing your Widget, you do not need to create a zipped up Widget file to test each time you make a change. You can merely double-click the .kon file.
ウィジェットを開発している際に注意すべき点は、何かファイルを変更してテストする際に、毎回ウィジェットファイル群をアーカイブ化する必要はないということだ。単に".kon"ファイルをダブルクリックすればよい。

You should never modify your Widget package at run time. That is, do not use your Widget package to store information inside of itself. While most Widgets use preferences to store their settings, there are some Widgets that have instead stored information inside its own package. With the advent of our zipped format, this has proven to be somewhat fruitless.
実行中には、決してウィジェットパッケージのファイルを修正してはならない。これはつまり、ウィジェット自体が使用する情報をウィジェット内部に保存して はならないということだ。ほとんどのウィジェットが自分自身の設定をPreferences(レジストリか…?)に保存しているが、パッケージ内に保存しているウィジェットも少数ながら存在する。ZIP化されたフォーマットの進化版では、もう少しマシな手段が用意されている。

When the Widget Engine runs a zipped Widget, it first unzips it into a special location and then runs it from there. In recent releases, this unzipping happens every time you run the Widget, so if you stored information in your package, it will be lost. To help accommodate Widgets that need to store permanent data, there is a system.widgetDataFolder folder path you can use to store your
Widget's permanent info.
ウィジェットエンジンがZIP化されたウィジェットを実行する際、まず最初にZIPアーカイブを特定の場所に解凍し、解凍されたファイルを元にウィジェットを起動する。最近のリリースでは、このZIPアーカイブの解凍作業はウィジェットの起動ごとに実行されるので、パッケージ内に保存した情報は失われてしまうだろう。永続化データを必要とするようなウィジェットを作るためには"system.widgetDataFolder"というフォルダパスが用意されており、そこにウィジェットの永続化情報を格納できるようになっている。

0 件のコメント: