XULアプリケーションビジュアル開発環境(予定)Mozartプロジェクトのページへようこそ。
もちろんMozartは未だ開発初期段階なので、何も作れません。というか、ほとんど何も作っていません。(待て)
ソースとか開発プロセスとかロクでもないものばかり公開してやっていきます。
開発環境の開発や規模の大きなアプリケーションの開発等のノウハウなんて全くないプログラミング初心者なんで、多分遅々として開発は進まないことでしょう。さらに言えば完成しないかもしれません。
という訳で、このプロジェクトの目標はなんだか凄いような気がしないでもないアプリケーションを開発しているような気分に浸りつつ、MozillaやMozillaの基盤となっている標準仕様であるXMLやCSS2、JavaScript(ECMA Script)などに親しむことにあります。
もしかしたら、このプロジェクトの中で俺のスキルがレベルアップして、本当に使えるシロモノが出来てしまったりする可能性も無きにしも非ずですが、それは万に一つの可能性なので、どうか期待などはしない様に宜しくお願い致します。
MOZilla-based Application RAD Toolの略でMozartといいます。
今考えました。
現在Mozartは『実験段階』です。
アプリケーションとして意味のあるものにはなっていません。
もちろんXULアプリの開発に利用することもできません。
ちなみにここでは随時開発の進捗状況を載せていく予定です。
はっきりいって開発は遅々として進まない筈ですが、あまり気にしない方向でよろしくお願いします。
ここのところ作業してないんですが、とりあえず現段階のソースあげてみます。
意味ないですが。
ツールバーの作り方の参考くらいにしかならないと思われます…。
で、前回は
とゆうわけで、次はPropertyViewな感じのコントロールを作ってみようと思う。
既存のコントロールを使うとすればoutliner
だろうが、それではつまらないのでgrid
やらなにやらを使って実装してみよう。
今度こそ、何かの役に立つはずだ…多分(弱)。
などと書いていましたが、実際にはPropertyView作る前に、コンポーネントをのせるフォームみたいな部分を実現するために、いろいろ実験してみてます。
で、スクリーンショットを載せたいところですが、こないだとほとんど変わってないので、それはなし。
代わりにソースコードを。何も有用じゃありませんが…。
題名どおりですが、俺はかなり飽きっぽい性格なので(ダメ)
時折別のことをしてないと、飽きてしまいます。
というか、NaMozなんて作って誰が使うんだろうなんて思い出したらもうやる気がダウンしてげんなりです。
いや、自分は使いますけどね(笑
そんなこんなで、並行してこんなのも作ろうとしています。
これは…できるんでしょうか…(汗
スクリーンショット: 某ビルダーとかビジュアル某みたいなものになるかもしれないブツ
アイコンをちまちま作っています(ぉ
具体的に何から手をつければよいのかあたりがついてないので(ぉぃ
Mozartは本家Mozilla.orgもそうですが、ボトムアップな開発過程なんです。
Namozはプロトタイピングです。
とか言ってみますが、本当は考え無しに気分で作ってるだけです。
今はMozartのフォームデザイン(画面デザイン)部分をどういう風に設計しようか悩みつつ、着実にUIだけ某ビルダーをパクりつづけています。(ぉぃ
よって、見た目はなんかできそうですが、実際には何も出来ません。(ダメ
とりあえず汎用的な部品から作り始めようと、さしあたってXBLなScrollPaneを書いてみています。
XULにはScrollBoxというそれらしきものがあるのですが、0.9.8ではスクロールバーがでません。
"A box with scrollbars that can be used to scroll the content inside it."
ってな感じでXUL Tutorialにも書いてあったのですが…
ダメ元でCSS2の'overflow'プロパティを'scroll'にしても変わりませんでした。
もちろん使い方が間違ってる可能性もなきにしも非ずですが…
というわけで、とりあえず実装してるんですが、これがbugだったらfixされちゃうと俺の立つ瀬が無いなと思い始めた今日この頃。
いや、バグならfixされりゃいいんですけどね…って、俺が確かめるのか…メンドイ(ぉぃ
と、Mozillaの恩恵を一身に受けながら、ろくに貢献もしないで罰当たりな俺…。
スクリーンショット: ScrollPaneを作ってます。それ作ったら次はPropertyViewです。
今日はひな祭りです。
いや、全く関係ないのでsage(何
ScrollPaneで、内側のボックスのサイズに応じてツールバーを表示したり隠したりするようになりました。
あとは、スクロールバーを動かしたときに内容をscrollByIndex()
なりscrollTo()
なりで動かせばいいと思うんですが………スクロールバーが動いた時のイベントは何…?
いや、正確な方法がわからないんで、navigatorやらeditorやらmessengerやらのソースを見てみたんですが、なにやら面倒なこと(hack?)をしている模様。
JavaScriptのObject.watch(プロパティ, ハンドラ);
が効くかもと思ってやっても、効きません。
調べようとする値がgetter
なのがよくないのかもしれません…
というか、getterをObject.watch
できたら重くなりすぎるような気も…
スクリーンショット: 未だにScrollPaneを作りつつ、ツールバーのスタイルを作りこんでみたり…
WinCVS導入してみました。ローカルでしか使ってませんが…。
CVSなるものの存在とかイメージくらいはわかってたんですが、実際に使ったことなかったんでそういう経験にもなるだろうと思ってのことです。
とりあえず、CVSに管理されてるという感じです。
まだCVS「で管理する」レベルにはいたってないです。よって、Mozartのほうはほとんど進んでいません。
でも、前はむやみにコピー&リネームで一時的なファイルたくさん作っててわけ分からなくなってたので、いい感じな気もします。
というわけで、ScrollPaneの作業中...
とりあえず動くようにすればいいか。
色々調べてみた結果。
結論。
<box style="overflow: auto;"> ・ ・ ・ </box>
これだけか!!
やっぱりCSS2プロパティの'overflow: auto'
が正しかったようです。
前も試したと思ったんだけど、なんで違ったんだろう…。
30秒もあればできることに、数時間もかけた俺は何!?
とりあえず、鬱だ…。
まあ、こういうこと調べるのにMozillaのソース読んだり、MozillaのXUL読んだり、必然的にいろんな部分を調べるので、Mozillaに詳しくなれるという特典付きだが
ステキな青春を鉋で削っていくような気分になれるので、素人にはお勧めできない
とゆうわけで、次はPropertyViewな感じのコントロールを作ってみようと思う。
既存のコントロールを使うとすればoutliner
だろうが、それではつまらないのでgrid
やらなにやらを使って実装してみよう。
今度こそ、何かの役に立つはずだ…多分(弱)。
スクリーンショット: overflow: auto;でスクロールバーを表示したりした図。
Copyright (C) 2002 ゲルソフト. All Rights Reserved.