protected override void AbstractCreate(object value, ref int tabIndex) { int left = Margin; int top = Margin; // ボーダライン(groupPanel)の生成 _border = (GroupBox)Create(Panel, new GroupBox(), left, top, -1); //border.setBorder(BorderFactory.createTitledBorder(getHelp())); _border.Text = Help; _border.AutoSize = false; //グループに含まれるコントロールを描画する var x = left + 8; var y = top + 12; ListVal.CreateCtrl(_border, x, y, ref tabIndex); var dimension = ListVal.Size; // borderのサイズ指定 _border.Size = new Size(OptionDlg.Width() - 15, dimension.Height + 18); // 横はダイアログ幅、縦は、含まれるコントロールで決まる // オフセット移動 left += _border.Width; top += _border.Height; //値の設定 AbstractWrite(value); // パネルのサイズ設定 //Panel.setSize(left + width +Margin, top + height +Margin * 2); Panel.Size = new Size(left + Margin, top + Margin); }
protected override void AbstractCreate(object value, ref int tabIndex) { var left = Margin; var top = Margin; _tabControl = (TabControl)Create(Panel, new TabControl(), left, top, tabIndex++); _tabControl.Height = OptionDlg.Height() - 60 - top; _tabControl.Width = OptionDlg.Width(); _tabControl.SelectedIndex = 0; // Dock = DockStyle.Bottom, //_tabPage.setSize(getDlgWidth() - 22, getDlgHeight() - 80 - top); //_tabPage.Width = DlgWidth() - 22; //_tabPage.Height = DlgHeight() - 80 - top; //ページ変更のイベントをトラップする //tabbedPane.addChangeListener(this); Panel.Controls.Add(_tabControl); //グループに含まれるコントロールを描画する(listValはCtrlPageなので座標やサイズはもう関係ない) _pagePanelList = new List <TabPage>(); foreach (var onePage in PageList) { var tabPage = new TabPage(); tabPage.Text = onePage.Title; //p.setLayout(null); // 絶対位置表示 //p.setName(onePage.getName()); onePage.ListVal.CreateCtrl(tabPage, 0, 0, ref tabIndex); //ページの中を作成 onePage.ListVal.OnChange += new option.ListVal.OnChangeHandler(ListVal_OnChange); _tabControl.Controls.Add(tabPage); //_tabPage.addTab(onePage.Title, p); _pagePanelList.Add(tabPage); } // オフセット移動 left += _tabControl.Width; top += _tabControl.Height; //値の設定 //abstractWrite(value); // パネルのサイズ設定 Panel.Size = new Size(left + Margin, top + Margin); }
//RunMode��Remote�̏ꍇ�AKernel��MenuOnClick����A�����炪�Ă�� public void MenuOnClick(String cmd) { //�I�v�V�������j���[�̏ꍇ if (cmd.IndexOf("Option_") == 0) { var oneOption = _kernel.ListOption.Get(cmd.Substring(7)); if (oneOption != null) { var dlg = new OptionDlg(_kernel, oneOption); if (DialogResult.OK == dlg.ShowDialog()) { oneOption.Save(_kernel.IniDb);//�I�v�V������ۑ����� //�T�[�o���֑��M���� string optionStr; using (var sr = new StreamReader(_optionFileName, Encoding.GetEncoding("Shift_JIS"))) { optionStr = sr.ReadToEnd(); sr.Close(); } //Option�̑��M(C->S) RemoteData.Send(_sockTcp, RemoteDataKind.CmdOption, optionStr); } } //�u�c�[���v���j���[�̏ꍇ } else if (cmd.IndexOf("Tool_") == 0) { var oneTool = _kernel.ListTool.Get(cmd.Substring(5)); if (oneTool != null) { _toolDlg = oneTool.CreateDlg(_sockTcp); _toolDlg.ShowDialog(); _toolDlg.Dispose(); _toolDlg = null; } //�u�N���^��~�v�̏ꍇ } else if (cmd.IndexOf("StartStop_") == 0) { string nameTag = cmd.Substring(10); if (nameTag == "Restart") { if (_sockTcp != null) { //�u�ċN���v���j���[�I��(C->S) RemoteData.Send(_sockTcp, RemoteDataKind.CmdRestart, ""); } } } }
//RunModeがRemoteの場合、KernelのMenuOnClickから、こちらが呼ばれる public void MenuOnClick(String cmd) { //オプションメニューの場合 if (cmd.IndexOf("Option_") == 0) { var oneOption = _kernel.ListOption.Get(cmd.Substring(7)); if (oneOption != null) { var dlg = new OptionDlg(_kernel, oneOption); if (DialogResult.OK == dlg.ShowDialog()) { oneOption.Save(_kernel.IniDb);//オプションを保存する //サーバ側へ送信する string optionStr; using (var sr = new StreamReader(_optionFileName, Encoding.GetEncoding("Shift_JIS"))) { optionStr = sr.ReadToEnd(); sr.Close(); } //Optionの送信(C->S) RemoteData.Send(_sockTcp, RemoteDataKind.CmdOption, optionStr); } } //「ツール」メニューの場合 } else if (cmd.IndexOf("Tool_") == 0) { var oneTool = _kernel.ListTool.Get(cmd.Substring(5)); if (oneTool != null) { _toolDlg = oneTool.CreateDlg(_sockTcp); _toolDlg.ShowDialog(); _toolDlg.Dispose(); _toolDlg = null; } //「起動/停止」の場合 } else if (cmd.IndexOf("StartStop_") == 0) { string nameTag = cmd.Substring(10); if (nameTag == "Restart") { if (_sockTcp != null) { //「再起動」メニュー選択(C->S) RemoteData.Send(_sockTcp, RemoteDataKind.CmdRestart, ""); } } } }
private OnePage Page2(string name, string title, Kernel kernel) { var onePage = new OnePage(name, title); var key = "useEsmtp"; onePage.Add(new OneVal(key, false, Crlf.Nextline, new CtrlCheckBox(Lang.Value(key)))); var list1 = new ListVal(); list1.Add(new OneVal("useAuthCramMD5", true, Crlf.Contonie, new CtrlCheckBox("CRAM-MD5"))); list1.Add(new OneVal("useAuthPlain", true, Crlf.Contonie, new CtrlCheckBox("PLAIN"))); list1.Add(new OneVal("useAuthLogin", true, Crlf.Nextline, new CtrlCheckBox("LOGIN"))); key = "groupAuthKind"; onePage.Add(new OneVal(key, null, Crlf.Nextline, new CtrlGroup(Lang.Value(key), list1))); key = "usePopAcount"; onePage.Add(new OneVal(key, false, Crlf.Nextline, new CtrlCheckBox(Lang.Value(key)))); var list2 = new ListVal(); key = "user"; list2.Add(new OneVal(key, "", Crlf.Contonie, new CtrlTextBox(Lang.Value(key), 15))); key = "pass"; list2.Add(new OneVal(key, "", Crlf.Contonie, new CtrlHidden(Lang.Value(key), 15))); key = "comment"; list2.Add(new OneVal(key, "", Crlf.Nextline, new CtrlTextBox(Lang.Value(key), 20))); key = "esmtpUserList"; onePage.Add(new OneVal(key, null, Crlf.Nextline, new CtrlDat(Lang.Value(key), list2, 115, Lang.LangKind))); key = "enableEsmtp"; onePage.Add(new OneVal(key, 0, Crlf.Nextline, new CtrlRadio(Lang.Value(key), new[] { Lang.Value(key + "1"), Lang.Value(key + "2") }, OptionDlg.Width() - 15, 2))); var list3 = new ListVal(); key = "rangeName"; list3.Add(new OneVal(key, "", Crlf.Contonie, new CtrlTextBox(Lang.Value(key), 20))); key = "rangeAddress"; list3.Add(new OneVal(key, "", Crlf.Nextline, new CtrlTextBox(Lang.Value(key), 20))); onePage.Add(new OneVal("range", null, Crlf.Nextline, new CtrlDat("", list3, 115, Lang.LangKind))); return(onePage); }
//���j���[�I����̏��� public void MenuOnClick(String cmd) { if (cmd.IndexOf("Option_") == 0) { if (RunMode == RunMode.Remote) { //Java fix RunMOde==Remote�̏ꍇ�̃��j���[���� RemoteClient.MenuOnClick(cmd); } else { var oneOption = ListOption.Get(cmd.Substring(7)); if (oneOption != null) { var dlg = new OptionDlg(this, oneOption); if (DialogResult.OK == dlg.ShowDialog()) { //Ver5.8.6 Java fix //oneOption.Save(OptionIni.GetInstance()); oneOption.Save(IniDb); MenuOnClick("StartStop_Reload"); } } } } else if (cmd.IndexOf("Tool_") == 0) { if (RunMode == RunMode.Remote) { //Java fix RunMOde==Remote�̏ꍇ�̃��j���[���� RemoteClient.MenuOnClick(cmd); } else { var nameTag = cmd.Substring(5); var oneTool = ListTool.Get(nameTag); if (oneTool == null) { return; } //BJD.EXE�ȊO�̏ꍇ�A�T�[�o�I�u�W�F�N�g�ւ̃|�C���^���K�v�ɂȂ� OneServer oneServer = null; if (nameTag != "BJD") { oneServer = ListServer.Get(nameTag); if (oneServer == null) { return; } } ToolDlg dlg = oneTool.CreateDlg(oneServer); dlg.ShowDialog(); } } else if (cmd.IndexOf("StartStop_") == 0) { if (RunMode == RunMode.Remote) { //Java fix RunMOde==Remote�̏ꍇ�̃��j���[���� RemoteClient.MenuOnClick(cmd); } else { switch (cmd) { case "StartStop_Start": Start(); break; case "StartStop_Stop": Stop(); break; case "StartStop_Restart": Stop(); Thread.Sleep(300); Start(); break; case "StartStop_Reload": Stop(); ListInitialize(); Start(); break; case "StartStop_Service": SetupService(); //�T�[�r�X�̐ݒ� break; default: Util.RuntimeException(string.Format("cmd={0}", cmd)); break; } View.SetColor(); //�E�C���h�̃J���[������ Menu.SetEnable(); //��Ԃɉ������L���E���� } } else { switch (cmd) { case "File_LogClear": LogView.Clear(); break; case "File_LogCopy": LogView.SetClipboard(); break; case "File_Trace": TraceDlg.Open(); break; case "File_Exit": View.MainForm.Close(); break; case "Help_Version": var dlg = new VersionDlg(this); dlg.ShowDialog(); break; case "Help_Homepage": Process.Start(Define.WebHome()); break; case "Help_Document": Process.Start(Define.WebDocument()); break; case "Help_Support": Process.Start(Define.WebSupport()); break; } } }
//メニュー選択時の処理 public void MenuOnClick(String cmd) { if (cmd.IndexOf("Option_") == 0) { if (RunMode == RunMode.Remote) { //Java fix RunMOde==Remoteの場合のメニュー処理 RemoteClient.MenuOnClick(cmd); } else { var oneOption = ListOption.Get(cmd.Substring(7)); if (oneOption != null) { var dlg = new OptionDlg(this, oneOption); if (DialogResult.OK == dlg.ShowDialog()) { //Ver5.8.6 Java fix //oneOption.Save(OptionIni.GetInstance()); oneOption.Save(IniDb); MenuOnClick("StartStop_Reload"); } } } } else if (cmd.IndexOf("Tool_") == 0) { if (RunMode == RunMode.Remote) { //Java fix RunMOde==Remoteの場合のメニュー処理 RemoteClient.MenuOnClick(cmd); } else { var nameTag = cmd.Substring(5); var oneTool = ListTool.Get(nameTag); if (oneTool == null) { return; } //BJD.EXE以外の場合、サーバオブジェクトへのポインタが必要になる OneServer oneServer = null; if (nameTag != "BJD") { oneServer = ListServer.Get(nameTag); if (oneServer == null) { return; } } ToolDlg dlg = oneTool.CreateDlg(oneServer); dlg.ShowDialog(); } } else if (cmd.IndexOf("StartStop_") == 0) { if (RunMode == RunMode.Remote) { //Java fix RunMOde==Remoteの場合のメニュー処理 RemoteClient.MenuOnClick(cmd); } else { switch (cmd) { case "StartStop_Start": Start(); break; case "StartStop_Stop": Stop(); break; case "StartStop_Restart": Stop(); Thread.Sleep(300); Start(); break; case "StartStop_Reload": Stop(); ListInitialize(); Start(); break; case "StartStop_Service": SetupService(); //サービスの設定 break; default: Util.RuntimeException(string.Format("cmd={0}", cmd)); break; } View.SetColor(); //ウインドのカラー初期化 Menu.SetEnable(); //状態に応じた有効・無効 } } else { switch (cmd) { case "File_LogClear": LogView.Clear(); break; case "File_LogCopy": LogView.SetClipboard(); break; case "File_Trace": TraceDlg.Open(); break; case "File_Exit": View.MainForm.Close(); break; case "Help_Version": var dlg = new VersionDlg(this); dlg.ShowDialog(); break; case "Help_Homepage": Process.Start(Define.WebHome()); break; case "Help_Document": Process.Start(Define.WebDocument()); break; case "Help_Support": Process.Start(Define.WebSupport()); break; } } }
private OnePage Page10(string name, string title, Kernel kernel) { var onePage = new OnePage(name, title); var key = "encode"; onePage.Add(new OneVal(key, 0, Crlf.Nextline, new CtrlComboBox(Lang.Value(key), new[] { "UTF-8", "SHIFT-JIS", "EUC" }, 100))); key = "indexDocument"; onePage.Add(new OneVal(key, "", Crlf.Nextline, new CtrlMemo(Lang.Value(key), OptionDlg.Width() - 15, 145))); key = "errorDocument"; onePage.Add(new OneVal(key, "", Crlf.Nextline, new CtrlMemo(Lang.Value(key), OptionDlg.Width() - 15, 145))); return(onePage); }
protected override void AbstractCreate(object value, ref int tabIndex) { var left = Margin; var top = Margin; // ボーダライン(groupPanel)の生成 _border = (GroupBox)Create(Panel, new GroupBox(), left, top, -1); _border.Width = OptionDlg.Width() - 15; _border.AutoSize = false; _border.Height = _height; _border.Text = Help; //border = (JPanel) create(Panel, new JPanel(new GridLayout()), left, top); //border.setBorder(BorderFactory.createTitledBorder(getHelp())); //border.setSize(getDlgWidth() - 32, height); // サイズは、コンストラクタで指定されている //Datに含まれるコントロールを配置 //ボーダーの中でのオフセット移動 left += 8; top += 12; _listVal.CreateCtrl(_border, left, top, ref tabIndex); _listVal.OnChange += ListValOnChange; //listVal.SetListener(this); //コントロール変化のイベントをこのクラスで受信してボタンの初期化に利用する //オフセット移動 var dimension = _listVal.Size; top += dimension.Height; //ボタンの生成s //private readonly string[] _tagList = new[]{"Add", "Edit", "Del", "Import", "Export", "Clear"}; //private readonly string[] _strList = new[]{"追加", "変更", "削除", "インポート", "エクスポート", "クリア"}; _buttonList = new List <Button>(); for (int i = 0; i < _tagList.Count(); i++) { var b = (Button)Create(_border, new Button(), left + 85 * i, top, tabIndex++); b.Width = 80; b.Height = 24; b.Tag = i; //インデックス //b.Text = (_isJp) ? _strList[i] : _tagList[i]; var key = string.Format("button{0}", i); b.Text = _lang.Value(key); b.Click += ButtonClick; b.Tag = _tagList[i]; //[C#] _buttonList.Add(b); } //オフセット移動 top += _buttonList[0].Height + Margin; //チェックリストボックス配置 // _checkedListBox = (CheckedListBox) Create(_border, new CheckedListBox(), left, top, tabIndex++); // _checkedListBox.AutoSize = false; // _checkedListBox.Width = OptionDlg.Width() - 35; // 52; // _checkedListBox.Height = _height - top -3; // 15; // _checkedListBox.SelectedIndexChanged += CheckedListBoxSelectedIndexChanged; _listView = (ListView)Create(_border, new ListView(), left, top, tabIndex++); _listView.AutoSize = false; _listView.Width = OptionDlg.Width() - 35; // 52; _listView.Height = _height - top - 3; // 15; _listView.SelectedIndexChanged += CheckedListBoxSelectedIndexChanged; _listView.CheckBoxes = true; _listView.View = System.Windows.Forms.View.Details; _listView.FullRowSelect = true; _listView.HideSelection = false; //Ver6.0.0 _listView.ListViewItemSorter = _sorter; _listView.ColumnClick += _listView_ColumnClick; foreach (var a in ListVal) { var title = a.OneCtrl.Help; var colHeader = _listView.Columns.Add(title); var width = GetTextWidth(title); if (colHeader.Width < width) { colHeader.Width = width; } } //値の設定 AbstractWrite(value); // パネルのサイズ設定 //Panel.Size = new Size(_border.Width + Margin*2, _border.Height + Margin*2); Panel.Size = new Size(_border.Width + Margin * 2, _border.Height); ListValOnChange(); //ボタン状態の初期化 }