}
//----------------
#endregion
- #region " sstf と同じ場所に対応するサムネイル画像ファイルがあるなら、それをサムネイル画像として採用する。"
+ #region " sstf と同じ場所に画像ファイルがあるなら、それをサムネイル画像として採用する。"
//----------------
var サムネイル画像ファイルパス =
( from ファイル名 in Directory.GetFiles( Path.GetDirectoryName( this.sstfファイルパス ) )
- where 対応するサムネイル画像名.Any( thumbファイル名 => ( Path.GetFileName( ファイル名 ).ToLower() == thumbファイル名 ) )
- select ファイル名 ).FirstOrDefault(); // 複数あったら、最初に見つけたほうを採用。1つも見つからなければ null。
+ where this.対応するサムネイル画像名.Any( thumbファイル名 => ( Path.GetFileName( ファイル名 ).ToLower() == thumbファイル名 ) )
+ select ファイル名 ).FirstOrDefault();
if( null != サムネイル画像ファイルパス )
this.サムネイル画像 = new テクスチャ( サムネイル画像ファイルパス );
/// <summary>
/// 曲ツリーへの参照を受け取り、その曲ツリーに対する様々な操作を提供する。
/// </summary>
+ /// <remarks>
+ /// ビュアーモード時は、現在の対象管理ツリー = null とし、現在選択されているノード に直接生成した MusicNode を設定する。
+ /// </remarks>
public class 曲ツリー管理 : FDK.Activity
{
+ /// <summary>
+ /// 曲ツリー(Nodeのツリー)のルートノード。
+ /// </summary>
+ /// <remarks>
+ /// ツリー自体は、このクラスの外で構築し、保持すること。
+ /// ルートノードは、ツリー内で唯一の RootNode 型であること。
+ /// ビュアーモード時は null とする。
+ /// </remarks>
public RootNode 現在の管理対象ツリー
{
get
{
this.bs_現在の管理対象ツリー = value;
- // 選択ノードを子リストの先頭にリセット。
- this.現在選択されているノード = ( 0 < value.子ノードリスト.Count ) ? value.子ノードリスト[ 0 ] : null;
+ // 曲ツリーの子リストの先頭ノードを選択ノードとしてセットする。
+ if( null != value )
+ {
+ this.現在選択されているノード = ( 0 < value.子ノードリスト.Count ) ? value.子ノードリスト[ 0 ] : null;
+ }
+ else
+ {
+ // ビュアーモードなら、選択ノードは null 。
+ this.現在選択されているノード = null;
+ }
+
}
}
+
+ /// <remarks>
+ /// ビュアーモード時は、このプロパティに直接ノード(MusicNode)を指定する。
+ /// </remarks>
public Node 現在選択されているノード { get; set; } = null;
public void 前のノードを選択する()