//名前からコントロールを詮索する //処理だと処理が重くなるので、該当が無い場合nullを返す protected OneCtrl GetCtrl(String name) { OneVal oneVal = ListVal.Search(name); if (oneVal == null) { return(null); } return(oneVal.OneCtrl); }
public OneOption(bool isJp, string path, string nameTag) { ListVal = new ListVal(); _isJp = isJp; Path = path; NameTag = nameTag; //Ver6.1.6 Lang = new Lang(isJp ? LangKind.Jp : LangKind.En, "Option" + nameTag); ListVal.OnChange += ArOnChange; }
//値の取得 public object GetValue(string name) { var oneVal = ListVal.Search(name); if (oneVal == null) { Util.RuntimeException(string.Format("名前が見つかりません name={0}", name)); return(null); } return(oneVal.Value); }
//ダイアログ作成時の処理 public void CreateDlg(Panel mainPanel) { // 表示開始の基準位置 const int x = 0; const int y = 0; int tabIndex = 0; ListVal.CreateCtrl(mainPanel, x, y, ref tabIndex); //ListVal.setListener(this); // 基底クラスのセットアップされる「サーバ設定」などのコントロールの状態を初期化するため、このダミーのイベントを発生させる ArOnChange(); }
private OnePage Page2(string name, string title) { var onePage = new OnePage(name, title); var listVal = new ListVal(); var key = "userName"; listVal.Add(new OneVal(key, "", Crlf.Nextline, new CtrlTextBox(Lang.Value(key), 30))); key = "password"; listVal.Add(new OneVal(key, "", Crlf.Nextline, new CtrlHidden(Lang.Value(key), 30))); key = "user"; onePage.Add(new OneVal(key, null, Crlf.Nextline, new CtrlDat(Lang.Value(key), listVal, 250, Lang.LangKind))); return(onePage); }
//listValの初期化 // protected void Init() { // // // //「ACL」タブの追加 // if (_useAcl) { // var list = new ListVal(); // list.Add(new OneVal("enableAcl", 0, Crlf.Nextline, new CtrlRadio((Kernel.IsJp()) ? "指定したアドレスからのアクセスのみを" : "Access of ths user who appoint it", new List<string> { (Kernel.IsJp()) ? "許可する" : "Allow", (Kernel.IsJp()) ? "禁止する" : "Deny" }, OptionDlg.Width() - 15, 2))); // {//DAT // var l = new ListVal(); // l.Add(new OneVal("aclName", "", Crlf.Nextline, new CtrlTextBox((Kernel.IsJp()) ? "名前(表示名)" : "Name(Display)", 200))); // l.Add(new OneVal("aclAddress", "", Crlf.Nextline, new CtrlTextBox((Kernel.IsJp()) ? "アドレス" : "Address", 300))); // list.Add(new OneVal("acl", null, Crlf.Nextline, new CtrlDat((Kernel.IsJp()) ? "利用者(アドレス)の指定" : "Access Control List", l, 600, 340, Kernel.IsJp()))); // }//DAT // Add(new OneVal("ACL", list, Crlf.Nextline, new CtrlTabPage("ACL"))); // } // // //名前重複の確認 + ar.Valsの初期化 // foreach (var a in ListVal.Vals) { // if (1 != ListVal.Vals.Count(o => o.Name == a.Name)) { // throw new Exception(string.Format("Name repetition {0}-{1}\r\n", this, a.Name)); // } // } // // //レジストリからの読み込み // _iniDb.Read(NameTag, ListVal); // } // protected OnePage PageAcl() { var onePage = new OnePage("ACL", "ACL"); onePage.Add(new OneVal("enableAcl", 0, Crlf.Nextline, new CtrlRadio(_isJp ? "指定したアドレスからのアクセスのみを": "Access of ths user who appoint it", new[] { _isJp ? "許可する" : "Allow", _isJp ? "禁止する" : "Deny" }, OptionDlg.Width() - 15, 2))); var list = new ListVal(); list.Add(new OneVal("aclName", "", Crlf.Nextline, new CtrlTextBox(_isJp ? "名前(表示名)" : "Name(Display)", 20))); list.Add(new OneVal("aclAddress", "", Crlf.Nextline, new CtrlTextBox(_isJp ? "アドレス" : "Address", 20))); onePage.Add(new OneVal("acl", null, Crlf.Nextline, new CtrlDat(_isJp ? "利用者(アドレス)の指定" : "Access Control List", list, 310, Lang.LangKind))); return(onePage); }
private OnePage Page2(string name, string title) { var onePage = new OnePage(name, title); var key = "isDisplay"; onePage.Add(new OneVal(key, 1, Crlf.Nextline, new CtrlRadio(Lang.Value(key), new[] { Lang.Value(key + "1"), Lang.Value(key + "2") }, OptionDlg.Width() - 15, 2))); var list = new ListVal(); key = "Character"; list.Add(new OneVal(key, "", Crlf.Nextline, new CtrlTextBox(Lang.Value(key), 50))); key = "limitString"; onePage.Add(new OneVal(key, null, Crlf.Nextline, new CtrlDat(Lang.Value(key), list, 230, Lang.LangKind))); key = "useLimitString"; onePage.Add(new OneVal(key, false, Crlf.Nextline, new CtrlCheckBox(Lang.Value(key)))); return(onePage); }
//値の設定 public void SetVal(IniDb iniDb, string name, object value) { var oneVal = ListVal.Search(name); if (oneVal == null) { Util.RuntimeException(string.Format("名前が見つかりません name={0}", name)); return; } //コントロールの値を変更 oneVal.OneCtrl.Write(value); //Ver6.0.0 oneVal.SetValue(value); //レジストリへ保存 Save(iniDb); }
//OneValとしてサーバ基本設定を作成する protected OneVal CreateServerOption(ProtocolKind protocolKind, int port, int timeout, int multiple) { var list = new ListVal(); list.Add(new OneVal("protocolKind", protocolKind, Crlf.Contonie, new CtrlComboBox(_isJp ? "プロトコル" : "Protocol", new [] { "TCP", "UDP" }, 60))); list.Add(new OneVal("port", port, Crlf.Nextline, new CtrlInt(_isJp ? "クライアントから見たポート" : "Port (from client side)", 5))); var localAddress = LocalAddress.GetInstance(); var v4 = localAddress.V4; var v6 = localAddress.V6; list.Add(new OneVal("bindAddress2", new BindAddr(), Crlf.Nextline, new CtrlBindAddr(_isJp ? "待ち受けるネットワーク": "Bind Address", v4, v6))); list.Add(new OneVal("useResolve", false, Crlf.Nextline, new CtrlCheckBox((_isJp ? "クライアントのホスト名を逆引きする": "Reverse pull of host name from IP address")))); list.Add(new OneVal("useDetailsLog", true, Crlf.Contonie, new CtrlCheckBox(_isJp ? "詳細ログを出力する": "Use Details Log"))); list.Add(new OneVal("multiple", multiple, Crlf.Contonie, new CtrlInt(_isJp ? "同時接続数" : "A repetition thread", 5))); list.Add(new OneVal("timeOut", timeout, Crlf.Nextline, new CtrlInt(_isJp ? "タイムアウト(秒)" : "Timeout", 6))); return(new OneVal("GroupServer", null, Crlf.Nextline, new CtrlGroup(_isJp ? "サーバ基本設定" : "Server Basic Option", list))); }
//OneValの追加 public void Add(OneVal oneVal) { ListVal.Add(oneVal); }
//ダイアログが閉じるときの処理 public void CloseDlg() { ListVal.DeleteCtrl(); }
//OKボタンを押したときの処理 public bool OnOk(bool isComfirm) { return(ListVal.ReadCtrl(isComfirm)); }