- case nameof( ステージ.選曲.選曲ステージ ):
- #region " 曲確定 → 曲読込ステージへ。"
- //---------------
- if( this.選曲ステージ.現在のフェーズ == ステージ.選曲.選曲ステージ.フェーズ.曲確定 )
- {
- // 曲ノードが選択されていることを確認。
- Trace.Assert( null != StrokeStyleT.曲ツリー管理.現在選択されているノード, "[バグあり] 選択曲が null です。" );
- this.現在のステージ.非活性化する( this.スレッド排他領域.デバイスリソース );
- this.現在のステージ = this.曲読込ステージ;
- this.現在のステージ.活性化する( this.スレッド排他領域.デバイスリソース );
- }
- //---------------
- #endregion
- #region " キャンセル → アプリを終了する。"
- //---------------
- else if( this.選曲ステージ.現在のフェーズ == ステージ.選曲.選曲ステージ.フェーズ.キャンセル )
+ this.現在のステージ.非活性化する( this.デバイスリソース );
+ this.現在のステージ = this.選曲ステージ;
+ this.現在のステージ.活性化する( this.デバイスリソース );
+ }
+ //---------------
+ #endregion
+ #region " キャンセル → タイトルステージへ。"
+ //---------------
+ else if( this.ログインステージ.現在のフェーズ == ステージ.ログイン.ログインステージ.フェーズ.キャンセル )
+ {
+ this.現在のステージ.非活性化する( this.デバイスリソース );
+ this.現在のステージ = this.タイトルステージ;
+ this.現在のステージ.活性化する( this.デバイスリソース );
+ }
+ //---------------
+ #endregion
+ break;
+
+ case nameof( ステージ.選曲.選曲ステージ ):
+ #region " 曲確定 → 曲読込ステージへ。"
+ //---------------
+ if( this.選曲ステージ.現在のフェーズ == ステージ.選曲.選曲ステージ.フェーズ.曲確定 )
+ {
+ // 曲ノードが選択されていることを確認。
+ Trace.Assert( null != StrokeStyleT.曲ツリー管理.現在選択されているノード, "[バグあり] 選択曲が null です。" );
+ this.現在のステージ.非活性化する( this.デバイスリソース );
+ this.現在のステージ = this.曲読込ステージ;
+ this.現在のステージ.活性化する( this.デバイスリソース );
+ }
+ //---------------
+ #endregion
+ #region " キャンセル → アプリを終了する。"
+ //---------------
+ else if( this.選曲ステージ.現在のフェーズ == ステージ.選曲.選曲ステージ.フェーズ.キャンセル )
+ {
+ this.現在のステージ.非活性化する( this.デバイスリソース );
+ this.現在のステージ = null;
+ this.State = ApplicationState.終了;
+ }
+ //---------------
+ #endregion
+ break;
+
+ case nameof( ステージ.曲読込.曲読込ステージ ):
+ #region " 終了 → 演奏ステージへ。"
+ //--------------------
+ if( this.曲読込ステージ.現在のフェーズ == ステージ.曲読込.曲読込ステージ.フェーズ.終了 )
+ {
+ this.現在のステージ.非活性化する( this.デバイスリソース );
+ this.現在のステージ = this.演奏ステージ;
+ this.現在のステージ.活性化する( this.デバイスリソース );
+ }
+ //--------------------
+ #endregion
+ break;
+
+ case nameof( ステージ.演奏.演奏ステージ ):
+ if( StrokeStyleT.ビュアーモードである )
+ {
+ // (A) ビュアーモード
+
+ #region " ビュアーメッセージがあれば処理する。"
+ //----------------
+ var msg = this.ビュアーメッセージを取得する();
+
+ if( null != msg )