Documentation for classes includes syntax, usage information, and code samples for methods, properties, and event handlers and listeners for those APIs that belong to a specific class in ActionScript. The classes are listed alphabetically. If you are not sure to which class a certain method or property belongs, you can look it up in the Index.


 ClassPackageDescription
 ArrayUtil
jp.naggg.utils 配列ユーティリティ
 BitmapDataUtil
jp.naggg.utils ビットマップユーティリティ
 BorderFilterFactory
jp.naggg.filters GlowFilter インスタンスを拡張した境界線フィルタを生成します. 境界線は、flash.filter.GlowFilter インスタンスの、blurX, blurY, strength を 調整することによって作ることができます. このクラスはその変換式により、GlowFilter インスタンスを BorderFilter と なるようにプロパティを変更します. 生成される GlowFilter インスタンスには、 外部から更新されたくないプロパティがあります.注意してください. ・blurX ・blurY ・strength ・quality また、既知の問題として、幅が20pxを超えたくらいから、フィルタの精度が汚くなります. 使用は幅が少ないであろうテキストなどに限った方が無難と思われます.
 CacheBuster
jp.naggg.net SWF が外部の SWF や XML を読込む場合、通常はキャッシュから読込みます. その場合、"test.xml?123456789" と乱数をつけることで対応しますが、 ローカル環境に限って読込めなくなります(ローカルのSWFがローカルのデータを相対パスで読込む場合). このクラスは、リモートでもローカルでも対象ファイルを読込むことを可能にしています.
 ColorBrightness
jp.naggg.effects flash.geom.ColorTransformクラスを拡張して輝度を調節する、ショートカットなくラスです. 輝度は -255 ~ 255 の値を取り、-255で黒、+255で白、となります. Flash IDE 上で、[フィルタ] → [カラー調整] → [明度] による 操作と同じものを渡します(フィルタ単体では -100 ~ +100 による設定まで). なお、ここでは、明度を luminance、輝度を brightness と 区別している点に注意してください. (明度は乗数とオフセット値をともに変更するものですが、  輝度はオフセット値のみを変更するものです.)
 ColorLuminance
jp.naggg.effects flash.geom.ColorTransformクラスを拡張して明度を調節する、ショートカットなクラスです. 明度は -100% ~ 100% で指定され、-100%で黒、+100%で白、となります. Flash IDE 上で、[プロパティ] → [カラー] → [明度] による操作に相当します. 上記パーセント指定のため、プロパティとしては、-1.0 ~ +1.0 で指定を 行う点に注意してください. なお、ここでは、明度を luminance、輝度を brightness と 区別している点にも注意してください. (明度は乗数とオフセット値をともに変更するものですが、  輝度はオフセット値のみを変更するものです.)
 ColorMatrix
jp.naggg.geom ColorMatrixFilter で扱う 5 x 4 の行列を表現するクラスです. Array を拡張しており、0~19までのインデックスに行列の各要素を代入し計算します. なお、本クラス作成には多大なる資料を参考にしています(いいとこどり). TODO transformColor の精度
 ColorUtil
jp.naggg.utils カラーユーティリティ
 CSVLoader
jp.naggg.net CSV を読込み、解析を行うクラスです. flash.net.URLLoader を継承しており、通常の URLLoader と同じようにアクセスを行います. また、イベントも同様のものを伝播するよう設計しています.
 DisplayUtil
jp.naggg.utils 表示オブジェクトに関してのユーティリティです. flash.display パッケージ全般に対してのクラスです.
 FontLoader
jp.naggg.net 特定のフォントを埋め込んだ外部SWFを読込み、設定を行います. flash.display.Loader を継承しており、通常の Loader と同じようにアクセスを行います. また、イベントも同様のものを伝播するよう設計しています.
 FPSCounter
jp.naggg.utils FPSを計測するクラスです. flash.display.Spriteを継承しているので、addChildすることで表示することができます. なので、表示させずにバックグランドで計測だけを行うことも可能です. また、FPSの値が更新されたときにイベントを配信します.
 GeomUtil
jp.naggg.utils 幾何学ユーティリティ
 GoogleAnalyticsConnector
jp.naggg.net GoogleAnalytics を Flash から実行するためのクラスです. シングルトンパターンを利用しているためインスタンス取得には注意してください. このクラスは GoogleAnalytics との連動を可能としますが、 新旧どちらのコードも設定が可能となっています. これは、JavaScript 側のトラック実行関数を、tracker プロパティより、 任意の関数名を指定することができますからです. なお、ExternalInterface との連携上、ブラウザのバージョンには注意が必要です. 以下は Adobe のヘルプページからの抜粋になります.
Win IE 5.0, 5.5, 6.0, 7.0
Win, Mac Netscape 8.0
Win, Mac Mozilla 1.7.5
Win, Mac Firefox 1.0
Mac Safari 1.3
Win, Mac Opera 9.0
 IMenu
jp.naggg.framework ナビゲーションなどのメニュークラスが実装するインタフェースです. 通常、子要素として、IMenuItemを実装した複数のインスタンスを持ちます.
 IMenuItem
jp.naggg.framework ナビゲーションなどのメニューボタンクラスが実装するインタフェースです.
 LineDrawer
jp.naggg.effects 直線を描くクラス. 折れ線を描くときに便利です.もちろん、曲線にはまったく対応してません!うへぇ・・・
 MathUtil
jp.naggg.utils 数学ユーティリティ
 MouseAppearance
jp.naggg.ui マウス表示全般を管理するクラスです. 主に、Mouse.show() および Mouse.hide() および Mouse.cursor を行うためのラッパークラスです. ただ、いづれのメソッドも少し物足りなく、  ・Mouse.hide() していても、Mouse.cursor を設定すると表示される  ・Mouse.hide() が可能なのは MouseCursor.AUTO のときのみ  ・表示状態を返すフラグがない  ・メソッドを連呼した場合、ブラウザ上でマウスカーソルが点滅する などの問題点があります(Windows 用 FlashPlayer 10.0.22 および 10.0.32 で確認). このクラスはそれらを解消するために設けました. 注意点としては Mouse クラスを監視できるイベントがないため、 このクラスを用いた場合は、Mouse クラスを使わずに MouseAppearance クラスを一貫して使う必要があります.
 MouseObserver
jp.naggg.ui マウスカーソルを観測するクラスです. ステージに追加された時から自身の parent のマウス速度と停止を観測します.
 MouseStay
jp.naggg.ui マウスのロールオーバーでツールチップを表示させたい場合、 その DisplayObject に一定時間留まった後に表示させることがあります. 例えば、ツールチップなどが挙げられます. このクラスをそれを簡易に実装できるようにしています.
 ObjectUtil
jp.naggg.utils オブジェクトユーティリティ
 Page
jp.naggg.data 要素(配列)のページング処理計算を担当するクラス. ページセットにも対応しています. インスタンスを生成してそのプロパティにアクセスすることで利用しますが、 currentPage などの一部プロパティは設定することができ、 設定する度にそのほかのプロパティが上書きされます. なお、Perlの同名のモジュールを参考としています.
 ParameterController
jp.naggg.controls パラメータ確認用のスライダー. 主に、モック作成に利用します. 連続値を取る数値パラメータ制御だけでなく、 不連続な値(たとえば整数)のパラメータを設定することもできます. 後者の場合、コンストラクタで interval を設定します. そこは fl.controls.Slider を参考にしてみました. フルスクラッチでユーザビリティの改善やキーボードーでの操作をサポートしていますが、 デザインや原案は、さくーしゃ先生でございます.ありがとうございましたー. また、変更点として、タブでのフォーカス遷移や、←→キーボードでのサム操作などがあり、 多少は使いやすくなっている、はずです. 完全に俺俺ユーティリティとして開発していて、 コンストラクタでイベントハンドラを渡すことができたり、 一括で座標指定と addChild() ができる ParameterController.alignInstances() などもあります. なお、弱点として、パラメータの値の表示が少しおかしいときがあったりします.モック用なので、気にしない.
 Progress
jp.naggg.framework ローディングの進捗表示アニメーションを行うクラスです.  (MVCで言うところの V のみを担当し、MとCは別で管理してください) オプションで速度摩擦や最大速度の指定が可能ですので、 実際のローディング状況とズレた、「滑らかな」アニメーションを作れます. 外部からの指定は、読込にあわせて targetValue のみを設定すればOKです. このクラス単体での使用(Flash IDE から基本クラスに設定)も考えて、 柔軟に記述ができるように動的クラスとして定義しています. 最適な使い方は、サブクラスを作り、そのイベントハンドラのオーバーライドを行う方法です. TODO onStart, onProgress, onComplete を ProgressEvent クラスを定義するとか?それはアホ? TODO stop() や reset() の実装?
 RedrawRegion
jp.naggg.utils 再描画ユーティリティ. デバッガの FlashPlayer では「再描画領域を表示」から再描画領域が赤い線で囲まれます. その線はしばらく画面に残ったままとなり、 しばらくするとクリアされたり、されなかったりします. 場合によっては、画面全体が再描画されているにも関わらず、赤線の位置に変化がなく、 パッと見で変化がないように感じます. このクラスを使えば、再描画領域の線の色を常に変化させることが可能なので、 描画領域を詳しくすることができます(線の色は細かく指定することも可能). 有効・無効の切替は以下で行うことができます. ・コンテクストメニュー ・ショートカット Ctrl+Alt+Space ※Altキーは押下のタイミングに注意が必要 最後に、このクラスの使用はデバッガ版の FlashPlayer に限られますが、 通常版であってもコンテクストメニューに表示されるので、 充分に注意を払ってください.
 ScrollBar
jp.naggg.controls スクロールバーコンポーネントクラスです. fl.controls.ScrollBar クラスは今ひとつ使い勝手が気に食わないので自作しました. このクラスのインスタンス自身はビュー兼コントローラーで、 スクロール対象を指定することで扱うことができるようになります. なお、基本的に縦方向のみ対応しています. 基本的な使い方は、Flash CS3 のライブラリに配置してから使います. MovieClip シンボルに jp.naggg.controls.ScrollBar を割り当ててます. ただし、そのシンボルは、track_mc, thumb_mc, up_mc, down_mc の4つの Spriteを持つことが必要ですので注意してください. イベントとしては、value の値が更新されたときに fl.events.Event.SCROLL イベントを 配信します.これは、ユーザーが UI を操作して更新したときも、および、 コンポーネントの value を操作したとき、いづれのケースでも配信されるイベントです. 注意が必要なのは、スクロール対象の cacheAsBitmap は強制的に true となります. これは、scrollRect によるスクロール速度の最適化を行ったためです. 開発当初は cacheAsBitmap の切替でグラデマスクに対応する予定でしたが、 最終的にスクロール速度の向上から、つねに true とするようにしました. さらに、scrollRect のバグ(仕様?)の都合で、 DisplayObject に scrollRect を設定した直後にその DisplayObject のサイズを 取得できず、scrollRect のサイズが反映されるまで時間が必要なので、 init() および setScrollee() を呼び出す際にデフォルトの大きさを必要とすることに 注意してください(特に、二度呼び出す場合). 最後に以下の内容を TODO として考えています. TODO ・横方向のスクロールに対応、というかこれはしない、説明しる! TODO ・scrollRect にともなう各種修正(コメントとサンプルソース)
 Slider
jp.naggg.controls スライダーコンポーネントクラスです. fl.controls.Slider クラスは今ひとつ使い勝手が気に食わないので自作しました. インスタンスの value プロパティは 0 ~ 1 と割合としての値を取ります. これは、fl.controls.Slider の value とは性質が異なるので注意してください. 基本的な使い方は、Flash CS3 のライブラリに配置してから使います. その際、シンボルに必要な要素は、 サム  :thumb_mc:Sprite、中心点は中央が望ましい トラック:track_mc:Sprite、中心点の制限はなし の2つの要素になります. fl.controls.Slider の仕様を受け継ぐ都合、 valueを手動で更新した場合は SliderEvent.CHANGE は配信されません. その際は dispatchChangeEvent を併用するようにします. init() メソッドでは自動的に呼ばれるように設計しています. また、このスライダーは基本横向きのみに対応しています. 縦に配置したい場合は、自身の回転を制御するなど行います. 最後に注意事項を2つ. まず、このクラスを使うには、flパッケージが必要になります. コンパイルするときにそれを含ませるには、 ComponentShim というコンポーネントアセットを書き出す必要があります. その設置方法は、  ステージに、fl.controls.Slider コンポーネントを配置   → ライブラリ /Component Assets/_private/ComponentShim を選択   → 右クリックよりリンケージ、最初のフレームに書き出しにチェック とします.
 SoundLoader
jp.naggg.net 特定の音声データを埋め込んだ外部SWFを読込み、設定を行います. flash.display.Loader を継承しているので、APIもイベントも同様に扱うことができます. また、アセットの単体テストを行うためのAPIも用意しています.
 StageCapture
jp.naggg.effects 再生中のステージのキャプチャ、Bitmap、BitmapData を所有する表示オブジェクトです. Sprite を継承しているのは、マウス判定を有効としているためで、 たとえば、ステージをキャプチャした一時停止状態を作る際に、 root の最上部に addChild することで画面全体のマウスを殺すことができます.
 StageSize
jp.naggg.data SWF のステージサイズ情報を扱いやすくしたクラスです. ただし、対応しているステージ配置はデフォルトの上下左右の中央のみになります. 基準となる幅と高さ、ステージ幅・高さ、四隅の座標などの各種情報を計算し、 ステージリサイズ時に、getInfo() メソッドより取得することができます. また、基準となる幅と高さは fla ファイルのステージ幅・高さを指定しますが、 このサイズを最小サイズとして認識し計算を行います. なお、Flashの仕様では、ステージサイズが奇数&表示領域が偶数、 すなわち左右のマージンの合計が偶数とならない場合、左右ともに四捨五入した値となるようです. たとえば、最小幅:800px、ステージ幅:815px の例では、 左マージン 7px、右マージン 8px として描画されます. getInfo() の第二引数で計算結果を四捨五入するかどうかを指定でき、 デフォルトでは true としています.
 StringUtil
jp.naggg.utils 文字列ユーティリティ
 SWFPrint
jp.naggg.printing SWFの印刷を補佐するクラスです. 根本的な課題として、Progression による印刷機能の拡張を目指しています. Progression では、コンテクストメニューからの印刷、あるいは、Ctrl + P による印刷、 いづれもブラウザ側の window.print() を使うよう実装されています. この手法は、SWFの方で印刷を制御しても実行が難しいといえます. そこで、swfprint.js により window.print() をオーバーライドし、 このクラスと通信するように設定を行えば、右クリックやショートカット経由で window.print() が実行されたときに、SWFでの印刷を実行することが可能となります. なお、このクラスを用いたとしても、[ファイル]メニュー → [印刷] による印刷は サポートされませんので注意してください.
 TextInputEnd
jp.naggg.ui TextField や TextInput・TextArea コンポーネントのインスタンスへの テキスト入力に対して、連続した入力の終了を監視するクラスです. このクラスにより、少しリッチなUIを作ることができるかもしれません. 監視レベル(遅延時間)は制御することができます.
 TextUtil
jp.naggg.utils テキストユーティリティ
 TypeWriter
jp.naggg.effects 文字が一文字ずつ表示されるアニメーションクラス. RPGなどでテキストが表示されるエフェクトです. HTMLテキストの場合、その中のテキストでアニメーションを行い、 アニメーション完了時にHTMLテキストに変換を行います. 同様に、StyleSheet を設定されているテキストの付与には appendText() を基本使っていますが、 StyleSheet を適用したテキストには使えないので注意が必要で、 その場合、なるべく StyleSheet を使わないデフォルトの状態でも 表示に差異がないようにする必要があります. TODO イベント設定のところ