PSSdev/FreeDesign/old/新機能SandBox
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[PSSdev/FreeDesign]]
#contents
* 順序番号なしのアイテム定義 [#h619cba7]
itemXX 形式で定義されるアイテム要素から、順序番号 XX を削...
これを実現することで、変数名を多重に定義できる。
つまり、出てくる順番で(リテラルに)変数値を変更しながらi...
同じ変数名(例えば x, y など)を複数の意味で使用すること...
その際に定義すべき仕様を考える。
** 進行状況 [#tfe87d9a]
:Draft1 (2003-03-23)|item,stat,stat_and の仕様を考えた。
:Draft2 (2003-03-23)|stat_and を stat2 に変更。
:Alpha12 (2003-03-25)|Draft2 を実装
** item の仕様 [#yf701e13]
item = "hoge" という形式とする。
右辺値に対する仕様変更は行わない。
** stat/stat2 の仕様 [#m255ead9]
現状の statXX, statXXand をそれぞれ stat, stat2 に変更す...
stat 項目は直前にある item に対する状態定義とする。
stat は item の次の行、stat2 は stat の次の行に存在しなけ...
** まとめ [#df528526]
| 旧定義 | 新定義 | 制限 | 備考 |
|itemXX|item|||
|statXX|stat|itemの次の行になければならない||
|statXXand|stat2|statの次の行になければならない||
* ローカル変数 [#aeb8fe5e]
スキン定義の便宜のために設ける(いわゆる)変数
個数制限はない
** 進行状況 [#mbe6e1c5]
:Draft1 (2003-03-23)|varXXkey/varXXval 形式で定義
:Draft2 (2003-03-23)|Draft1 ではスキンが書きにくかったの...
:v6.0 Alpha11 (2003-03-23)| Draft2 を実装
** Notation [#a1b35375]
$key = val で定義される。
key で指定された名前を変数名と呼ぶ。変数名にはalphabet,nu...
item 項目に $key を指定することで変数として扱うことが出来...
変数は 右辺値 で指定された値が展開される。
'''実際には C 言語の #define のようなプリプロセッサ型展開...
$edit_x = 170
$replyedit_y = 257
item26 = "str, ($edit_x, $replyedit_y-17, $edit_x+80 , ...
item27 = "edit, ($edit_x, $replyedit_y , $edit_x+600, ...
* ユーザ変数 [#y46b0f77]
オプション画面でユーザが変更できる変数
定義できるのは 20 個まで。
** 進行状況 [#c0d30076]
:Draft1 (2003-03-23)|userXXzz形式で定義
:Draft2 (2003-03-23)|ローカル変数と組み合わせることにした。
:Draft3 (2003-03-23)|背景イメージ BackgroundImageFile に...
:Draft4 (2003-03-25)|user〜desc、user〜type、user〜key の...
userXX 一文で定義するように変更。
実装についての覚え書きを追加。
:Draft5 (2003-03-25)|変数の個数を 20 個に変更。
:v6.0 Alpha13 (2003-03-25)|Draft5 を実装。
** 設定可能な項目 [#kd9074e1]
ユーザ側の利便性とスキン作者によるデザインを考慮して、以...
また、オプション画面では、デフォルト値を使うかどうかを指...
| '''項目名''' | '''変数のタイプ''' | '''オプション画面で...
|フォント関連項目|font|フォント選択ダイアログ||
|フォント名|fontname|フォント名選択コンボボックス|実装は...
|フォントサイズ|fontsize|スピンコントロール|実装は未定|
|カラー|color|カラーピッカー||
|背景色|-|カラーピッカー|スキンでは定義しなくてよい(デフ...
|背景イメージ|-|参照ボタン|スキンでは定義しなくてよい(デ...
** Notation [#a0f76a98]
userXX によって定義される。(XXは二桁の数値)
item 系や font 項目と同様に、複数の項目を , で区切った形...
:第1項|変数の解説文(オプション画面で変更する際に利用者...
:第2項|変数のタイプ
:第3項|変数名($hogeの形で記述する)
user00 = "'区切りの色', color, $bordercolor"
$bordercolor = "7070ff"
item40 = "border, (85, 20+20*0, 85+67, 20+20*0+20)...
** 注意事項 [#yf00adb7]
user〜 で指定された変数が上書きされる。
言い換えれば「この変数はユーザで変更してもいいですよ」と...
ユーザが(オプション画面で)その変数を変更した場合は、ス...
その変数値は全てユーザが変更した値で置き換えられる。
逆に言えば、ユーザがその変数を変更していない場合は、スキ...
(user〜で何が書いてあっても全く関係ない。「変数のタイプ...
** font の例 [#f51af101]
user00 = "'数値のフォント', font, $font_num"
$font_num = "16, 1, 0, 0, 0, MS Pゴシック"
font09 = "$font_num"
** 実装(ユーザ設定の保存) [#qae3ef34]
ユーザがオプションで設定すると、skin/user.ini の [hoge] ...
''ahi''00=30
のような記法で記述される。''ahi'' はスキンの名称(DesignN...
** 実装(覚え書き) [#n2c296f5]
- CFreeDesign::UserVar
-- スキンファイル上のユーザ変数を管理する
- CFreeDesign::UserVarMangaer
-- ユーザが変更したユーザ変数を管理する。
学習画面起動時は、スキン読み込み前に UserVarManager によ...
skin/user.ini のユーザ変数定義が読み込まれる。
その後、UserVarManager が渡され、CFreeDesign によってスキ...
''変数展開''の際には UserVarList にその値が存在するかどう...
UserVarList 上にその変数値が存在すれば、スキンで定義され...
UserVarList で定義されている値を優先して展開される。
終了行:
[[PSSdev/FreeDesign]]
#contents
* 順序番号なしのアイテム定義 [#h619cba7]
itemXX 形式で定義されるアイテム要素から、順序番号 XX を削...
これを実現することで、変数名を多重に定義できる。
つまり、出てくる順番で(リテラルに)変数値を変更しながらi...
同じ変数名(例えば x, y など)を複数の意味で使用すること...
その際に定義すべき仕様を考える。
** 進行状況 [#tfe87d9a]
:Draft1 (2003-03-23)|item,stat,stat_and の仕様を考えた。
:Draft2 (2003-03-23)|stat_and を stat2 に変更。
:Alpha12 (2003-03-25)|Draft2 を実装
** item の仕様 [#yf701e13]
item = "hoge" という形式とする。
右辺値に対する仕様変更は行わない。
** stat/stat2 の仕様 [#m255ead9]
現状の statXX, statXXand をそれぞれ stat, stat2 に変更す...
stat 項目は直前にある item に対する状態定義とする。
stat は item の次の行、stat2 は stat の次の行に存在しなけ...
** まとめ [#df528526]
| 旧定義 | 新定義 | 制限 | 備考 |
|itemXX|item|||
|statXX|stat|itemの次の行になければならない||
|statXXand|stat2|statの次の行になければならない||
* ローカル変数 [#aeb8fe5e]
スキン定義の便宜のために設ける(いわゆる)変数
個数制限はない
** 進行状況 [#mbe6e1c5]
:Draft1 (2003-03-23)|varXXkey/varXXval 形式で定義
:Draft2 (2003-03-23)|Draft1 ではスキンが書きにくかったの...
:v6.0 Alpha11 (2003-03-23)| Draft2 を実装
** Notation [#a1b35375]
$key = val で定義される。
key で指定された名前を変数名と呼ぶ。変数名にはalphabet,nu...
item 項目に $key を指定することで変数として扱うことが出来...
変数は 右辺値 で指定された値が展開される。
'''実際には C 言語の #define のようなプリプロセッサ型展開...
$edit_x = 170
$replyedit_y = 257
item26 = "str, ($edit_x, $replyedit_y-17, $edit_x+80 , ...
item27 = "edit, ($edit_x, $replyedit_y , $edit_x+600, ...
* ユーザ変数 [#y46b0f77]
オプション画面でユーザが変更できる変数
定義できるのは 20 個まで。
** 進行状況 [#c0d30076]
:Draft1 (2003-03-23)|userXXzz形式で定義
:Draft2 (2003-03-23)|ローカル変数と組み合わせることにした。
:Draft3 (2003-03-23)|背景イメージ BackgroundImageFile に...
:Draft4 (2003-03-25)|user〜desc、user〜type、user〜key の...
userXX 一文で定義するように変更。
実装についての覚え書きを追加。
:Draft5 (2003-03-25)|変数の個数を 20 個に変更。
:v6.0 Alpha13 (2003-03-25)|Draft5 を実装。
** 設定可能な項目 [#kd9074e1]
ユーザ側の利便性とスキン作者によるデザインを考慮して、以...
また、オプション画面では、デフォルト値を使うかどうかを指...
| '''項目名''' | '''変数のタイプ''' | '''オプション画面で...
|フォント関連項目|font|フォント選択ダイアログ||
|フォント名|fontname|フォント名選択コンボボックス|実装は...
|フォントサイズ|fontsize|スピンコントロール|実装は未定|
|カラー|color|カラーピッカー||
|背景色|-|カラーピッカー|スキンでは定義しなくてよい(デフ...
|背景イメージ|-|参照ボタン|スキンでは定義しなくてよい(デ...
** Notation [#a0f76a98]
userXX によって定義される。(XXは二桁の数値)
item 系や font 項目と同様に、複数の項目を , で区切った形...
:第1項|変数の解説文(オプション画面で変更する際に利用者...
:第2項|変数のタイプ
:第3項|変数名($hogeの形で記述する)
user00 = "'区切りの色', color, $bordercolor"
$bordercolor = "7070ff"
item40 = "border, (85, 20+20*0, 85+67, 20+20*0+20)...
** 注意事項 [#yf00adb7]
user〜 で指定された変数が上書きされる。
言い換えれば「この変数はユーザで変更してもいいですよ」と...
ユーザが(オプション画面で)その変数を変更した場合は、ス...
その変数値は全てユーザが変更した値で置き換えられる。
逆に言えば、ユーザがその変数を変更していない場合は、スキ...
(user〜で何が書いてあっても全く関係ない。「変数のタイプ...
** font の例 [#f51af101]
user00 = "'数値のフォント', font, $font_num"
$font_num = "16, 1, 0, 0, 0, MS Pゴシック"
font09 = "$font_num"
** 実装(ユーザ設定の保存) [#qae3ef34]
ユーザがオプションで設定すると、skin/user.ini の [hoge] ...
''ahi''00=30
のような記法で記述される。''ahi'' はスキンの名称(DesignN...
** 実装(覚え書き) [#n2c296f5]
- CFreeDesign::UserVar
-- スキンファイル上のユーザ変数を管理する
- CFreeDesign::UserVarMangaer
-- ユーザが変更したユーザ変数を管理する。
学習画面起動時は、スキン読み込み前に UserVarManager によ...
skin/user.ini のユーザ変数定義が読み込まれる。
その後、UserVarManager が渡され、CFreeDesign によってスキ...
''変数展開''の際には UserVarList にその値が存在するかどう...
UserVarList 上にその変数値が存在すれば、スキンで定義され...
UserVarList で定義されている値を優先して展開される。
ページ名: