タグ

2007年9月13日のブックマーク (11件)

  • コンテナとスクロールバーとswapChildren - 前回よりは成長したブログ

    はじめまして、s-ohiraです。 いつもは違う名前で他のブログ使ってます。 なんだかHatena技術系の人が多くブログを書いているので、お試しです。 今日はFlex2のコンテナで苦労しました。 コンテナはContainerというクラスから派生するコンポーネントです。 CanvasやBoxをはじめとする多くのコンポーネントに使われていますが、 その一番の特徴は「スクロールバーが自動ででること」。 「違うだろ」といわれそうですが、コードを見る限りではこの通りです。 で、コンテナクラスがスクロールバーを表示するために何をしているのかというと、 子コンポーネントの領域が表示領域からはみ出したさいに、内部で「contentPane」という FlexSpriteオブジェクトを作成して、ユーザーの追加した子コンポーネントをすべて この上に配置しなおします。 こうすることによって領域が計算しやすくなる

    コンテナとスクロールバーとswapChildren - 前回よりは成長したブログ
    nitoyon
    nitoyon 2007/09/13
    ContainerでスクロールバーがあるときはcontentPaneというFlexSpriteが登場する。rawChildrenがcontentPane1個になる、addChildなどはオーバーライドされているが、swapChildrenはされてない。要注意。
  • MXMLとロジックの分離 - 前回よりは成長したブログ

    MXML中にActionScriptのロジックを埋めるのはイヤなものです。そんなにコードが汚くなるんならMXMLなんか要らない!という人も多いのではないでしょうか? 現在、ロジック部分をMXMLファイルから分離するにはいくつかの方法があります。 1)単純にソースを分離する C#なんかと同じように、Script部分を別ファイルに書くことができます。MXMLと同じ名前が使えないのは難点ですが(MXMLとASを同じ階層においた場合)、コンポーネントによけいなサフィックスを付加することなくアクセスできるのでキレイといえばこれが一番キレイかもしれません。 2)IMXMLObjectを実装したロジッククラスを埋め込む IMXMLObjectを継承したオブジェクトは、そのままMXMLにタグとして埋め込むことが出来ます。initialize()メソッドを実装するときに引数として親コンポーネントが渡ってくる

    MXMLとロジックの分離 - 前回よりは成長したブログ
    nitoyon
    nitoyon 2007/09/13
    IMXMLObject によりロジックを分離する手法。複数埋め込み、initializeのタイミング、ViewStackの注意点。
  • cacheAsBitmapの仕組み - 前回よりは成長したブログ

    ついつい使いたくなるcacheAsBitmapですが、内部的な動作は、次のようなものと 推測されます(パフォーマンス測定からの類推)。 1.コンポーネントと同じ大きさのbitmapDataを用意する。 2.bitmapData.draw(this)ですべて書き出す。 3.書き出しの操作は、子コンポーネントの更新を検知して行う。 つまり、子コンポーネントが頻繁に描画を更新する場合は、cacheAsBitmapを有効にすると かえって遅くなります。 また、子コンポーネントで有効にするより、なるべく親コンポーネントで有効にするほうが 子コンポーネントが多い場合にはパフォーマンスが向上します。 そして肝心なことなのですが、子コンポーネントを移動したり再描画する際には、 子コンポーネントすべてを同一のタイミングで行うようにします。 これはひとつ子コンポーネントが更新されるたびに、キャッシュを1回づつ

    cacheAsBitmapの仕組み - 前回よりは成長したブログ
    nitoyon
    nitoyon 2007/09/13
    Flex開発の高速化手法。cacheAsBitmapの内部動作、使いどころ、不要ならmouseEnabledをオフにする。 (関連)http://d.hatena.ne.jp/s-ohira/20070427/1177687644
  • UIComponentカスタムクラスのお作法 - 前回よりは成長したブログ

    カスタムコンポーネントは要するにUIComponentを継承して作成すればいいわけですが、 うっかりすると再利用性の低いコンポーネントを作ってしまいます。 いちばんやってしまうのが「コンストラクタの引数にデータモデルを指定」。 これはなるべく避けてください。 ActionScriptから動的に生成する場合には便利ですが、mxmlでRepeaterを使ったり、ItemRendererに 直したいと思った瞬間に、自らの愚かさに頭を抱えるハメになります。 いちばんいいのは、dataプロパティのみにモデルを集中して格納すること。 こうしておくと、ItemRendererとしても使えるので、再利用性が劇的に高くなります。 違う形式のプロパティを追加する場合には、setterで「入れ替える前のプロパティインスタンス」から イベントリスナーをはずしておくようにしましょう。 weakReferenceより

    UIComponentカスタムクラスのお作法 - 前回よりは成長したブログ
    nitoyon
    nitoyon 2007/09/13
    カスタムコンポーネントを作る上での注意点。 FlexEvent.REMOVEでイベントリスナ削除。描画はupdateDisplayListで実装、プロパティを更新するにはinvalidateProperties、描画まで更新するにはinvalidateDisplayList。
  • 404 - gooラボ

    お探しの情報は見つかりませんでした。 gooラボ gooトップ 同じ状態が続く場合はお手数をおかけしますが、goo事務局までお問い合わせください。 goo事務局

    nitoyon
    nitoyon 2007/09/13
    What しか検索できなかったのを Why や How で検索できるように。それっぽい結果は出るが、ミスヒットは多い雰囲気。
  • Photoshop Secret Shortcuts

    It is proven that by using software shortcuts can boost up productivity. Here are 30 secret Photoshop shortcuts that I’ve learned from years of experience. Well, what I mean by "secret" is that these shortcuts are not documented in the menus. Keep reading and you will find how these shortcuts can speed up your productivity. I bet you don’t know all of them. Note: this article is written in Mac Pho

    Photoshop Secret Shortcuts
    nitoyon
    nitoyon 2007/09/13
    Photoshopの知られてないショートカットキーやTips30個。
  • ついにFirefox3の新機能「Places Organizer」の全貌が明らかに

    現在リリースされているFirefox2の次のバージョン、「Firefox3」については現在、アルファ版がリリース中なわけですが、その中でもいくつかこれまでとは完全に変わる機能があり、その筆頭にあげられているのが「Places」と呼ばれているブックマーク管理機能。これまでのブックマークとは違ってデータベースを利用するとのことですが、一体どのような利点があるのか直感的に理解しづらいものがありました。 しかし、今回発表された「Places Organizer」の画像を見ると、ブックマークだけでなく、ページ閲覧履歴やダウンロードしたファイルの履歴、さらにはサムネイル画像やタグ付けなど、Firefoxに関するもろもろのものを集中管理するための機能というのが正しい位置づけのようです。 詳細は以下から。 New Places Mockups - mozilla.dev.apps.firefox | Go

    ついにFirefox3の新機能「Places Organizer」の全貌が明らかに
    nitoyon
    nitoyon 2007/09/13
    ソーシャルブックマーク的方向へ。ここまで複雑だと使える人間は数%。こういう機能をブラウザ本体に組み込む理由がよく分からない。
  • 価値を生むために知っておくべき,フルフラッシュサイト制作のあらすじ

    進化し続けるFlash 現在、Webサイト制作に関わる人々の多くは、Flashを採用したWebサイトの普及について好意的な印象を抱いているかもしれません。「⁠Macromedia FLASH 1」としてFlashが世に登場したのは1996年。以来、2002年の"MX"、'05年の"8"など、数々のバージョンを経て、2007年現在の最新版"CS3"に到るまで、Flashは絶えず進化してきました。 アクションスクリプトの高速化やサーバーとの連携強化は、Flashで制作された各種コンテンツを、立派な「商品」として利用できるレベルに高めています。ブロードバンドの普及やデバイスの進歩も手伝い、リッチなWeb体験をユーザーが享受しやすい環境になった現在、Flashを用いたWebサイトは安定した普及期に入ったと言えるでしょう。 SNSや動画投稿サイトなど、新しい形態のWebサイトが誕生している現状にも、

    価値を生むために知っておくべき,フルフラッシュサイト制作のあらすじ
    nitoyon
    nitoyon 2007/09/13
    フルフラッシュ良サイトの紹介。
  • GRAND LIFE 平屋という選択。 - MyForest - 住友林業の家

    好きなシーンを集めて、 新しい暮らし。 心地よい緑と木のぬくもりに包まれる、 平屋暮らし。 ワンフロアで完結する 暮らしの心地良さや、 庭とつながる憧れの ライフスタイルを始めてみませんか。 平屋だから叶う自分らしい暮らし方や、 1.5階建ての新空間など、 住友林業 ならではの平屋の魅力をご紹介します。 理想をかなえる、平屋の暮らし 住友林業の木の家 平屋人気の理由5 ワンフロアで生活が完結する平屋の暮らし。 シニア世代のイメージがありますが、 近年特に若い世代から支持されている 平屋の魅力をご紹介します。

    GRAND LIFE 平屋という選択。 - MyForest - 住友林業の家
    nitoyon
    nitoyon 2007/09/13
    遷移に凝ったFlashサイト。ここまで作りこんでいると気持ちいい。
  • JavaScript で構文解析: Days on the Moon

    C++ の特徴のひとつである演算子オーバーロード、その粋を極めたのが Boost Lambda (無名関数) と Boost Spirit (構文解析) ではないかと思っています。JavaScript では無名関数が使えるので Lambda に関しては間に合っているとも言えますが、Spirit はそうも行きません。JavaScript 2 で演算子オーバーロードがサポートされるのならチャレンジしてみようかななどと思ってそれきりになっていました。 しかし、一部でパーサブームが起こっているというのを受け、Perl 6 Rules をつらつらと眺めているうち、正規表現のメタ文字を使えば文法定義をきれいに書けるのではと思い至りました。そこで実際に JavaScript でパーサジェネレータを作り、Spirit にあやかって Gin (ジン) と名づけてみました。 文法定義 正規表現リテラルを使うこ

    nitoyon
    nitoyon 2007/09/13
    パーサーネタはあとで読む…はず。
  • Styling File Inputs with CSS and the DOM // ShaunInman.com

    The Last Rocket An 8-bit game for iPhone, iPad and iPod touch Minted of course. In partnership with File inputs (<input type="file" />) are the bane of beautiful form design. No rendering engine provides the granular control over their presentation designers desire. This simple, three-part progressive enhancement provides the markup, CSS, and JavaScript to address the long-standing irritation. Bef

    nitoyon
    nitoyon 2007/09/13
    input=file を透明にしておいて、JS でマウスオーバー時に参照ボタンがマウスの上にくるようにしている。アクロバットすぎ。 via phpspot