Mozillaでプログラミング(XUL)
■ このスレッドは過去ログ倉庫に格納されています
0001Moziller
NGNGMozilla 1.0 RC1がリリースされ、
XUL 1.0の仕様が一応フリーズしました。
なので、そろそろXULアプリケーションも出始めることでしょうし(希望的観測)
MozillaでのXULプログラミングについて騙りませんか。
Mozillaスレッド M10
http://pc.2ch.net/test/read.cgi/software/1019550671/
0586デフォルトの名無しさん
NGNG実装はクロスプラットフォームでなくてもいいんだけどね。
実際にクロスプラットフォームなバイナリは
idlをコンパイルした部分だけだが、それで十分役にたってる。
0587デフォルトの名無しさん
NGNGほかのプラットフォームでは動かないということですか?
逆にいうと、XPCOMを作るときクロスプラットフォームを意識するならば、
Mozillaが出ているすべてのプラットフォームで実装する必要があるんですか?
0588デフォルトの名無しさん
NGNGでも、普通にC++でコーディングすれば、
プラットフォームの違いを意識する必要はない。
COMのいいところは他のCOMをブラックボックスとして使えるところだから、
プラットフォームの違いがクリティカルになりそうな奴、
(waveoutとか、DCとかファイルアクセスとか型のビット数の違いとか)
は、すでに誰かがやってくれてあるので、
いまさらOSに依存する部分を新たに作る方がしんどいと思う。
例えば、xpcomには3Dを扱うオブジェクトがないので、
direct3Dをそのままwrapしたようなコンポーネントを作れば、
確かに、windowsでしか動かないだろう。
でも、OpenGL+glutとかでcomponentを作れば、
他のプラットフォームは何も考えなくても、
ビルドツールが勝手にコンパイルしてくれるはず。
0589デフォルトの名無しさん
NGNG色々詳しく説明してくれてありがとう。
ふーむ。感覚がいまいちつかめないので、
こういうときは実際に作ってみるに限るな。
とりあえずmozillaをインストールせねば。
0590デフォルトの名無しさん
NGNG素晴らしい
ttp://www.linet.gr.jp/~ishida/geckocatp.xpi
スクリーンショット ttp://www.linet.gr.jp/~ishida/xul2.png
素晴らしスギ
0591デフォルトの名無しさん
NGNG1.0っていつの話だ?
0592591
NGNG0593デフォルトの名無しさん
NGNG需要があるか激しく疑問であるが。。。
晒してみる。
0594デフォルトの名無しさん
NGNG申し訳ない。
0595デフォルトの名無しさん
NGNGむ!頂きまつ
0596デフォルトの名無しさん
NGNGなんだかまっさらなプロファイルにインスコすると落ちちゃうみたい。。。
というわけで最新版落としてくださいです。。。
すみません。
0597age
NGNG0598デフォルトの名無しさん
NGNGlxrが微妙に進化してる…。
最初はなんの事かよく分からなかったが、
xpcomの親子ツリーを図解したりしてる。
つーか、http://lxr.mozilla.org/からそこに飛ばされてしまった。
0599デフォルトの名無しさん
NGNGそこはソースじゃなくてDoxygen後のドキュメントみたいだけど?
0600デフォルトの名無しさん
NGNGこれいつからあったんだろ?全然知らなかった。飛ばされないし。
まあソース見りゃ済むからいらんのだけどなあ。
0601デフォルトの名無しさん
NGNGソースの上に継承図がある。
http://lxr.mozilla.org/seamonkey/source/xpcom/io/nsILocalFile.idl
MFCのアレ見たいな感じ。
前回使ったのは1ヶ月ほど前だが、その時にはなかったと思う。
0602デフォルトの名無しさん
NGNGうぉっ!ほんまや。そういうことやったんか。ありがとう。
俺毎日見てるけど気付かなかった。
0603デフォルトの名無しさん
NGNGhttp://unstable.elemental.com/mozilla/ は俺の知る限り2年前にはもうあった。
以前は lxr 各ソースの上のほうにリンクがあっただけだったんだが、
ずーーーーーっとリンク切れしてた。
単に doxygen しただけのもんだけど、
http://unstable.elemental.com/mozilla/build/latest/mozilla//xpcom/dox/interfacensILocalFile-members.html
みたいなプロパティの継承関係とかソースだけだとわかりにくかったんで便利だったよ。
ちなみに mozilla ビルドすると
http://lxr.mozilla.org/seamonkey/source/config/doxygen.cfg.in
の doxgen.cfg 使って自前でも作れるけどね。
0604デフォルトの名無しさん
NGNGttp://cgi29.plala.or.jp/~mozzarel/addon/firebird/custombutton/custombutton.xpi
スクリーンショット。
ttp://cgi29.plala.or.jp/~mozzarel/addon/firebird/custombutton/screenshot_custombutton.png
0605デフォルトの名無しさん
NGNG(*゚∀゚)=3
Toolbar Enhancementsで縦置きツールバー使ってるんで、
縦に並べられるようにできませんか?
0606デフォルトの名無しさん
NGNGuserChrome.cssで、
toolbar > toolbaritem.toolbaritem-custombutton-container{
-moz-box-orient: vertical;
}
を設定すればいいはずです。
効かなければ、!importantを付けてみてください。
toolbar >の部分はもっと絞り込めると思いますけどね。
なんてたって、縦置きなんだし…。
0608デフォルトの名無しさん
NGNGtoolbox[vertical="true"] > toolbar > .toolbaritem-custombutton-container{
-moz-box-orient: vertical;
}
0609デフォルトの名無しさん
NGNGhttp://www.hevanet.com/acorbin/xul/top.xul
0610デフォルトの名無しさん
NGNG拡張を探しても無かったので・・・。
0611デフォルトの名無しさん
NGNGできます。
nsIHTTPChannelを複数(デフォじゃ3個以上は無意味だが)
作ってそれぞれに別のrangeを割り振ればいいんです。
http以外ではどうなるのかよく分からんが…
0612デフォルトの名無しさん
NGNGありがとー^^
0613デフォルトの名無しさん
NGNGこれを受けて、拡張をプログラムファイルの方にインストールするのは
廃止する方針のようですね。
0614デフォルトの名無しさん
NGNGdatasources="rdf:files" ref="file:///c:"
とすると、日本語は文字化けすると思いますが
文字化けを解消させるにはどうしたいいのでしょうか?
環境は、Win me,Firebird 0.7en
0615デフォルトの名無しさん
NGNGたとえば、アドレスバーに、"file:///c:"って打つと、
chrome://communicator/content/directory/directory.xulは
まさに、そのdatasourceをそのrefでみてテンプレから作ってるわけで…
この時点で既に文字化けしてるんだったら、ばぐじら行きかもね。
0616ヽ(゚∀゚)メ(゚∀゚)ノ ◆tRZ80FPU5k
NGNGえと、間違いだったらスマソ
WinMeだったらファイルシステムがFATなので内部文字コードがSJISの為に
文字化けするのかも。。。アクティブディレクトリならUNICODEですよね
身近にMeが無いので確認できんですよ
上記の問題だとすれば
http://www.xulplanet.com/references/xpcomref/ifaces/nsIScriptableUnicodeConverter.html
このへんで対処できるですか?
0617ヽ(゚∀゚)メ(゚∀゚)ノ ◆tRZ80FPU5k
NGNG>>616はガセネタのような気がしてきた。。。
まあ漏れらしいけど。。。
0618デフォルトの名無しさん
NGNGそれに、わざわざ文字列を拾ってコンバーターにかけると、
rdfのありがたみが一挙に薄れるような。
0619614
NGNG文字化けの感じがUTF-8文字をShift_jisで変換しているようだったから
開いているxulドキュメントの先頭にencoding="utf-8"にしたらいいと思ってたんですが
RDFから読み込んだ部分にはまったく反映されないみたいですね。
勉強してきます。
0620デフォルトの名無しさん
NGNG↑というわけで遊んでみようかと思って↓のJavaScript版を書いてみようと思ったんですけど、
http://lxr.mozilla.org/seamonkey/source/netwerk/test/TestServ.cpp
var serv=Components.classes["@mozilla.org/network/server-socket;1"].getService();
serv.QueryInterface(Components.interfaces.nsIServerSocket);
serv.init(80,true,5);
とすると
Exception... "Component returned failure code: 0xc1f30002 (NS_ERROR_ALREADY_INITIALIZED) [nsIServerSocket.init]"
って返ってきてしまいます。
http://lxr.mozilla.org/seamonkey/source/netwerk/base/src/nsServerSocket.cpp
http://bugzilla.mozilla.org/show_bug.cgi?id=92928
も見てみましたがそれらしい記述が見つからないので困っています。
誰かわかるかた居ませんでしょうか。
ちなみにWin98、Moz1.6b: 2003112918trunkで試しています。
0621デフォルトの名無しさん
NGNGvar serverSocket=Components.classes["@mozilla.org/network/server-socket;1"]
.createInstance(Components.interfaces.nsIServerSocket);
serverSocket.init(80,true,5);
ですね。逝ってきます…
0622デフォルトの名無しさん
NGNG最近公開されたRSSニュースリーダーに
ReadOne
http://www.readone.net/
というのがあります。現在はまだInternet Explorerのプラグイン版
しかないそうですが、サポートBBSの以下の書き込みを読んだ限り
ではmozilla版も脈ありのようです。
>なお、作りたいとは考えておりますのでmozillaサイドバー(XUL)の
>開発を手伝ってくださる方がいらっしゃれば比較的近いうちに作成
>できるかもしれません。
私はmozillaもRSSリーダーも単なるユーザーで知識皆無なので手伝いは
無理なんですが、どなたかが開発に参加されてmozillaでRSSリーダーが
一つ増えればいいなあと思います。
0623デフォルトの名無しさん
NGNG最近,XULをいじりたくなって,イロイロと調べてるのですが,
XULのDTDってどこにあるのでしょう...?
もしかして,DTDなんてものはなくて,
XML-Schema とか,他の手段で定義されてんでしょうか???
0624デフォルトの名無しさん
NGNGttp://www.mozilla.org/xulだとだめ?
0625デフォルトの名無しさん
NGNGCSS と XBL の組み合わせでどんどん要素名・属性の追加拡張が可能だから
DTD 書いてもナンセンス、のような感じ。
基本的なものは XUL Tutorial でわかるけど、追加物はソースを見るしかない。
box や menu とかの基本セットについてはあってもいいと思うけど。
0626デフォルトの名無しさん
NGNGttp://cgi29.plala.or.jp/~mozzarel/addon/firebird/bookmarksftp/bookmarksftp0_2.xpi
自分で試してる時、ftpのURLを間違えてブックマークが空になった後、
焦って正しいURLを入れたら、サーバー上のファイルを空のブックマークで
上書きしてしまったよ…
0627デフォルトの名無しさん
NGNG>>626
いつもながら乙
0628デフォルトの名無しさん
NGNG0629デフォルトの名無しさん
NGNGどうだろ。0.7が最新みたいだけど、
あれからリクエストまわりでけっこう大きな変更あったからね。
0630デフォルトの名無しさん
NGNGどうもありがとう。
久しぶりに日本語化してみました。
ttp://cgi29.plala.or.jp/~mozzarel/addon/firebird/bookmarksftp/bookmarksftp0_3_1.xpi
FB0.8の新しいXPインストーラーは、
どういう風なるんだろうね。
0631デフォルトの名無しさん
NGNG将来的にはmozilla.orgのほうで拡張の認証とかするのかな。
0632デフォルトの名無しさん
NGNGUnsignedは古いインストーラーでも出てたけど…
まあ、mozdevあたりかなぁ、やるとすれば。
databaseプロジェクトって今でも人気投票やろうってくらいだから。
0633デフォルトの名無しさん
NGNG0.8 が今日出たばっかりみたい。
http://livehttpheaders.mozdev.org/installation.html#0.8
新しいFBでも動きそうだけど…試してみるわ。
simple URL filter ってなんだろ?
0634デフォルトの名無しさん
NGNGチュートリアルなんかで、使える例題載せてるところってないですか?
やっぱ英語ですか?
0635デフォルトの名無しさん
NGNGやりたがってる人はいろいろ居るみたいだけど…
0636デフォルトの名無しさん
NGNGhttp://www.hevanet.com/acorbin/xul/top.xul
上の圧縮
http://www.hevanet.com/acorbin/xulpt.zip
ソースも見るとけっこういいサンプル。
基本要素は1.0からあんまり変わってないのね。
0637デフォルトの名無しさん
NGNG>609
0638デフォルトの名無しさん
NGNG0639デフォルトの名無しさん
NGNGXULアプリを作ったんだけど,需要はあるんだろうか?
0640デフォルトの名無しさん
NGNGむ、ほしい。RSS を変換させたやつを保存したかったり。
0641デフォルトの名無しさん
NGNGはっきり言って完成度は3%にも満たない試作品以下のレベルだけど.
http://tool-ya.ddo.jp/2ch/trash-box/file/20040110181719911.xpi
piro氏やflyson氏のソースからかなり流用しています.
特にinstall.jsなんかrssreaderから丸パクリ.
ついでにアンインストール機能なんてものは無い.
0642641
NGNG0644641
NGNG0645デフォルトの名無しさん
NGNG0646641
NGNG保存ドキュメントが整形して出力されるようになった.
ENCODE_FLAGS_FORMATTEDに気づくまで2時間くらいかかった.
自らの英語力の無さを痛感.
Mozilla Firebird 0.7で使用すると日本語がUnicode エスケープされる.
Mozilla Suite 1.6bだと大丈夫.
0647641
NGNGhttp://xulisyahookup.hp.infoseek.co.jp/
0648デフォルトの名無しさん
NGNG0649デフォルトの名無しさん
NGNG何も返さないと思いますが。
html文書をDOMとして得るにはどうすればいいですか?
0650デフォルトの名無しさん
NGNGvar URI =HTMLファイルのURI;
var doc = document.implementation.createDocument('', '', null);
doc.load(URI);
doc.addEventListener('load', docLoaded, false);
function docLoaded {
ここからdocを使用する処理を記述
}
0652デフォルトの名無しさん
NGNG...
var str=httprequestobject.responseText;
var doc=(new DOMParser()).parseFromString(str,"text/html");
alert(doc.documentElement.localName);
うろ覚えだから関数名は間違ってるかもしれないけど…
詳しくはここ。
http://www.mozilla.org/xmlextras/
0653デフォルトの名無しさん
NGNGイベントリスナーは先に追加してほしい。
0654デフォルトの名無しさん
NGNGUTF-16がデフォルト?
それとも、スクリプトやRDFだけUTF-16なのか?
0655デフォルトの名無しさん
NGNGnsStringがUTF-16だからデフォルトはUTF-16なんじゃないの?
0656デフォルトの名無しさん
NGNGhttp://wp.netscape.com/eng/intl/docs/iuc17/browser/slide32.html
0657デフォルトの名無しさん
NGNGお、この図はわかりやすいなぁ。
ありがとう。
0658デフォルトの名無しさん
NGNGFirefoxのブックマークをソートする拡張を作ってみました。
ttp://cgi29.plala.or.jp/~mozzarel/addon/firefox/sortbookmarks/sortbookmarks.xpi
ttp://extensionroom.mozdev.org/more-info/sortbookmarks
作ってるときは楽しかったんですけど、日本語のブックマークって、
文字コード順に並んでても、イマイチありがたみがないですね。
だから、日本語にローカライズしてないんですが…。
extensionroomに「bookmarks」カテゴリーを作るのが目標。
あと、人に頼まれて、about:*****を登録するスクリプトを書いたので、
about:wazillaとかabout:saitamaとかに興味がある人はどうぞ。
componentsディレクトリにインストールするタイプ。
ttp://cgi29.plala.or.jp/~mozzarel/addon/firefox/test/aboutfiresomething.js
拡張のoverlayで実行するタイプ。
ttp://cgi29.plala.or.jp/~mozzarel/addon/firefox/test/aboutfiresomething_overlay.js
0659デフォルトの名無しさん
NGNGオリジナルのnsAboutRidirector.cppは、
httpプロトコルに飛ばすときにセキュリティのレベルを変えてますね。
chromeに行くなら心配はいらないんですが、
aboutのレベルでウェブ上のファイルを読ませると、
えぐいことができそうなので、気をつけてください。
0660デフォルトの名無しさん
NGNGにvoteしておきました。
でも、さっきまで2だったから、他にも投票した人がいるみたいだね。
0661デフォルトの名無しさん
NGNG面白い。プロトコル追加の解説があったので貼り付けておく。
http://www.nexgenmedia.net/docs/protocol/
0662デフォルトの名無しさん
NGNG読んでみました。
ところで、そのドメインって何やってるんですかねぇ。
ドキュメント自体はIBM名義なので、
就業中に書いたのかもしれませんが、
Doron個人のサイト?
0663デフォルトの名無しさん
NGNGweblog からリンクしてたから、個人的に自由に使えるサイトなんだろ。
0664デフォルトの名無しさん
NGNG0665デフォルトの名無しさん
NGNGそうすりゃXULなんぞ必要ないだろ好きなだけ機能追加できる
0666デフォルトの名無しさん
NGNG0667デフォルトの名無しさん
NGNG毎月第一火曜日はXULの日、らしい。
あさって(あるいは水曜日の朝?)だな。
0668デフォルトの名無しさん
NGNG0669デフォルトの名無しさん
NGNGhttp://www.surfmind.com/musings/2004/03/31/index.cfm#index
0670デフォルトの名無しさん
NGNGtalkbackを読めばわかるが、このスレで言うXULとは
あまり関係ない。
0671デフォルトの名無しさん
NGNG0672デフォルトの名無しさん
NGNGhttp://www.geocities.co.jp/SiliconValley-SanJose/9076/quickprefs/
http://extensionroom.mozdev.org/clav/#prefbuttons
0673デフォルトの名無しさん
NGNGありがとう。
0674デフォルトの名無しさん
NGNGその辺のソースについて詳しく載っているサイトはありませんか?
0675デフォルトの名無しさん
NGNGhttp://xulplanet.com/tutorials/xultu/keyshort.html
このへんの Key Example でわかるんでないかな。
Overlay してる場合はソース見ないと分からんけど、たとえば
<keyset id="(overlay する id)">
<key id="hotkey_slashzilla" key="s" modifiers="accel,shift" oncommand="<開く関数>"/>
</keyset>
こんなんで ctrl+shift+s で開くようになるんじゃないかな。
0676674
NGNGszoverlay.xulのソースが以下のようになっているんですが
<?xml version="1.0"?>
<overlay id="slashzillaOverlay"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<!-- Sidebar Overlay -->
<menupopup id="viewSidebarMenu">
<menuitem observes="viewSlashzillaSidebar"/>
</menupopup>
<broadcasterset id="mainBroadcasterSet">
<broadcaster id="viewSlashzillaSidebar"
autoCheck="false"
label="Slashzilla"
type="checkbox" group="sidebar"
sidebarurl="chrome://slashzilla/content/slashzilla.xul"
sidebartitle="Slashzilla"
oncommand="toggleSidebar('viewSlashzillaSidebar');"/>
</broadcasterset>
</overlay>
このソース内の<!-- Sidebar Overlay -->下に
<keyset id="viewSlashzillaSidebar">
<key id="hotkey_slashzilla" key="s" modifiers="accel,shift" oncommand="toggleSidebar('viewSlashzillaSidebar')"/>
</keyset>
を埋め込んでみましたがうまくいきませんでした
idをviewSlashzillaSidebarとmainBroadcasterSetにしても同様でした
0677デフォルトの名無しさん
NGNGテストできないんだけど、たぶん…
keyset は navigator.xul の keyset に overlay しなきゃ。
DOMInspector で id 調べると navKeys になってる。
また、broadcaster 使ってるから、
http://www.xulplanet.com/tutorials/xultu/broadob.html
を参考にして、
<keyset id="navKeys">
<key id="hotkey_slashzilla" key="s" modifires"accel,shift" observes="viewSlashzillaSidebar"/>
</keyset>
これでどうかな。
0678677
NGNG0679674
NGNG使用ブラウザはFirefox0.8 4/3nightlyです
0680677
NGNGslashzilla.mozdev.org 見て使えないものとばかり思ってた。
それはともかく Firefox なら <keyset id="mainKeyset"> にしちくり。
0681674
NGNG<keyset id="mainKeyset">
<key id="hotkey_slashzilla" key="s" modifires="accel,shift" observes="viewSlashzillaSidebar"/>
</keyset>
をoverlayのタグ内に挿入してみましたが駄目でした
また、navigator.xulを検索かけてみましたがFirefoxのフォルダ内にありませんでした…
SlashzillaですがFirefoxで問題なく使えています
Firefox Help 日本語版内の拡張内にあるSlashzillaのxpiを/.-J用に弄って使用しています
0682677
NGNG勘違いしまくりでスマソ # RSSReaderPanel にほぼまんまのコードがあっただよ…
<menupopup id="viewSidebarMenu">
<menuitem key="hotkey_slashzilla" observes="viewSlashzillaSidebar"/>
</menupopup>
<keyset id="mainKeyset">
<key id="hotkey_slashzilla" key="s"
modifiers="accel,shift"command="viewSlashzillaSidebar"/>
</keyset>
0683674
NGNGおかげさまでできました
#もっとxulやjsの勉強しなければ・・・
0684デフォルトの名無しさん
NGNG0685デフォルトの名無しさん
NGNGgetElementByAttribute
http://forums.mozillazine.org/viewtopic.php?t=69302
childNodes
http://forums.mozillazine.org/viewtopic.php?t=69556
要するに、返り値のNodeListが
いわゆる"live"(treewalker的な)ではない、
ということですね。
もちろん、treewalkerをつかえば、
従来のような事が出来ると思います。
■ このスレッドは過去ログ倉庫に格納されています