トップページ⇒tech
1001コメント388KB

Mozillaでプログラミング(XUL)

■ このスレッドは過去ログ倉庫に格納されています
0001MozillerNGNG
ム板住人のうちMozilla使ってる人は何%くらいかわかりませんが、
Mozilla 1.0 RC1がリリースされ、
XUL 1.0の仕様が一応フリーズしました。
なので、そろそろXULアプリケーションも出始めることでしょうし(希望的観測)
MozillaでのXULプログラミングについて騙りませんか。

Mozillaスレッド M10
http://pc.2ch.net/test/read.cgi/software/1019550671/
0140超ぉ〜AnneNGNG
>>139
期待 & 応援 age!!
0141デフォルトの名無しさんNGNG
>>139
イイ!
なんかあれば手伝うぞ!
0142厨房もじらーNGNG
ちなみに「あと少し」というのは
メインの機能(スレ読み)が一応できるまでなんで
最初のリリースはメニュー項目とか細かい機能が全然実装されてないです。
前回(凍結前)いろいろやったことを活かして
主な部分の再設計ができたので、
少しは見通しがよくなっているとは思います。
ですので、また超ぉ〜Anneさんや、他の方々も手出してくださいませ(藁
0143厨房もじらーNGNG
>>141
とりあえず漏れの手がつかない部分としては
右上のthrobberのアニメーション版を作ってホスィ(藁
あとは、折角オプーンソースでやってるんだから好きに作って(藁
(・∀・)イイ!!と思えば採用するし、独自版つくってもよいし。
0144超ぉ〜AnneNGNG
>>142
ワタクシは設計には関わらないよーな細い所に手を出させて頂きたく(w
# でもアニメーションとか分からないからパス。

まずはギコナビに無く(と思う)って欲しいと思ってる機能として、スレッド
一覧の中でスレッド名を検索出来ないのがあるんで、その辺が moz2ch で作れ
たらいいなぁと思っております。ハイ。漏れの技量ではそーゆー小物系ぐらい
しか手は出せないと思うし・・・
0145厨房もじらーNGNG
http://xul-app.hoops.jp/moz2ch/images/moz2ch-2002061802.jpg
とりあえずスレ読んでみた。
なんか、まだ穴だらけなのでもう少し整理したら
開発者向けにリリース(藁
0146厨房もじらーNGNG
>>144
じゃあ、板検索、スレ検索のほう、考えといてください(藁
とりあえず漏れがリリースしないことにはアレですけども。。。
0147超ぉ〜AnneNGNG
>138
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.1a) Gecko/20020618, build 2002061804
ではキチンと動いた模様です。findbarもキチンと同時に使えました。
とりあえずご報告まで。

>145,146
(・∀・)イイ!!
でも検索に関しては責任は持てませぬ・・・
ヘタレなのしか作れないかもしれないし・・・
まぁαリリース版が出たら楽しくいじらせて頂きます。
0148136NGNG
>>138
2002061808 + googlebar + tabextension で落ちずに使えています。
私も、ご報告まで。
0149厨房もじらーNGNG
SourceForge.jpにプロジェクト作るのに賛成の人は挙手。
0150デフォルトの名無しさんNGNG
(・_・)/
0151デフォルトの名無しさんNGNG
(・_・)/
0152デフォルトの名無しさんNGNG
./
0153厨房もじらーNGNG
賛成3か。。。
今とりあえずアカウントはもう作っちゃって
新規プロジェクトの規約とかドキュメントとか見てみてるんだけど
CVSほとんど使ったこと無くて使えるか自信ない。。。
まあ、いざとなったら超ぉ〜Anneさんにヘルプ求めるか(ダサッ>漏れ
0154厨房もじらーNGNG
ライセンスをどうしよう。。。
今のところパブリックドメインにしておきます。
0155 ◆q78mh/0k NGNG
(・_・)/
0156超ぉ〜AnneNGNG
(・_・)/ ハイハーイ!

CVS は・・・Mac と Win 使ってらっしゃるんでしたよね、確か。
ttp://www.cvsgui.org/
ここに WinCVS と MacCVS なんちゅーのがありますよ。
# 使った事無いけど(藁
0157厨房もじらーNGNG
とりあえず送信した。問題が無ければそのうちメールが届くはず。。。
プロジェクトが承認されたらここで連絡します。
0158厨房もじらーNGNG
ところで、今更なんだけど騙り防止のため
トリップ作ってきます。。。
トリップ用のソフト、どこにあったっけな。
0159超ぉ〜AnneNGNG
>>158
cygwin でも使ってれば、以下のをコンパイルすれば簡単かと。
# たぶんインデント崩れるけど、悪しからず。

/* trip.c
compile: cc -o trip trip.c -lcrypt
usage: trip 'aaaa' 'zzzz' | grep hoge
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

extern char* crypt(const char*, const char*);
int main(int argc, char* argv[])
{
int i, i0, i1, i2, i3, i4, i5, i6, i7;
char *r, b[8], e[8], sa[3], s[9];
if (argc != 3) { fprintf(stderr, "usage: trip begin end\n"); exit(1); }
for(i = 0; i < 8; i++) {
b[i] = (i < strlen(argv[1]))? argv[1][i] : 0;
e[i] = (i < strlen(argv[2]))? argv[2][i] : 0;
}
sa[2] = s[8] = 0;
for(i0 = b[0]; i0 <= e[0]; i0++)
for(i1 = b[1]; i1 <= e[1]; i1++)
for(i2 = b[2]; i2 <= e[2]; i2++)
for(i3 = b[3]; i3 <= e[3]; i3++)
for(i4 = b[4]; i4 <= e[4]; i4++)
for(i5 = b[5]; i5 <= e[5]; i5++)
for(i6 = b[6]; i6 <= e[6]; i6++)
for(i7 = b[7]; i7 <= e[7]; i7++) {
s[0] = i0; s[1] = i1; s[2] = i2; s[3] = i3;
s[4] = i4; s[5] = i5; s[6] = i6; s[7] = i7;
sa[0] = i1; sa[1] = i2;
r = crypt(s, sa);
printf("%s\t%s\n", s, r+5);
}
exit(0);
}
0160厨房もじらーNGNG
>>159
おおっと、わざわざありがたいですが
もう拾ってきて計算中です(藁
一晩中で見つかるといいな。。。
0161厨房もじらーNGNG
やったー。プロジェクトできたよー。
http://sourceforge.jp/projects/moz2ch/
でも使い方把握してないので、そこは勘弁。。。
0162厨房もじらー ◆3mOz2Ch. NGNG
トリップこれにしよかなぁ。。。
今も検索中だけどなかなかいいのが見つからない。。。
0163厨房もじらー ◆3mOz2Ch. NGNG
ゴタゴタしてて、色々調整できてないですが
ようやくsf.jpのほうにページウプできました。
http://moz2ch.sourceforge.jp/
ページデザインやりなおすかも。。。(そんなことより公開すれ>漏れ
0164厨房もじらー ◆3mOz2Ch. NGNG
まだ開発者向けのみなのでXPIは作りませんでしたがソースをウプしました。
ttp://moz2ch.sourceforge.jp/nightly/moz2ch-2002062101.zip

content,install,url,*/content/moz2ch/
skin,install,url,*/skin/lofi/moz2ch/
skin,install,url,*/skin/modern/moz2ch/
skin,install,url,*/skin/classic/moz2ch/
locale,install,url,*/locale/en-US/moz2ch/

*の部分は適宜配置して決めてやってください。
これで分からない人はまだインストールしないが吉。
0165厨房もじらー ◆3mOz2Ch. NGNG
>超ぉ〜Anneさん
>>164見てもわかるように、とりあえず適当にですがlo-fiにも対応しておきます。
将来的にはmodern/classic以外は別パッケージ(XPI)にする予定ですが
さしあたり、超ぉ〜AnneさんはLo-Fi使うだろうと思ってつっこんでおきました。
0166厨房もじらー ◆3mOz2Ch. NGNG
SourceForge.jpのリリースファイルにもおいておきました。
次からはそっちに置くと思いますのでよろしく。
0167超ぉ〜AnneNGNG
とりあえずダウソしたんですが、何故かパースエラー・・・
でもパッと見間違ってなさそうなんで、インストール方法が悪いのかも。
チト調べてみます。
# ただ今日は色々忙しいんで、いぢるのは明日以降になるかも

ところで CVS にはブチ込まんのですか?
0168超ぉ〜AnneNGNG
失礼しました。ニュースの方に CVS にも近々って書いてありますね。スマソ。
0169厨房もじらー ◆3mOz2Ch. NGNG
>>167
chrome.rdfは弄らなくても
installed-chrome.txt弄るだけで漏れはインストールできましたよ。
友人宅でMozilla 1.0@Linuxにもインストールしてみましたが普通にいけました。
もしかして、nightly使ってるだとかで動かなかったりして。。。
1.0以降はしばらく追っかけてないので変更点など把握してないですが。

CVSは、やり方調べながらぼちぼちやっていきますんで、少々お待ちくださいませ。
0170厨房もじらー ◆3mOz2Ch. NGNG
とりあえずcvsをリポジトリにおいてみました。
不都合とかあったら、また教えてくださいませ。。。m(_ _)m
とりあえず適当に弄ってみてくださいませ。
ぶっちゃけ、管理とか良く分かってないんで、必要に応じてけちつけてくれたら
ちょっと勉強して、教えて君やってきます(藁
0171超ぉ〜AnneNGNG
>>169,170
やっと出来ました。resourceの前を":"でなくって","にしたら。
イマイチinstalled-chrome.txtの書式分かってないんですわ。スマソ。
お騒がせしました m(_ _)m

とりあえず CVS も co 出来ました。ほんではボチボチ見させて頂き・・・たい
ところなんですがチト忙しいので明日にでも。
0172厨房もじらー ◆3mOz2Ch. NGNG
>>171
お疲れ様です。
漏れはcvsの勉強しつつなんであんまりコード弄ってないです
ためしにいくつかciしてみたりしつつ
いろいろやってみます。
0173超ぉ〜AnneNGNG
>>172
ども。ちょっと見た感じ、簡単そうなところから手を付けさせて頂こうかなと思います。
とりあえず、「表示」=>「表示/隠す」でとりあえずトグル出来るようにでもしようかな。
# 特にステータスバーフェチとしては component-bar も消せるよーにしたい(w
って、ホントに簡単そう(藁
そんで、その後は板内のスレ名で検索するのと、スレ内の文字列検索でも作りましょうか?
と思って一つ疑問が。
メニューの「板」ってヤツが sureList をターゲットにしてて、
「スレ」ってヤツが sureBrowser をターゲットにしてるんですよね?一応確認だけ。

と、まぁ浅いところをいじらせて頂くつもりですんでよろしくです。
0174超ぉ〜AnneNGNG
ついでにもう一つ気になったんですが、dtd は UTF8で書いてて、
は sjis で書いてますよね。統一しちゃって全部 UTF8 で良くないですか?
いや、文字コードは趣味の領域なので、嫌だったら別にいいんですけれども。
0175厨房もじらー ◆3mOz2Ch. NGNG
>>173
そのへんは、漏れもいまだに悩んでいるところっす。。。
内部的な概念は板ツリー、板、スレという風になってるんだけど
UI的には「板」っていうより「スレリスト」なんじゃないかと思ったり。
その辺の意見もあればぜひ欲しいです。

>>174
いや、漏れがいつも使ってるエディタがsjisのみなんで、ついつい(藁
WinではUTF8読めるエディタってフリーのエディタにあまりないから
sjisやらにしたほうがいいかな、とか思いまして。

UTF8のほうが都合が良いことがあれば、参加者の意見を汲みたいと思ってるんで意見はありがたく拝聴します。
0176厨房もじらー ◆3mOz2Ch. NGNG
何箇所かちょいちょいcommitしてみた。
こんな風に使うのか。。。
とりあえず、今は差分getを実装してます。今晩くらいにはできるかも。
0177超ぉ〜AnneNGNG
>>175
その辺は確かに難しいところですねぇ。まぁとりあえずは現状維持で
いいんじゃないかと思いますけども。

で、文字コードの件に関してはまぁ揃ってないと grep が多少かけにくいとか
その程度の個人的な事情で思ったなんで、そーゆー事情ならsjisのままでいい
と思います。使い慣れたエディタって重要ですもんね。


で、ちょっと思ったんですが、こーゆーmoz2ch特有の話は微妙にスレ違いなよー
な気もしなくもないんですけど、どーしましょ?せっかく sf 使ってるんだし、
Developers のフォーラムを使うのも一つの手だと思うんですよね。ただ、そー
すると広い範囲の人の意見が聴けないかもしれないという両刃の剣。
moz2ch スレを立てるってのも一つの手かな?
その辺は厨房もじらー殿にお任せしますが・・・
0178厨房もじらー ◆3mOz2Ch. NGNG
じゃあ、Moz2ch開発スレ立ててきま。
0179厨房もじらー ◆3mOz2Ch. NGNG
これ以降、Moz2ch関連の話題は

Moz2ch開発スレッド
http://pc.2ch.net/test/read.cgi/tech/1024757183/

で、よろしくお願いします。
このスレでは、XULプログラミング一般の話題でまたーり逝ってください。
0180デフォルトの名無しさんNGNG
他にネタ、ないのかな。。。
0181 ◆S0qIRC9I NGNG
Policy ManagerとSidebar WindowをBugzilla投稿用のパッチに書き直してくれる心やさしい方はいないものだろうか……
とか言ってみる。
0182厨房もじらー ◆3mOz2Ch. NGNG
>>181
口出しすると協力させられそうだったので、黙っておこうとか思ったけど
漏れのスレなんでレスしてみる(藁
Sidebar Windowは感動を覚えましたが、今は使ってないし
Policy Managerもデフォルト主義者の漏れは
インストールしてなかったりするので詳しくなくて力になれないかも。。。

パッチに書き直すってのは実際どういう作業なのかもしらないし(藁
0183厨房もじらー ◆3mOz2Ch. NGNG
おそらくbugzillaの方にだすならコメントは英語にしなきゃだし
コーディング規則は。。。JavaScriptは結構適当でいいみたいだから
これはいいとして
MPL/GPL/LGPL(だったと思う)のライセンスコメントを
各ファイルの先頭につける必要があるよね
パッチって、まず何にパッチするんだろ。。。
例えばSidebar Windowなら
comm.jarのcommunicator/content/sidebarあたりへのパッチになるのかな。。。
で、Policy Managerは
comm.jarのcommunicator/content/policymanager/以下に
ディレクトリ作ればよさそうだから
comm.jar解凍したものへのパッチを作ればおーけーってところでしょか
0184デフォルトの名無しさんNGNG
XPCOMのリファレンスってwww.xulplanet.comのよりもうちょっと
詳しいものないでしょうか。
せめて簡単な説明文があるような。
MSDNに載ってるような戻り値とか引数の解説まであると期待して見たら
まったく文らしいものが無かったのでよくわからんのです。
XUL and Script Referenceのはけっこう詳しく書いてあるのになぁ。
0185厨房もじらー ◆3mOz2Ch. NGNG
>>184
ソースが詳しい(藁
実際問題、漏れは
ttp://lxr.mozilla.org/mozilla1.0/source/xpcom/
以下のidlファイルのコメントを参照することが一番多いし。
0186デフォルトの名無しさんNGNG
XULでトリップジェネレーター作ってください。
0187厨房もじらー ◆3mOz2Ch. NGNG
>>186
アルゴリズムがわかってれば作れるけど
JavaScriptで処理することになるから、速度的にはかなり不利だと思われ。
ちなみに、漏れはアルゴリズムもしらないけど。。。
0188某スレ12 ◆Z80FPU5k NGNG
>>187
アルゴリズム書こうと思ったけど、既に超ぉ〜Anneたんが>>159で
書いている事に気づいた。。。w
トリップジェネレータは総当たりだからCで書いたって
速度的にきついのにJavascriptで書いたら…(((( ;゚Д゚)))ガクガクブルブル
>厨房もじらーたん
XULでFTPのネタはあちらのスレでやるのはあまりにもスレ違いなので、
こちらの方でやろうと思いますです。。。
0189厨房もじらー ◆3mOz2Ch. NGNG
>>188
参考までに作ってみるのは面白いと思うけど
遅すぎて誰も使わない罠はありうる(藁
トリップジェネレータはcrypt使うけど、
cryptは別のとこの使うのかと思ったら>>159に書いてあったね。
作れなくはないと思われ。
ただ、積極的に作る動機がみつからない。。。

FTPできたら漏れも使うし手出し口出しさせてもらうつもり。
がんがれ。
0190厨房もじらー ◆3mOz2Ch. NGNG
とおもってもう一度読んだらやっぱりcryptないじゃん。。。鬱だ。
0191 ◆Z80FPU5k NGNG
UIかけるようになりますたw
まだ中身なんもないですw
http://baniisan.s12.xrea.com/images/ftpzilla.gif
どんなUIにするか考えるのめんどかったんで、FFFTPzillaに
してみますたw
この程度のUI作るだけで約4時間半。。。こんなペースで
勉強してたら、完成するのは半年ぐらいかかるヨカン。。。鬱
0192デフォルトの名無しさんNGNG
>>191
かこいいすね……
ただ、こういうのって、スキンをつけたらどうなるの?
今、PinBall使ってるんだけど、それなりに変更とかされるのかな?
0193 ◆Z80FPU5k NGNG
>>192
スキンどころか、ロケールすら無視してゴリゴリですw
今んとこおいらのスキルが見かけとか気にする段階じゃ
ないもんで、とりあえずどこクリックしても無反応なこのUIに
機能を実装するのが最優先なのれすw
0194厨房もじらー ◆3mOz2Ch. NGNG
>>191
見てみた。カコ(・∀・)イイ!!ね。
とりあえず勉強しながらの開発は、段々と要領を得ていくものなので
基本的には開発の速度は加速していくものだから
そんなに心配しないことです。

>>192
見たところテーマに依存しない風なつくりなので
あらゆるテーマでそれなりに表示されると思われ。
Moz2chは、いらないところに凝ってるから
各種テーマに対応する差分テーマ作らなきゃなんだけど。。。(鬱
0195デフォルトの名無しさんNGNG
ユーザープロファイルが入ってるフォルダのパスってどうやって取得するんでしょう?
そこに設定ファイルや個人のtempファイルを置こうかなーと思ってるのですが。
0196デフォルトの名無しさんNGNG
>>195
Piroさんのウェブページで解説されてたと思うよ。
0197デフォルトの名無しさんNGNG
>>196
おぉ!本当だ!すんばらしい!
0198デフォルトの名無しさんNGNG
2ch用ブラウザを使っていないので2ch用の各ブラウザが
どうやってるのかは知らないのですが、例えば取得したdatファイルを
HTML化して表示するには、一度ローカルに書き出してからそのローカルファイルを
ロードするという方法が常道なのでしょうか?
Moz2chもそうしてるようですし。
0199デフォルトの名無しさんNGNG
普通はそんなことしないよ
必要以上にディスクIO増えて遅くなるだけ
0200デフォルトの名無しさんNGNG
先に保存しておけば、保存し忘れるということはない。
例えクラッシュした場合でさえ。
0201デフォルトの名無しさんNGNG
普通はどうやるんでしょうか?
0202厨房もじらー ◆3mOz2Ch. NGNG
>>198
2ちゃんねる→Moz2ch→ログを保存
        ↓
       データを処理
と並行してやってる。
Moz2chは、一応データを処理してからログに吐き出すようにしてるから
ローカルに書き出してからロードするというようにはしてないよ。
2回目以降はログ読み優先にしてあるから、ログ読みに逝くけど。
0203厨房もじらー ◆3mOz2Ch. NGNG
ちなみに、漏れの記憶が正しければMonazillaスレの初期のものは
一旦ローカルにデータを落としてから、
いろいろ弄るような形式になってたと思われ。
当時はDAT直読みができなかったから、データ解析が大きな処理で
データのダウンロード、保存とは分けて考えたかったからだと思う。
違ったらスマソ。ツッコミよろしく。
0204201NGNG
>>202
んー、すいません。どこでデータ処理してるかわかりません。
教えていただけないでしょうか。
moz2chSure.writeEnd()でHTMLソースの作成が完了して、
f.write(this.html);でmoz2ch.htmlというローカルファイルに
書き出して、
document.getElementById("sureBrowser").loadURI(f.URL,
 Components.interfaces.nsIWebNavigation.LOAD_FLOAGS_NONE);
でそのmoz2ch.htmlをロードしている、と思っていたのですが、
データを処理(変数内のHTMLソースを直接表示)するのはどこで
やっているのでしょうか?
0205199NGNG
あーごめんちょっと勘違いした。

ローカルに保存した.datをHTMLとして出力する時に、テンポラリファイルとして
.htmlを作るようなことは普通しない、という意味で書いた>199
0206厨房もじらー ◆3mOz2Ch. NGNG
>>205
読み違えてた。スマソ。。。
普通は.htmlを作ることはないと思いますが、
Moz2chでそうしているのは
JavaScriptにはスレッドがないので(多分)
document.write()などJavaScriptのメソッドで
連続して大量のデータについて重い処理をすると、
固まったようになっちゃうので、
暫定的にファイル書き出し、読み込みするようにしています。

データを溜め込むバッファみたいなのを用意しておいて
setTimeoutなどで定期的にバッファを処理するようにしてやれば
うまくいくような気はしてるんですが、今はネットワーク周りと
基本的な設計とか構造に関することが気にかかってるので
そのあたりは後回しです(汗
0207厨房もじらー ◆3mOz2Ch. NGNG
ちなみに、差分getをサポートしたら、
逐次レンダリングをしようと考えてるんだけど
そのときにもう少し効率のよい描画方法として
上の方法を試そうと予定しています。
0208厨房もじらー ◆3mOz2Ch. NGNG
話の流れ上ここで話しちゃったけど
>>179
0209201NGNG
Moz2chでは一時的に.htmlを書き出してからそれをロードしてるということで
いいのでしょうか?そして、普通は(他の言語で作られている2chブラウザでは)
そのようなことはせずに変数内のHTMLソースを直接表示させてると
いうことでしょうか?

それでこれに関連してもう一つ。
IEコンポでは自分で作ったHTMLを表示させるにはinnerHTMLを使ったり、
ちょっとかっこ悪いですがabout:<html>....</html>をNavigate2に
渡せば表示できますが、XULではどうやるのでしょうか。
.htmlに書き出して表示させる方法しか思いつかなかったので先のような質問を
させていただきました。
0210厨房もじらー ◆3mOz2Ch. NGNG
たとえば<browser>エレメントをdocument.getElementByIdなどで取得して
var browser = document.getElementById("myBrowser");
var doc = browser.contentDocument;
doc.writeln("<html>…</html>");
とやればいけると思われ。
doc.innerHTMLでもいけるかも。
0211デフォルトの名無しさんNGNG
ユーザースタイルシートのON/OFFを切り替えたり、
適用するユーザースタイルをいくつも登録しておけるようなアプリを作ってください。
021223NGNG
をぉ、>>211 のような小物は漏れ向きかも(藁 ちょいと調べてみようかな。
# 暇があれば・・・
0213厨房もじらー ◆3mOz2Ch. NGNG
漏れの意見としては、Piroさんのコンテキストメニュー拡張に
そういう機能があったような気がするので
あっちを使うか、機能不足ならパッチ送って追加してもらうとか
そういう方向のほうがよさげかと。
似たようなアプリが乱立すると(それ自体は悪いことではないと思うけど)
干渉するというか、そういうことがままあるので。
0214 ◆S0qIRC9I NGNG
userContent.cssで定義されるユーザースタイルは、XPCOMから操作できるんでしょうか?
自分は方法を見つけられなかったんですが……
0215デフォルトの名無しさんNGNG
>>241

xpcom からと言ってよいのかわからんすけど
userContent.css のスタイルは DOM Inspector から
参照できるです。 その辺りは参考にならんすか?

0216215NGNG
>>241宛じゃなくて >>214宛す。
0217デフォルトの名無しさんNGNG
XUL で遊んでいるんだけど、Javascript がいまいちわかりません。
みなさんは、何を参考にしているんですか?
0218 ◆S0qIRC9I NGNG
>>215
ありがとうございます。確かにそれっぽい処理が行われてますね。
しかしどこがその部分なのかソースを見てもさっぱりわからないという自分の低レベルっぷりが涙を誘います。
0219厨房もじらー ◆3mOz2Ch. NGNG
>>217
漏れは手元にあるJavaScript本(古くてちゃちいやつ)と
http://developer.netscape.com/docs/manuals/javascript.html
あたりを参照しつついろいろやってるよ。
0220デフォルトの名無しさんNGNG
217です。

>> 219
厨房もじらーさんありがとうございます。
参考にします。

0221デフォルトの名無しさんNGNG
XUL 初心者ですが、練習をかねて作成してみました。
カスタムメニューバー
http://member.nifty.ne.jp/georgei/mozilla/custom_manubar.html

人柱になっても良いという方、テストしてくれませんか?
Nifty が(今の所) .xpi の mime を追加してくれないので、
自動インストールできません。あしからず。
0222厨房もじらー ◆3mOz2Ch. NGNG
>>221
インストールしようとしてみたのですが、インストール中にこけます。
以下はログです。ファイルの場所以外はそのまま載せます。

-------------------------------------------------------------------------------
file:///*****/custommenubar-092.xpi -- 07/06/2002 10:12:33
-------------------------------------------------------------------------------

Custom Menubar (version )
--------------

** initInstall: 0
** ィ鵈 (-214): ウn{2:

Install completed successfully -- 07/06/2002 10:12:33
0223厨房もじらー ◆3mOz2Ch. NGNG
>>222 を見てもわかるように、ファイルがコピーされてないようです。
install.jsの中を見てみたのですが、
おそらくperformInstall()する前にエラーチェックをしてないので、
インストールは成功とでます。

#たいていperformInstall()の前でこういう感じでエラーチェックします。
err = getLastError();
if (err == SUCCESS)
performInstall();
else
cancelInstall(err);
0224厨房もじらー ◆3mOz2Ch. NGNG
改めて見てみたら、addDirectoryしているのに
custombar.xpiの中に入ってるのはcustomebar.jarでした。。。
それでファイルが見つからない(-214)のエラーがでてるようです。
修正したものを一応
http://xul-app.hoops.jp/moz2ch/custombar/custombar-install-fix.xpi
にageておきますた。
0225厨房もじらー ◆3mOz2Ch. NGNG
で、ちょっと使ってみましたが、メニューから辿る動作がない分
ラクといえばラクですね。ただ、冗長だと思わないでもないです。。。
個人的な希望としてはアイコンが入って、アイコンのみ、
アイコンとテキスト、テキストのみを切り替えられると(・∀・)イイ!!
と思うです。

ところで、ツールバーの区切りは
<label value="|"/>で実現してると思うのですが、
<toolbarseparator/>をなぜ使わないのかが気になる気になる。。。
0226厨房もじらー ◆3mOz2Ch. NGNG
印刷プレビューは、print(印刷ボタン)のポップアップから使えるので
要らないような気がしますが、どうでしょうか?
0227221NGNG
厨房もじらー さん。素早いコメント感謝です。
どうやら前のバージョンをアップしていたようです。失礼しました。
差し替えた(つもり)です。
最新版では
<toolbarseparator minheight="16px"/>
で処理してます。

アイコン入れるのは考えたのですが(そのためのツールチップ)、
テーマとの整合性を考えて保留にしてます。
0228221NGNG
印刷プレビューの件ですが;
ブックマーク系もパーソナルツールバーやサイドバーに表示できるのに、
付けて欲しい、という人がいたので追加した、という経緯があり、
とりあえず入れてあります。
デフォルトから外しているのはそのためです。
0229厨房もじらー ◆3mOz2Ch. NGNG
>>227
最新版はまだ試してないのですが、
漏れがいろんなXULアプリを見てきた中で<toolbarseparator/>は
<toolbar tbalign="stretch">
<toolbarseparator label="LABEL"/>
</toolbar>
のように使われてたので、そうすると意図した表示になると思われます。
0230221NGNG
>>229
最初は <toolbarseparator/> だけでやってみたのですが、
なぜか空白だけで区切り線が表示されない。
(<menuseparator/> では表示されるのに)
悩んだあげく <label value="|"/> で強引に表示させていました。
同等の表現は、お教えいただいた、
<toolbarseparator label="|"/> でできるかと思いますが、
これまた、他の人に教えていただいた、
<toolbarseparator minheight="16px"/> の方が他の UI と同じ
区切り線がでるので、これで行こうと思います。
0231 ◆3mOz2Ch. NGNG
>>230
>>229 は間違ってました。
重要なのは、<toolbar tbalign="stretch">の部分で、
<toolbarseparator/>
にはlabelは要りませんでした。
Mozilla Messenger(メーラ)のコードはこういう風にしてあったので。

<toolbar tbalign="stretch">
<toolbarbutton label="Button1"/>
<toolbarseparator/>
<toolbarbutton label="Button2"/>
</toolbar>

のようにします。スマソ
0232221NGNG
>>231
確認しました。
tbalign="stretch" 入れると、 <toolbarseparator/> だけで
区切り線が表示されました。
次期バージョンに取り入れたいと思います。
いろいろなご助言、ありがとうございます。

ダウンロードページの Contributors に記載してもよろしいでしょうか?
「厨房もじらー さん@Mozillaでプログラミング(XUL) 」とか。
匿名希望も受け付けますが(w
0233 ◆3mOz2Ch. NGNG
>>232
いえいえ、XULプログラミングの発展を願ってます。
Contributorの扱いはそちらにお任せします。
Contributeというほどのことはしてないと思いますけどね(藁
0234デフォルトの名無しさんNGNG
ネットランナーに、PiroさんのXULアプリ多分全部と、PROXYBARも入ってた...
0235 ◆3mOz2Ch. NGNG
proxybar、さりげに有名に(藁
0236デフォルトの名無しさんNGNG
>>235
×「さりげに有名」
○「なにげに有名」or「さりげなく有名」
0237≠235NGNG
>>236
非常に申し上げ難いのですが
「さりげに」は若者言葉として
既に定着した感のある
形容表現で御座いますが...
0238デフォルトの名無しさんNGNG
素直に受け止めろ。仲間内だけで使え。
0239厨房もじらーNGNG
>>236 >>237 >>238
さりげにって普段使うけど
意味は「なにげに」の場合が多いな漏れ。
と、反省させられたので
仲間内だけで使うことにするYo!
ありが�d。

そんなことより>>1よ…じゃなくて
そんなことより、このスレでこういう話題しか書き込まれないのがサミスィ
漏れもそうだけど、XULプログラミング一般ってネタ少ないねやっぱり。
■ このスレッドは過去ログ倉庫に格納されています