Mozillaでプログラミング(XUL)
■ このスレッドは過去ログ倉庫に格納されています
0001Moziller
NGNGMozilla 1.0 RC1がリリースされ、
XUL 1.0の仕様が一応フリーズしました。
なので、そろそろXULアプリケーションも出始めることでしょうし(希望的観測)
MozillaでのXULプログラミングについて騙りませんか。
Mozillaスレッド M10
http://pc.2ch.net/test/read.cgi/software/1019550671/
0352デフォルトの名無しさん
NGNG0353デフォルトの名無しさん
NGNG0354352
NGNGやってみる。
プロジェクト名は何にしよう?
0355デフォルトの名無しさん
NGNGなんてのどーよ?(w
0356デフォルトの名無しさん
NGNG0358358
NGNGXulエレメントとXULの特徴
XML-based User interface Language(XUL)はアプリケーションのUIをつくるのに必要な部品(widget)
を全て備えている。タブ、入力フィールド(textarea)、ボタン、メニューなどがそうで、
中には、普段は必要性をほとんど感じないようなもの(例えば<stack>や<colorpicker>など)もある。
第2章ではウィンドウや基本的なアプリケーションを作るのに必要なXULエレメントのいくつかを紹介した。
本章は、XULの概観、振るまい、そして一般的な用法を説明する。
包括的な内容ではないが、本性を読めば、独自のXULアプリケーションを
作り始めるための情報としては十分だと言える。
特に、付録CのXULリファレンスと併せ読めば、いっそう理解が深まる。
本章で説明するXULエレメント(メニュー、ボタン、ボックス、ツリーなど)はほとんどのアプリケーションで
で必要である。そして、本章ので使っている例は汎用的である。だから、自分の用途に合わせて、
その例を組み込んだり、カスタマイズしたりできるだろう。この章には多くの情報を詰め込んだから、
アプリケーションを作る際は役に立つ事請け合いである。
0359358
NGNGXULファイルで最も重要な部分はドキュメントオブジェクトである。
HTMLと同様に、documentはXULドキュメントそのものの中身を指すオブジェクトであり、
外側を指すウィンドウオブジェクトと対を成すものである。
そしてドキュメントにはメソッドが用意されている。
メソッドは個々のエレメントを取得したり、ドキュメントの構造を操作したり、
スタイルのルールを変更(updating)したりするのに使われる。
0360デフォルトの名無しさん
NGNGhttp://66.160.114.10/XPCOM/howto.html
Building and Using XPCOM Components in XUL
XPCOM モジュール作成の説明もある XUL アプリ製作のレシピみたい。
XUL 本の付録にちょうどいいようなドキュメントだなぁ。
0361デフォルトの名無しさん
NGNGsourceforgeのアカウント晒してもらえればxuldoc-jaの
プロジェクトに追加しますよ。
0362デフォルトの名無しさん
NGNG0363Name_Not_Found
NGNG0364358
NGNGドキュメントオブジェクトにはgetElementById, getElementsByTagName, createElement, createTextNode
といったメソッドが用意されている。これらは、DOMや実ドキュメント(訳注:actual document domは実体がなくても良いので…)
を扱うためのメソッドである。DOMについては第五章においてさらに詳しく取り上げる。
ドキュメントオブジェクトはこれらのメソッドの他にも、ウィンドウのwidthとheight、ポップアップノードのプロパティ、ツールチップノードのプロパティ、ドキュメントエレメント(documentElement)
などを備えている。
なお、ポップアップノードのプロパティは、ポップアップ表示しているエレメント(何がしかの内容(content)を他のものの上に表示するXUL widget)にアクセスするためのものであり、
ツールチップノードのプロパティもツールチップを表示するエレメントにアクセスするためのものである。
そして、ドキュメントエレメント(documentElement)はドキュメント本体にアクセスするためのものである。
0365358
NGNGvar secondLevelNodes = new Array( );
for (var I=0; I<docEl.childNodes.length;I++) {
secondLevelNodes[I] = docEl.childNodes[i];
}
0366358
NGNG0367デフォルトの名無しさん
NGNG最近じゃカタカナ語なのかな?
well-formed、validity とかはどうなんだろ?
0369デフォルトの名無しさん
NGNGテクニカルタームはなるべくカタカナ語の方がいいかな、と。
contentはコンテント(コンテンツ)でもいいと思うけど、
コンテントを表示するって書くのはなんか抵抗がある。
コンテントについての説明がない、ってことは、
テクニカルタームじゃなくて、日常的な意味なのかな、とも思ったりして。
もちろんすぱっと割りきれる問題じゃないとは思うが。
例えば、documentを文書と訳すと致命的に意味不明になる。
As in HTML, document is an object that represents the XUL document itself-the content as opposed to the
window that surrounds it.
ここのcontentは明らかにテクニカルタームじゃないでしょ?
contentをコンテントと訳してしまうと、なぜ、ウィンドウオブジェクトの
surround itが対になっているかが不明瞭になってしまう。
0370デフォルトの名無しさん
NGNGあとで統一的な書き方がきまったら直します。
ところでこのドキュメント、function っていってる
けど、メソッドの方が正しいんかな?
0371デフォルトの名無しさん
NGNG作る。そして、このExampleはツリー全体にまで応用できる。
ドキュメントの構造的な表現がこのようになっているので、Exampleのように
あるノードを使って他ノードを取得する手法を使えば、ドキュメントのどの部分にも
、スクリプトで素早くアクセスしたり変更を加えたりできる。
0372358
NGNGウィンドウ(window),ダイアログ(dialog),ページ(page)、はそれぞれ、
独自にドキュメントオブジェクトを持つ事になる。
使い方はアクセスしたいプロパティの前に"document."という部分をくっつけるだけでよい。
var title = document.getElementById("bookTitle");
今使っているスコープの外からアクセスする事も可能である。
例えば、window.openerをつかって他のウィンドウを開いた場合、次のようにする。
var title = window.opener.document.getElementById("bookTitle");
0373デフォルトの名無しさん
NGNG受験英語しか知らん俺には辛い。
0374デフォルトの名無しさん
NGNGXULってのは、Mozillaだけにしか使えない物なのか?
IEでも使えるのか?
で、インターフェイスを作ってそこから何が出来るのか?
面白そうな技術なら俺も調べてみたいのだが
0375デフォルトの名無しさん
NGNGただ、現在それができてXULパーサとして使えるのはGeckoくらいのものでしょうね。
0376デフォルトの名無しさん
NGNG詳しく有難う。XBLっていうのが何かわからないけれど、
IEにそれを対応させられればIE上でも動くかもしれない、と。
#XMLにCSSってのもよくわからないですが、XSLTの書き間違いでしょうか?
調べてみます。
0377デフォルトの名無しさん
NGNG結構違和感あるけど、興味がすごい湧きました。
ちょっとずつ調べてみます。
とりあえずは、XULを使うと、どのような状況で何が出来るのかを知りたいです(w
0378デフォルトの名無しさん
NGNGXULってのはインターフェイス言語。
ただ、XUL自体はXMLが元になっている。
例えば、<html:input type="button" value="MyLabel" onclick=";"/>
みたいなものを
<xul:button label="Mylabel" oncommand=";"/>
のように使いやすく再定義してある。
その定義ファイルがXBL。
conditionやactionが羅列してある。
0379デフォルトの名無しさん
NGNGレスサンクスです。ということは、
HTMLを使ってインターフェイスを作成するのが最終目標で、
それをXULで定義する。XBLが定義言語(xml-html binding)
という認識でよろしいでしょうか?
今までJavaScriptなどで出来ていた事が、簡潔に書けるようになるということですね
0380375
NGNG例:http://lxr.mozilla.org/mozilla/source/toolkit/content/widgets/tabbrowser.xml
パーサに変更を加えずに要素の振る舞いを定義できるからか、MozillaではXUL要素の振る舞いのほとんどはこうして定義されています。
IEの場合は"binding"で同じようなことができるかもしれませんが、僕はよく知りません。
XULはプラットフォームごとに異なる解釈をされます。
例えばMacOSであれば、menubar要素はGeckoではなくMacOSの機能でレンダリングされていると思います。
ということは、MacIEではMacIEのエンジンがXULに対応しないとどうにもなりません。
Windowsなら一つのウィンドウの中に全部の要素が収まるはずなので、CSSの問題とバインディングのことさえ解決できれば、WinIEでもXULを使えるかもしれません。
……ということを>>375で言いたかった、と。
ちなみに、XMLに直接CSSを適用させるという使い方は、XHTML2.0やSVGなどではごく当たり前にされています。
0381375
NGNGIEの場合は"binding"で → IEの場合は"behavior"で
0382375
NGNGまた、XUL自体はプラットフォーム非依存なので、Web上のサービスなどのクロスプラットフォームなインターフェースを記述するにはうってつけです。
「HTMLを使ってインターフェイスを作成する」というより、
「HTMLのようにクロスプラットフォームな技術でインターフェースを作成する」と考えて下さい。
XULの仕様(明確なものはまだありませんが……)に乗っ取った動作ができるなら、必ずしもXBLで要素の振る舞いを定義している必要はないでしょう。
http://slashdot.jp/article.pl?sid=02/12/05/0810253
XULの用途についてはこの辺の記事でも色々述べられています。
0383375
NGNG誤字が多いなあ。
0384デフォルトの名無しさん
NGNG>375氏 >>380
解りやすいサンプル有難うございます。
Mozillaの基礎的な理解(NGLayoutとか)が必要みたいですね
NGLayoutを調べるに従ってちょっとずつわかってきた感じです。
上記のサンプルは、NGLayoutをタブブラウザ化するためのxulですよね?
0385デフォルトの名無しさん
NGNG例えば、amazon.comとかのソースを書くほどの根性もなく、
htmlの限界にげんなりしている人が、もっと手軽にインターフェイスを実装するための
言語ということでしょうか?
IEのBehaviorとかを使うのはクロスプラットフォームの観点から外れている、と言うことかな?
0386378
NGNG思い浮かべた方が当たっていると思います。IEだと、activeXですね。
0387デフォルトの名無しさん
NGNGこーゆーのもあるし。XBL まで使えるのかわからんけど。
mozillaZine に出てた、
http://www.oreillynet.com/pub/a/mozilla/2002/12/17/app_dev.html
も面白いね。mozdb が使えるようになると使われやすくなるかも。
http://www.melez.com/mozilla/xul-in-html/www.mozilla.org.html
が XBL の簡単なサンプルでわかりやすかった。
0388デフォルトの名無しさん
NGNG腰を落ち着けて正月にでも学んでみようかと…
0389デフォルトの名無しさん
NGNGこのスレでマターリ翻訳して行く予定です。詳しくは50レスぐらい遡ってみれ。
お勧めのサイトはこのスレのテンプレにはなかったかな?
漏れのブックマークを晒すと
Outsider Reflex (日本で一番たくさんXulアプリを作ってる人のTips)ttp://white.sakura.ne.jp/~piro/
Xul Planet com (英語のリファレンスとチュートリアル)http://www.xulplanet.com/tutorials/xultu/
Xul アプリケーション作成入門(もじら組のデッドリンク)http://www.mozilla.gr.jp/~kazhik/xul/tut00.html
mozilla.orgのXul文書の邦訳 http://jt.mozilla.gr.jp/xpfe/xptoolkit/index.html
全く見た事も聞いたこともない人は、ちょっと古いけど作成入門がオススメ。
昔はてんでだめだったが、近頃はmozilla.orgの奴も結構いい感じ。
0390デフォルトの名無しさん
NGNGhttp://jt.mozilla.gr.jp/docs/xul/xulnotes/xulnote_xml.html
>XMLを知らなくてもXULを記述できる、
ってのが最大のポイントかな。
いくつかのXULwidgetに関しては、ちゃんと定義してやれば、
そのままのIEでもレンダリングできる気がしてきた。
まあ、メリットはほとんどないと思うけど。
ちなみに、読み方は「ズール」
0391デフォルトの名無しさん
NGNG玄人のおもちゃになって意義無く終わってしまう…と思うのは間違い?
0392デフォルトの名無しさん
NGNGhttp://pcweb.mycom.co.jp/news/2002/12/09/08.html
・その3 ユーザーインタフェースの刷新
Longhornでは、デスクトップを含むユーザーインタフェースがXMLベースとなる。
なかでも、従来のスタートメニューは、コードネームで「Sidebar」と呼ばれるコンポーネントに置き換わる。
スタートメニューの機能以外に、デスクトップマネージャー、検索機能、スライドショーなど、
XMLベースのモジュールを組み込んで自由にカスタマイズできるようになる。
パクられたw
0393デフォルトの名無しさん
NGNGそれを言うならXULの概念はアクティブ・デスクトップのパクリでは?
0394デフォルトの名無しさん
NGNG終わるって?Mozilla(Gecko?)がなくなるってこと?
0395デフォルトの名無しさん
NGNG0396デフォルトの名無しさん
NGNG以前からこういう話が出ていましたから、まあ当然といえば当然かな。
http://ryuzi.dyndns.org/mozillazine/view.php?articlenum=2588
申し訳ないけど個人的にはXULはIEで対応して欲しくない。
勝手にWindowsに有利な、特化した拡張をされるのが目に見えているから。
ブラウザレベルのクロスプラットフォーム性が多少向上する引き換えに、
(といっても、拡張されれば完全な互換は無いだろうけど。)
OSレベルのクロスプラットフォーム性が損なわれるんじゃ話にならない。
0397デフォルトの名無しさん
NGNGXPCOM+XPConnect+JavaScriptの代わりに使うスクリプト言語の方が
独自拡張されるということなら、自分にもわかりますけど。
0398デフォルトの名無しさん
NGNGあと、<xul:marquee>とか。プロパティでmarquee="true"とか。
getMarqueesByTagName(string ELEMENTID):function とか。
しかし、xmlは独自拡張の為にある言語、といっても過言ではないので、
好きにすればいい様な気もする。
JavaScriptより、DOMメソッドをいじられる方が怖い。
IEのDOMはダメダメだし。
0399デフォルトの名無しさん
NGNGしかしIEにせよMozzilaにせよ、あれば便利な機能が標準化されておらず、
それをこっそり付加してしまうと、HTMLの様な独自拡張と標準仕様のいたちごっこが
はじまってしまうわけだが・・・
0400デフォルトの名無しさん
NGNG何かちょっと違う様な…。
言語を一から自由に作るのは良いけど、
XULの様に既に作られた言語をあちこちで勝手に拡張したんでは
互換性が無くなってしまう訳で、マナー的には良くないと思う。
拡張部分を名前空間で本来のXULと分けるならともかく。
個人的にはDTDなり何なりが早く作られることを祈る…。
0401デフォルトの名無しさん
NGNG0402デフォルトの名無しさん
NGNGIEが独自拡張したら凄い文句を言うくせに(それ自体は間違っていないのだが)
自分たちの(独自拡張を含む)機能がIEで実装されたらパクリだというのは
ただのマイナーユーザーのひがみ以外に説明しようがないと思われ。
このスレをみたらここの住民は比較的まともそうでいいけどさ…
0403デフォルトの名無しさん
NGNG比較的まともなのは、お前みたいなスレ違いが来ないからだよ。
0404デフォルトの名無しさん
NGNG拡張して、混乱させているから叩かれる。
一から新しいものを作れば文句は言われないだろうに。
むしろそれを余所がパクれば良い攻撃材料になる訳で。
0405デフォルトの名無しさん
NGNGそういう擁護が鬱陶しいわけで。
このスレはそういう話をするところじゃないでしょ?釣られるなよ。
#ちなみにMozillaの<font>タグはそれじゃ説明がつかないのだがな
0406デフォルトの名無しさん
NGNGXULにfontなんてあったっけ?
HTMLの話なら、後方互換のためでは。HTML3.2ではちゃんと認められてるのだし。
0407デフォルトの名無しさん
NGNG#付きとはいえ、お前も要らん事書くなや。
以下スレの本題に戻って下さい。お願いします。
0408デフォルトの名無しさん
NGNG既に決まったものがあるHTMLの独自拡張と
特定のアプリケーション群のためにあるXULの区別のつかないヤシ。
0409デフォルトの名無しさん
NGNGところで、xulレベルから他のウィンドウのDOMにアクセスして、
HTMLドキュメントにcreateElementで<br>を追加しても、改行されないんだけど。
テキストノードの追加は反映されるのに、tagの解釈はされないのか?
0410デフォルトの名無しさん
NGNGcreateElementしたら、HTMLElementじゃなくて、XULElementになっちゃうんね。
0411デフォルトの名無しさん
NGNGそうなのれす。
そういうばあいはcreateElementNSをつかってださい。
0412デフォルトの名無しさん
NGNGレスさんくす。
つーわけで、2chブラウザ(非monazilla)を作ってみたんだが、
お世辞にも快適な使い心地とは言えんなぁ。
0413デフォルトの名無しさん
NGNG0414デフォルトの名無しさん
NGNG0415デフォルトの名無しさん
NGNG0416デフォルトの名無しさん
NGNGちょっとソース見てみよっかな。
0417デフォルトの名無しさん
NGNG0418デフォルトの名無しさん
NGNG随分長い間sage進行だったのに
0419デフォルトの名無しさん
NGNG面倒くさいYO。みんな平気?
0420デフォルトの名無しさん
NGNGクサル が公認
0421419
NGNGんだけど mozilla ホームデレクトリに入れればいいじゃん!!
賢いじゃん>>俺!! カコイイ>>俺!! /path/mozilla はシェルスクリプト
だからインスコも楽勝だった。ウヒョー、今年はいい年になるネ
0422デフォルトの名無しさん
NGNG0423デフォルトの名無しさん
NGNG0424デフォルトの名無しさん
NGNG"src"ってattributeがあるような気がするんですけど、
xulplanetにはそれらしい記述がありませんな。
0425デフォルトの名無しさん
NGNG0426IP記録実験
NGNGhttp://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0427デフォルトの名無しさん
NGNG重くなるのはなぁ。。。
どのくらいになるのかわからんけど。
0428デフォルトの名無しさん
NGNG0429デフォルトの名無しさん
NGNGあぶねー
ツッコミいれそうになった。
0430デフォルトの名無しさん
NGNG0431デフォルトの名無しさん
NGNG0432IP記録実験
NGNGhttp://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0433デフォルトの名無しさん
NGNG0434デフォルトの名無しさん
NGNG観念しなさい
0435デフォルトの名無しさん
NGNG0436デフォルトの名無しさん
NGNG発言に自己責任が伴うので、くだらない殺人予告や過度の誹謗中傷、ウイルス・ブラクラリンク
などは少なくなるのではないでしょうか。
0437デフォルトの名無しさん
NGNG0438デフォルトの名無しさん
NGNGおもいっきり削って、抜粋してみました。
---
第3 当裁判所の判断
2
(2)
ウ 原告Aは,被告(ひろゆき)に対し,平成13年6月21日付けの通知書(内容証明?)
をもって発言の削除を求め,同通知書は,同月22日,被告に到達したから,これにより,
被告は,本件各名誉毀損発言(限定あり)について,本件掲示板に書き込まれたことを
具体的に知ったものと認められる。
エ しかるに,被告は,前記のとおり,本件口頭弁論終結時である平成14年4月17日に
おいても,本件各名誉毀損発言を削除するなどの措置を講じていないのであるから,
被告には作為義務違反が認められ,原告らに対する不法行為が成立する。
6 結論
以上によれば,原告らの請求は,各200万円及びこれに対する訴状送達の日の翌日で
あることが記録上明らかな平成13年8月5日から支払済みまで民法所定の年5分の割合
による遅延損害金の支払並びに本件各名誉毀損発言の削除を求める限度で理由があるから
認容し,主文のとおり判決する。
0439デフォルトの名無しさん
NGNG0440デフォルトの名無しさん
NGNG0441デフォルトの名無しさん
NGNGいつぞやもP2P/"疑似P2P"型での削除システムを検討しましたが、
整合性確保は技術的に可能でした。
ただ当時、専用ソフトウェアによる閲覧管理が邪道扱いだったことが、
実装に向かなかった原因の一つだったと理解しています。
たった1年そこらで「2ちゃんブラウザ」がこんなになるなんてねぇ(w
他の問題点ですが、ハードウェア能力(最も直接的にはHDD)と通信インフラが
ネックでしたが、今もなお大型掲示板を許容するには至っていないと思います。
0442デフォルトの名無しさん
NGNGアクセスログってなに?って項目があるのはちょっと違わないか・・・?
0443デフォルトの名無しさん
NGNGあと、元々レスに対して取得してるつー板は
ここと、ダウソと・・・あとどこかな?
setting.txt見て調べれ
0444デフォルトの名無しさん
NGNG0445デフォルトの名無しさん
NGNG0446デフォルトの名無しさん
NGNG0447デフォルトの名無しさん
NGNG0448デフォルトの名無しさん
NGNG0449デフォルトの名無しさん
NGNG0450デフォルトの名無しさん
NGNG0451デフォルトの名無しさん
NGNG>> 無知はいいねぇ
ほ〜、じゃあ、IPだけで個人特定する方法言ってみ。
ほれ言ってみ
■ このスレッドは過去ログ倉庫に格納されています