Top

As/R Ver.5.5の話




●たわごと






●開発時の履歴
Ver.5.4.0.141

●追加迷走
・Windows10の内部OSバージョン情報が6.4→10になるとか・・・
 メジャー番号の更新は想定してなかったので、起動時にエラーメッセージが出ます。
 しばらく様子見をして対応を見送ります。

●β版迷走終了
・背景画像の指定を追加
・リスト上でShift+Ctrl+ホイール回転で、背景画像が指定されていれば背景の透明度を切り替えられるようにした
・リスト上でShift+ホイール回転で、As/R全体の半透明化を行うようにした
 (最低輝度の計算式が間違っていたのと25%に変更/切り替え速度の調整、全体半透明化の方が利用度高そうなのでキー組み合わせを変更)

・メニュー定義のOPENコマンドを拡張
OPENコマンドはシェルオープン動作であったため、実行できないファイルも指定可能なためコマンドラインオプションは利用不可だった
OPENコマンドで示された対象が存在しない場合、コマンドライン展開を試行するように変更した
【OK例】
OPENメディアプレーヤー(単体起動)C:\Program Files\Windows Media Player\wmplayer.exe
OPENメディアプレーヤー(コマンドライン指定)"C:\Program Files\Windows Media Player\wmplayer.exe" c:\test.avi
OPENメディアプレーヤー(関連付け実行)c:\test.avi
【NG例】
コマンドラインオプションとして分解を試みるが、スペースが含まれているため判別不能となる
OPENメディアプレーヤー(コマンドライン指定)C:\Program Files\Windows Media Player\wmplayer.exe c:\test.avi

●メニュー定義関連
・コマンドライン指定に伴いメニュー定義読み込みの1行の上限を32KB文字に変更
・メニューエディタは1024文字に制限を変更
・各トークンごとに前後スペースをトリムするように変更(手入力が増える事が予想されるので記述ミスの緩和)

●その他
・輝度を上げるコマンド追加
・輝度を下げるコマンド追加
・背景画像の輝度を上げるコマンド追加
・背景画像の輝度を下げるコマンド追加
・再描画のタイミング調整で描画速度が約1〜3%くらい向上
・起動時に無駄なVista判定処理があったので除去
・表示モード切替系のコマンドの実行後、ステータスエリアのアイコン画像が切り替わらない場合がある不具合の修正
・キー装飾+ホイールの動作を非同期イベントに変更してレスポンスを向上
・リソース文字列の追加と誤字修正
・MDIモードでウィンドウ位置を覚える機能を追加
・復元スクリプトでMDIモードの復元を追加





Ver.5.4.0.98

●β版につき仕様迷走中の項目
・画面分割時の選択コマンドの基礎は実装したけどUIの仕様が未決定なので未実装
・リスト上でShift+Ctrl+ホイール回転で、As/R全体の半透明化を行うようにした
 一時設定なので保存しない
 操作不能になるので最低輝度は30%
・背景画像を指定する画面を用意したけど起動速度のデメリットが気になって動作させてません
・リスト上でShift+ホイール回転で、背景画像が指定されていれば背景の透明度を切り替えられるようにした
 一時設定なので保存しない、永続的な設定はオプション画面で指定する
 スクリプトのBackgroundImageを使って確認してみてください
・メニュー定義ファイルのOPENコマンドで、コマンドライン展開のテスト実装

●新規外部コマンドの追加
・外部コマンドのレジストリ情報を削除するコマンドの追加(SettingInitialization.exe)
 (うちのソフトでサポート対象外になったもの、配布終了になったソフトの情報も削除可)

●バージョン情報コマンドの機能追加(VersionInfo.exe)
 サイト負荷が上がりすぎた場合は、予告無くサービスを終了します事をあらかじめご了承ください。
・最新のAs/Rのバージョン番号を取得する機能を追加
・ホームページを開く機能を追加
・リリース版ページを開く機能を追加(バージョン情報取得時にURLを取得します)
・β版ページを開く機能を追加(バージョン情報取得時にURLを取得します)

●メニュー定義関連
・メニューエディタの追加(Option.exe /M メニュー定義ファイル)
・MENUEDITコマンドの呼び出しを、スクリプトのEditor.txtからメニューエディタに変更
・オプションのメニュー定義画面で、メニューエディタの起動を追加

●ユーザー定義バー
・現在タブの復元スクリプトコマンドの追加
・_UserBarAction.txt復元スクリプト/現在階層への操作の機能群をまとめた
・_UserBarNoSel.txt復元スクリプト/現在階層への操作の機能群を追加
・ツールバー上の現在タブの一括登録の説明を変更

●その他
・_ViewMode.txtにアイコンのみモードのコメントを追加
・アイコンモードの場合のラベルテキストの描画を改善
・背景画像の透明度を指定する設定を追加
・ネットワークにアクセスする前に、ネットワーク先が有効か確認する設定の初期値をOFFにした
 (性能は大幅劣化しますが、ネットワークの環境依存する以上はヘルプもFAQも読まない人へのフォローも必要と判断しました)

●スクリプト追加
・BackgroundImageの追加
 各種リストの背景画像を指定します。
 bmp,png,jpg,gif,tif,emf,ico,wmfが表示できます。
※画像を縮小する場合はサムネイルエンジンを使うので、これ以外に動画やファイルアイコンなども表示可能です。

【書式】
BackgroundImage = [ターゲット], <[描画方法], [X座標オフセット], [Y座標オフセット], [画像のフルパス]>
ターゲット
 Now 現在アクティブなリスト 
 All 全てのリスト 
 0〜8 ユーザー定義バー(オプションの透明度は効きません)
描画方法
 0:座標位置を100分率で指定(原寸)
  スクロールの影響を受ける 
 1:並べて表示(原寸)
  1枚目の描画位置に座標が100分率で適用される 
 2:右下端固定で座標は無視(原寸)
  スクロールの影響を受けない
 3:2とほとんど同じだが、画像にαブレンド情報がある場合は適用する
  透過あり32ビットBMPや、透過GIF/PNG以外のαブレンド情報が無い場合は表示されない場合があるので注意が必要
 4:右下端固定(縮小)
  座標を画像のピクセルとみなし、これに収まるように画像を縮小する
  本縮小画像はサムネイルエンジンを使っているので動画なども表示できる
  画像は潰れるしアスペクト比を完全には保持しないので鑑賞用には向かない
  邪魔にならないような、マスコット表示的な使い方を想定
X座標 0〜100
 縮小の場合は画像幅 左端を基点とした百分率で配置を指定、100%にすると右端になる 
Y座標 0〜100
 縮小の場合は画像高さ 上端を基点とした百分率で配置を指定、100%にすると下端になる 
画像のフルパス bmp/gif/pngなどの画像ファイルのフルパス 

【例】
・画像指定解除
BackgroundImage = All
BackgroundImage = Now

・画像を指定(全部のリスト中央の下に描画)
BackgroundImage = All,0,0,50,100,c:\test\image.bmp

・先頭の選択ファイルを指定(ランチャの右下あたりに描画)
for
	BackgroundImage = 0,0,100,90,?selfile?
	break
next

・代入式でRandomの追加
 指定ディレクトリ直下のファイル名もしくは、フォルダー名をランダムで返します。
 存在しないディレクトリや走査フォルダーが空の場合は、空文字を返します。
 BackgroundImageやPlayWavのように、遊び要素のあるコマンド類と組み合わせて使用することを想定しています。
 ディレクトリの走査上限数は1000件で、それ以上のファイルが存在しても無視します。
 乱数種は厳密なものではないので、厳密性が求められる用途には使用しないでください。

【書式】
var 変数=Random,フォルダ名

【例】
var $起動時イベントで音鳴らすスクリプト$ = Random,C:\sound
PlayWav = $起動時イベントで音鳴らすスクリプト$

var $背景画像$ = Random,C:\階層を作ってたくさん画像を放り込んでるフォルダ
var $IsFile$
RETRY:
if $背景画像$ ==
	messageboxok = 空のディレクトリだったので中断!
	exit
endif
$IsFile$ = IsFile,$背景画像$
if $IsFile$ == 0
	//取得したものがディレクトリだったので、更に下位階層を探索する
	$背景画像$ = Random,$背景画像$
	goto RETRY
endif
BackgroundImage = Now,4,150,150,$背景画像$