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.
| | Class | Package | Description |
| | 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 イベント設定のところ
|