Releases
0.3.2
Compare
Sorry, something went wrong.
No results found
m4saka
released this
24 Feb 10:16
新機能
Co::Init()でCoTaskLibのライセンス表記がLicenseManagerへデフォルトで追加される機能を追加
ライセンス表記追加を実行しない場合は、Co::Init()の第1引数へCo::AddsLicenseYN::Noを指定してください
Co::Init()でライセンス表記追加を実行しない場合、手動でCo::AddLicense()を呼び出せば任意のタイミングでの追加が可能です
0.3.1→0.3.2の破壊的変更
入力待ちタスクの関数群の第2引数へ実行後にclearInputを実行するどうかを指定する引数を追加し、デフォルトで有効に
引数が追加された関数一覧:
WaitUntilDown(const TInput input, ClearsInputYN clearsInput = ClearsInputYN::Yes)
WaitUntilUp(const TInput input, ClearsInputYN clearsInput = ClearsInputYN::Yes)
WaitUntilLeftClicked(const TArea area, ClearsInputYN clearsInput = ClearsInputYN::Yes)
WaitUntilLeftReleased(const TArea area, ClearsInputYN clearsInput = ClearsInputYN::Yes)
WaitUntilLeftClickedThenReleased(const TArea area, ClearsInputYN clearsInput = ClearsInputYN::Yes)
WaitUntilRightClicked(const TArea area, ClearsInputYN clearsInput = ClearsInputYN::Yes)
WaitUntilRightReleased(const TArea area, ClearsInputYN clearsInput = ClearsInputYN::Yes)
WaitUntilRightClickedThenReleased(const TArea area, ClearsInputYN clearsInput = ClearsInputYN::Yes)
これにより、例えば下記のコードが意図通りに動作しない(1回のキー押下のみで複数の入力待ちタスクが通過する)問題が修正されます
Co::Task<> MainTask ()
{
co_await Co::WaitUntilDown (KeySpace);
co_await Co::WaitUntilDown (KeySpace);
co_await Co::WaitUntilDown (KeySpace);
Print << U" 3回押されました" ; // ← 従来(〜0.3.1)は1回のキー押下のみでここへ到達していた
}
その他の変更点
タスク実行時の動的メモリアロケーション回数の削減によるパフォーマンス向上
Co::ScopedDrawerをムーブ不可に修正
Co::Task::with()へCo::EmptyTask()の結果を渡すと例外が発生していたのを修正
不使用変数の削除、表記ミスの修正
You can’t perform that action at this time.