-using System;\r
-using System.Collections.Generic;\r
-using System.Text;\r
-\r
-namespace DTXMania\r
-{\r
- /// <summary>\r
- /// 「リスト」(複数の固定値からの1つを選択可能)を表すアイテム。\r
- /// </summary>\r
- internal class CItemList : CItemBase\r
- {\r
- // プロパティ\r
-\r
- public List<string> list項目値;\r
- public int n現在選択されている項目番号;\r
-\r
-\r
- // コンストラクタ\r
-\r
- public CItemList()\r
- {\r
- base.e種別 = CItemBase.E種別.リスト;\r
- this.n現在選択されている項目番号 = 0;\r
- this.list項目値 = new List<string>();\r
- }\r
- public CItemList( string str項目名 )\r
- : this()\r
- {\r
- this.t初期化( str項目名 );\r
- }\r
- public CItemList( string str項目名, CItemBase.Eパネル種別 eパネル種別 )\r
- : this()\r
- {\r
- this.t初期化( str項目名, eパネル種別 );\r
- }\r
- public CItemList( string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, params string[] arg項目リスト )\r
- : this()\r
- {\r
- this.t初期化( str項目名, eパネル種別, n初期インデックス値, arg項目リスト );\r
- }\r
- public CItemList(string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, string str説明文jp, params string[] arg項目リスト)\r
- : this() {\r
- this.t初期化(str項目名, eパネル種別, n初期インデックス値, str説明文jp, arg項目リスト);\r
- }\r
- public CItemList(string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, string str説明文jp, string str説明文en, params string[] arg項目リスト)\r
- : this() {\r
- this.t初期化(str項目名, eパネル種別, n初期インデックス値, str説明文jp, str説明文en, arg項目リスト);\r
- }\r
-\r
-\r
- // CItemBase 実装\r
-\r
- public override void tEnter押下()\r
- {\r
- this.t項目値を次へ移動();\r
- }\r
- public override void t項目値を次へ移動()\r
- {\r
- if( ++this.n現在選択されている項目番号 >= this.list項目値.Count )\r
- {\r
- this.n現在選択されている項目番号 = 0;\r
- }\r
- }\r
- public override void t項目値を前へ移動()\r
- {\r
- if( --this.n現在選択されている項目番号 < 0 )\r
- {\r
- this.n現在選択されている項目番号 = this.list項目値.Count - 1;\r
- }\r
- }\r
- public override void t初期化( string str項目名, CItemBase.Eパネル種別 eパネル種別 )\r
- {\r
- base.t初期化( str項目名, eパネル種別 );\r
- this.n現在選択されている項目番号 = 0;\r
- this.list項目値.Clear();\r
- }\r
- public void t初期化( string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, params string[] arg項目リスト )\r
- {\r
- this.t初期化(str項目名, eパネル種別, n初期インデックス値, "", "",arg項目リスト);\r
- }\r
- public void t初期化(string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, string str説明文jp, params string[] arg項目リスト) {\r
- this.t初期化(str項目名, eパネル種別, n初期インデックス値, str説明文jp, str説明文jp, arg項目リスト);\r
- }\r
- public void t初期化(string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, string str説明文jp, string str説明文en, params string[] arg項目リスト) {\r
- base.t初期化(str項目名, eパネル種別, str説明文jp, str説明文en);\r
- this.n現在選択されている項目番号 = n初期インデックス値;\r
- foreach (string str in arg項目リスト) {\r
- this.list項目値.Add(str);\r
- }\r
- }\r
- public override object obj現在値()\r
- {\r
- return this.list項目値[ n現在選択されている項目番号 ];\r
- }\r
- public override int GetIndex()\r
- {\r
- return n現在選択されている項目番号;\r
- }\r
- public override void SetIndex( int index )\r
- {\r
- n現在選択されている項目番号 = index;\r
- }\r
- }\r
-\r
-\r
-\r
-\r
- /// <summary>\r
- /// 簡易コンフィグの「切り替え」に使用する、「リスト」(複数の固定値からの1つを選択可能)を表すアイテム。\r
- /// e種別が違うのと、tEnter押下()で何もしない以外は、「リスト」そのまま。\r
- /// </summary>\r
- internal class CSwitchItemList : CItemList\r
- {\r
- // コンストラクタ\r
-\r
- public CSwitchItemList()\r
- {\r
- base.e種別 = CItemBase.E種別.切替リスト;\r
- this.n現在選択されている項目番号 = 0;\r
- this.list項目値 = new List<string>();\r
- }\r
- public CSwitchItemList( string str項目名 )\r
- : this()\r
- {\r
- this.t初期化( str項目名 );\r
- }\r
- public CSwitchItemList( string str項目名, CItemBase.Eパネル種別 eパネル種別 )\r
- : this()\r
- {\r
- this.t初期化( str項目名, eパネル種別 );\r
- }\r
- public CSwitchItemList( string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, params string[] arg項目リスト )\r
- : this()\r
- {\r
- this.t初期化( str項目名, eパネル種別, n初期インデックス値, arg項目リスト );\r
- }\r
- public CSwitchItemList(string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, string str説明文jp, params string[] arg項目リスト)\r
- : this() {\r
- this.t初期化(str項目名, eパネル種別, n初期インデックス値, str説明文jp, arg項目リスト);\r
- }\r
- public CSwitchItemList( string str項目名, CItemBase.Eパネル種別 eパネル種別, int n初期インデックス値, string str説明文jp, string str説明文en, params string[] arg項目リスト )\r
- : this()\r
- {\r
- this.t初期化( str項目名, eパネル種別, n初期インデックス値, str説明文jp, str説明文en, arg項目リスト );\r
- }\r
-\r
- public override void tEnter押下()\r
- {\r
- // this.t項目値を次へ移動(); // 何もしない\r
- }\r
- }\r
-\r
-}\r
+
\ No newline at end of file