Oct 21, 2007

Tree Style Tab - ツリー型タブ

先日から作業してたものの成果がそれなりの形になったので、公開しました。

これだけでも当然使えるけど、僕としては情報化タブマルチプルタブハンドラの二つと組み合わせて使うのがお勧めだと思ってます。

実際に組み合わせて使ってる様子: (スクリーンショット)

元々、使い勝手のいいツリー表示アドオンが出てきたらそっち使う気でいたんだけど、TabKitが案外期待外れだった(←うわー言っちゃったー)ので一念発起して自分好みの物を作った。インデント幅を自動調整するようにしたとか、ドラッグ&ドロップでのタブの移動とツリー編集の挙動をIllustratorのレイヤツリー風にしたとか、TBEのタブツリーより完成度は地味に高くなってると思う。

突貫工事で作ったワリには案外ちゃんと動いてくれているなあ、というのが率直な感想。なめらかスクロールの実装やサブツリーの開閉まわりのコードをTBEからコピってきて使った箇所が少しだけあるけど、改めて今TBEのコードを見てみたら、タブのスクロール一つとってもとんでもなく面倒なことをしていたんだなあということに、我ながら改めて驚かされる。だって、普通にボックスの内容をスクロールさせるメソッドがなかったんですよ? バインディングを使って不可視のスクロールバーを取得して強引にスクロールの制御を行ってたとか根本的にバッドノウハウの塊すぎて、読み解くのも一苦労でした。あの頃から比べたらFirefoxの方でAPIを用意してくれてるところが増えてだいぶ楽になったもんです。

以下、検討事項。

  • ウィンドウをまたいだドラッグ&ドロップ……は、要望があれば考えよう。
  • ドラッグ中にタブバーの端をポイントしたら自動でスクロールするようにしたい。
  • 通常の横置きタブでも動くような設計になってはいるけど、十分テストしてなかったり、うっかり縦置きタブ用に決め打ちしちゃってるとことかあるかもだったりで、その機能は今は封印ということにしておく。ていうか自分じゃもうそんな機能使いそうにないし、やる気の度合いは非常に低い。
  • アイコンとかもうちょっとマシな物にしようよ。
  • 他の(僕が作った物以外の)タブ系アドオンとの組み合わせでちゃんと動くかどうかは知らない。要望が出てき次第対応していこう。
  • 複数リンクを選択してまとめて開く機能もこれに入れるべき?
  • Text Linkとの連携もしなきゃなぁ
  • iRiderのようにすべてのリンクを常にタブで開くモードを付ける?
エントリを編集します。

wikieditish message: Ready to edit this entry.











拡張機能