Flex

asでカスタムコンポーネント(3)

ああ、ついにここにきてしまいました。 commitProperties()とupdateDisplayList()です。commitProperties()は、オブジェクトにバインディングしている様々なプロパティの変更を取りまとめるためのメソッドです。たとえば、HBoxの中のコンポーネントのひとつ…

asでカスタムコンポーネント(2)

個人的には落ち込んだり反省したりスネてみたりしている毎日ですが、仕事は相変わらずFlex一色です。 そのわりに基本的なスキルはまったく上がっていませんね。 むしろ落ちてるかも(--; 前回がやたらとウダウダ長く書いていたので、今回は的を絞ってすこしず…

asでカスタムコンポーネント(1)

なんか、昔書いたカスタムコンポーネントのエントリにトラックバックがいつの間にか張られていたり。 別に悪い気はしないけど、当時自分も勘違いしていたこととかあってこのまま置いとくのは恥ずかしくなってきたので、何回かに分けてすこし丁寧に解説してみ…

拡張された制約ベースレイアウト

Flex3Beta2より、Application,Panel,Canvasなどの制約ベースレイアウトが拡張されました。 これに伴い、Gridが非推奨になりますた(:_;)どうしてGridに関係してくるかというと、制約で行や列を定義できるようになったからです。 constraintRows,constrai…

FlexBuilder3Beta1でMXMLEditorが起動しない

以下のバグベースに上がっていますが、たまにMXMLEditorが立ち上がらなくなる場合があります。 http://bugs.adobe.com/jira/browse/FB-7931具体的な復旧方法としては、 ・エラーの出るworkspace/.metadata/plugins以下のcom.adobe.ナントカフォルダをすべて…

TreeのDataDescriptorについて

これまであまりDataDescriptorについてあまり使おうと思ったことがなかったのですが、実はTreeにDataDescriptorを指定するとチョー便利だということがわかってきました。たとえば、モデルオブジェクト自身はchildrenプロパティを持っていないことってよくあ…

EventDispatcherは継承しなくてもヨイ

ListCollectionViewのソースを何気なく見ていたら、IEventDispatcherの 実装を委譲でやっていてビックリしました。EventDispatcherってこういう使い方ができるんだ・・・ public class NewClass implements IEventDispatcher { private var eventDispatcher:Eve…

Moxie移行の際のDataGridの挙動の違いについて

まだベータではありますし、移行するひともまだまだ少ないとは思いますが、覚え書き。Flex3には新たなDataGridとしてAdvancedDataGridが用意される予定ですが、 現行と互換性のあるDataGridも、ソースレベルでかなり変わっているようです。 移行した際に確認…

スライディングサイドバーを作ってみた

VisualStudio2005のIDEで便利なものに、タブの状態で最小化できるサイドバーがあります。 アコーディオンだと枚数が増えてくるとどうしても表示領域を圧迫してしまうのですが、縦型のタブで最小化しておけるこのサイドバーは画面を広く使えるのでとても便利…

カスタムスキンとフィルターの使い分け

たとえば、コマンドを実行するボタンのためのスキン。 よーくみると、ボタンのアイコンそのものには効果がかかっていません。 ButtonSkinは、後ろにGraphicsオブジェクトでレイヤーを作って描いてるだけ。 なぜかというと、ProgrammaticSkinのupdateDisplayL…

Apollo mini Campに行ってきた

まだApolloアプリ作ったこともないのに出かけてきました。 わずか6時間で申し込み終了となっただけあって、ほぼ満席。 Mike ChambersさんとDany Dureさんがいろいろ語ってくれましたが、 基本的には勉強会でSatoshiさんが語ってくれた内容より薄めでした。 …

cacheAsBitmapの仕組み

ついつい使いたくなるcacheAsBitmapですが、内部的な動作は、次のようなものと 推測されます(パフォーマンス測定からの類推)。1.コンポーネントと同じ大きさのbitmapDataを用意する。 2.bitmapData.draw(this)ですべて書き出す。 3.書き出しの操作は…

コンポーネントをアホみたいに沢山配置する

現在会社で作成しているアプリケーションは、もともとC++で作られたものの移植です。 元ネタはいまも現役で販売されているのですが、古臭いGUIにもかかわらず顧客がついている理由。 それは「無制限に大きな有向グラフを描画できる」という一点に尽きる(失…