Mozilla 製品
とその関連ソフトの日本語化に関するフォーラムでした。
このサイトは 2022 年 1 月に終了しました。
フィードバック方法や変更履歴などは
Github
をご覧ください。
よくある質問
•
検索
•
登録ユーザ一覧
•
グループ
•
登録
•
ユーザ設定
•
ログインして PM を確認
•
ログイン
The Transition from a Mozilla Package to a Firebird Extensio
次のトピックを表示
前のトピックを表示
Mozilla L10N フォーラム一覧
»
Discussion & FreeTalk
投稿者
メッセージ
ゲスト
件名: The Transition from a Mozilla Package to a Firebird Extensio 投稿時間: 2004年1月03日(土) 19:03
The Transition from a Mozilla Package to a Firebird Extension - a FAQ
をざっと。
----- ここから
変換は難しいですか?私のコードを新しい環境で動作させるように出来ますか?
簡単に言えば、そんなには難しくは無いですが、あなたのadd-onやアプリケーションの規模にも因るでしょう。私が(変換に)使用したアプリケーション、
xFly
の場合は簡単でした。アプリケーション自身は未完成のもので、ちょっとつまらないものですが、それは今回の話とは別問題です。
install.jsを変更する必要はありますか?
いいえ、インストールファイルには多少手を加えましたが、変更する必要はありません。ディスク容量のチェックの後、jarファイルを登録し、chromeディレクトリに登録し、そして成功したら再起動するように促します。別に新しいものがないのを
あなたの目で確認してください!
Firebirdの設定パネル (Tools→Optionsメニュー) に私のアプリケーションを追加するにはどうしたらいいですか?
必要とされるのはコード1行です。拡張の目録 (メインのcontents.rdfファイル) 内の、パッケージのdescription (説明) に次のものを追加します。
Code:
chrome:extension="true"
これで、Firebirdが拡張の一覧に登録するようになります。
以下にdescriptionの部分をすべて引用します。他にも有用な情報、例えば製作者 (author)、名前、URL (もしあれば)、拡張の一覧で表示される拡張自身の説明文などがあるのが判るでしょう。
Code:
<!-- package information -->
<RDF:Description about="urn:mozilla:package:xfly"
chrome:displayName="xFly"
chrome:author="Frillies"
chrome:authorURL="http://xfly.mozdev.org/"
chrome:name="xfly"
chrome:description="[2003-05-04] Adds xFly application for viewing examples contained in 'Creating Applications with Mozilla' [http://books.mozdev.org]"
chrome:extension="true">
</RDF:Description>
メモ:多くのアプリケーションでは、このファイルは、メインのXULファイルと同じ場所、contents/フォルダに置かれます。
xFlyが設定パネルの拡張の一覧に登録されている様子
インストールした後、アプリケーションを起動するにはどうしたらいいですか?
Mozilla用のパッケージのように、xFlyはToolsメニューから起動します。Firebirdでも同じようにToolsメニューから起動するようにします。overlay情報を含む、メインのcontents.rdfファイルに少々修正を加えることで達成出来ます。
次のものをoverlayの一覧に追加してください。
Code:
<RDF:li resource="chrome://browser/content/browser.xul"/>
またdescriptionを追加する必要があります。
Code:
<!-- Firebird -->
<RDF:Seq about="chrome://browser/content/browser.xul">
<RDF:li>chrome://xfly/content/xflyextensionsoverlay.xul</RDF:li>
</RDF:Seq>
browser.xul
はFirebirdのメインウィンドウで、overlayしたい (
menuitem
がここにあるから) ファイルです。
menuitem
の定義は
xflyextensionsoverlay.xul
に含まれています。
Code:
<menupopup id="menu_ToolsPopup">
<menuitem id="xfly-item" label="&xflyMenu.label;" oncommand="toxFly();" />
</menupopup>
menuitem
は、idが
menu_ToolsPopup
である
menupopup
に含まれています。この
menupopup
は、
browser.xul
でToolsメニューに相当します。これが
contents.rdf
ファイル全体
です。メモ:Mozilla用のoverlay情報、つまりメニュー定義が記述されている
xflymenuoverlay_moz.xul
を
tasksOverlay.xul
にoverlayさせるというもの、が残されています。これは重要です。要するにMozillaとFirebirdでインストールファイルを共通に出来ることを意味します。
これは、Firebirdにoverlayさせてアプリケーションを起動できるようにする、多くの方法のうちの1つです。他にもツールバーのボタンを追加するという手段もあります。
ツールバーのボタンを拡張に搭載して、ドラッグ&ドロップの'Customize'機構で利用できるようにしたいのです。できるでしょうか。
ええ、できますよ。出来るようにするには多少の手間が掛かりますが。
まず最初に、ボタンを作成します。20×20ピクセルと32×32ピクセルという、2種類の大きさのボタンを作成する必要があることに注意してください。Firebirdでは大小2種のボタンのアイコンを持たせることが出来ます。
次に来るのは、ボタンのXULファイルを書くことです。
Code:
<toolbarpalette id="BrowserToolbarPalette">
<toolbarbutton class="toolbarbutton-1" id="xfly-button" label="&xflyButton.label;" oncommand="toxFly();" tooltiptext="&xflyButton.tooltip;" />
</toolbarpalette>
いくつか注目すべき点があります。これはFirebirdにoverlayさせるファイル、今回の場合は
xflyextensionsoverlay.xul
にmenuitemと共に、記述される必要があります。<toolbarbutton>は、idが
BrowserToolbarPalette
である<toolbarpalette>に含まれています。これにはツールバーにドラッグ&ドロップで追加するボタンが格納されています。このパレットは
browser.xul
に記述されています。
最後に、ボタンにスタイルシートが適用されて、作成したアイコンで表示されるようにします。以下に、overlayさせるCSSファイル
xflyextensionsoverlay.css
に記述される、大小のボタン用のCSSの一部を示します。
Code:
#xfly-button {
list-style-image: url("chrome://xfly/skin/images/xflyButton.png");
}
...
toolbar[iconsize="small"] #xfly-button {
list-style-image: url("chrome://xfly/skin/images/xflyButton.png");
}
最後のハードルは、
skinのcontents.rdfファイル
にスタイルシートを登録することです。
Code:
<RDF:Seq about="urn:mozilla:stylesheets">
<RDF:li resource="chrome://browser/content/browser.xul"/>
<RDF:li resource="chrome://global/content/customizeToolbar.xul"/>
</RDF:Seq>
<RDF:Seq about="chrome://global/content/customizeToolbar.xul">
<RDF:li>chrome://xfly/skin/xflyextensionsoverlay.css</RDF:li>
</RDF:Seq>
<RDF:Seq about="chrome://browser/content/browser.xul">
<RDF:li>chrome://xfly/skin/xflyextensionsoverlay.css</RDF:li>
</RDF:Seq>
これで、Firebirdの2つのXULファイルに、作成した画像を指定するスタイルシートが適用されるようになるでしょう。
警告:私がテスト中に出くわしたのですが、パレットに正しいアイコンではなく、無関係なアイコン群が現れるということがありました。それは、'Toolbar.png' (Mozilla Firebirdの主要なアプリケーションアイコンすべてを含む) で、ブラウザのロケーションバーに
"chrome://browser/skin/Toolbar.png"
と入力すると表示されるものと同じものです。これはCSSプロパティ -moz-image-region で切り取られて使用されます。この問題はMozilla Firebirdのユーザプロファイルを削除することで解決します。
0.6リリースノート
を参照してください。
パレット上のxFlyのドラッグ&ドロップボタン
これですべてが完了しました。ボタンをドラッグしてFirebirdツールバーの好みの場所にドロップ出来るようになりました。
ツールバー上のxFlyボタン
設定パネルの'Disable Extension'ボタンはどういう機能のものですか?
拡張を無効にすると、その拡張への参照をすべて隠し、UIコンポーネントにoverlayさせないようにします。ただしこれを反映させるにはFirebirdを再起動する必要があります。現在、これが必要であると指摘するメッセージはなく、ユーザにとっては不便な機能になっています。将来のバージョンでは変わると、私は確信しています。
拡張パネルのアプリケーションの設定 ('Settings...'ボタン) を利用するにはどうしたらいいでしょう?
アプリケーションの設定を行うようにする方法は他にもありますが、これがFirebirdでの「公式」な方法です。これは、入力や選択が必要なアプリケーションに対して、新しいウィンドウを開いてユーザに拡張の全体的な設定をできるようにするものです。
拡張の目録 (メインの
contents.rdf
ファイル) に、次のようなものをパッケージのdescriptionに追加します。
Code:
chrome:settingsURL="chrome://xfly/content/xflysettings.xul"
これでFirebirdから
xflysettings.xul
のchromeウィンドウが開くようになります。この機能は拡張が無効化されていても有効です。
XULやXBLコードを書き直す必要がありますか?
最新のロードマップ
曰く:
Quote:
Note: the Phoenix toolkit is a compatible reimplementation of the XPFE toolkit, with added features such as customizable toolbars. We are not starting a new C++ GUI toolkit, we are simply moving to the next generation XUL toolkit.
新しいtoolkitがXPFE toolkitと互換性を持つべきであるということからも、あなたのコードが動作するであろうことが読み取れます。しかしながら、とにかくテストすることを忘れないようにし、また可能な場合は新しい機能を利用するようにしましょう。私が現在知っている限りでは、新しい機能はツールバーのカスタマイズ関連で、<toolbarpalette>および<toolbaritem>要素が追加されたことなどだけです。しかしながら、toolkitの発展と共にさらなる機能の追加があるであろうと確信しています。
とても興味がわきました。もっとFirebirdの拡張に関しての情報を得るにはどのサイトがありますか?
Mozilla Firebirdプロジェクトページ:
http://mozilla.org/projects/firebird/
リリースページ:
http://mozilla.org/projects/firebird/releases.html
Firebird Help (テーマ、拡張、使用上のヒントなど、多くの情報を含む総合サイト) :
http://texturizer.net/firebird/
mozdev.orgにホストされる、様々なFirebird用拡張のプロジェクト:
http://cdn.mozdev.org/
http://themes.mozdev.org/
http://extensionroom.mozdev.org/
その他の開発者向け情報
dynamis
登録日: 2003年10月 05日
記事: 1744
件名: Re: The Transition from a Mozilla Package to a Firebird Exte 投稿時間: 2004年1月12日(月) 10:41
Motohiko wrote:
インストールした後、アプリケーションを起動するにはどうしたらいいですか?
Mozilla用のパッケージのように、xFlyはToolsメニューから起動します。Firebirdでも同じようにToolsメニューから起動するようにします。overlay情報を含む、メインのcontents.rdfファイルに少々修正を加えることで達成出来ます。
[・・・割愛・・・]
これは、Firebirdにoverlayさせてアプリケーションを起動できるようにする、多くの方法のうちの1つです。他にもツールバーのボタンを追加するという手段もあります。
ツールバーのボタンを拡張に搭載して、ドラッグ&ドロップの'Customize'機構で利用できるようにしたいのです。できるでしょうか。
ええ、できますよ。出来るようにするには多少の手間が掛かりますが。
おお、これは助かります。
自分で調べてみようかと思っていた事がズバリ。(^-^)
時間さえ取れれば Venkman がメニューに追加されるようにしてみようか…
指定期間中に書かれた記事を表示:
全てのトピック
1日以内
1週間以内
2週間以内
1ヶ月以内
3ヶ月以内
6ヶ月以内
1年以内
古い記事から表示
新しい記事から表示
Mozilla L10N フォーラム一覧
»
Discussion & FreeTalk
別のフォーラムに移る:
フォーラムを選んでください
Info.
----------------
Announcement
FAQ & Study
Discussion & FreeTalk
Develop & Support
----------------
Firefox
Thunderbird
Other Products
Extensions & Themes
misc.
----------------
test
Archive (nonactive, locked)
----------------
Flock
Documentation
共同ウェブ標準化プロジェクト(仮称)準備委員会 本会議場
次のトピックを表示
前のトピックを表示
新規トピックを投稿
できます
既存トピックに返信
できます
自分の記事を編集
できません
自分の記事を削除
できません
投票に参加
できません
Powered by
phpBB
© 2001, 2002 phpBB Group (customized by dynamis) ::
FI Theme
:: All times are GMT +9:00