[성현모] CPXV2 Init

This commit is contained in:
SHM
2024-06-26 10:30:00 +09:00
parent cdf12248c5
commit 5958993b6a
588 changed files with 698420 additions and 0 deletions

View File

@ -0,0 +1,211 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using DataBaseConnection.Control;
using DevExpress.XtraBars.Docking2010;
using DevExpress.XtraBars.Docking2010.Views;
using DevExpress.XtraBars.Docking2010.Views.Tabbed;
using SystemX.Product.ALIS.Interface;
using SystemX.Product.ALIS.UI.View.InfoList;
using static SystemX.Product.ALIS.UI.Commons;
using static SystemX.Product.ALIS.UI.View.ViewCfg;
namespace SystemX.Product.ALIS.UI.View
{
public partial class FrmChild : Form, IChildSubscribe
{
/// <summary>
/// IChildSubscribe - setLoginStateNotice
/// </summary>
/// <param name="CurrentAccessLevel"></param>
/// <param name="bLoginState"></param>
public void SetLoginStateNotice(LoginAccessLevel CurrentAccessLevel, bool bLoginState)
{
((IUserControlSubscribe)WindowControl).SetLoginStateNotice(CurrentAccessLevel, bLoginState);
}
/// <summary>
/// IChildSubscribe - GoToFindTestListFileFocus
/// </summary>
/// <param name="nTestListFileNo"></param>
public void GoToFindTestListFileFocus(int nTestListFileNo)
{
((IUserControlSubscribe)WindowControl).GoToFindTestListFileFocus(nTestListFileNo);
}
/// <summary>
/// IChildSubscribe - GoToFindVariantFocus
/// </summary>
/// <param name="nParentNo"></param>
public void GoToFindVariantFocus(int nVariantNo)
{
((IUserControlSubscribe)WindowControl).GoToFindVariantFocus(nVariantNo);
}
public string DisplayName { get; private set; }
public eAppFunctionType DocType { get; private set; }
public UserControl WindowControl { get; private set; }
private IChildController refChildInterface;
private IDataController refDBInterface;
public LoginAccessLevel ThisAccessLevel { get; private set; }
public FrmChild(Form mainform, eAppFunctionType eType, eSelectType eSelType, string strDispModelName, LoginAccessLevel CreateAccessLevel, bool bLoginState = false)
{
InitializeComponent();
ThisAccessLevel = CreateAccessLevel;
refChildInterface = (IChildController)mainform;
refDBInterface = (IDataController)mainform;
DisplayName = strDispModelName;
DocType = eType;
WindowControl = CreateContents(eType, eSelType, ThisAccessLevel, bLoginState);
WindowControl.Parent = mainform;
panelControlDocFrame.Controls.Add(WindowControl);
panelControlDocFrame.Dock = DockStyle.Fill;
panelControlDocFrame.Name = strDispModelName;
this.Name = strDispModelName;
this.Dock = DockStyle.Fill;
MdiParent = mainform;
}
UserControl CreateContents(eAppFunctionType eType, eSelectType eSelType, LoginAccessLevel MakeAccessLevel, bool bLoginState = false)
{
switch (eType)
{
case eAppFunctionType.M_HostList:
case eAppFunctionType.M_UserList:
case eAppFunctionType.M_GroupList:
case eAppFunctionType.M_TestCodeList:
{
UcInfoView UcView = new UcInfoView(eSelType, refDBInterface, MakeAccessLevel, bLoginState) { Dock = DockStyle.Fill };
return UcView;
}
case eAppFunctionType.M_TestListFile:
case eAppFunctionType.M_TestListVariant:
case eAppFunctionType.M_TestListRelease:
{
UcTestListView UcView = new UcTestListView(eSelType, refChildInterface, refDBInterface, MakeAccessLevel, bLoginState) { Dock = DockStyle.Fill };
return UcView;
}
default:
return null;
}
}
public void AddChildControl(BaseView parentView, FrmChild docFramesHide)
{
BaseDocumentCollection document = parentView.Documents;
DevExpress.XtraBars.Docking2010.Views.Tabbed.Document baseDoc = document.Find(x => x.Control == this).FirstOrDefault() as DevExpress.XtraBars.Docking2010.Views.Tabbed.Document;
DevExpress.XtraBars.Docking2010.Views.Tabbed.Document baseDocHiding = document.Find(x => x.Control == docFramesHide).FirstOrDefault() as DevExpress.XtraBars.Docking2010.Views.Tabbed.Document; ;
DevExpress.XtraBars.Docking2010.DocumentManager ctrlMng = baseDoc.Parent.Manager;
var index = baseDoc.Parent.Items.IndexOf(baseDoc);
/*
baseDocHiding.Parent.Items.Remove(baseDocHiding);
baseDoc.Parent.Items.Insert(index, baseDocHiding);
(ctrlMng.View as TabbedView).Controller.Select(baseDocHiding);
*/
(parentView as TabbedView).Controller.Dock(baseDocHiding, baseDoc.Parent, index);
(ctrlMng.View as TabbedView).Controller.Select(baseDoc);
SetTabSpace(parentView as TabbedView, ctrlMng, baseDoc.Parent);
Rebalance(ctrlMng, parentView as TabbedView);
}
private void Rebalance(DocumentManager docMng, TabbedView parentView)
{
docMng.BeginUpdate();
foreach (var documentGroup in parentView.DocumentGroups)
{
documentGroup.GroupLength = 1;
documentGroup.Visible = true;
}
parentView.AppearancePage.Header.Font = new Font(parentView.AppearancePage.Header.Font, FontStyle.Regular);
docMng.EndUpdate();
}
private void SetTabSpace(TabbedView parentView, DocumentManager ctrlMng, DocumentGroup currentGroup)
{
int size = 200; //MtFormUserSettings.LoadScreenUserSettings(cnnInfo, mtSysMDAppMenuNodesIRN);
// Will be zero if form was floated
if (size == 0)
{
return;
}
if (size == 100)
{
MakeProminent(parentView, currentGroup);
return;
}
ctrlMng.BeginUpdate();
foreach (var documentGroup in parentView.DocumentGroups)
{
if (documentGroup == currentGroup)
{
continue;
}
documentGroup.GroupLength = Convert.ToInt32(100 - size) / (parentView.DocumentGroups.Count - 1);
}
currentGroup.GroupLength = size;
ctrlMng.EndUpdate();
}
private void MakeProminent(TabbedView parentView, DocumentGroup currentGroup)
{
foreach (var documentGroup in parentView.DocumentGroups)
{
if (documentGroup == currentGroup)
{
continue;
}
documentGroup.Visible = false;
//reset the parent doc group's groupLength to 0 since the child doc group is going
//to take up the whole screen
documentGroup.GroupLength = 0;
}
parentView.AppearancePage.Header.Font = new Font(parentView.AppearancePage.Header.Font, FontStyle.Bold);
}
private void FrmChild_FormClosed(object sender, FormClosedEventArgs e)
{
refChildInterface.CloseChildForm(DocType);
}
private void FrmChild_Activated(object sender, EventArgs e)
{
refChildInterface.CurrentSelectFunctionType(DocType);
}
public void RefreshView()
{
((IUserControlSubscribe)WindowControl).RefreshDataView();
}
}
}