- 유저설정, 유저그룹에디터 추가 완료

main
DESKTOP-999R8N3\CJY 2023-03-17 11:47:26 +09:00
parent 8ed73267cc
commit 97c5ab86f6
28 changed files with 11865 additions and 543 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,406 @@
using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using INT_PT002.Forms;
using INT_PT002.DataStore;
namespace INT_PT002.Controls
{
public partial class ControlMenuUserGroupEditor : UserControl
{
#region Field
private FormMenu m_ParentForm;
#endregion
#region Constructor
public ControlMenuUserGroupEditor(FormMenu parent)
{
InitializeComponent();
this.ParentForm = parent;
this.Initialize();
}
#endregion
#region Property
public FormMenu ParentForm
{
get { return this.m_ParentForm; }
private set { this.m_ParentForm = value; }
}
#endregion
#region Method
private void Initialize()
{
this.smartGroupBox1.Text = "User > GroupEditor";
}
private void KeyboardClose()
{
this.smartKeyboard.Hide();
this.groupBoxLevel1.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.groupBoxLevel2.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.groupBoxLevel3.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.textBoxLevel1.Visible = false;
this.textBoxLevel2.Visible = false;
this.textBoxLevel3.Visible = false;
this.groupBoxLevel1.Enabled = true;
this.groupBoxLevel2.Enabled = true;
this.groupBoxLevel3.Enabled = true;
this.buttonSave.Enabled = true;
}
private void UpdateDisplay(UserGroup group, SystemConfiguration system)
{
this.groupBoxLevel1.Text = system.LEVEL1_NAME;
this.groupBoxLevel2.Text = system.LEVEL2_NAME;
this.groupBoxLevel3.Text = system.LEVEL3_NAME;
this.groupBoxLevel1.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.groupBoxLevel2.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.groupBoxLevel3.FrameLineColor1 = Color.FromArgb(58, 110, 165);
#region Level1
this.checkBoxL1MainProductChange.Checked = group.Level1.IsMainDisplayProductChange;
this.checkBoxL1MainWeightSetting.Checked = group.Level1.IsMainDisplayWeightSetting;
this.checkBoxL1MainClear.Checked = group.Level1.IsMainDisplayClear;
this.checkBoxL1MainSubMenu.Checked = group.Level1.IsMainDisplaySubMenu;
this.checkBoxL1MenuProduct.Checked = group.Level1.IsMenuProduct;
this.checkBoxL1MenuConfiguration.Checked = group.Level1.IsMenuConfiguration;
this.checkBoxL1MenuCommunication.Checked = group.Level1.IsMenuCommunication;
this.checkBoxL1MenuUserSetting.Checked = group.Level1.IsMenuUserSetting;
this.checkBoxL1MenuUserGroupEditor.Checked = group.Level1.IsMenuUserGroupEditor;
this.checkBoxL1MenuIOTest.Checked = group.Level1.IsMenuIOTest;
this.checkBoxL1MenuMotorSetting.Checked = group.Level1.IsMenuMotorSetting;
this.checkBoxL1MenuEquipmentLog.Checked = group.Level1.IsMenuEquipmentLog;
this.checkBoxL1MenuCheckLog.Checked = group.Level1.IsMenuCheckLog;
this.checkBoxL1MenuAlarmList.Checked = group.Level1.IsMenuAlarmList;
this.checkBoxL1MenuInformation.Checked = group.Level1.IsMenuInformation;
this.checkBoxL1MenuEquipmentSetting.Checked = group.Level1.IsMenuEquipmentSetting;
this.checkBoxL1MenuTimeSetting.Checked = group.Level1.IsMenuTimeSetting;
#endregion
#region Level2
this.checkBoxL2MainProductChange.Checked = group.Level2.IsMainDisplayProductChange;
this.checkBoxL2MainWeightSetting.Checked = group.Level2.IsMainDisplayWeightSetting;
this.checkBoxL2MainClear.Checked = group.Level2.IsMainDisplayClear;
this.checkBoxL2MainSubMenu.Checked = group.Level2.IsMainDisplaySubMenu;
this.checkBoxL2MenuProduct.Checked = group.Level2.IsMenuProduct;
this.checkBoxL2MenuConfiguration.Checked = group.Level2.IsMenuConfiguration;
this.checkBoxL2MenuCommunication.Checked = group.Level2.IsMenuCommunication;
this.checkBoxL2MenuUserSetting.Checked = group.Level2.IsMenuUserSetting;
this.checkBoxL2MenuUserGroupEditor.Checked = group.Level2.IsMenuUserGroupEditor;
this.checkBoxL2MenuIOTest.Checked = group.Level2.IsMenuIOTest;
this.checkBoxL2MenuMotorSetting.Checked = group.Level2.IsMenuMotorSetting;
this.checkBoxL2MenuEquipmentLog.Checked = group.Level2.IsMenuEquipmentLog;
this.checkBoxL2MenuCheckLog.Checked = group.Level2.IsMenuCheckLog;
this.checkBoxL2MenuAlarmList.Checked = group.Level2.IsMenuAlarmList;
this.checkBoxL2MenuInformation.Checked = group.Level2.IsMenuInformation;
this.checkBoxL2MenuEquipmentSetting.Checked = group.Level2.IsMenuEquipmentSetting;
this.checkBoxL2MenuTimeSetting.Checked = group.Level2.IsMenuTimeSetting;
#endregion
#region Level3
this.checkBoxL3MainProductChange.Checked = group.Level3.IsMainDisplayProductChange;
this.checkBoxL3MainWeightSetting.Checked = group.Level3.IsMainDisplayWeightSetting;
this.checkBoxL3MainClear.Checked = group.Level3.IsMainDisplayClear;
this.checkBoxL3MainSubMenu.Checked = group.Level3.IsMainDisplaySubMenu;
this.checkBoxL3MenuProduct.Checked = group.Level3.IsMenuProduct;
this.checkBoxL3MenuConfiguration.Checked = group.Level3.IsMenuConfiguration;
this.checkBoxL3MenuCommunication.Checked = group.Level3.IsMenuCommunication;
this.checkBoxL3MenuUserSetting.Checked = group.Level3.IsMenuUserSetting;
this.checkBoxL3MenuUserGroupEditor.Checked = group.Level3.IsMenuUserGroupEditor;
this.checkBoxL3MenuIOTest.Checked = group.Level3.IsMenuIOTest;
this.checkBoxL3MenuMotorSetting.Checked = group.Level3.IsMenuMotorSetting;
this.checkBoxL3MenuEquipmentLog.Checked = group.Level3.IsMenuEquipmentLog;
this.checkBoxL3MenuCheckLog.Checked = group.Level3.IsMenuCheckLog;
this.checkBoxL3MenuAlarmList.Checked = group.Level3.IsMenuAlarmList;
this.checkBoxL3MenuInformation.Checked = group.Level3.IsMenuInformation;
this.checkBoxL3MenuEquipmentSetting.Checked = group.Level3.IsMenuEquipmentSetting;
this.checkBoxL3MenuTimeSetting.Checked = group.Level3.IsMenuTimeSetting;
#endregion
#region Default
this.checkBoxDefaultMainProductChange.Checked = group.Default.IsMainDisplayProductChange;
this.checkBoxDefaultMainWeightSetting.Checked = group.Default.IsMainDisplayWeightSetting;
this.checkBoxDefaultMainClear.Checked = group.Default.IsMainDisplayClear;
this.checkBoxDefaultMainSubMenu.Checked = group.Default.IsMainDisplaySubMenu;
this.checkBoxDefaultMenuProduct.Checked = group.Default.IsMenuProduct;
this.checkBoxDefaultMenuConfiguration.Checked = group.Default.IsMenuConfiguration;
this.checkBoxDefaultMenuCommunication.Checked = group.Default.IsMenuCommunication;
this.checkBoxDefaultMenuUserSetting.Checked = group.Default.IsMenuUserSetting;
this.checkBoxDefaultMenuUserGroupEditor.Checked = group.Default.IsMenuUserGroupEditor;
this.checkBoxDefaultMenuIOTest.Checked = group.Default.IsMenuIOTest;
this.checkBoxDefaultMenuMotorSetting.Checked = group.Default.IsMenuMotorSetting;
this.checkBoxDefaultMenuEquipmentLog.Checked = group.Default.IsMenuEquipmentLog;
this.checkBoxDefaultMenuCheckLog.Checked = group.Default.IsMenuCheckLog;
this.checkBoxDefaultMenuAlarmList.Checked = group.Default.IsMenuAlarmList;
this.checkBoxDefaultMenuInformation.Checked = group.Default.IsMenuInformation;
this.checkBoxDefaultMenuEquipmentSetting.Checked = group.Default.IsMenuEquipmentSetting;
this.checkBoxDefaultMenuTimeSetting.Checked = group.Default.IsMenuTimeSetting;
#endregion
}
public void DisplayRefresh()
{
this.UpdateDisplay(this.ParentForm.ParentForm.CurrentUserGroup, this.ParentForm.ParentForm.SystemConfig);
this.buttonSave.Visible = false;
this.buttonGroupNameChange.Visible = false;
}
#endregion
#region Event Handler
private void checkBox_Click(object sender, EventArgs e)
{
if (this.buttonSave.Visible == false)
this.buttonSave.Visible = true;
}
private void groupBox_DoubleClick(object sender, EventArgs e)
{
SmartX.SmartGroupBox groupBox = sender as SmartX.SmartGroupBox;
if (groupBox == this.groupBoxLevel1)
{
this.groupBoxLevel1.FrameLineColor1 = Color.FromArgb(0, 192, 0);
this.groupBoxLevel2.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.groupBoxLevel3.FrameLineColor1 = Color.FromArgb(58, 110, 165);
}
else if (groupBox == this.groupBoxLevel2)
{
this.groupBoxLevel1.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.groupBoxLevel2.FrameLineColor1 = Color.FromArgb(0, 192, 0);
this.groupBoxLevel3.FrameLineColor1 = Color.FromArgb(58, 110, 165);
}
else if (groupBox == this.groupBoxLevel3)
{
this.groupBoxLevel1.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.groupBoxLevel2.FrameLineColor1 = Color.FromArgb(58, 110, 165);
this.groupBoxLevel3.FrameLineColor1 = Color.FromArgb(0, 192, 0);
}
this.buttonGroupNameChange.Visible = true;
}
private void textBoxLevel1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '\r')
{
e.Handled = true;
this.ParentForm.ParentForm.SystemConfig.LEVEL1_NAME = this.textBoxLevel1.Text;
this.groupBoxLevel1.Text = this.textBoxLevel1.Text;
this.ParentForm.ParentForm.SaveSystemConfigurationFile(this.ParentForm.ParentForm.SystemConfig);
this.ParentForm.ParentForm.ChildFormMenu.Child_User_UserEditor.UpdateLevelNameDisplay(this.ParentForm.ParentForm.SystemConfig);
this.KeyboardClose();
}
else if (e.KeyChar == 27)
{
e.Handled = true;
this.UpdateDisplay(this.ParentForm.ParentForm.CurrentUserGroup, this.ParentForm.ParentForm.SystemConfig);
this.KeyboardClose();
}
else if (e.KeyChar == '<' || e.KeyChar == '>' || e.KeyChar == '|' || e.KeyChar == '"' || e.KeyChar == '?'
|| e.KeyChar == '*' || e.KeyChar == ':' || e.KeyChar == '/' || e.KeyChar == '\\')
{
e.Handled = true;
}
}
private void textBoxLevel2_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '\r')
{
e.Handled = true;
this.ParentForm.ParentForm.SystemConfig.LEVEL2_NAME = this.textBoxLevel2.Text;
this.groupBoxLevel2.Text = this.textBoxLevel2.Text;
this.ParentForm.ParentForm.SaveSystemConfigurationFile(this.ParentForm.ParentForm.SystemConfig);
this.ParentForm.ParentForm.ChildFormMenu.Child_User_UserEditor.UpdateLevelNameDisplay(this.ParentForm.ParentForm.SystemConfig);
this.KeyboardClose();
}
else if (e.KeyChar == 27)
{
e.Handled = true;
this.UpdateDisplay(this.ParentForm.ParentForm.CurrentUserGroup, this.ParentForm.ParentForm.SystemConfig);
this.KeyboardClose();
}
else if (e.KeyChar == '<' || e.KeyChar == '>' || e.KeyChar == '|' || e.KeyChar == '"' || e.KeyChar == '?'
|| e.KeyChar == '*' || e.KeyChar == ':' || e.KeyChar == '/' || e.KeyChar == '\\')
{
e.Handled = true;
}
}
private void textBoxLevel3_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '\r')
{
e.Handled = true;
this.ParentForm.ParentForm.SystemConfig.LEVEL3_NAME = this.textBoxLevel3.Text;
this.groupBoxLevel3.Text = this.textBoxLevel3.Text;
this.ParentForm.ParentForm.SaveSystemConfigurationFile(this.ParentForm.ParentForm.SystemConfig);
this.ParentForm.ParentForm.ChildFormMenu.Child_User_UserEditor.UpdateLevelNameDisplay(this.ParentForm.ParentForm.SystemConfig);
this.KeyboardClose();
}
else if (e.KeyChar == 27)
{
e.Handled = true;
this.UpdateDisplay(this.ParentForm.ParentForm.CurrentUserGroup, this.ParentForm.ParentForm.SystemConfig);
this.KeyboardClose();
}
else if (e.KeyChar == '<' || e.KeyChar == '>' || e.KeyChar == '|' || e.KeyChar == '"' || e.KeyChar == '?'
|| e.KeyChar == '*' || e.KeyChar == ':' || e.KeyChar == '/' || e.KeyChar == '\\')
{
e.Handled = true;
}
}
private void smartKeyboard_OnXKeyClick(object sender, EventArgs e)
{
this.UpdateDisplay(this.ParentForm.ParentForm.CurrentUserGroup, this.ParentForm.ParentForm.SystemConfig);
this.KeyboardClose();
}
private void buttonGroupNameChange_Click(object sender, EventArgs e)
{
this.smartKeyboard.KeyboardType = SmartX.SmartKeyboard.KEYBOARDTYPES.NORMAL;
this.smartKeyboard.Location = new Point(5, 83);
this.smartKeyboard.Size = new Size(897, 352);
this.smartKeyboard.Hide();
if (this.groupBoxLevel1.FrameLineColor1 == Color.FromArgb(0, 192, 0))
{
this.textBoxLevel1.Visible = true;
this.smartKeyboard.TargetInputObject = this.textBoxLevel1;
this.textBoxLevel1.Select(this.textBoxLevel1.Text.Length, 0);
}
else if (this.groupBoxLevel2.FrameLineColor1 == Color.FromArgb(0, 192, 0))
{
this.textBoxLevel2.Visible = true;
this.smartKeyboard.TargetInputObject = this.textBoxLevel2;
this.textBoxLevel2.Select(this.textBoxLevel2.Text.Length, 0);
}
else if (this.groupBoxLevel3.FrameLineColor1 == Color.FromArgb(0, 192, 0))
{
this.textBoxLevel3.Visible = true;
this.smartKeyboard.TargetInputObject = this.textBoxLevel3;
this.textBoxLevel3.Select(this.textBoxLevel3.Text.Length, 0);
}
this.smartKeyboard.Show();
this.groupBoxLevel1.Enabled = false;
this.groupBoxLevel2.Enabled = false;
this.groupBoxLevel3.Enabled = false;
this.buttonSave.Enabled = false;
this.buttonGroupNameChange.Visible = false;
}
private void buttonSave_Click(object sender, EventArgs e)
{
#region Level1
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMainDisplayProductChange = this.checkBoxL1MainProductChange.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMainDisplayWeightSetting = this.checkBoxL1MainWeightSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMainDisplayClear = this.checkBoxL1MainClear.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMainDisplaySubMenu = this.checkBoxL1MainSubMenu.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuProduct = this.checkBoxL1MenuProduct.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuConfiguration = this.checkBoxL1MenuConfiguration.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuCommunication = this.checkBoxL1MenuCommunication.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuUserSetting = this.checkBoxL1MenuUserSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuUserGroupEditor = this.checkBoxL1MenuUserGroupEditor.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuIOTest = this.checkBoxL1MenuIOTest.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuMotorSetting = this.checkBoxL1MenuMotorSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuEquipmentLog = this.checkBoxL1MenuEquipmentLog.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuCheckLog = this.checkBoxL1MenuCheckLog.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuAlarmList = this.checkBoxL1MenuAlarmList.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuInformation = this.checkBoxL1MenuInformation.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuEquipmentSetting = this.checkBoxL1MenuEquipmentSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuTimeSetting = this.checkBoxL1MenuTimeSetting.Checked;
#endregion
#region Level2
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMainDisplayProductChange = this.checkBoxL2MainProductChange.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMainDisplayWeightSetting = this.checkBoxL2MainWeightSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMainDisplayClear = this.checkBoxL2MainClear.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMainDisplaySubMenu = this.checkBoxL2MainSubMenu.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuProduct = this.checkBoxL2MenuProduct.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuConfiguration = this.checkBoxL2MenuConfiguration.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuCommunication = this.checkBoxL2MenuCommunication.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuUserSetting = this.checkBoxL2MenuUserSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuUserGroupEditor = this.checkBoxL2MenuUserGroupEditor.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuIOTest = this.checkBoxL2MenuIOTest.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuMotorSetting = this.checkBoxL2MenuMotorSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuEquipmentLog = this.checkBoxL2MenuEquipmentLog.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuCheckLog = this.checkBoxL2MenuCheckLog.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuAlarmList = this.checkBoxL2MenuAlarmList.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuInformation = this.checkBoxL2MenuInformation.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuEquipmentSetting = this.checkBoxL2MenuEquipmentSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuTimeSetting = this.checkBoxL2MenuTimeSetting.Checked;
#endregion
#region Level3
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMainDisplayProductChange = this.checkBoxL3MainProductChange.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMainDisplayWeightSetting = this.checkBoxL3MainWeightSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMainDisplayClear = this.checkBoxL3MainClear.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMainDisplaySubMenu = this.checkBoxL3MainSubMenu.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuProduct = this.checkBoxL3MenuProduct.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuConfiguration = this.checkBoxL3MenuConfiguration.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuCommunication = this.checkBoxL3MenuCommunication.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuUserSetting = this.checkBoxL3MenuUserSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuUserGroupEditor = this.checkBoxL3MenuUserGroupEditor.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuIOTest = this.checkBoxL3MenuIOTest.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuMotorSetting = this.checkBoxL3MenuMotorSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuEquipmentLog = this.checkBoxL3MenuEquipmentLog.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuCheckLog = this.checkBoxL3MenuCheckLog.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuAlarmList = this.checkBoxL3MenuAlarmList.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuInformation = this.checkBoxL3MenuInformation.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuEquipmentSetting = this.checkBoxL3MenuEquipmentSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuTimeSetting = this.checkBoxL3MenuTimeSetting.Checked;
#endregion
#region Default
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMainDisplayProductChange = this.checkBoxDefaultMainProductChange.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMainDisplayWeightSetting = this.checkBoxDefaultMainWeightSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMainDisplayClear = this.checkBoxDefaultMainClear.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMainDisplaySubMenu = this.checkBoxDefaultMainSubMenu.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuProduct = this.checkBoxDefaultMenuProduct.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuConfiguration = this.checkBoxDefaultMenuConfiguration.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuCommunication = this.checkBoxDefaultMenuCommunication.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuUserSetting = this.checkBoxDefaultMenuUserSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuUserGroupEditor = this.checkBoxDefaultMenuUserGroupEditor.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuIOTest = this.checkBoxDefaultMenuIOTest.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuMotorSetting = this.checkBoxDefaultMenuMotorSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuEquipmentLog = this.checkBoxDefaultMenuEquipmentLog.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuCheckLog = this.checkBoxDefaultMenuCheckLog.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuAlarmList = this.checkBoxDefaultMenuAlarmList.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuInformation = this.checkBoxDefaultMenuInformation.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuEquipmentSetting = this.checkBoxDefaultMenuEquipmentSetting.Checked;
this.ParentForm.ParentForm.CurrentUserGroup.Default.IsMenuTimeSetting = this.checkBoxDefaultMenuTimeSetting.Checked;
#endregion
this.ParentForm.ParentForm.SaveUserGroupFile(this.ParentForm.ParentForm.CurrentUserGroup);
this.buttonSave.Visible = false;
}
#endregion
}
}

View File

@ -0,0 +1,538 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="smartKeyboard.KeyPressImage1" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
6nc2xOg6Bq4AAAAASUVORK5CYII=
</value>
</data>
<data name="smartKeyboard.KeyPressImage2" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="smartKeyboard.KeyPressImage3" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
aDYV804BSLEAAAAASUVORK5CYII=
</value>
</data>
<data name="smartKeyboard.KeyUpImage1" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOxAAADsQBlSsOGwAAA7NJREFUaEPtm0kvZGEU
hm3M8zzPhJjnGBfmeWZhShAWBDGEIIZE0MQsodHSId3KtLLwA/yyt70nubhdtejlR39JPdetiu/me845
99bmLTvg9fWf8Ho0f2CxWPDy8iJ/Ly8vcXp6iqOjI+zv72Nvb08Zdnd3sbOzI2xtbWFtbQ1zc3MYGxvD
6uqq8Lfb6/H9DQWfn5/x9PSE+/t7XF1d4ezsDMfHxzg8PMTBwYFSGA2g+ObmJpaWljA6OoqWlhZkZGRg
amrKtixFHx8fRfL6+lo6yqqxYsvLy1hcXMTCwoKSzM/PY3Z2FuPj4+jt7UVZWRni4uIQHBwsXTfJUvT8
/BwXFxc4OTnB9va2VGliYgLDw8Po7+9HX1+f0vT09KCzsxPV1dVIS0tDVFQU/P39RdgYaZF9eLjH+vo6
NjY2pIuTk5MYGBiQxY2NjaitrUVNTY2SUM6AHc3Ly0NiYiLCw8Ph6+sLDw8Psyw7OzMzg+npaYyMjEiV
mpqaUF5ejpKSEhQVFaGgoEB5cnNzpavx8fEICQmBt7c33N3d8e3bprmzQ0NDGBwcRHd3t3SztLRULpCT
kyNkZ2crDfeYmZmJlJSUt/vVy8sLbm5u1mNMya6uLrS2tqKqqko6ypGwdWFVMWRjY2PfZF1dXbGysvIu
e3dnkfuTcHwrKipkdDkWti6qKv8ke3t7g/b2dnR0dMgI81790rJtbW0i/OVlLRYtq2VVRstqWS2rZZVF
y2pZLatllUXLalktq2WVRctqWS2rZZVFy2pZLatllUXLalktq2WVRcv+97KMBH01WU9PT2vZm5vfkuRk
dxsaGiQW91llk5OTERMTg6CgIJF1cXGRiOKb7K9f16ivr0dzczPq6uok3VZYWPjpZBm7TUpKQnR0NAIC
AiS3aCX78+elCDLsyBEuLi5Gfn6+ROSysrI+Bewqc4sJCQmIiIiAn5+fRPmcnZ3Nst+/nyA1NVWqw4Ws
UHp6uiwmPFcZ7pH7ZxqVI2yENNlVR0dHc3bxx48Lyecy4MhEJ6tjwAuojLFP7pvjGxoaKl1lGtXJyQkO
Dg4Sp3+TZVAzMDBQKsJ/DgsLk7xuZGSkwEKoCvfHseWe+VAyMsYcX4ra29ubZQkfTj4+PgIXsDpMYvNG
Vx3uk3vm9yo7SlGOL0UrKyvFz0qWVeICPrIJz1WH+2QnKcnv1I+iLIDRVZOsIcwILrvLG9y4mOrYkmWM
+KMoMckaMEJP+IsP41xlGPfnz1ooZ2DL6/Vo/eHXxA5/AJFfGFexs8HCAAAAAElFTkSuQmCC
</value>
</data>
<data name="smartKeyboard.KeyUpImage2" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="smartKeyboard.KeyUpImage3" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
rkJggg==
</value>
</data>
<metadata name="$this.FormFactorShadowProperty" xml:space="preserve">
<value>WEBPAD</value>
</metadata>
</root>

File diff suppressed because it is too large Load Diff

View File

@ -6,8 +6,12 @@ using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using INT_PT002.Forms;
using INT_PT002.DialogForms;
using INT_PT002.Part11_UserManager;
using INT_PT002.DataStore;
namespace INT_PT002.Controls
{
@ -15,6 +19,8 @@ namespace INT_PT002.Controls
{
#region Field
private FormMenu m_ParentForm;
private UserItem CurrentUserItem;
#endregion
#region Constructor
@ -41,29 +47,930 @@ namespace INT_PT002.Controls
this.smartGroupBox1.Text = "User > UserEditor";
}
private void KeyboardClose()
{
this.smartKeyboard.Hide();
this.buttonRegister.Enabled = true;
this.buttonDelete.Enabled = true;
this.groupBoxAccessRight.Enabled = true;
this.listBoxUserList.Enabled = true;
this.textBoxPassword.Enabled = true;
this.buttonPasswordEdit.Enabled = true;
this.textBoxID.Enabled = true;
this.buttonIDEdit.Enabled = true;
if(this.buttonSave.Visible == false)
this.buttonSave.Visible = true;
}
private void ChangeUserControlEnable(bool enable)
{
this.listBoxUserList.Enabled = enable;
this.smartGroupBox1.Enabled = enable;
}
private void UserNew()
{
this.listBoxUserList.SelectedIndexChanged -= new EventHandler(this.listBoxUserList_SelectedIndexChanged);
this.listBoxUserList.SelectItemIndex = -1;
this.listBoxUserList.SelectedIndexChanged += new EventHandler(this.listBoxUserList_SelectedIndexChanged);
this.UpdateInitializeUserDisplay();
this.buttonDelete.Enabled = false;
this.buttonSave.Visible = true;
this.buttonSave.Enabled = true;
this.textBoxID.Enabled = true;
this.textBoxPassword.Enabled = true;
this.labelExpiryDateOfAccount.Enabled = true;
this.labelExpiryDateOfPassword.Enabled = true;
this.labelAutomaticLogoutTime.Enabled = true;
}
private void SaveUserDll()
{
string detail = "";
string code = "", message1 = "", message2 = "";
bool isNewReg = false;
#region listbox 미선택 시 신규 유저 등록, 선택 시 기존 유저 정보 수정
if (this.listBoxUserList.SelectItemIndex == -1)
isNewReg = true;
else
isNewReg = false;
if (isNewReg == true)
{
switch (this.ParentForm.ParentForm.SystemConfig.LANGUAGE)
{
case Define.E_LanguageID.Korean:
code = "유저 설정";
message1 = "신규 사용자 추가 하시겠습니까?";
message2 = "";
break;
case Define.E_LanguageID.English:
code = "User Editor";
message1 = "Would you like to register as a user?";
message2 = "";
break;
default:
break;
}
}
else
{
switch (this.ParentForm.ParentForm.SystemConfig.LANGUAGE)
{
case Define.E_LanguageID.Korean:
code = "유저 설정";
message1 = "선택된 사용자의 정보를 수정 하시겠습니까?";
message2 = "";
break;
case Define.E_LanguageID.English:
code = "User Editor";
message1 = "Are you sure you want to edit the";
message2 = "selected user's information?";
break;
default:
break;
}
}
#endregion
DialogFormYesNo dlg = new DialogFormYesNo(Define.E_MessageBoxIcon.Question, code, message1, message2);
if (dlg.ShowDialog() == DialogResult.Yes)
{
UserItem item = new UserItem();
DateTime time = DateTime.Now;
UserManager.MenuID_t menuId = new UserManager.MenuID_t();
#region ID, Password 검사
// Check ID
if (isNewReg == true)
{
if (this.textBoxID.Text.Length < 6)
{
// ID : 6~20자 입력하세요
DialogFormMessage msg = new DialogFormMessage(null, 3, this.ParentForm.ParentForm.SystemConfig.LANGUAGE);
msg.ShowDialog();
return;
}
}
// Check Password
if (this.textBoxPassword.Text.Length < 6)
{
// PASSWORD : 6~20자 입력하세요
DialogFormMessage msg = new DialogFormMessage(null, 9, this.ParentForm.ParentForm.SystemConfig.LANGUAGE);
msg.ShowDialog();
return;
}
#endregion
item.ID = this.textBoxID.Text;
item.SetPassword(this.textBoxPassword.Text);
item.ExpireAccount = int.Parse(this.labelExpiryDateOfAccount.Text);
item.ExpirePassword = int.Parse(this.labelExpiryDateOfPassword.Text);
//item.IsAdmin = this.cbAdministrator.Checked;
menuId.fMenu = new bool[UserManager.USER_MENU_ID_MAX];
menuId.fMenu[0] = this.checkBoxMainProductChange.Checked;
menuId.fMenu[1] = this.checkBoxMainWeightSetting.Checked;
menuId.fMenu[2] = this.checkBoxMainClear.Checked;
menuId.fMenu[3] = this.checkBoxMainSubMenu.Checked;
menuId.fMenu[4] = this.checkBoxMenuProduct.Checked;
menuId.fMenu[5] = this.checkBoxMenuConfiguration.Checked;
menuId.fMenu[6] = this.checkBoxMenuCommunication.Checked;
menuId.fMenu[7] = this.checkBoxMenuUserSetting.Checked;
menuId.fMenu[8] = this.checkBoxMenuUserGroupEditor.Checked;
menuId.fMenu[9] = this.checkBoxMenuIOTest.Checked;
menuId.fMenu[10] = this.checkBoxMenuMotorSetting.Checked;
menuId.fMenu[11] = this.checkBoxMenuEquipmentLog.Checked;
menuId.fMenu[12] = this.checkBoxMenuCheckLog.Checked;
menuId.fMenu[13] = this.checkBoxMenuAlarmList.Checked;
menuId.fMenu[14] = this.checkBoxMenuInformation.Checked;
menuId.fMenu[15] = this.checkBoxMenuEquipmentSetting.Checked;
menuId.fMenu[16] = this.checkBoxMenuTime.Checked;
for (int i = 17; i < UserManager.USER_MENU_ID_MAX - 16; i++)
menuId.fMenu[i] = false;
if (this.buttonLevel1.ButtonStatus == SmartX.SmartButton.BUTSTATUS.DOWN)
menuId.fMenu[25] = true;
if (this.buttonLevel2.ButtonStatus == SmartX.SmartButton.BUTSTATUS.DOWN)
menuId.fMenu[26] = true;
if (this.buttonLevel3.ButtonStatus == SmartX.SmartButton.BUTSTATUS.DOWN)
menuId.fMenu[27] = true;
if (isNewReg == true)
{
#region 신규 등록
UserManager.UserManager_UserNew(item.ID, item.Password, item.IsAdmin == false ? 0 : 1, item.ExpirePassword, item.ExpireAccount, menuId);
// Part 11
detail = string.Format("Add : {0}", item.ID);
this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.UserEditor, detail);
#endregion
}
else
{
#region 유저 수정
UserManager.UserManager_UserModify(item.ID, item.Password, item.IsAdmin == false ? 0 : 1, item.ExpirePassword, item.ExpireAccount, menuId);
// Part 11
detail = string.Format("Modify : {0}", item.ID);
this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.UserEditor, detail);
#endregion
}
}
}
private void CheckBoxCheckedAsLevel(Define.E_UserGroup level)
{
this.buttonLevel1.Click -= new EventHandler(this.buttonLevel_Click);
this.buttonLevel2.Click -= new EventHandler(this.buttonLevel_Click);
this.buttonLevel3.Click -= new EventHandler(this.buttonLevel_Click);
switch (level)
{
case Define.E_UserGroup.f0_Level1:
this.buttonLevel2.ButtonUp();
this.buttonLevel3.ButtonUp();
this.buttonLevel1.ButtonDown();
this.labelAccessRight.Text = this.ParentForm.ParentForm.SystemConfig.LEVEL1_NAME;
this.checkBoxMainProductChange.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMainDisplayProductChange;
this.checkBoxMainWeightSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMainDisplayWeightSetting;
this.checkBoxMainClear.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMainDisplayClear;
this.checkBoxMainSubMenu.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMainDisplaySubMenu;
this.checkBoxMenuProduct.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuProduct;
this.checkBoxMenuConfiguration.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuConfiguration;
this.checkBoxMenuCommunication.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuCommunication;
this.checkBoxMenuUserSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuUserSetting;
this.checkBoxMenuUserGroupEditor.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuUserGroupEditor;
this.checkBoxMenuIOTest.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuIOTest;
this.checkBoxMenuMotorSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuMotorSetting;
this.checkBoxMenuEquipmentLog.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuEquipmentLog;
this.checkBoxMenuCheckLog.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuCheckLog;
this.checkBoxMenuAlarmList.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuAlarmList;
this.checkBoxMenuInformation.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuInformation;
this.checkBoxMenuEquipmentSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuEquipmentSetting;
this.checkBoxMenuTime.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level1.IsMenuTimeSetting;
break;
case Define.E_UserGroup.f1_Level2:
this.buttonLevel1.ButtonUp();
this.buttonLevel3.ButtonUp();
this.buttonLevel2.ButtonDown();
this.labelAccessRight.Text = this.ParentForm.ParentForm.SystemConfig.LEVEL2_NAME;
this.checkBoxMainProductChange.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMainDisplayProductChange;
this.checkBoxMainWeightSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMainDisplayWeightSetting;
this.checkBoxMainClear.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMainDisplayClear;
this.checkBoxMainSubMenu.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMainDisplaySubMenu;
this.checkBoxMenuProduct.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuProduct;
this.checkBoxMenuConfiguration.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuConfiguration;
this.checkBoxMenuCommunication.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuCommunication;
this.checkBoxMenuUserSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuUserSetting;
this.checkBoxMenuUserGroupEditor.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuUserGroupEditor;
this.checkBoxMenuIOTest.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuIOTest;
this.checkBoxMenuMotorSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuMotorSetting;
this.checkBoxMenuEquipmentLog.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuEquipmentLog;
this.checkBoxMenuCheckLog.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuCheckLog;
this.checkBoxMenuAlarmList.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuAlarmList;
this.checkBoxMenuInformation.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuInformation;
this.checkBoxMenuEquipmentSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuEquipmentSetting;
this.checkBoxMenuTime.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level2.IsMenuTimeSetting;
break;
case Define.E_UserGroup.f2_Level3:
this.buttonLevel1.ButtonUp();
this.buttonLevel2.ButtonUp();
this.buttonLevel3.ButtonDown();
this.labelAccessRight.Text = this.ParentForm.ParentForm.SystemConfig.LEVEL3_NAME;
this.checkBoxMainProductChange.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMainDisplayProductChange;
this.checkBoxMainWeightSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMainDisplayWeightSetting;
this.checkBoxMainClear.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMainDisplayClear;
this.checkBoxMainSubMenu.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMainDisplaySubMenu;
this.checkBoxMenuProduct.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuProduct;
this.checkBoxMenuConfiguration.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuConfiguration;
this.checkBoxMenuCommunication.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuCommunication;
this.checkBoxMenuUserSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuUserSetting;
this.checkBoxMenuUserGroupEditor.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuUserGroupEditor;
this.checkBoxMenuIOTest.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuIOTest;
this.checkBoxMenuMotorSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuMotorSetting;
this.checkBoxMenuEquipmentLog.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuEquipmentLog;
this.checkBoxMenuCheckLog.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuCheckLog;
this.checkBoxMenuAlarmList.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuAlarmList;
this.checkBoxMenuInformation.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuInformation;
this.checkBoxMenuEquipmentSetting.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuEquipmentSetting;
this.checkBoxMenuTime.Checked = this.ParentForm.ParentForm.CurrentUserGroup.Level3.IsMenuTimeSetting;
break;
default:
break;
}
this.buttonLevel1.Click += new EventHandler(this.buttonLevel_Click);
this.buttonLevel2.Click += new EventHandler(this.buttonLevel_Click);
this.buttonLevel3.Click += new EventHandler(this.buttonLevel_Click);
}
private void UpdateInitializeUserDisplay()
{
this.CurrentUserItem = new UserItem();
this.textBoxID.Text = "";
this.textBoxPassword.Text = "";
this.labelExpiryDateOfAccount.Text = "000";
this.labelExpiryDateOfPassword.Text = "00";
this.labelExpiryDateOfAccount2.Text = "yyyy.mm.DD";
this.labelExpiryDateOfPassword2.Text = "yyyy.mm.DD";
this.labelAutomaticLogoutTime.Text = "00";
this.labelAccessRight.Text = "";
this.checkBoxMainProductChange.Checked = false;
this.checkBoxMainWeightSetting.Checked = false;
this.checkBoxMainClear.Checked = false;
this.checkBoxMainSubMenu.Checked = false;
this.checkBoxMenuProduct.Checked = false;
this.checkBoxMenuConfiguration.Checked = false;
this.checkBoxMenuCommunication.Checked = false;
this.checkBoxMenuUserSetting.Checked = false;
this.checkBoxMenuUserGroupEditor.Checked = false;
this.checkBoxMenuIOTest.Checked = false;
this.checkBoxMenuMotorSetting.Checked = false;
this.checkBoxMenuEquipmentLog.Checked = false;
this.checkBoxMenuCheckLog.Checked = false;
this.checkBoxMenuAlarmList.Checked = false;
this.checkBoxMenuInformation.Checked = false;
this.checkBoxMenuEquipmentSetting.Checked = false;
this.checkBoxMenuTime.Checked = false;
this.buttonDelete.Enabled = false;
}
public void UpdateLevelNameDisplay(SystemConfiguration system)
{
this.buttonLevel1.Text = system.LEVEL1_NAME;
this.buttonLevel2.Text = system.LEVEL2_NAME;
this.buttonLevel3.Text = system.LEVEL3_NAME;
}
private void UpdateCurrentUserItem(UserManager.UserMgr_user_list_t item)
{
// CurrentUserItem SET
this.CurrentUserItem.ID = item.user_id;
this.CurrentUserItem.Password = item.user_pw;
this.CurrentUserItem.ExpireAccount = item.expire_period_account;
this.CurrentUserItem.ExpirePassword = item.expire_period_pw;
DateTime time = DateTime.ParseExact(item.register_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.CurrentUserItem.DateRegister = time;
time = DateTime.ParseExact(item.login_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.CurrentUserItem.DateLogin = time;
time = DateTime.ParseExact(item.expire_account_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.CurrentUserItem.DateExpireRegister = time;
time = DateTime.ParseExact(item.expire_register_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.CurrentUserItem.DateExpireLogin = time;
this.CurrentUserItem.IsLockAccount = item.flock_status_account == 0 ? false : true;
this.CurrentUserItem.IsLockPassword = item.flock_status_password == 0 ? false : true;
this.CurrentUserItem.IsAdmin = item.fadmin == 0 ? false : true;
this.CurrentUserItem.IsMainProductChange = item.menuID.fMenu[0];
this.CurrentUserItem.IsMainWeightSetting = item.menuID.fMenu[1];
this.CurrentUserItem.IsMainClear = item.menuID.fMenu[2];
this.CurrentUserItem.IsMainSubMenu = item.menuID.fMenu[3];
this.CurrentUserItem.IsMenuProduct = item.menuID.fMenu[4];
this.CurrentUserItem.IsMenuConfiguration = item.menuID.fMenu[5];
this.CurrentUserItem.IsMenuCommunication = item.menuID.fMenu[6];
this.CurrentUserItem.IsMenuUserSetting = item.menuID.fMenu[7];
this.CurrentUserItem.IsMenuUserGroupEditor = item.menuID.fMenu[8];
this.CurrentUserItem.IsMenuIOTest = item.menuID.fMenu[9];
this.CurrentUserItem.IsMenuMotorSetting = item.menuID.fMenu[10];
this.CurrentUserItem.IsMenuEquipmentLog = item.menuID.fMenu[11];
this.CurrentUserItem.IsMenuCheckLog = item.menuID.fMenu[12];
this.CurrentUserItem.IsMenuAlarmList = item.menuID.fMenu[13];
this.CurrentUserItem.IsMenuInformation = item.menuID.fMenu[14];
this.CurrentUserItem.IsMenuEquipmentSetting = item.menuID.fMenu[15];
this.CurrentUserItem.IsMenuTimeSetting = item.menuID.fMenu[16];
if (item.menuID.fMenu[25] == true)
this.CurrentUserItem.UserGroup = Define.E_UserGroup.f0_Level1;
else if(item.menuID.fMenu[26] == true)
this.CurrentUserItem.UserGroup = Define.E_UserGroup.f1_Level2;
else if(item.menuID.fMenu[27] == true)
this.CurrentUserItem.UserGroup = Define.E_UserGroup.f2_Level3;
}
private void UpdateCurrentUserItem(UserManager.UserMgr_user_info_t item)
{
// CurrentUserItem SET
this.CurrentUserItem.ID = item.user_id;
this.CurrentUserItem.Password = item.user_pw;
this.CurrentUserItem.ExpireAccount = item.expire_period_account;
this.CurrentUserItem.ExpirePassword = item.expire_period_pw;
DateTime time = DateTime.ParseExact(item.register_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.CurrentUserItem.DateRegister = time;
time = DateTime.ParseExact(item.login_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.CurrentUserItem.DateLogin = time;
time = DateTime.ParseExact(item.expire_account_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.CurrentUserItem.DateExpireRegister = time;
time = DateTime.ParseExact(item.expire_register_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.CurrentUserItem.DateExpireLogin = time;
this.CurrentUserItem.IsLockAccount = item.flock_status_account == 0 ? false : true;
this.CurrentUserItem.IsLockPassword = item.flock_status_password == 0 ? false : true;
this.CurrentUserItem.IsAdmin = item.fadmin == 0 ? false : true;
this.CurrentUserItem.IsMainProductChange = item.menuID.fMenu[0];
this.CurrentUserItem.IsMainWeightSetting = item.menuID.fMenu[1];
this.CurrentUserItem.IsMainClear = item.menuID.fMenu[2];
this.CurrentUserItem.IsMainSubMenu = item.menuID.fMenu[3];
this.CurrentUserItem.IsMenuProduct = item.menuID.fMenu[4];
this.CurrentUserItem.IsMenuConfiguration = item.menuID.fMenu[5];
this.CurrentUserItem.IsMenuCommunication = item.menuID.fMenu[6];
this.CurrentUserItem.IsMenuUserSetting = item.menuID.fMenu[7];
this.CurrentUserItem.IsMenuUserGroupEditor = item.menuID.fMenu[8];
this.CurrentUserItem.IsMenuIOTest = item.menuID.fMenu[9];
this.CurrentUserItem.IsMenuMotorSetting = item.menuID.fMenu[10];
this.CurrentUserItem.IsMenuEquipmentLog = item.menuID.fMenu[11];
this.CurrentUserItem.IsMenuCheckLog = item.menuID.fMenu[12];
this.CurrentUserItem.IsMenuAlarmList = item.menuID.fMenu[13];
this.CurrentUserItem.IsMenuInformation = item.menuID.fMenu[14];
this.CurrentUserItem.IsMenuEquipmentSetting = item.menuID.fMenu[15];
this.CurrentUserItem.IsMenuTimeSetting = item.menuID.fMenu[16];
if (item.menuID.fMenu[25] == true)
this.CurrentUserItem.UserGroup = Define.E_UserGroup.f0_Level1;
else if (item.menuID.fMenu[26] == true)
this.CurrentUserItem.UserGroup = Define.E_UserGroup.f1_Level2;
else if (item.menuID.fMenu[27] == true)
this.CurrentUserItem.UserGroup = Define.E_UserGroup.f2_Level3;
}
private void UpdateSelectUserDisplay(UserItem item)
{
// 화면 Enable 처리 추가할것
this.ChangeUserControlEnable(true);
this.textBoxID.Enabled = false;
this.textBoxID.BackColor = Color.LightGray;
this.textBoxID.Text = item.ID;
this.textBoxPassword.Text = item.Password;
this.labelExpiryDateOfAccount.Text = item.ExpireAccount.ToString();
this.labelExpiryDateOfPassword.Text = item.ExpirePassword.ToString();
this.labelExpiryDateOfAccount2.Text = string.Format("{0:yyyy/MM/dd} ~ {1:yyyy/MM/dd}", item.DateRegister, item.DateExpireRegister);
this.labelExpiryDateOfPassword2.Text = string.Format("{0:yyyy/MM/dd} ~ {1:yyyy/MM/dd}", item.DateLogin, item.DateExpireLogin);
this.CheckBoxCheckedAsLevel(item.UserGroup);
//this.cbAdministrator.Visible = true;
//this.cbAdministrator.Checked = item.IsAdmin;
}
private void UpdateUserListBoxDisplay(List<string> items)
{
this.listBoxUserList.ClearAll();
for (int i = 1; i < items.Count; i++)
this.listBoxUserList.AddItem(items[i]);
}
//private void UpdateDefaultSetAccessrightDisplay(UserGroupItem item)
//{
// this.cbMainProductNo.Checked = item.IsMainDisplayProductNo;
// this.cbMainWeightSet.Checked = item.IsMainDisplayWeightSetting;
// this.cbMainClear.Checked = item.IsMainDisplayClear;
// this.cbMainSubMenu.Checked = item.IsMainDisplaySubMenu;
// this.cbMenuCalibration.Checked = item.IsMenuCalibration;
// this.cbMenuConfiguration.Checked = item.IsMenuConfiguration;
// this.cbMenuDataBackup.Checked = item.IsMenuDataBackup;
// this.cbMenuDataStatistics.Checked = item.IsMenuDataStatistics;
// this.cbMenuEquipmentSet.Checked = item.IsMenuEquipmentSetting;
// this.cbMenuFactoryReset.Checked = item.IsMenuFactoryReset;
// this.cbMenuInformation.Checked = item.IsMenuInformation;
// this.cbMenuIOTest.Checked = item.IsMenuIOTest;
// this.cbMenuMotorSet.Checked = item.IsMenuMotorSetting;
// this.cbMenuSystemSet.Checked = item.IsMenuSystemSetting;
// this.cbMenuTimeSet.Checked = item.IsMenuTimeSetting;
// this.cbMenuUpdate.Checked = item.IsMenuUpdate;
// this.cbMenuUserEditor.Checked = item.IsMenuUserSetting;
//}
public void CallBackGetUserData(UserManager.UserMgr_user_list_t user)
{
this.UpdateCurrentUserItem(user);
this.UI_Invoke(delegate
{
this.UpdateSelectUserDisplay(this.CurrentUserItem);
});
}
public void CallBackUserListNewData(UserManager.UserMgr_user_info_t user)
{
string code = "", message1 = "", message2 = "";
switch (this.ParentForm.ParentForm.SystemConfig.LANGUAGE)
{
case Define.E_LanguageID.Korean:
code = "유저설정";
message1 = "사용자 추가 완료!";
message2 = "";
break;
case Define.E_LanguageID.English:
code = "user settings";
message1 = "User addition complete!";
message2 = "";
break;
default:
break;
}
if (user.status == (int)UserManager.E_user_mgr_status.USER_MGR_STATUS_OK)
{
this.UI_Invoke(delegate
{
this.UpdateCurrentUserItem(user);
this.UpdateSelectUserDisplay(this.CurrentUserItem);
this.ParentForm.ParentForm.ListDllUserName.Add(user.user_id);
this.UpdateUserListBoxDisplay(this.ParentForm.ParentForm.ListDllUserName);
this.listBoxUserList.SelectItemIndex = this.listBoxUserList.ItemCount - 1;
this.textBoxID.Enabled = false;
this.textBoxID.BackColor = Color.LightGray;
this.textBoxPassword.Enabled = false;
this.textBoxPassword.BackColor = Color.LightGray;
this.labelExpiryDateOfAccount.Enabled = false;
this.labelExpiryDateOfAccount.BackColor = Color.LightGray;
this.labelExpiryDateOfPassword.Enabled = false;
this.labelExpiryDateOfPassword.BackColor = Color.LightGray;
this.labelAutomaticLogoutTime.Enabled = false;
this.labelAutomaticLogoutTime.BackColor = Color.LightGray;
this.buttonDelete.Enabled = true;
DialogFormMessage dlg = new DialogFormMessage(Define.E_MessageBoxIcon.Asterisk, code, message1, message2, 0);
dlg.ShowDialog();
});
}
else
{
DialogFormMessage msg = new DialogFormMessage(null, user.status, this.ParentForm.ParentForm.SystemConfig.LANGUAGE);
msg.ShowDialog();
}
}
public void CallBackUserModifyUserData(UserManager.UserMgr_user_modify_t user)
{
string code = "", message1 = "", message2 = "";
switch (this.ParentForm.ParentForm.SystemConfig.LANGUAGE)
{
case Define.E_LanguageID.Korean:
code = "유저설정";
message1 = "사용자 정보 수정 완료!";
message2 = "";
break;
case Define.E_LanguageID.English:
code = "user settings";
message1 = "User information modified!";
message2 = "";
break;
default:
break;
}
if (user.status == (int)UserManager.E_user_mgr_status.USER_MGR_STATUS_OK)
{
this.UI_Invoke(delegate
{
// 메시지 박스 교체
UserManager.UserManager_GetUserListID(this.listBoxUserList.Items[this.listBoxUserList.SelectItemIndex]);
DialogFormMessage dlg = new DialogFormMessage(Define.E_MessageBoxIcon.Asterisk, code, message1, message2, 0);
dlg.ShowDialog();
});
}
else
{
DialogFormMessage msg = new DialogFormMessage(null, user.status, this.ParentForm.ParentForm.SystemConfig.LANGUAGE);
msg.ShowDialog();
}
}
public void CallBackUserListLockDataEvent(UserManager.UserMgr_user_lock_t user)
{
if (user.user_id == this.CurrentUserItem.ID)
{
this.CurrentUserItem.IsLockAccount = user.flock_status_account == 0 ? false : true;
this.CurrentUserItem.IsLockPassword = user.flock_status_password == 0 ? false : true;
UserManager.UserManager_GetUserListID(this.listBoxUserList.Items[this.listBoxUserList.SelectItemIndex]);
}
}
public void CallBackUserListDeleteDataEvent(UserManager.UserMgr_user_del_t user)
{
string code = "", message1 = "", message2 = "", detail = "";
switch (this.ParentForm.ParentForm.SystemConfig.LANGUAGE)
{
case Define.E_LanguageID.Korean:
code = "유저설정";
message1 = string.Format("{0} 사용자 삭제 완료!", user.user_id);
message2 = "";
break;
case Define.E_LanguageID.English:
code = "user settings";
message1 = string.Format("{0} User deletion complete!", user.user_id);
message2 = "";
break;
default:
break;
}
if (user.status == 0)
{
for (int i = 0; i < this.ParentForm.ParentForm.ListDllUserName.Count; i++)
{
if (this.ParentForm.ParentForm.ListDllUserName[i] == user.user_id)
{
this.ParentForm.ParentForm.ListDllUserName.RemoveAt(i);
break;
}
}
this.UI_Invoke(delegate
{
this.UpdateUserListBoxDisplay(this.ParentForm.ParentForm.ListDllUserName);
this.UserNew();
DialogFormMessage dlg = new DialogFormMessage(Define.E_MessageBoxIcon.Asterisk, code, message1, message2, 0);
dlg.ShowDialog();
});
//// Part 11
//if (this.ParentForm.ParentForm.SystemConfig.IsPart11 == true)
//{
detail = string.Format("Delete : {0}", user.user_id);
this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.UserEditor, detail);
//}
}
else
{
DialogFormMessage msg = new DialogFormMessage(null, user.status, this.ParentForm.ParentForm.SystemConfig.LANGUAGE);
msg.ShowDialog();
}
}
public void CallBackUserListModifyInfoDataEvent(UserManager.UserMgr_user_info_t user)
{
//if (this.ChildControlUserSet.Visible == true)
//{
// this.ChildControlUserSet.CallBackUserListModifyInfoDataEvent(user);
//}
}
private bool UI_Invoke(ThreadStart invoker)
{
try
{
if (this.InvokeRequired)
{
if (this.IsDisposed)
return true;
this.Invoke(invoker);
}
else
{
invoker();
}
return true;
}
catch (Exception e)
{
return false;
}
}
public void DisplayRefresh()
{
this.UpdateInitializeUserDisplay();
if (this.buttonSave.Enabled == true)
this.buttonSave.Enabled = false;
}
#endregion
#region Event Handler
private void listBoxSelected_Click(object sender, EventArgs e)
#region Event Handler
private void listBoxUserList_SelectedIndexChanged(object sender, EventArgs e)
{
int index = this.listBoxUserList.SelectItemIndex;
if (index != -1)
{
if (this.ParentForm.ParentForm.SystemConfig.CURRENT_USER.ID == this.listBoxUserList.Items[index])
this.buttonDelete.Enabled = false;
else
this.buttonDelete.Enabled = true;
this.ChangeUserControlEnable(true);
UserManager.UserManager_GetUserListID(this.listBoxUserList.Items[index]);
}
}
private void textBoxID_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '\r')
{
e.Handled = true;
this.smartKeyboard.Hide();
this.buttonRegister.Enabled = true;
this.buttonDelete.Enabled = true;
this.groupBoxAccessRight.Enabled = true;
this.listBoxUserList.Enabled = true;
this.textBoxPassword.Enabled = true;
this.buttonPasswordEdit.Enabled = true;
this.textBoxID.Enabled = true;
this.buttonIDEdit.Enabled = true;
if (this.buttonSave.Visible == false)
this.buttonSave.Visible = true;
}
else if (e.KeyChar == 27)
{
e.Handled = true;
this.textBoxID.Text = this.CurrentUserItem.ID;
this.KeyboardClose();
}
else if (e.KeyChar == '<' || e.KeyChar == '>' || e.KeyChar == '|' || e.KeyChar == '"' || e.KeyChar == '?'
|| e.KeyChar == '*' || e.KeyChar == ':' || e.KeyChar == '/' || e.KeyChar == '\\')
{
e.Handled = true;
}
}
private void textBoxPassword_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == '\r')
{
e.Handled = true;
this.smartKeyboard.Hide();
this.buttonRegister.Enabled = true;
this.buttonDelete.Enabled = true;
this.groupBoxAccessRight.Enabled = true;
this.listBoxUserList.Enabled = true;
this.textBoxPassword.Enabled = true;
this.buttonPasswordEdit.Enabled = true;
this.textBoxID.Enabled = true;
this.buttonIDEdit.Enabled = true;
if (this.buttonSave.Visible == false)
this.buttonSave.Visible = true;
}
else if (e.KeyChar == 27)
{
e.Handled = true;
this.textBoxPassword.Text = this.CurrentUserItem.Password;
this.KeyboardClose();
}
else if (e.KeyChar == '<' || e.KeyChar == '>' || e.KeyChar == '|' || e.KeyChar == '"' || e.KeyChar == '?'
|| e.KeyChar == '*' || e.KeyChar == ':' || e.KeyChar == '/' || e.KeyChar == '\\')
{
e.Handled = true;
}
}
private void smartKeyboard_OnXKeyClick(object sender, EventArgs e)
{
if (this.smartKeyboard.TargetInputObject == this.textBoxPassword)
this.textBoxPassword.Text = this.CurrentUserItem.Password;
else
this.textBoxID.Text = this.CurrentUserItem.ID;
this.KeyboardClose();
}
private void buttonRegister_Click(object sender, EventArgs e)
{
}
private void buttonModify_Click(object sender, EventArgs e)
{
this.UserNew();
}
private void buttonDelete_Click(object sender, EventArgs e)
{
if (this.listBoxUserList.SelectItemIndex == -1)
return;
// 사용자를 삭제 하시겠습니까?
DialogFormYesNo dlg = new DialogFormYesNo(this.ParentForm.ParentForm.SystemConfig.LANGUAGE, 16);
if (dlg.ShowDialog() == DialogResult.Yes)
{
if (this.listBoxUserList.Items.Count <= 1)
return;
if (this.listBoxUserList.SelectItemIndex <= 0)
return;
string id = this.listBoxUserList.Items[this.listBoxUserList.SelectItemIndex];
UserManager.UserManager_UserDel(id);
}
}
private void buttonSave_Click(object sender, EventArgs e)
{
this.SaveUserDll();
#region 자동 로그아웃 타임
this.ParentForm.ParentForm.SystemConfig.AUTOMATIC_LOGOUT = int.Parse(this.labelAutomaticLogoutTime.Text);
if (this.ParentForm.ParentForm.SystemConfig.AUTOMATIC_LOGOUT == 1)
this.ParentForm.ParentForm.FlagAutomaticLogoutWarningTime = 30;
else
this.ParentForm.ParentForm.FlagAutomaticLogoutWarningTime = 60;
UserManager.UserManager_AutoLogoutSetTimeout(this.ParentForm.ParentForm.SystemConfig.AUTOMATIC_LOGOUT, this.ParentForm.ParentForm.FlagAutomaticLogoutWarningTime);
#endregion
this.ParentForm.ParentForm.SaveSystemConfigurationFile(this.ParentForm.ParentForm.SystemConfig);
this.buttonSave.Enabled = false;
}
private void buttonIDEdit_Click(object sender, EventArgs e)
{
this.smartKeyboard.KeyboardType = SmartX.SmartKeyboard.KEYBOARDTYPES.NORMAL;
this.smartKeyboard.Location = new Point(5, 139);
this.smartKeyboard.Size = new Size(897, 352);
this.smartKeyboard.Hide();
this.smartKeyboard.TargetInputObject = this.textBoxID;
this.smartKeyboard.Show();
this.textBoxID.Select(this.textBoxID.Text.Length, 0);
this.buttonRegister.Enabled = false;
this.buttonDelete.Enabled = false;
this.groupBoxAccessRight.Enabled = false;
this.listBoxUserList.Enabled = false;
this.buttonPasswordEdit.Enabled = false;
this.textBoxPassword.Enabled = false;
this.buttonIDEdit.Enabled = false;
}
private void buttonPasswordEdit_Click(object sender, EventArgs e)
{
this.smartKeyboard.KeyboardType = SmartX.SmartKeyboard.KEYBOARDTYPES.NORMAL;
this.smartKeyboard.Location = new Point(5, 139);
this.smartKeyboard.Size = new Size(897, 352);
this.smartKeyboard.Hide();
this.smartKeyboard.TargetInputObject = this.textBoxPassword;
this.smartKeyboard.Show();
this.textBoxPassword.Select(this.textBoxPassword.Text.Length, 0);
this.buttonRegister.Enabled = false;
this.buttonDelete.Enabled = false;
this.groupBoxAccessRight.Enabled = false;
this.listBoxUserList.Enabled = false;
this.buttonPasswordEdit.Enabled = false;
this.textBoxID.Enabled = false;
this.buttonIDEdit.Enabled = false;
}
private void labelExpiryDateOfAccount_Click(object sender, EventArgs e)
{
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelExpiryDateOfAccount.Text, 3, 0, false);
if (myKeyPad.ShowDialog() == DialogResult.OK)
{
if (myKeyPad.doubleValue < 0 || myKeyPad.doubleValue > 180)
{
// 입력범위를 확인하세요
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.ParentForm.SystemConfig.LANGUAGE);
myMsg.ShowDialog();
}
else
{
this.labelExpiryDateOfAccount.Text = myKeyPad.StringValue;
if (this.buttonSave.Enabled == false)
this.buttonSave.Enabled = true;
}
}
}
private void labelExpiryDateOfPassword_Click(object sender, EventArgs e)
{
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelExpiryDateOfPassword.Text, 3, 0, false);
if (myKeyPad.ShowDialog() == DialogResult.OK)
{
if (myKeyPad.IntValue < 0 || myKeyPad.IntValue > 90)
{
// 입력범위를 확인하세요
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.ParentForm.SystemConfig.LANGUAGE);
myMsg.ShowDialog();
}
else
{
this.labelExpiryDateOfPassword.Text = myKeyPad.StringValue;
if (this.buttonSave.Enabled == false)
this.buttonSave.Enabled = true;
}
}
}
private void labelAutomaticLogoutTime_Click(object sender, EventArgs e)
{
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelAutomaticLogoutTime.Text, 2, 0, false);
if (myKeyPad.ShowDialog() == DialogResult.OK)
{
if (myKeyPad.IntValue < 0 || myKeyPad.IntValue > 90)
{
// 입력범위를 확인하세요
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.ParentForm.SystemConfig.LANGUAGE);
myMsg.ShowDialog();
}
else
{
this.labelAutomaticLogoutTime.Text = myKeyPad.StringValue;
if (this.buttonSave.Enabled == false)
this.buttonSave.Enabled = true;
}
}
}
private void buttonLevel_Click(object sender, EventArgs e)
{
SmartX.SmartButton button = sender as SmartX.SmartButton;
if (button == this.buttonLevel1)
{
this.CheckBoxCheckedAsLevel(Define.E_UserGroup.f0_Level1);
}
else if (button == this.buttonLevel2)
{
this.CheckBoxCheckedAsLevel(Define.E_UserGroup.f1_Level2);
}
else if (button == this.buttonLevel3)
{
this.CheckBoxCheckedAsLevel(Define.E_UserGroup.f2_Level3);
}
if (this.buttonSave.Enabled == false)
this.buttonSave.Enabled = true;
}
#endregion
}

View File

@ -117,6 +117,421 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="smartKeyboard.KeyPressImage1" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
6nc2xOg6Bq4AAAAASUVORK5CYII=
</value>
</data>
<data name="smartKeyboard.KeyPressImage2" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="smartKeyboard.KeyPressImage3" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
aDYV804BSLEAAAAASUVORK5CYII=
</value>
</data>
<data name="smartKeyboard.KeyUpImage1" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAADsAAAA7CAYAAADFJfKzAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
bGUAAEjHnZZ3VFTXFofPvXd6oc0wAlKG3rvAANJ7k15FYZgZYCgDDjM0sSGiAhFFRJoiSFDEgNFQJFZE
sRAUVLAHJAgoMRhFVCxvRtaLrqy89/Ly++Osb+2z97n77L3PWhcAkqcvl5cGSwGQyhPwgzyc6RGRUXTs
AIABHmCAKQBMVka6X7B7CBDJy82FniFyAl8EAfB6WLwCcNPQM4BOB/+fpFnpfIHomAARm7M5GSwRF4g4
JUuQLrbPipgalyxmGCVmvihBEcuJOWGRDT77LLKjmNmpPLaIxTmns1PZYu4V8bZMIUfEiK+ICzO5nCwR
3xKxRoowlSviN+LYVA4zAwAUSWwXcFiJIjYRMYkfEuQi4uUA4EgJX3HcVyzgZAvEl3JJS8/hcxMSBXQd
li7d1NqaQffkZKVwBALDACYrmcln013SUtOZvBwAFu/8WTLi2tJFRbY0tba0NDQzMv2qUP91829K3NtF
ehn4uWcQrf+L7a/80hoAYMyJarPziy2uCoDOLQDI3fti0zgAgKSobx3Xv7oPTTwviQJBuo2xcVZWlhGX
wzISF/QP/U+Hv6GvvmckPu6P8tBdOfFMYYqALq4bKy0lTcinZ6QzWRy64Z+H+B8H/nUeBkGceA6fwxNF
hImmjMtLELWbx+YKuGk8Opf3n5r4D8P+pMW5FonS+BFQY4yA1HUqQH7tBygKESDR+8Vd/6NvvvgwIH55
4SqTi3P/7zf9Z8Gl4iWDm/A5ziUohM4S8jMX98TPEqABAUgCKpAHykAd6ABDYAasgC1wBG7AG/iDEBAJ
VgMWSASpgA+yQB7YBApBMdgJ9oBqUAcaQTNoBcdBJzgFzoNL4Bq4AW6D+2AUTIBnYBa8BgsQBGEhMkSB
5CEVSBPSh8wgBmQPuUG+UBAUCcVCCRAPEkJ50GaoGCqDqqF6qBn6HjoJnYeuQIPQXWgMmoZ+h97BCEyC
qbASrAUbwwzYCfaBQ+BVcAK8Bs6FC+AdcCXcAB+FO+Dz8DX4NjwKP4PnEIAQERqiihgiDMQF8UeikHiE
j6xHipAKpAFpRbqRPuQmMorMIG9RGBQFRUcZomxRnqhQFAu1BrUeVYKqRh1GdaB6UTdRY6hZ1Ec0Ga2I
1kfboL3QEegEdBa6EF2BbkK3oy+ib6Mn0K8xGAwNo42xwnhiIjFJmLWYEsw+TBvmHGYQM46Zw2Kx8lh9
rB3WH8vECrCF2CrsUexZ7BB2AvsGR8Sp4Mxw7rgoHA+Xj6vAHcGdwQ3hJnELeCm8Jt4G749n43PwpfhG
fDf+On4Cv0CQJmgT7AghhCTCJkIloZVwkfCA8JJIJKoRrYmBRC5xI7GSeIx4mThGfEuSIemRXEjRJCFp
B+kQ6RzpLuklmUzWIjuSo8gC8g5yM/kC+RH5jQRFwkjCS4ItsUGiRqJDYkjiuSReUlPSSXK1ZK5kheQJ
yeuSM1J4KS0pFymm1HqpGqmTUiNSc9IUaVNpf+lU6RLpI9JXpKdksDJaMm4ybJkCmYMyF2TGKQhFneJC
YVE2UxopFykTVAxVm+pFTaIWU7+jDlBnZWVkl8mGyWbL1sielh2lITQtmhcthVZKO04bpr1borTEaQln
yfYlrUuGlszLLZVzlOPIFcm1yd2WeydPl3eTT5bfJd8p/1ABpaCnEKiQpbBf4aLCzFLqUtulrKVFS48v
vacIK+opBimuVTyo2K84p6Ss5KGUrlSldEFpRpmm7KicpFyufEZ5WoWiYq/CVSlXOavylC5Ld6Kn0Cvp
vfRZVUVVT1Whar3qgOqCmrZaqFq+WpvaQ3WCOkM9Xr1cvUd9VkNFw08jT6NF454mXpOhmai5V7NPc15L
Wytca6tWp9aUtpy2l3audov2Ax2yjoPOGp0GnVu6GF2GbrLuPt0berCehV6iXo3edX1Y31Kfq79Pf9AA
bWBtwDNoMBgxJBk6GWYathiOGdGMfI3yjTqNnhtrGEcZ7zLuM/5oYmGSYtJoct9UxtTbNN+02/R3Mz0z
llmN2S1zsrm7+QbzLvMXy/SXcZbtX3bHgmLhZ7HVosfig6WVJd+y1XLaSsMq1qrWaoRBZQQwShiXrdHW
ztYbrE9Zv7WxtBHYHLf5zdbQNtn2iO3Ucu3lnOWNy8ft1OyYdvV2o/Z0+1j7A/ajDqoOTIcGh8eO6o5s
xybHSSddpySno07PnU2c+c7tzvMuNi7rXM65Iq4erkWuA24ybqFu1W6P3NXcE9xb3Gc9LDzWepzzRHv6
eO7yHPFS8mJ5NXvNelt5r/Pu9SH5BPtU+zz21fPl+3b7wX7efrv9HqzQXMFb0ekP/L38d/s/DNAOWBPw
YyAmMCCwJvBJkGlQXlBfMCU4JvhI8OsQ55DSkPuhOqHC0J4wybDosOaw+XDX8LLw0QjjiHUR1yIVIrmR
XVHYqLCopqi5lW4r96yciLaILoweXqW9KnvVldUKq1NWn46RjGHGnIhFx4bHHol9z/RnNjDn4rziauNm
WS6svaxnbEd2OXuaY8cp40zG28WXxU8l2CXsTphOdEisSJzhunCruS+SPJPqkuaT/ZMPJX9KCU9pS8Wl
xqae5Mnwknm9acpp2WmD6frphemja2zW7Fkzy/fhN2VAGasyugRU0c9Uv1BHuEU4lmmfWZP5Jiss60S2
dDYvuz9HL2d7zmSue+63a1FrWWt78lTzNuWNrXNaV78eWh+3vmeD+oaCDRMbPTYe3kTYlLzpp3yT/LL8
V5vDN3cXKBVsLBjf4rGlpVCikF84stV2a9021DbutoHt5turtn8sYhddLTYprih+X8IqufqN6TeV33za
Eb9joNSydP9OzE7ezuFdDrsOl0mX5ZaN7/bb3VFOLy8qf7UnZs+VimUVdXsJe4V7Ryt9K7uqNKp2Vr2v
Tqy+XeNc01arWLu9dn4fe9/Qfsf9rXVKdcV17w5wD9yp96jvaNBqqDiIOZh58EljWGPft4xvm5sUmoqb
PhziHRo9HHS4t9mqufmI4pHSFrhF2DJ9NProje9cv+tqNWytb6O1FR8Dx4THnn4f+/3wcZ/jPScYJ1p/
0Pyhtp3SXtQBdeR0zHYmdo52RXYNnvQ+2dNt293+o9GPh06pnqo5LXu69AzhTMGZT2dzz86dSz83cz7h
/HhPTM/9CxEXbvUG9g5c9Ll4+ZL7pQt9Tn1nL9tdPnXF5srJq4yrndcsr3X0W/S3/2TxU/uA5UDHdavr
XTesb3QPLh88M+QwdP6m681Lt7xuXbu94vbgcOjwnZHokdE77DtTd1PuvriXeW/h/sYH6AdFD6UeVjxS
fNTws+7PbaOWo6fHXMf6Hwc/vj/OGn/2S8Yv7ycKnpCfVEyqTDZPmU2dmnafvvF05dOJZ+nPFmYKf5X+
tfa5zvMffnP8rX82YnbiBf/Fp99LXsq/PPRq2aueuYC5R69TXy/MF72Rf3P4LeNt37vwd5MLWe+x7ys/
6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOxAAADsQBlSsOGwAAA7NJREFUaEPtm0kvZGEU
hm3M8zzPhJjnGBfmeWZhShAWBDGEIIZE0MQsodHSId3KtLLwA/yyt70nubhdtejlR39JPdetiu/me845
99bmLTvg9fWf8Ho0f2CxWPDy8iJ/Ly8vcXp6iqOjI+zv72Nvb08Zdnd3sbOzI2xtbWFtbQ1zc3MYGxvD
6uqq8Lfb6/H9DQWfn5/x9PSE+/t7XF1d4ezsDMfHxzg8PMTBwYFSGA2g+ObmJpaWljA6OoqWlhZkZGRg
amrKtixFHx8fRfL6+lo6yqqxYsvLy1hcXMTCwoKSzM/PY3Z2FuPj4+jt7UVZWRni4uIQHBwsXTfJUvT8
/BwXFxc4OTnB9va2VGliYgLDw8Po7+9HX1+f0vT09KCzsxPV1dVIS0tDVFQU/P39RdgYaZF9eLjH+vo6
NjY2pIuTk5MYGBiQxY2NjaitrUVNTY2SUM6AHc3Ly0NiYiLCw8Ph6+sLDw8Psyw7OzMzg+npaYyMjEiV
mpqaUF5ejpKSEhQVFaGgoEB5cnNzpavx8fEICQmBt7c33N3d8e3bprmzQ0NDGBwcRHd3t3SztLRULpCT
kyNkZ2crDfeYmZmJlJSUt/vVy8sLbm5u1mNMya6uLrS2tqKqqko6ypGwdWFVMWRjY2PfZF1dXbGysvIu
e3dnkfuTcHwrKipkdDkWti6qKv8ke3t7g/b2dnR0dMgI81790rJtbW0i/OVlLRYtq2VVRstqWS2rZZVF
y2pZLatllUXLalktq2WVRctqWS2rZZVFy2pZLatllUXLalktq2WVRcv+97KMBH01WU9PT2vZm5vfkuRk
dxsaGiQW91llk5OTERMTg6CgIJF1cXGRiOKb7K9f16ivr0dzczPq6uok3VZYWPjpZBm7TUpKQnR0NAIC
AiS3aCX78+elCDLsyBEuLi5Gfn6+ROSysrI+Bewqc4sJCQmIiIiAn5+fRPmcnZ3Nst+/nyA1NVWqw4Ws
UHp6uiwmPFcZ7pH7ZxqVI2yENNlVR0dHc3bxx48Lyecy4MhEJ6tjwAuojLFP7pvjGxoaKl1lGtXJyQkO
Dg4Sp3+TZVAzMDBQKsJ/DgsLk7xuZGSkwEKoCvfHseWe+VAyMsYcX4ra29ubZQkfTj4+PgIXsDpMYvNG
Vx3uk3vm9yo7SlGOL0UrKyvFz0qWVeICPrIJz1WH+2QnKcnv1I+iLIDRVZOsIcwILrvLG9y4mOrYkmWM
+KMoMckaMEJP+IsP41xlGPfnz1ooZ2DL6/Vo/eHXxA5/AJFfGFexs8HCAAAAAElFTkSuQmCC
</value>
</data>
<data name="smartKeyboard.KeyUpImage2" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="smartKeyboard.KeyUpImage3" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
rkJggg==
</value>
</data>
<metadata name="$this.FormFactorShadowProperty" xml:space="preserve">
<value>WEBPAD</value>
</metadata>

View File

@ -13,13 +13,6 @@ namespace INT_PT002.DataStore
Start = 1,
};
public enum E_FormStore
{
FormNone = 0,
FormMainDisplay,
FormMenu,
};
public enum E_TopMenuStore
{
Recipe,
@ -45,6 +38,7 @@ namespace INT_PT002.DataStore
{
_0_None,
_1_UserEditor,
_2_GroupEditor,
};
public enum E_MenuManualStore
{
@ -110,5 +104,125 @@ namespace INT_PT002.DataStore
Korean,
English,
}
public enum E_MessageBoxIcon
{
None,
Hand,
Question,
Exclamation,
Asterisk,
}
public enum E_FormStore
{
FormNone = 0,
FormMainDisplay,
FormMenu,
FormProduct,
FormConfiguration,
FormCommunication,
FormUserEditor,
FormIOTest,
FormMotorSetting,
FormEquipmentLog,
FormCheckLog,
FormAlarmList,
FormInformation,
FormEquipmentSetting,
FormTimeSetting,
}
public enum E_UserGroup
{
f0_Level1 = 0,
f1_Level2 = 1,
f2_Level3 = 2,
f3_Default = 3,
}
public enum E_UserStatus
{
None = 0,
Level1,
Level2,
Level3,
Admin,
Developer,
NotLogin,
LogOff,
};
public enum E_TrackingOperation
{
None,
PowerOn,
BootingComplete,
EquipmentStart,
EquipmentStop,
Login,
Logout,
Zero,
Clear,
UserEditor,
}
public enum E_TrackingParameter
{
ProductNumber,
WeightOverRange,
WeightPassRange,
WeightUnderRange,
WeightTareRange,
JudgmentFilter,
JudgmentDelayTime,
JudgmentDamperDelayTime,
JudgmentCount,
SorterDelayTime,
SorterRunTime,
AutoZeroTime,
AutoZeroRange,
AutoZeroVariance,
Com3Baurate,
Com3Mode,
CalMaxWeight,
CalBalWeight,
CalDigit,
EtcDoubleEntry,
EtcChattering,
EtcBuzzerRunTime,
EtcRelayRunTime,
EtcDecimalpoint,
MotorOriginOffset,
MotorOriginSpeed,
MotorSpeed,
MotorPosition0,
MotorPosition1,
MotorPosition2,
}
public enum E_Trackingalarm
{
None,
a1_PressureError,
a2_LoadcellError,
a3_EntrySensorError,
a4_ServoTorqueAlarm,
a5_ServoAlarm,
a6_ServoOff,
}
public enum E_TrackingType
{
Operation,
Parameter,
Alarm,
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,271 @@
namespace INT_PT002.Forms
{
partial class DialogFormLogOn
{
/// <summary>
/// 필수 디자이너 변수입니다.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 사용 중인 모든 리소스를 정리합니다.
/// </summary>
/// <param name="disposing">관리되는 리소스를 삭제해야 하면 true이고, 그렇지 않으면 false입니다.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form 디자이너에서 생성한 코드
/// <summary>
/// 디자이너 지원에 필요한 메서드입니다.
/// 이 메서드의 내용을 코드 편집기로 수정하지 마십시오.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DialogFormLogOn));
this.smartGroupBox1 = new SmartX.SmartGroupBox();
this.smartLabel3 = new SmartX.SmartLabel();
this.smartLabel2 = new SmartX.SmartLabel();
this.buttonCancel = new SmartX.SmartButton();
this.buttonLogOn = new SmartX.SmartButton();
this.smartKeyboard = new SmartX.SmartKeyboard();
this.textBoxID = new System.Windows.Forms.TextBox();
this.textBoxPassword = new System.Windows.Forms.TextBox();
this.smartGroupBox1.SuspendLayout();
this.SuspendLayout();
//
// smartGroupBox1
//
this.smartGroupBox1.BackGround = null;
this.smartGroupBox1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartGroupBox1.BackImage = null;
this.smartGroupBox1.Controls.Add(this.textBoxPassword);
this.smartGroupBox1.Controls.Add(this.textBoxID);
this.smartGroupBox1.Controls.Add(this.smartLabel3);
this.smartGroupBox1.Controls.Add(this.smartLabel2);
this.smartGroupBox1.Controls.Add(this.buttonCancel);
this.smartGroupBox1.Controls.Add(this.buttonLogOn);
this.smartGroupBox1.Controls.Add(this.smartKeyboard);
this.smartGroupBox1.FrameLineColor1 = System.Drawing.Color.FromArgb(((int)(((byte)(58)))), ((int)(((byte)(110)))), ((int)(((byte)(165)))));
this.smartGroupBox1.FrameLineColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(58)))), ((int)(((byte)(110)))), ((int)(((byte)(165)))));
this.smartGroupBox1.FrameLineThickness = 2;
this.smartGroupBox1.FrameStyle = SmartX.SmartGroupBox.FRAMESTYLES.HeaderBar;
this.smartGroupBox1.HeaderHeightOffset = 12;
this.smartGroupBox1.Location = new System.Drawing.Point(0, 0);
this.smartGroupBox1.Name = "smartGroupBox1";
this.smartGroupBox1.RoundRadius = 5;
this.smartGroupBox1.Size = new System.Drawing.Size(600, 379);
this.smartGroupBox1.TabIndex = 8;
this.smartGroupBox1.Text = "Login";
this.smartGroupBox1.TextColor = System.Drawing.Color.White;
//
// smartLabel3
//
this.smartLabel3.BackGround = null;
this.smartLabel3.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel3.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel3.Font = new System.Drawing.Font("Arial", 13F, System.Drawing.FontStyle.Bold);
this.smartLabel3.LineSpacing = 0F;
this.smartLabel3.Location = new System.Drawing.Point(23, 94);
this.smartLabel3.Name = "smartLabel3";
this.smartLabel3.OverlapOptimize = true;
this.smartLabel3.PasswordChar = '\0';
this.smartLabel3.Radius = 3;
this.smartLabel3.RoundRectFillColor = System.Drawing.Color.LightBlue;
this.smartLabel3.Size = new System.Drawing.Size(112, 37);
this.smartLabel3.TabIndex = 96;
this.smartLabel3.Text = "Password";
this.smartLabel3.TextColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel3.TextColorDisable = System.Drawing.Color.Gray;
this.smartLabel3.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle;
this.smartLabel3.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
this.smartLabel3.Wordwrap = false;
//
// smartLabel2
//
this.smartLabel2.BackGround = null;
this.smartLabel2.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel2.Font = new System.Drawing.Font("Arial", 13F, System.Drawing.FontStyle.Bold);
this.smartLabel2.LineSpacing = 0F;
this.smartLabel2.Location = new System.Drawing.Point(23, 51);
this.smartLabel2.Name = "smartLabel2";
this.smartLabel2.OverlapOptimize = true;
this.smartLabel2.PasswordChar = '\0';
this.smartLabel2.Radius = 3;
this.smartLabel2.RoundRectFillColor = System.Drawing.Color.LightBlue;
this.smartLabel2.Size = new System.Drawing.Size(112, 37);
this.smartLabel2.TabIndex = 95;
this.smartLabel2.Text = "ID";
this.smartLabel2.TextColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel2.TextColorDisable = System.Drawing.Color.Gray;
this.smartLabel2.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle;
this.smartLabel2.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
this.smartLabel2.Wordwrap = false;
//
// buttonCancel
//
this.buttonCancel.BackGround = this.smartGroupBox1;
this.buttonCancel.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.buttonCancel.ButtonColor = System.Drawing.Color.FromArgb(((int)(((byte)(58)))), ((int)(((byte)(110)))), ((int)(((byte)(165)))));
this.buttonCancel.ButtonDownColor = System.Drawing.Color.FromArgb(((int)(((byte)(56)))), ((int)(((byte)(76)))), ((int)(((byte)(129)))));
this.buttonCancel.ButtonImageAutoSize = true;
this.buttonCancel.ButtonStyle = SmartX.SmartButton.ButtonStyles.FlatRound;
this.buttonCancel.ButtonText = "취소";
this.buttonCancel.ColorKeySamplePosition = new System.Drawing.Point(0, 0);
this.buttonCancel.Font = new System.Drawing.Font("새굴림", 13F, System.Drawing.FontStyle.Bold);
this.buttonCancel.GroupID = 0;
this.buttonCancel.ImageDisable = null;
this.buttonCancel.ImageDown = null;
this.buttonCancel.ImageUp = null;
this.buttonCancel.Location = new System.Drawing.Point(494, 51);
this.buttonCancel.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL;
this.buttonCancel.Name = "buttonCancel";
this.buttonCancel.NestedClickEventPrevent = false;
this.buttonCancel.OutlinePixel = 2;
this.buttonCancel.OverlapOptimize = true;
this.buttonCancel.RepeatInterval = 200;
this.buttonCancel.RepeatIntervalAccelerate = null;
this.buttonCancel.RoundSize = 10;
this.buttonCancel.SafeInterval = 200;
this.buttonCancel.Size = new System.Drawing.Size(80, 80);
this.buttonCancel.SpecialFunction = SmartX.SmartButton.SPECIALFUNC.NONE;
this.buttonCancel.TabIndex = 94;
this.buttonCancel.Text = null;
this.buttonCancel.TextColor = System.Drawing.Color.White;
this.buttonCancel.TextColorDisable = System.Drawing.Color.Gray;
this.buttonCancel.TextDownColor = System.Drawing.Color.FromArgb(((int)(((byte)(233)))), ((int)(((byte)(238)))), ((int)(((byte)(255)))));
this.buttonCancel.TextHAlign = SmartX.SmartButton.TextHorAlign.Middle;
this.buttonCancel.TextVAlign = SmartX.SmartButton.TextVerAlign.Middle;
//
// buttonLogOn
//
this.buttonLogOn.BackGround = this.smartGroupBox1;
this.buttonLogOn.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.buttonLogOn.ButtonColor = System.Drawing.Color.FromArgb(((int)(((byte)(58)))), ((int)(((byte)(110)))), ((int)(((byte)(165)))));
this.buttonLogOn.ButtonDownColor = System.Drawing.Color.FromArgb(((int)(((byte)(56)))), ((int)(((byte)(76)))), ((int)(((byte)(129)))));
this.buttonLogOn.ButtonImageAutoSize = true;
this.buttonLogOn.ButtonStyle = SmartX.SmartButton.ButtonStyles.FlatRound;
this.buttonLogOn.ButtonText = "로그인";
this.buttonLogOn.ColorKeySamplePosition = new System.Drawing.Point(0, 0);
this.buttonLogOn.Font = new System.Drawing.Font("새굴림", 13F, System.Drawing.FontStyle.Bold);
this.buttonLogOn.GroupID = 0;
this.buttonLogOn.ImageDisable = null;
this.buttonLogOn.ImageDown = null;
this.buttonLogOn.ImageUp = null;
this.buttonLogOn.Location = new System.Drawing.Point(408, 51);
this.buttonLogOn.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL;
this.buttonLogOn.Name = "buttonLogOn";
this.buttonLogOn.NestedClickEventPrevent = false;
this.buttonLogOn.OutlinePixel = 2;
this.buttonLogOn.OverlapOptimize = true;
this.buttonLogOn.RepeatInterval = 200;
this.buttonLogOn.RepeatIntervalAccelerate = null;
this.buttonLogOn.RoundSize = 10;
this.buttonLogOn.SafeInterval = 200;
this.buttonLogOn.Size = new System.Drawing.Size(80, 80);
this.buttonLogOn.SpecialFunction = SmartX.SmartButton.SPECIALFUNC.NONE;
this.buttonLogOn.TabIndex = 93;
this.buttonLogOn.Text = null;
this.buttonLogOn.TextColor = System.Drawing.Color.White;
this.buttonLogOn.TextColorDisable = System.Drawing.Color.Gray;
this.buttonLogOn.TextDownColor = System.Drawing.Color.FromArgb(((int)(((byte)(233)))), ((int)(((byte)(238)))), ((int)(((byte)(255)))));
this.buttonLogOn.TextHAlign = SmartX.SmartButton.TextHorAlign.Middle;
this.buttonLogOn.TextVAlign = SmartX.SmartButton.TextVerAlign.Middle;
//
// smartKeyboard
//
this.smartKeyboard.BackGround = this.smartGroupBox1;
this.smartKeyboard.BackGroundColor = System.Drawing.Color.LightCoral;
this.smartKeyboard.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartKeyboard.BorderStyle = SmartX.SmartKeyboard.BorderStyles.RoundRectFill;
this.smartKeyboard.ControlKeyDisable = false;
this.smartKeyboard.DesignMinimize = false;
this.smartKeyboard.HanYoungKeyDisable = true;
this.smartKeyboard.KeyBoardBackImage = null;
this.smartKeyboard.KeyboardType = SmartX.SmartKeyboard.KEYBOARDTYPES.NORMAL;
this.smartKeyboard.KeyFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(93)))), ((int)(((byte)(123)))));
this.smartKeyboard.KeyOutLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
this.smartKeyboard.KeyOutLineWidth = 1;
this.smartKeyboard.KeyPressFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(38)))), ((int)(((byte)(46)))), ((int)(((byte)(60)))));
this.smartKeyboard.KeyPressImage1 = ((System.Drawing.Image)(resources.GetObject("smartKeyboard.KeyPressImage1")));
this.smartKeyboard.KeyPressImage2 = ((System.Drawing.Image)(resources.GetObject("smartKeyboard.KeyPressImage2")));
this.smartKeyboard.KeyPressImage3 = ((System.Drawing.Image)(resources.GetObject("smartKeyboard.KeyPressImage3")));
this.smartKeyboard.KeyPressOutLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(211)))), ((int)(((byte)(211)))), ((int)(((byte)(213)))));
this.smartKeyboard.KeyPressTextColor = System.Drawing.Color.FromArgb(((int)(((byte)(150)))), ((int)(((byte)(150)))), ((int)(((byte)(150)))));
this.smartKeyboard.KeyTextColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
this.smartKeyboard.KeyTextFont = new System.Drawing.Font("Arial", 15F, System.Drawing.FontStyle.Bold);
this.smartKeyboard.KeyUpImage1 = ((System.Drawing.Image)(resources.GetObject("smartKeyboard.KeyUpImage1")));
this.smartKeyboard.KeyUpImage2 = ((System.Drawing.Image)(resources.GetObject("smartKeyboard.KeyUpImage2")));
this.smartKeyboard.KeyUpImage3 = ((System.Drawing.Image)(resources.GetObject("smartKeyboard.KeyUpImage3")));
this.smartKeyboard.Location = new System.Drawing.Point(7, 139);
this.smartKeyboard.MarginLeftRight = 7;
this.smartKeyboard.MarginTopBottom = 7;
this.smartKeyboard.Name = "smartKeyboard";
this.smartKeyboard.OverlapOptimize = true;
this.smartKeyboard.Radius = 5;
this.smartKeyboard.RoundedCorners = true;
this.smartKeyboard.RoundRectFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartKeyboard.Size = new System.Drawing.Size(585, 232);
this.smartKeyboard.SizeRunTime = new System.Drawing.Size(585, 232);
this.smartKeyboard.TabIndex = 90;
this.smartKeyboard.TABKeyDisable = false;
this.smartKeyboard.TargetInputObject = null;
this.smartKeyboard.Text = "smartKeyboard1";
this.smartKeyboard.TextColor = System.Drawing.Color.Black;
this.smartKeyboard.TextColorDisable = System.Drawing.Color.Gray;
this.smartKeyboard.ThemeStyle = SmartX.SmartKeyboard.KEYBOARDTHEMESTYLE.GRAY_SKIN1;
this.smartKeyboard.OnXKeyClick += new System.EventHandler(this.smartKeyboard_OnXKeyClick);
this.smartKeyboard.Click += new System.EventHandler(this.smartKeyboard_Click);
//
// textBoxID
//
this.textBoxID.Font = new System.Drawing.Font("Arial", 20F, System.Drawing.FontStyle.Regular);
this.textBoxID.Location = new System.Drawing.Point(141, 51);
this.textBoxID.Name = "textBoxID";
this.textBoxID.Size = new System.Drawing.Size(261, 37);
this.textBoxID.TabIndex = 97;
//
// textBoxPassword
//
this.textBoxPassword.Font = new System.Drawing.Font("Arial", 20F, System.Drawing.FontStyle.Regular);
this.textBoxPassword.Location = new System.Drawing.Point(141, 94);
this.textBoxPassword.Name = "textBoxPassword";
this.textBoxPassword.Size = new System.Drawing.Size(261, 37);
this.textBoxPassword.TabIndex = 98;
//
// DialogFormLogOn
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.ClientSize = new System.Drawing.Size(600, 379);
this.ControlBox = false;
this.Controls.Add(this.smartGroupBox1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Name = "DialogFormLogOn";
this.Text = "DialogFormLogOn";
this.smartGroupBox1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private SmartX.SmartGroupBox smartGroupBox1;
private SmartX.SmartButton buttonCancel;
private SmartX.SmartButton buttonLogOn;
private SmartX.SmartKeyboard smartKeyboard;
private SmartX.SmartLabel smartLabel3;
private SmartX.SmartLabel smartLabel2;
private System.Windows.Forms.TextBox textBoxID;
private System.Windows.Forms.TextBox textBoxPassword;
}
}

View File

@ -0,0 +1,290 @@
using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using INT_PT002.DataStore;
using INT_PT002.Part11_UserManager;
using INT_PT002.DialogForms;
namespace INT_PT002.Forms
{
public partial class DialogFormLogOn : Form
{
#region Field
private FormMain m_ParentForm;
#endregion
#region Constructor
public DialogFormLogOn(FormMain parent)
{
InitializeComponent();
this.ParentForm = parent;
this.InitializeDesign();
this.InitializeControl();
this.DefaultSetting();
}
#endregion
#region Property
public FormMain ParentForm
{
get { return this.m_ParentForm; }
private set { this.m_ParentForm = value; }
}
#endregion
#region Method
private void InitializeDesign()
{
}
private void InitializeControl()
{
this.textBoxID.Text = "";
this.textBoxPassword.Text = "";
this.Location = new Point(157, 150);
//this.smartKeyboard.HanYoungKeyToggle();
this.smartKeyboard.HanYoungKeyDisable = true;
this.smartKeyboard.KeyboardType = SmartX.SmartKeyboard.KEYBOARDTYPES.NORMAL;
this.smartKeyboard.Show();
}
private void DefaultSetting()
{
}
public void CB_UserLogin(UserItem item)
{
}
#endregion
#region Event Handler
private void buttonLogOn_Click(object sender, EventArgs e)
{
// Automatic Logout Reset
this.ParentForm.ChildFormMainDisplay.Part11AutomaticLogoutReset();
#region Login1
//User user = null;
//user = this.ParentForm.CurrentCollectionUser.FindUser(this.labelID.Text);
//if (user != null)
//{
// if (user.Password == this.labelPassword.Text)
// {
// this.ParentForm.SystemConfig.CURRENT_USER.ID = user.ID;
// this.ParentForm.SystemConfig.CURRENT_USER.Password = user.Password;
// this.ParentForm.SystemConfig.CURRENT_USER.Group = user.Group;
// this.DialogResult = DialogResult.OK;
// this.Close();
// }
// else
// {
// DialogFormMessage myMsg = new DialogFormMessage(33, this.ParentForm.SystemConfig.LANGUAGE);
// myMsg.ShowDialog();
// }
//}
//else
//{
// DialogFormMessage myMsg = new DialogFormMessage(32, this.ParentForm.SystemConfig.LANGUAGE);
// myMsg.ShowDialog();
//}
#endregion
#region Login2
//UserItem user = null;
//user = this.ParentForm.FindUser(this.labelID.Text);
//if (user != null)
//{
// if (user.Password == this.labelPassword.Text)
// {
// if (user.ID == "Intech")
// this.ParentForm.SystemConfig.CURRENT_USER.Status = Define.E_UserStatus.Developer;
// else if (user.ID == "Admin00")
// this.ParentForm.SystemConfig.CURRENT_USER.Status = Define.E_UserStatus.Admin;
// else
// this.ParentForm.SystemConfig.CURRENT_USER.Status = Define.E_UserStatus.Guest;
// this.ParentForm.SystemConfig.CURRENT_USER.ID = user.ID;
// this.ParentForm.SystemConfig.CURRENT_USER.Password = user.Password;
// this.ParentForm.SystemConfig.CURRENT_USER.PreviousPassword1 = user.PreviousPassword1;
// this.ParentForm.SystemConfig.CURRENT_USER.PreviousPassword2 = user.PreviousPassword2;
// this.ParentForm.SystemConfig.CURRENT_USER.PreviousPassword3 = user.PreviousPassword3;
// this.ParentForm.SystemConfig.CURRENT_USER.ExpireAccount = user.ExpireAccount;
// this.ParentForm.SystemConfig.CURRENT_USER.ExpirePassword = user.ExpirePassword;
// this.ParentForm.SystemConfig.CURRENT_USER.DateRegister = user.DateRegister;
// this.ParentForm.SystemConfig.CURRENT_USER.DateLogin = user.DateLogin; // Login 시간 저장하는 코드 추가할것
// this.ParentForm.SystemConfig.CURRENT_USER.IsAdmin = user.IsAdmin;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMainProductNo = user.IsMainProductNo;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMainWeightSetting = user.IsMainWeightSetting;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMainClear = user.IsMainClear;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMainSubMenu = user.IsMainSubMenu;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuTimeSetting = user.IsMenuTimeSetting;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuInformation = user.IsMenuInformation;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuDataBackup = user.IsMenuDataBackup;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuConfiguration = user.IsMenuConfiguration;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuCalibration = user.IsMenuCalibration;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuSystemSetting = user.IsMenuSystemSetting;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuMotorSetting = user.IsMenuMotorSetting;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuIOTest = user.IsMenuIOTest;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuUpdate = user.IsMenuUpdate;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuFactoryReset = user.IsMenuFactoryReset;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuUserEditor = user.IsMenuUserEditor;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuEquipmentSetting = user.IsMenuEquipmentSetting;
// this.ParentForm.SystemConfig.CURRENT_USER.IsMenuDataStatistics = user.IsMenuDataStatistics;
// this.DialogResult = DialogResult.OK;
// this.Close();
// }
// else
// {
// // Password 확인하세요
// DialogFormMessage myMsg = new DialogFormMessage(33, this.ParentForm.SystemConfig.LANGUAGE);
// myMsg.ShowDialog();
// }
//}
//else
//{
// // ID 확인하세요
// DialogFormMessage myMsg = new DialogFormMessage(32, this.ParentForm.SystemConfig.LANGUAGE);
// myMsg.ShowDialog();
//}
#endregion
#region Login3
UserManager.UserMgr_user_info_t userInfo = new UserManager.UserMgr_user_info_t();
if (this.textBoxID.Text == "")
{
// ID : 4~20자 입력 하세요
DialogFormMessage myMsg = new DialogFormMessage(null, 3, this.ParentForm.SystemConfig.LANGUAGE);
myMsg.ShowDialog();
return;
}
if (this.textBoxPassword.Text == "")
{
// PASSWORD : 4~20자 입력 하세요
DialogFormMessage myMsg = new DialogFormMessage(null, 9, this.ParentForm.SystemConfig.LANGUAGE);
myMsg.ShowDialog();
return;
}
UserManager.UserManager_UserLoginDirect(this.textBoxID.Text, this.textBoxPassword.Text, ref userInfo);
if (userInfo.status == 0)
{
//MessageBox.Show("로그인 성공");
#region 로그인 성공
if (userInfo.user_id == "Intech")
this.ParentForm.SystemConfig.CURRENT_USER.Status = Define.E_UserStatus.Developer;
else if (userInfo.user_id == "Admin00")
this.ParentForm.SystemConfig.CURRENT_USER.Status = Define.E_UserStatus.Admin;
this.ParentForm.SystemConfig.CURRENT_USER.ID = userInfo.user_id;
this.ParentForm.SystemConfig.CURRENT_USER.Password = userInfo.user_pw;
this.ParentForm.SystemConfig.CURRENT_USER.ExpireAccount = userInfo.expire_period_account;
this.ParentForm.SystemConfig.CURRENT_USER.ExpirePassword = userInfo.expire_period_pw;
DateTime time = DateTime.ParseExact(userInfo.register_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.ParentForm.SystemConfig.CURRENT_USER.DateRegister = time;
time = DateTime.ParseExact(userInfo.login_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.ParentForm.SystemConfig.CURRENT_USER.DateLogin = time;
time = DateTime.ParseExact(userInfo.expire_account_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.ParentForm.SystemConfig.CURRENT_USER.DateExpireRegister = time;
time = DateTime.ParseExact(userInfo.expire_register_date.GetDateTime(), "yyyyMMddHHmmss", null);
this.ParentForm.SystemConfig.CURRENT_USER.DateExpireLogin = time;
this.ParentForm.SystemConfig.CURRENT_USER.IsLockAccount = userInfo.flock_status_account == 0 ? false : true;
this.ParentForm.SystemConfig.CURRENT_USER.IsLockPassword = userInfo.flock_status_password == 0 ? false : true;
this.ParentForm.SystemConfig.CURRENT_USER.IsAdmin = userInfo.fadmin == 0 ? false : true;
this.ParentForm.SystemConfig.CURRENT_USER.IsMainProductChange = userInfo.menuID.fMenu[0];
this.ParentForm.SystemConfig.CURRENT_USER.IsMainWeightSetting = userInfo.menuID.fMenu[1];
this.ParentForm.SystemConfig.CURRENT_USER.IsMainClear = userInfo.menuID.fMenu[2];
this.ParentForm.SystemConfig.CURRENT_USER.IsMainSubMenu = userInfo.menuID.fMenu[3];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuProduct = userInfo.menuID.fMenu[4];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuConfiguration = userInfo.menuID.fMenu[5];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuCommunication = userInfo.menuID.fMenu[6];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuUserSetting = userInfo.menuID.fMenu[7];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuUserGroupEditor = userInfo.menuID.fMenu[8];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuIOTest = userInfo.menuID.fMenu[9];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuMotorSetting = userInfo.menuID.fMenu[10];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuEquipmentLog = userInfo.menuID.fMenu[11];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuCheckLog = userInfo.menuID.fMenu[12];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuAlarmList = userInfo.menuID.fMenu[13];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuInformation = userInfo.menuID.fMenu[14];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuEquipmentSetting = userInfo.menuID.fMenu[15];
this.ParentForm.SystemConfig.CURRENT_USER.IsMenuTimeSetting = userInfo.menuID.fMenu[16];
#endregion
this.DialogResult = DialogResult.OK;
this.Close();
}
else
{
DialogFormMessage myMsg = new DialogFormMessage(null, userInfo.status, this.ParentForm.SystemConfig.LANGUAGE);
myMsg.ShowDialog();
}
#endregion
}
private void buttonCancel_Click(object sender, EventArgs e)
{
// Automatic Logout Reset
this.ParentForm.ChildFormMainDisplay.Part11AutomaticLogoutReset();
this.DialogResult = DialogResult.Cancel;
this.Close();
}
private void textBoxID_GotFocus(object sender, EventArgs e)
{
// Automatic Logout Reset
this.ParentForm.ChildFormMainDisplay.Part11AutomaticLogoutReset();
this.smartKeyboard.TargetInputObject = this.textBoxID;
this.textBoxID.Select(this.textBoxID.Text.Length, 0);
}
private void textBoxPassword_GotFocus(object sender, EventArgs e)
{
// Automatic Logout Reset
this.ParentForm.ChildFormMainDisplay.Part11AutomaticLogoutReset();
this.smartKeyboard.TargetInputObject = this.textBoxPassword;
this.textBoxPassword.Select(this.textBoxPassword.Text.Length, 0);
}
private void smartKeyboard_OnXKeyClick(object sender, EventArgs e)
{
this.smartKeyboard.Show();
}
private void smartKeyboard_Click(object sender, EventArgs e)
{
// Automatic Logout Reset
this.ParentForm.ChildFormMainDisplay.Part11AutomaticLogoutReset();
}
#endregion
}
}

View File

@ -0,0 +1,541 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="smartKeyboard.KeyPressImage1" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
6nc2xOg6Bq4AAAAASUVORK5CYII=
</value>
</data>
<data name="smartKeyboard.KeyPressImage2" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="smartKeyboard.KeyPressImage3" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
aDYV804BSLEAAAAASUVORK5CYII=
</value>
</data>
<data name="smartKeyboard.KeyUpImage1" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAADsAAAA7CAYAAADFJfKzAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
bGUAAEjHnZZ3VFTXFofPvXd6oc0wAlKG3rvAANJ7k15FYZgZYCgDDjM0sSGiAhFFRJoiSFDEgNFQJFZE
sRAUVLAHJAgoMRhFVCxvRtaLrqy89/Ly++Osb+2z97n77L3PWhcAkqcvl5cGSwGQyhPwgzyc6RGRUXTs
AIABHmCAKQBMVka6X7B7CBDJy82FniFyAl8EAfB6WLwCcNPQM4BOB/+fpFnpfIHomAARm7M5GSwRF4g4
JUuQLrbPipgalyxmGCVmvihBEcuJOWGRDT77LLKjmNmpPLaIxTmns1PZYu4V8bZMIUfEiK+ICzO5nCwR
3xKxRoowlSviN+LYVA4zAwAUSWwXcFiJIjYRMYkfEuQi4uUA4EgJX3HcVyzgZAvEl3JJS8/hcxMSBXQd
li7d1NqaQffkZKVwBALDACYrmcln013SUtOZvBwAFu/8WTLi2tJFRbY0tba0NDQzMv2qUP91829K3NtF
ehn4uWcQrf+L7a/80hoAYMyJarPziy2uCoDOLQDI3fti0zgAgKSobx3Xv7oPTTwviQJBuo2xcVZWlhGX
wzISF/QP/U+Hv6GvvmckPu6P8tBdOfFMYYqALq4bKy0lTcinZ6QzWRy64Z+H+B8H/nUeBkGceA6fwxNF
hImmjMtLELWbx+YKuGk8Opf3n5r4D8P+pMW5FonS+BFQY4yA1HUqQH7tBygKESDR+8Vd/6NvvvgwIH55
4SqTi3P/7zf9Z8Gl4iWDm/A5ziUohM4S8jMX98TPEqABAUgCKpAHykAd6ABDYAasgC1wBG7AG/iDEBAJ
VgMWSASpgA+yQB7YBApBMdgJ9oBqUAcaQTNoBcdBJzgFzoNL4Bq4AW6D+2AUTIBnYBa8BgsQBGEhMkSB
5CEVSBPSh8wgBmQPuUG+UBAUCcVCCRAPEkJ50GaoGCqDqqF6qBn6HjoJnYeuQIPQXWgMmoZ+h97BCEyC
qbASrAUbwwzYCfaBQ+BVcAK8Bs6FC+AdcCXcAB+FO+Dz8DX4NjwKP4PnEIAQERqiihgiDMQF8UeikHiE
j6xHipAKpAFpRbqRPuQmMorMIG9RGBQFRUcZomxRnqhQFAu1BrUeVYKqRh1GdaB6UTdRY6hZ1Ec0Ga2I
1kfboL3QEegEdBa6EF2BbkK3oy+ib6Mn0K8xGAwNo42xwnhiIjFJmLWYEsw+TBvmHGYQM46Zw2Kx8lh9
rB3WH8vECrCF2CrsUexZ7BB2AvsGR8Sp4Mxw7rgoHA+Xj6vAHcGdwQ3hJnELeCm8Jt4G749n43PwpfhG
fDf+On4Cv0CQJmgT7AghhCTCJkIloZVwkfCA8JJIJKoRrYmBRC5xI7GSeIx4mThGfEuSIemRXEjRJCFp
B+kQ6RzpLuklmUzWIjuSo8gC8g5yM/kC+RH5jQRFwkjCS4ItsUGiRqJDYkjiuSReUlPSSXK1ZK5kheQJ
yeuSM1J4KS0pFymm1HqpGqmTUiNSc9IUaVNpf+lU6RLpI9JXpKdksDJaMm4ybJkCmYMyF2TGKQhFneJC
YVE2UxopFykTVAxVm+pFTaIWU7+jDlBnZWVkl8mGyWbL1sielh2lITQtmhcthVZKO04bpr1borTEaQln
yfYlrUuGlszLLZVzlOPIFcm1yd2WeydPl3eTT5bfJd8p/1ABpaCnEKiQpbBf4aLCzFLqUtulrKVFS48v
vacIK+opBimuVTyo2K84p6Ss5KGUrlSldEFpRpmm7KicpFyufEZ5WoWiYq/CVSlXOavylC5Ld6Kn0Cvp
vfRZVUVVT1Whar3qgOqCmrZaqFq+WpvaQ3WCOkM9Xr1cvUd9VkNFw08jT6NF454mXpOhmai5V7NPc15L
Wytca6tWp9aUtpy2l3audov2Ax2yjoPOGp0GnVu6GF2GbrLuPt0berCehV6iXo3edX1Y31Kfq79Pf9AA
bWBtwDNoMBgxJBk6GWYathiOGdGMfI3yjTqNnhtrGEcZ7zLuM/5oYmGSYtJoct9UxtTbNN+02/R3Mz0z
llmN2S1zsrm7+QbzLvMXy/SXcZbtX3bHgmLhZ7HVosfig6WVJd+y1XLaSsMq1qrWaoRBZQQwShiXrdHW
ztYbrE9Zv7WxtBHYHLf5zdbQNtn2iO3Ucu3lnOWNy8ft1OyYdvV2o/Z0+1j7A/ajDqoOTIcGh8eO6o5s
xybHSSddpySno07PnU2c+c7tzvMuNi7rXM65Iq4erkWuA24ybqFu1W6P3NXcE9xb3Gc9LDzWepzzRHv6
eO7yHPFS8mJ5NXvNelt5r/Pu9SH5BPtU+zz21fPl+3b7wX7efrv9HqzQXMFb0ekP/L38d/s/DNAOWBPw
YyAmMCCwJvBJkGlQXlBfMCU4JvhI8OsQ55DSkPuhOqHC0J4wybDosOaw+XDX8LLw0QjjiHUR1yIVIrmR
XVHYqLCopqi5lW4r96yciLaILoweXqW9KnvVldUKq1NWn46RjGHGnIhFx4bHHol9z/RnNjDn4rziauNm
WS6svaxnbEd2OXuaY8cp40zG28WXxU8l2CXsTphOdEisSJzhunCruS+SPJPqkuaT/ZMPJX9KCU9pS8Wl
xqae5Mnwknm9acpp2WmD6frphemja2zW7Fkzy/fhN2VAGasyugRU0c9Uv1BHuEU4lmmfWZP5Jiss60S2
dDYvuz9HL2d7zmSue+63a1FrWWt78lTzNuWNrXNaV78eWh+3vmeD+oaCDRMbPTYe3kTYlLzpp3yT/LL8
V5vDN3cXKBVsLBjf4rGlpVCikF84stV2a9021DbutoHt5turtn8sYhddLTYprih+X8IqufqN6TeV33za
Eb9joNSydP9OzE7ezuFdDrsOl0mX5ZaN7/bb3VFOLy8qf7UnZs+VimUVdXsJe4V7Ryt9K7uqNKp2Vr2v
Tqy+XeNc01arWLu9dn4fe9/Qfsf9rXVKdcV17w5wD9yp96jvaNBqqDiIOZh58EljWGPft4xvm5sUmoqb
PhziHRo9HHS4t9mqufmI4pHSFrhF2DJ9NProje9cv+tqNWytb6O1FR8Dx4THnn4f+/3wcZ/jPScYJ1p/
0Pyhtp3SXtQBdeR0zHYmdo52RXYNnvQ+2dNt293+o9GPh06pnqo5LXu69AzhTMGZT2dzz86dSz83cz7h
/HhPTM/9CxEXbvUG9g5c9Ll4+ZL7pQt9Tn1nL9tdPnXF5srJq4yrndcsr3X0W/S3/2TxU/uA5UDHdavr
XTesb3QPLh88M+QwdP6m681Lt7xuXbu94vbgcOjwnZHokdE77DtTd1PuvriXeW/h/sYH6AdFD6UeVjxS
fNTws+7PbaOWo6fHXMf6Hwc/vj/OGn/2S8Yv7ycKnpCfVEyqTDZPmU2dmnafvvF05dOJZ+nPFmYKf5X+
tfa5zvMffnP8rX82YnbiBf/Fp99LXsq/PPRq2aueuYC5R69TXy/MF72Rf3P4LeNt37vwd5MLWe+x7ys/
6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOxAAADsQBlSsOGwAAA7NJREFUaEPtm0kvZGEU
hm3M8zzPhJjnGBfmeWZhShAWBDGEIIZE0MQsodHSId3KtLLwA/yyt70nubhdtejlR39JPdetiu/me845
99bmLTvg9fWf8Ho0f2CxWPDy8iJ/Ly8vcXp6iqOjI+zv72Nvb08Zdnd3sbOzI2xtbWFtbQ1zc3MYGxvD
6uqq8Lfb6/H9DQWfn5/x9PSE+/t7XF1d4ezsDMfHxzg8PMTBwYFSGA2g+ObmJpaWljA6OoqWlhZkZGRg
amrKtixFHx8fRfL6+lo6yqqxYsvLy1hcXMTCwoKSzM/PY3Z2FuPj4+jt7UVZWRni4uIQHBwsXTfJUvT8
/BwXFxc4OTnB9va2VGliYgLDw8Po7+9HX1+f0vT09KCzsxPV1dVIS0tDVFQU/P39RdgYaZF9eLjH+vo6
NjY2pIuTk5MYGBiQxY2NjaitrUVNTY2SUM6AHc3Ly0NiYiLCw8Ph6+sLDw8Psyw7OzMzg+npaYyMjEiV
mpqaUF5ejpKSEhQVFaGgoEB5cnNzpavx8fEICQmBt7c33N3d8e3bprmzQ0NDGBwcRHd3t3SztLRULpCT
kyNkZ2crDfeYmZmJlJSUt/vVy8sLbm5u1mNMya6uLrS2tqKqqko6ypGwdWFVMWRjY2PfZF1dXbGysvIu
e3dnkfuTcHwrKipkdDkWti6qKv8ke3t7g/b2dnR0dMgI81790rJtbW0i/OVlLRYtq2VVRstqWS2rZZVF
y2pZLatllUXLalktq2WVRctqWS2rZZVFy2pZLatllUXLalktq2WVRcv+97KMBH01WU9PT2vZm5vfkuRk
dxsaGiQW91llk5OTERMTg6CgIJF1cXGRiOKb7K9f16ivr0dzczPq6uok3VZYWPjpZBm7TUpKQnR0NAIC
AiS3aCX78+elCDLsyBEuLi5Gfn6+ROSysrI+Bewqc4sJCQmIiIiAn5+fRPmcnZ3Nst+/nyA1NVWqw4Ws
UHp6uiwmPFcZ7pH7ZxqVI2yENNlVR0dHc3bxx48Lyecy4MhEJ6tjwAuojLFP7pvjGxoaKl1lGtXJyQkO
Dg4Sp3+TZVAzMDBQKsJ/DgsLk7xuZGSkwEKoCvfHseWe+VAyMsYcX4ra29ubZQkfTj4+PgIXsDpMYvNG
Vx3uk3vm9yo7SlGOL0UrKyvFz0qWVeICPrIJz1WH+2QnKcnv1I+iLIDRVZOsIcwILrvLG9y4mOrYkmWM
+KMoMckaMEJP+IsP41xlGPfnz1ooZ2DL6/Vo/eHXxA5/AJFfGFexs8HCAAAAAElFTkSuQmCC
</value>
</data>
<data name="smartKeyboard.KeyUpImage2" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="smartKeyboard.KeyUpImage3" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
rkJggg==
</value>
</data>
<metadata name="$this.FormFactorShadowProperty" xml:space="preserve">
<value>WEBPAD</value>
</metadata>
<metadata name="$this.Skin" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>

View File

@ -32,8 +32,12 @@
this.buttonOK = new SmartX.SmartButton();
this.labelMessage1 = new SmartX.SmartLabel();
this.labelMessage2 = new SmartX.SmartLabel();
this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.smartGroupBox1 = new SmartX.SmartGroupBox();
this.pictureBoxExclamation = new System.Windows.Forms.PictureBox();
this.pictureBoxHand = new System.Windows.Forms.PictureBox();
this.pictureBoxAsterisk = new System.Windows.Forms.PictureBox();
this.pictureBoxQuestion = new System.Windows.Forms.PictureBox();
this.timerAutoClose = new System.Windows.Forms.Timer();
this.smartGroupBox1.SuspendLayout();
this.SuspendLayout();
//
@ -80,13 +84,13 @@
this.labelMessage1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMessage1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.labelMessage1.LineSpacing = 0F;
this.labelMessage1.Location = new System.Drawing.Point(62, 60);
this.labelMessage1.Location = new System.Drawing.Point(76, 61);
this.labelMessage1.Name = "labelMessage1";
this.labelMessage1.OverlapOptimize = true;
this.labelMessage1.PasswordChar = '\0';
this.labelMessage1.Radius = 3;
this.labelMessage1.RoundRectFillColor = System.Drawing.Color.LightBlue;
this.labelMessage1.Size = new System.Drawing.Size(360, 20);
this.labelMessage1.Size = new System.Drawing.Size(346, 20);
this.labelMessage1.TabIndex = 4;
this.labelMessage1.Text = "소수점을 변경하면 랜덤모드 설정값이 초기화됩니다.";
this.labelMessage1.TextColor = System.Drawing.Color.Black;
@ -103,13 +107,13 @@
this.labelMessage2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMessage2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.labelMessage2.LineSpacing = 0F;
this.labelMessage2.Location = new System.Drawing.Point(62, 82);
this.labelMessage2.Location = new System.Drawing.Point(76, 87);
this.labelMessage2.Name = "labelMessage2";
this.labelMessage2.OverlapOptimize = true;
this.labelMessage2.PasswordChar = '\0';
this.labelMessage2.Radius = 3;
this.labelMessage2.RoundRectFillColor = System.Drawing.Color.LightBlue;
this.labelMessage2.Size = new System.Drawing.Size(360, 40);
this.labelMessage2.Size = new System.Drawing.Size(346, 42);
this.labelMessage2.TabIndex = 5;
this.labelMessage2.Text = "소수점을 변경하면 랜덤모드 설정값이 초기화됩니다.";
this.labelMessage2.TextColor = System.Drawing.Color.Black;
@ -118,21 +122,16 @@
this.labelMessage2.TextVAlign = SmartX.SmartLabel.TextVerAlign.Top;
this.labelMessage2.Wordwrap = false;
//
// pictureBox2
//
this.pictureBox2.BackColor = System.Drawing.Color.White;
this.pictureBox2.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox2.Image")));
this.pictureBox2.Location = new System.Drawing.Point(14, 58);
this.pictureBox2.Name = "pictureBox2";
this.pictureBox2.Size = new System.Drawing.Size(42, 40);
//
// smartGroupBox1
//
this.smartGroupBox1.BackGround = null;
this.smartGroupBox1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartGroupBox1.BackImage = null;
this.smartGroupBox1.Controls.Add(this.pictureBoxExclamation);
this.smartGroupBox1.Controls.Add(this.pictureBoxHand);
this.smartGroupBox1.Controls.Add(this.pictureBoxAsterisk);
this.smartGroupBox1.Controls.Add(this.pictureBoxQuestion);
this.smartGroupBox1.Controls.Add(this.labelMessage1);
this.smartGroupBox1.Controls.Add(this.pictureBox2);
this.smartGroupBox1.Controls.Add(this.buttonOK);
this.smartGroupBox1.Controls.Add(this.labelMessage2);
this.smartGroupBox1.FrameLineColor1 = System.Drawing.Color.FromArgb(((int)(((byte)(58)))), ((int)(((byte)(110)))), ((int)(((byte)(165)))));
@ -148,6 +147,39 @@
this.smartGroupBox1.Text = "ErrorCode";
this.smartGroupBox1.TextColor = System.Drawing.Color.White;
//
// pictureBoxExclamation
//
this.pictureBoxExclamation.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxExclamation.Image")));
this.pictureBoxExclamation.Location = new System.Drawing.Point(20, 55);
this.pictureBoxExclamation.Name = "pictureBoxExclamation";
this.pictureBoxExclamation.Size = new System.Drawing.Size(50, 50);
//
// pictureBoxHand
//
this.pictureBoxHand.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxHand.Image")));
this.pictureBoxHand.Location = new System.Drawing.Point(20, 55);
this.pictureBoxHand.Name = "pictureBoxHand";
this.pictureBoxHand.Size = new System.Drawing.Size(50, 50);
//
// pictureBoxAsterisk
//
this.pictureBoxAsterisk.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxAsterisk.Image")));
this.pictureBoxAsterisk.Location = new System.Drawing.Point(20, 55);
this.pictureBoxAsterisk.Name = "pictureBoxAsterisk";
this.pictureBoxAsterisk.Size = new System.Drawing.Size(50, 50);
//
// pictureBoxQuestion
//
this.pictureBoxQuestion.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxQuestion.Image")));
this.pictureBoxQuestion.Location = new System.Drawing.Point(20, 55);
this.pictureBoxQuestion.Name = "pictureBoxQuestion";
this.pictureBoxQuestion.Size = new System.Drawing.Size(50, 50);
//
// timerAutoClose
//
this.timerAutoClose.Interval = 1000;
this.timerAutoClose.Tick += new System.EventHandler(this.timerAutoClose_Tick);
//
// DialogFormMessage
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@ -170,7 +202,11 @@
private SmartX.SmartButton buttonOK;
private SmartX.SmartLabel labelMessage1;
private SmartX.SmartLabel labelMessage2;
private System.Windows.Forms.PictureBox pictureBox2;
private SmartX.SmartGroupBox smartGroupBox1;
private System.Windows.Forms.PictureBox pictureBoxExclamation;
private System.Windows.Forms.PictureBox pictureBoxHand;
private System.Windows.Forms.PictureBox pictureBoxAsterisk;
private System.Windows.Forms.PictureBox pictureBoxQuestion;
private System.Windows.Forms.Timer timerAutoClose;
}
}

View File

@ -481,6 +481,190 @@ namespace INT_PT002.DialogForms
}
}
public DialogFormMessage(object dll, int code, Define.E_LanguageID language)
{
InitializeComponent();
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "";
this.labelMessage2.Text = "";
switch (language)
{
case Define.E_LanguageID.Korean:
#region 한글
switch (code)
{
case 1:
this.smartGroupBox1.Text = "Error 01";
this.labelMessage1.Text = "ID를 찾을 수 없습니다";
break;
case 2:
this.smartGroupBox1.Text = "Error 02";
this.labelMessage1.Text = "ID : 동일한 ID가 있습니다";
break;
case 3:
this.smartGroupBox1.Text = "Error 03";
this.labelMessage1.Text = "ID : 6~20자 입력하세요";
break;
case 4:
this.smartGroupBox1.Text = "Error 04";
this.labelMessage1.Text = "ID : 6~20자 입력하세요";
break;
case 5:
this.smartGroupBox1.Text = "Error 05";
this.labelMessage1.Text = "ID : 연속된 문자(123,321,abc,cba...)또는";
this.labelMessage2.Text = "동일한 문자(111,222,aaa...) 사용 할 수 없습니다";
break;
case 6:
this.smartGroupBox1.Text = "Error 06";
this.labelMessage1.Text = "ID : 사용할 수 없는 문자가 포함되어 있습니다";
break;
case 7:
this.smartGroupBox1.Text = "Error 07";
this.labelMessage1.Text = "ID : 사용자 계정이 만료 되었습니다";
break;
case 8:
this.smartGroupBox1.Text = "Error 08";
this.labelMessage1.Text = "PASSWORD : 이전 패스워드 입니다";
break;
case 9:
this.smartGroupBox1.Text = "Error 09";
this.labelMessage1.Text = "PASSWORD : 6~20자 입력하세요";
break;
case 10:
this.smartGroupBox1.Text = "Error 10";
this.labelMessage1.Text = "PASSWORD : 6~20자 입력하세요";
break;
case 11:
this.smartGroupBox1.Text = "Error 11";
this.labelMessage1.Text = "PASSWORD : 연속된 문자(123,321,abc,cba...)또는";
this.labelMessage2.Text = "동일한 문자(111,222,aaa...) 사용 할 수 없습니다";
break;
case 12:
this.smartGroupBox1.Text = "Error 12";
this.labelMessage1.Text = "PASSWORD : 사용할 수 없는 문자가 포함되어 있습니다";
this.labelMessage2.Text = "사용 가능 특수문자 : !@#$%^&*+-.";
break;
case 13:
this.smartGroupBox1.Text = "Error 13";
this.labelMessage1.Text = "PASSWORD : 영문1이상, 숫자1이상, 특수문자1이상";
this.labelMessage2.Text = "포함하여 주십시오";
break;
case 14:
this.smartGroupBox1.Text = "Error 14";
this.labelMessage1.Text = "비밀번호를 확인하세요";
break;
case 15:
this.smartGroupBox1.Text = "Error 15";
this.labelMessage1.Text = "PASSWORD : 비밀번호가 만료 되었습니다";
break;
case 16:
this.smartGroupBox1.Text = "Error 16";
this.labelMessage1.Text = "";
break;
case 17:
this.smartGroupBox1.Text = "Error 17";
this.labelMessage1.Text = "";
break;
case 18:
this.smartGroupBox1.Text = "Error 18";
this.labelMessage1.Text = "";
break;
default:
this.smartGroupBox1.Text = "Error 99";
this.labelMessage1.Text = "제조사에 문의하세요";
break;
}
#endregion
break;
case Define.E_LanguageID.English:
#region 영문
switch (code)
{
case 1:
this.smartGroupBox1.Text = "Error 01";
this.labelMessage1.Text = "";
break;
case 2:
this.smartGroupBox1.Text = "Error 02";
this.labelMessage1.Text = "";
break;
case 3:
this.smartGroupBox1.Text = "Error 03";
this.labelMessage1.Text = "";
break;
case 4:
this.smartGroupBox1.Text = "Error 04";
this.labelMessage1.Text = "";
break;
case 5:
this.smartGroupBox1.Text = "Error 05";
this.labelMessage1.Text = "";
break;
case 6:
this.smartGroupBox1.Text = "Error 06";
this.labelMessage1.Text = "";
break;
case 7:
this.smartGroupBox1.Text = "Error 07";
this.labelMessage1.Text = "";
break;
case 8:
this.smartGroupBox1.Text = "Error 08";
this.labelMessage1.Text = "";
break;
case 9:
this.smartGroupBox1.Text = "Error 09";
this.labelMessage1.Text = "";
break;
case 10:
this.smartGroupBox1.Text = "Error 10";
this.labelMessage1.Text = "";
break;
case 11:
this.smartGroupBox1.Text = "Error 11";
this.labelMessage1.Text = "";
break;
case 12:
this.smartGroupBox1.Text = "Error 12";
this.labelMessage1.Text = "";
break;
case 13:
this.smartGroupBox1.Text = "Error 13";
this.labelMessage1.Text = "";
break;
case 14:
this.smartGroupBox1.Text = "Error 14";
this.labelMessage1.Text = "";
break;
case 15:
this.smartGroupBox1.Text = "Error 15";
this.labelMessage1.Text = "";
break;
case 16:
this.smartGroupBox1.Text = "Error 16";
this.labelMessage1.Text = "";
break;
case 17:
this.smartGroupBox1.Text = "Error 17";
this.labelMessage1.Text = "";
break;
case 18:
this.smartGroupBox1.Text = "Error 18";
this.labelMessage1.Text = "";
break;
default:
this.smartGroupBox1.Text = "Error 99";
this.labelMessage1.Text = "Please contact a manufacturer";
break;
}
#endregion
break;
default:
break;
}
}
public DialogFormMessage(int code, int productNo, string underRange, string overRange, Define.E_LanguageID language)
{
InitializeComponent();
@ -563,6 +747,58 @@ namespace INT_PT002.DialogForms
}
}
public DialogFormMessage(Define.E_MessageBoxIcon icon, string code, string message1, string message2, int autoClose_sec)
{
InitializeComponent();
this.timerAutoClose.Enabled = false;
switch (icon)
{
case Define.E_MessageBoxIcon.None:
this.pictureBoxAsterisk.Visible = false;
this.pictureBoxExclamation.Visible = false;
this.pictureBoxHand.Visible = false;
this.pictureBoxQuestion.Visible = false;
break;
case Define.E_MessageBoxIcon.Hand:
this.pictureBoxAsterisk.Visible = false;
this.pictureBoxExclamation.Visible = false;
this.pictureBoxHand.Visible = true;
this.pictureBoxQuestion.Visible = false;
break;
case Define.E_MessageBoxIcon.Question:
this.pictureBoxAsterisk.Visible = false;
this.pictureBoxExclamation.Visible = false;
this.pictureBoxHand.Visible = false;
this.pictureBoxQuestion.Visible = true;
break;
case Define.E_MessageBoxIcon.Exclamation:
this.pictureBoxAsterisk.Visible = false;
this.pictureBoxExclamation.Visible = true;
this.pictureBoxHand.Visible = false;
this.pictureBoxQuestion.Visible = false;
break;
case Define.E_MessageBoxIcon.Asterisk:
this.pictureBoxAsterisk.Visible = true;
this.pictureBoxExclamation.Visible = false;
this.pictureBoxHand.Visible = false;
this.pictureBoxQuestion.Visible = false;
break;
default:
break;
}
this.smartGroupBox1.Text = code;
this.labelMessage1.Text = message1;
this.labelMessage2.Text = message2;
if (autoClose_sec != 0)
{
this.timerAutoClose.Interval = autoClose_sec * 1000;
this.timerAutoClose.Enabled = true;
}
}
#endregion
#region Property
@ -595,6 +831,13 @@ namespace INT_PT002.DialogForms
this.DialogResult = DialogResult.OK;
this.Close();
}
private void timerAutoClose_Tick(object sender, EventArgs e)
{
this.timerAutoClose.Enabled = false;
this.DialogResult = DialogResult.OK;
this.Close();
}
#endregion
}
}

View File

@ -118,9 +118,9 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="pictureBox2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<data name="pictureBoxExclamation.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACoAAAAoCAIAAAAHaf8HAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@ -165,36 +165,260 @@
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
YII=
</value>
</data>
<data name="pictureBoxHand.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="pictureBoxAsterisk.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="pictureBoxQuestion.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<metadata name="timerAutoClose.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="$this.FormFactorShadowProperty" xml:space="preserve">
<value>WEBPAD</value>
</metadata>

View File

@ -33,8 +33,11 @@
this.buttonNo = new SmartX.SmartButton();
this.smartGroupBox1 = new SmartX.SmartGroupBox();
this.labelMessage1 = new SmartX.SmartLabel();
this.pictureBox3 = new System.Windows.Forms.PictureBox();
this.labelMessage2 = new SmartX.SmartLabel();
this.pictureBoxExclamation = new System.Windows.Forms.PictureBox();
this.pictureBoxHand = new System.Windows.Forms.PictureBox();
this.pictureBoxAsterisk = new System.Windows.Forms.PictureBox();
this.pictureBoxQuestion = new System.Windows.Forms.PictureBox();
this.smartGroupBox1.SuspendLayout();
this.SuspendLayout();
//
@ -113,8 +116,11 @@
this.smartGroupBox1.BackGround = null;
this.smartGroupBox1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartGroupBox1.BackImage = null;
this.smartGroupBox1.Controls.Add(this.pictureBoxExclamation);
this.smartGroupBox1.Controls.Add(this.pictureBoxHand);
this.smartGroupBox1.Controls.Add(this.pictureBoxAsterisk);
this.smartGroupBox1.Controls.Add(this.pictureBoxQuestion);
this.smartGroupBox1.Controls.Add(this.labelMessage1);
this.smartGroupBox1.Controls.Add(this.pictureBox3);
this.smartGroupBox1.Controls.Add(this.labelMessage2);
this.smartGroupBox1.Controls.Add(this.buttonNo);
this.smartGroupBox1.Controls.Add(this.buttonYes);
@ -139,13 +145,13 @@
this.labelMessage1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMessage1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.labelMessage1.LineSpacing = 0F;
this.labelMessage1.Location = new System.Drawing.Point(62, 60);
this.labelMessage1.Location = new System.Drawing.Point(76, 61);
this.labelMessage1.Name = "labelMessage1";
this.labelMessage1.OverlapOptimize = true;
this.labelMessage1.PasswordChar = '\0';
this.labelMessage1.Radius = 3;
this.labelMessage1.RoundRectFillColor = System.Drawing.Color.LightBlue;
this.labelMessage1.Size = new System.Drawing.Size(360, 20);
this.labelMessage1.Size = new System.Drawing.Size(346, 20);
this.labelMessage1.TabIndex = 4;
this.labelMessage1.Text = "소수점을 변경하면 랜덤모드 설정값이 초기화됩니다.";
this.labelMessage1.TextColor = System.Drawing.Color.Black;
@ -154,14 +160,6 @@
this.labelMessage1.TextVAlign = SmartX.SmartLabel.TextVerAlign.Top;
this.labelMessage1.Wordwrap = false;
//
// pictureBox3
//
this.pictureBox3.BackColor = System.Drawing.Color.White;
this.pictureBox3.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox3.Image")));
this.pictureBox3.Location = new System.Drawing.Point(14, 58);
this.pictureBox3.Name = "pictureBox3";
this.pictureBox3.Size = new System.Drawing.Size(42, 40);
//
// labelMessage2
//
this.labelMessage2.BackGround = null;
@ -170,13 +168,13 @@
this.labelMessage2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMessage2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.labelMessage2.LineSpacing = 0F;
this.labelMessage2.Location = new System.Drawing.Point(62, 82);
this.labelMessage2.Location = new System.Drawing.Point(76, 87);
this.labelMessage2.Name = "labelMessage2";
this.labelMessage2.OverlapOptimize = true;
this.labelMessage2.PasswordChar = '\0';
this.labelMessage2.Radius = 3;
this.labelMessage2.RoundRectFillColor = System.Drawing.Color.LightBlue;
this.labelMessage2.Size = new System.Drawing.Size(360, 40);
this.labelMessage2.Size = new System.Drawing.Size(346, 42);
this.labelMessage2.TabIndex = 5;
this.labelMessage2.Text = "소수점을 변경하면 랜덤모드 설정값이 초기화됩니다.";
this.labelMessage2.TextColor = System.Drawing.Color.Black;
@ -185,6 +183,34 @@
this.labelMessage2.TextVAlign = SmartX.SmartLabel.TextVerAlign.Top;
this.labelMessage2.Wordwrap = false;
//
// pictureBoxExclamation
//
this.pictureBoxExclamation.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxExclamation.Image")));
this.pictureBoxExclamation.Location = new System.Drawing.Point(20, 55);
this.pictureBoxExclamation.Name = "pictureBoxExclamation";
this.pictureBoxExclamation.Size = new System.Drawing.Size(50, 50);
//
// pictureBoxHand
//
this.pictureBoxHand.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxHand.Image")));
this.pictureBoxHand.Location = new System.Drawing.Point(20, 55);
this.pictureBoxHand.Name = "pictureBoxHand";
this.pictureBoxHand.Size = new System.Drawing.Size(50, 50);
//
// pictureBoxAsterisk
//
this.pictureBoxAsterisk.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxAsterisk.Image")));
this.pictureBoxAsterisk.Location = new System.Drawing.Point(20, 55);
this.pictureBoxAsterisk.Name = "pictureBoxAsterisk";
this.pictureBoxAsterisk.Size = new System.Drawing.Size(50, 50);
//
// pictureBoxQuestion
//
this.pictureBoxQuestion.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxQuestion.Image")));
this.pictureBoxQuestion.Location = new System.Drawing.Point(20, 55);
this.pictureBoxQuestion.Name = "pictureBoxQuestion";
this.pictureBoxQuestion.Size = new System.Drawing.Size(50, 50);
//
// DialogFormYesNo
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@ -208,7 +234,10 @@
private SmartX.SmartButton buttonNo;
private SmartX.SmartGroupBox smartGroupBox1;
private SmartX.SmartLabel labelMessage1;
private System.Windows.Forms.PictureBox pictureBox3;
private SmartX.SmartLabel labelMessage2;
private System.Windows.Forms.PictureBox pictureBoxExclamation;
private System.Windows.Forms.PictureBox pictureBoxHand;
private System.Windows.Forms.PictureBox pictureBoxAsterisk;
private System.Windows.Forms.PictureBox pictureBoxQuestion;
}
}

View File

@ -92,65 +92,16 @@ namespace INT_PT002.DialogForms
this.labelMessage1.Text = "유저 삭제 하시겠습니까?";
break;
case 15:
this.smartGroupBox1.Text = "로그인";
this.labelMessage1.Text = "로그인 기능을 사용하시겠습니까?";
this.smartGroupBox1.Text = "유저설정";
this.labelMessage1.Text = "유저 등록 하시겠습니까?";
break;
case 16:
this.smartGroupBox1.Text = "로그인";
this.labelMessage1.Text = "로그인 기능을 사용을 중지하시겠습니까?";
this.smartGroupBox1.Text = "유저설정";
this.labelMessage1.Text = "선택 된 유저를 삭제 하시겠습니까?";
break;
case 17:
this.smartGroupBox1.Text = "바코드";
this.labelMessage1.Text = "바코드 기능을 사용하시겠습니까?";
break;
case 18:
this.smartGroupBox1.Text = "바코드";
this.labelMessage1.Text = "바코드 기능 사용을 중지하시겠습니까?";
break;
case 19:
this.smartGroupBox1.Text = "소거";
this.labelMessage1.Text = "전체 품번 카운트 데이터를 소거 하시겠습니까?";
break;
case 20:
this.smartGroupBox1.Text = "초기화";
this.labelMessage1.Text = "카운터출력 카운트 데이터를 소거 하시겠습니까?";
break;
case 21:
this.smartGroupBox1.Text = "이더넷";
this.labelMessage1.Text = "로컬IP주소 수동으로 설정하시겠습니까?";
break;
case 22:
this.smartGroupBox1.Text = "이더넷";
this.labelMessage1.Text = "로컬IP주소 자동으로 설정하시겠습니까?";
break;
case 23:
this.smartGroupBox1.Text = "백업";
this.labelMessage1.Text = "현재 데이터를 백업하시겠습니까?";
break;
case 24:
this.smartGroupBox1.Text = "랜덤모드 설정값 초기화";
this.labelMessage1.Text = "소수점을 변경하면 랜덤모드 설정값이 초기화됩니다.";
this.labelMessage2.Text = "소수점을 변경하시겠습니까?";
break;
case 25:
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "기능을 사용하시겠습니까?";
this.labelMessage2.Text = "";
break;
case 26:
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "기능 사용을 중지하시겠습니까?";
this.labelMessage2.Text = "관련 항목들이 초기화 상태로 변경됩니다.";
break;
case 27:
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "해당 값을 기준값으로 설정하시겠습니까?";
this.labelMessage2.Text = "";
break;
case 28:
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "파일을 삭제하시겠습니까?";
this.labelMessage2.Text = "";
this.smartGroupBox1.Text = "유저설정";
this.labelMessage1.Text = "신규 유저 등록 하시겠습니까?";
break;
default:
break;
@ -222,65 +173,16 @@ namespace INT_PT002.DialogForms
this.labelMessage1.Text = "Do you want to delete this user?";
break;
case 15:
this.smartGroupBox1.Text = "Login";
this.labelMessage1.Text = "Are you sure you want to use the login function?";
this.smartGroupBox1.Text = "User Setting";
this.labelMessage1.Text = "Do you want to register the user?";
break;
case 16:
this.smartGroupBox1.Text = "Login";
this.labelMessage1.Text = "Are you sure you want to cancel the login function?";
this.smartGroupBox1.Text = "User Setting";
this.labelMessage1.Text = "Do you want to delete this user?";
break;
case 17:
this.smartGroupBox1.Text = "Barcode";
this.labelMessage1.Text = "Are you sure you want to use the Barcode function?";
break;
case 18:
this.smartGroupBox1.Text = "Barcode";
this.labelMessage1.Text = "Are you sure you want to cancel the Barcode function?";
break;
case 19:
this.smartGroupBox1.Text = "Initialization";
this.labelMessage1.Text = "Do you want to Initialize all data?";
break;
case 20:
this.smartGroupBox1.Text = "Initialization";
this.labelMessage1.Text = "Do you want to Initalize Counting Output's count data?";
break;
case 21:
this.smartGroupBox1.Text = "Ethernet";
this.labelMessage1.Text = "Do you want to set the local IP address static?";
break;
case 22:
this.smartGroupBox1.Text = "Ethernet";
this.labelMessage1.Text = "Do you want to set the local IP address to DHCP?";
break;
case 23:
this.smartGroupBox1.Text = "Backup";
this.labelMessage1.Text = "Would you like to back up your current data?";
break;
case 24:
this.smartGroupBox1.Text = "Initialize random mode setting";
this.labelMessage1.Text = "Changing the decimal point resets the random mode";
this.labelMessage2.Text = "settings. Do you want to change the decimal point?";
break;
case 25:
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "Are you sure you want to use the function?";
this.labelMessage2.Text = "";
break;
case 26:
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "Are you sure you want to cancel the function?";
this.labelMessage2.Text = "Related items will be changed to the initialization state.";
break;
case 27:
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "Do you want to set that value as the 'Pass' value?";
this.labelMessage2.Text = "";
break;
case 28:
this.smartGroupBox1.Text = "";
this.labelMessage1.Text = "Are you sure you want to delete the file?";
this.labelMessage2.Text = "";
this.smartGroupBox1.Text = "User Setting";
this.labelMessage1.Text = "Do you want to register the new user?";
break;
default:
break;
@ -291,6 +193,51 @@ namespace INT_PT002.DialogForms
{
}
}
public DialogFormYesNo(Define.E_MessageBoxIcon icon, string code, string message1, string message2)
{
InitializeComponent();
switch (icon)
{
case Define.E_MessageBoxIcon.None:
this.pictureBoxAsterisk.Visible = false;
this.pictureBoxExclamation.Visible = false;
this.pictureBoxHand.Visible = false;
this.pictureBoxQuestion.Visible = false;
break;
case Define.E_MessageBoxIcon.Hand:
this.pictureBoxAsterisk.Visible = false;
this.pictureBoxExclamation.Visible = false;
this.pictureBoxHand.Visible = true;
this.pictureBoxQuestion.Visible = false;
break;
case Define.E_MessageBoxIcon.Question:
this.pictureBoxAsterisk.Visible = false;
this.pictureBoxExclamation.Visible = false;
this.pictureBoxHand.Visible = false;
this.pictureBoxQuestion.Visible = true;
break;
case Define.E_MessageBoxIcon.Exclamation:
this.pictureBoxAsterisk.Visible = false;
this.pictureBoxExclamation.Visible = true;
this.pictureBoxHand.Visible = false;
this.pictureBoxQuestion.Visible = false;
break;
case Define.E_MessageBoxIcon.Asterisk:
this.pictureBoxAsterisk.Visible = true;
this.pictureBoxExclamation.Visible = false;
this.pictureBoxHand.Visible = false;
this.pictureBoxQuestion.Visible = false;
break;
default:
break;
}
this.smartGroupBox1.Text = code;
this.labelMessage1.Text = message1;
this.labelMessage2.Text = message2;
}
#endregion
#region Property

View File

@ -118,9 +118,9 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="pictureBox3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<data name="pictureBoxExclamation.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACoAAAAoCAIAAAAHaf8HAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@ -165,34 +165,255 @@
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
YII=
</value>
</data>
<data name="pictureBoxHand.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="pictureBoxAsterisk.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="pictureBoxQuestion.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<metadata name="$this.FormFactorShadowProperty" xml:space="preserve">

File diff suppressed because it is too large Load Diff

View File

@ -5,8 +5,13 @@ using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Threading;
using System.Windows.Forms;
using INT_PT002.Part11_UserManager;
using INT_PT002.DataStore;
using INT_PT002.DialogForms;
namespace INT_PT002.Forms
{
public partial class FormMainDisplay : Form

View File

@ -31,6 +31,7 @@
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormMainDisplay1));
SmartX.SmartDraw_ChartChannelPenStyle.ChartPenStyle chartPenStyle1 = new SmartX.SmartDraw_ChartChannelPenStyle.ChartPenStyle();
this.smartForm1 = new SmartX.SmartForm();
this.buttonUser = new SmartX.SmartButton();
this.labelProgress5 = new SmartX.SmartLabel();
this.labelStop = new SmartX.SmartLabel();
this.labelStart = new SmartX.SmartLabel();
@ -232,6 +233,7 @@
this.smartForm1.BackGroundFillStyle = SmartXUIBase.SmartUIControlFormBase.BackGroundFillStyles.GradationColor1;
this.smartForm1.BackImage = ((System.Drawing.Image)(resources.GetObject("smartForm1.BackImage")));
this.smartForm1.CenterLocation = false;
this.smartForm1.Controls.Add(this.buttonUser);
this.smartForm1.Controls.Add(this.labelProgress5);
this.smartForm1.Controls.Add(this.labelStop);
this.smartForm1.Controls.Add(this.labelStart);
@ -274,6 +276,41 @@
this.smartForm1.SpecialFunctionClickPointSize = 100;
this.smartForm1.UseMainMenu = false;
//
// buttonUser
//
this.buttonUser.BackGround = this.smartForm1;
this.buttonUser.BackGroundColor = System.Drawing.Color.LightBlue;
this.buttonUser.ButtonColor = System.Drawing.Color.FromArgb(((int)(((byte)(58)))), ((int)(((byte)(110)))), ((int)(((byte)(165)))));
this.buttonUser.ButtonDownColor = System.Drawing.Color.FromArgb(((int)(((byte)(56)))), ((int)(((byte)(76)))), ((int)(((byte)(129)))));
this.buttonUser.ButtonImageAutoSize = true;
this.buttonUser.ButtonStyle = SmartX.SmartButton.ButtonStyles.FlatRound;
this.buttonUser.ButtonText = "로그인";
this.buttonUser.ColorKeySamplePosition = new System.Drawing.Point(0, 0);
this.buttonUser.GroupID = 0;
this.buttonUser.ImageDisable = null;
this.buttonUser.ImageDown = null;
this.buttonUser.ImageUp = null;
this.buttonUser.Location = new System.Drawing.Point(698, 701);
this.buttonUser.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL;
this.buttonUser.Name = "buttonUser";
this.buttonUser.NestedClickEventPrevent = false;
this.buttonUser.OutlinePixel = 2;
this.buttonUser.OverlapOptimize = true;
this.buttonUser.RepeatInterval = 200;
this.buttonUser.RepeatIntervalAccelerate = null;
this.buttonUser.RoundSize = 10;
this.buttonUser.SafeInterval = 200;
this.buttonUser.Size = new System.Drawing.Size(110, 60);
this.buttonUser.SpecialFunction = SmartX.SmartButton.SPECIALFUNC.NONE;
this.buttonUser.TabIndex = 73;
this.buttonUser.Text = null;
this.buttonUser.TextColor = System.Drawing.Color.White;
this.buttonUser.TextColorDisable = System.Drawing.Color.Gray;
this.buttonUser.TextDownColor = System.Drawing.Color.FromArgb(((int)(((byte)(233)))), ((int)(((byte)(238)))), ((int)(((byte)(255)))));
this.buttonUser.TextHAlign = SmartX.SmartButton.TextHorAlign.Middle;
this.buttonUser.TextVAlign = SmartX.SmartButton.TextVerAlign.Middle;
this.buttonUser.Click += new System.EventHandler(this.buttonUser_Click);
//
// labelProgress5
//
this.labelProgress5.BackGround = null;
@ -422,7 +459,7 @@
this.buttonCut.ImageDisable = null;
this.buttonCut.ImageDown = null;
this.buttonCut.ImageUp = null;
this.buttonCut.Location = new System.Drawing.Point(544, 701);
this.buttonCut.Location = new System.Drawing.Point(465, 701);
this.buttonCut.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL;
this.buttonCut.Name = "buttonCut";
this.buttonCut.NestedClickEventPrevent = false;
@ -457,7 +494,7 @@
this.buttonClear.ImageDisable = null;
this.buttonClear.ImageDown = null;
this.buttonClear.ImageUp = null;
this.buttonClear.Location = new System.Drawing.Point(661, 701);
this.buttonClear.Location = new System.Drawing.Point(582, 701);
this.buttonClear.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL;
this.buttonClear.Name = "buttonClear";
this.buttonClear.NestedClickEventPrevent = false;
@ -519,7 +556,7 @@
this.labelTime.BackGroundColor = System.Drawing.Color.SkyBlue;
this.labelTime.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelTime.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelTime.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelTime.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelTime.LineSpacing = 0F;
this.labelTime.Location = new System.Drawing.Point(3, 697);
this.labelTime.Name = "labelTime";
@ -550,7 +587,7 @@
this.buttonDisplay.ImageDisable = null;
this.buttonDisplay.ImageDown = null;
this.buttonDisplay.ImageUp = null;
this.buttonDisplay.Location = new System.Drawing.Point(428, 701);
this.buttonDisplay.Location = new System.Drawing.Point(349, 701);
this.buttonDisplay.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL;
this.buttonDisplay.Name = "buttonDisplay";
this.buttonDisplay.NestedClickEventPrevent = false;
@ -623,7 +660,7 @@
this.labelResult3_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult3_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult3_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult3_1.Font = new System.Drawing.Font("New Gulim", 20F, System.Drawing.FontStyle.Bold);
this.labelResult3_1.Font = new System.Drawing.Font("새굴림", 20F, System.Drawing.FontStyle.Bold);
this.labelResult3_1.LineSpacing = 0F;
this.labelResult3_1.Location = new System.Drawing.Point(3, 42);
this.labelResult3_1.Name = "labelResult3_1";
@ -660,7 +697,7 @@
this.labelResultSD3.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD3.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD3.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD3.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD3.LineSpacing = 0F;
this.labelResultSD3.Location = new System.Drawing.Point(89, 254);
this.labelResultSD3.Name = "labelResultSD3";
@ -683,7 +720,7 @@
this.smartLabel24.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel24.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel24.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel24.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel24.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel24.LineSpacing = 0F;
this.smartLabel24.Location = new System.Drawing.Point(3, 254);
this.smartLabel24.Name = "smartLabel24";
@ -706,7 +743,7 @@
this.labelResult3.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult3.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult3.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult3.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult3.LineSpacing = 0F;
this.labelResult3.Location = new System.Drawing.Point(89, 232);
this.labelResult3.Name = "labelResult3";
@ -729,7 +766,7 @@
this.smartLabel26.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel26.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel26.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel26.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel26.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel26.LineSpacing = 0F;
this.smartLabel26.Location = new System.Drawing.Point(3, 232);
this.smartLabel26.Name = "smartLabel26";
@ -752,7 +789,7 @@
this.labelStDev3.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev3.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev3.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev3.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev3.LineSpacing = 0F;
this.labelStDev3.Location = new System.Drawing.Point(89, 198);
this.labelStDev3.Name = "labelStDev3";
@ -775,7 +812,7 @@
this.smartLabel28.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel28.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel28.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel28.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel28.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel28.LineSpacing = 0F;
this.smartLabel28.Location = new System.Drawing.Point(3, 198);
this.smartLabel28.Name = "smartLabel28";
@ -798,7 +835,7 @@
this.labelMaxValue3.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue3.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue3.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue3.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue3.LineSpacing = 0F;
this.labelMaxValue3.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue3.Name = "labelMaxValue3";
@ -821,7 +858,7 @@
this.smartLabel30.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel30.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel30.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel30.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel30.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel30.LineSpacing = 0F;
this.smartLabel30.Location = new System.Drawing.Point(3, 176);
this.smartLabel30.Name = "smartLabel30";
@ -844,7 +881,7 @@
this.labelCurrentValue3.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue3.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue3.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue3.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue3.LineSpacing = 0F;
this.labelCurrentValue3.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue3.Name = "labelCurrentValue3";
@ -867,7 +904,7 @@
this.smartLabel32.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel32.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel32.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel32.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel32.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel32.LineSpacing = 0F;
this.smartLabel32.Location = new System.Drawing.Point(3, 154);
this.smartLabel32.Name = "smartLabel32";
@ -965,7 +1002,7 @@
this.labelResult4_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult4_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult4_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult4_1.Font = new System.Drawing.Font("New Gulim", 48F, System.Drawing.FontStyle.Bold);
this.labelResult4_1.Font = new System.Drawing.Font("새굴림", 48F, System.Drawing.FontStyle.Bold);
this.labelResult4_1.LineSpacing = 0F;
this.labelResult4_1.Location = new System.Drawing.Point(3, 42);
this.labelResult4_1.Name = "labelResult4_1";
@ -1002,7 +1039,7 @@
this.labelResultSD4.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD4.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD4.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD4.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD4.LineSpacing = 0F;
this.labelResultSD4.Location = new System.Drawing.Point(89, 254);
this.labelResultSD4.Name = "labelResultSD4";
@ -1025,7 +1062,7 @@
this.smartLabel34.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel34.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel34.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel34.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel34.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel34.LineSpacing = 0F;
this.smartLabel34.Location = new System.Drawing.Point(3, 254);
this.smartLabel34.Name = "smartLabel34";
@ -1048,7 +1085,7 @@
this.labelResult4.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult4.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult4.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult4.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult4.LineSpacing = 0F;
this.labelResult4.Location = new System.Drawing.Point(89, 232);
this.labelResult4.Name = "labelResult4";
@ -1071,7 +1108,7 @@
this.smartLabel36.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel36.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel36.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel36.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel36.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel36.LineSpacing = 0F;
this.smartLabel36.Location = new System.Drawing.Point(3, 232);
this.smartLabel36.Name = "smartLabel36";
@ -1094,7 +1131,7 @@
this.labelStDev4.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev4.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev4.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev4.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev4.LineSpacing = 0F;
this.labelStDev4.Location = new System.Drawing.Point(89, 198);
this.labelStDev4.Name = "labelStDev4";
@ -1117,7 +1154,7 @@
this.smartLabel38.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel38.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel38.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel38.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel38.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel38.LineSpacing = 0F;
this.smartLabel38.Location = new System.Drawing.Point(3, 198);
this.smartLabel38.Name = "smartLabel38";
@ -1140,7 +1177,7 @@
this.labelMaxValue4.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue4.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue4.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue4.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue4.LineSpacing = 0F;
this.labelMaxValue4.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue4.Name = "labelMaxValue4";
@ -1163,7 +1200,7 @@
this.smartLabel40.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel40.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel40.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel40.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel40.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel40.LineSpacing = 0F;
this.smartLabel40.Location = new System.Drawing.Point(3, 176);
this.smartLabel40.Name = "smartLabel40";
@ -1186,7 +1223,7 @@
this.labelCurrentValue4.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue4.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue4.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue4.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue4.LineSpacing = 0F;
this.labelCurrentValue4.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue4.Name = "labelCurrentValue4";
@ -1209,7 +1246,7 @@
this.smartLabel42.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel42.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel42.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel42.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel42.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel42.LineSpacing = 0F;
this.smartLabel42.Location = new System.Drawing.Point(3, 154);
this.smartLabel42.Name = "smartLabel42";
@ -1302,7 +1339,7 @@
this.labelResult1_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult1_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult1_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult1_1.Font = new System.Drawing.Font("New Gulim", 48F, System.Drawing.FontStyle.Bold);
this.labelResult1_1.Font = new System.Drawing.Font("새굴림", 48F, System.Drawing.FontStyle.Bold);
this.labelResult1_1.LineSpacing = 0F;
this.labelResult1_1.Location = new System.Drawing.Point(3, 42);
this.labelResult1_1.Name = "labelResult1_1";
@ -1339,7 +1376,7 @@
this.labelResultSD1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD1.LineSpacing = 0F;
this.labelResultSD1.Location = new System.Drawing.Point(89, 254);
this.labelResultSD1.Name = "labelResultSD1";
@ -1362,7 +1399,7 @@
this.smartLabel10.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel10.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel10.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel10.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel10.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel10.LineSpacing = 0F;
this.smartLabel10.Location = new System.Drawing.Point(3, 254);
this.smartLabel10.Name = "smartLabel10";
@ -1385,7 +1422,7 @@
this.labelResult1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult1.LineSpacing = 0F;
this.labelResult1.Location = new System.Drawing.Point(89, 232);
this.labelResult1.Name = "labelResult1";
@ -1408,7 +1445,7 @@
this.smartLabel12.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel12.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel12.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel12.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel12.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel12.LineSpacing = 0F;
this.smartLabel12.Location = new System.Drawing.Point(3, 232);
this.smartLabel12.Name = "smartLabel12";
@ -1431,7 +1468,7 @@
this.labelStDev1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev1.LineSpacing = 0F;
this.labelStDev1.Location = new System.Drawing.Point(89, 198);
this.labelStDev1.Name = "labelStDev1";
@ -1454,7 +1491,7 @@
this.smartLabel8.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel8.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel8.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel8.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel8.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel8.LineSpacing = 0F;
this.smartLabel8.Location = new System.Drawing.Point(3, 198);
this.smartLabel8.Name = "smartLabel8";
@ -1477,7 +1514,7 @@
this.labelMaxValue1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue1.LineSpacing = 0F;
this.labelMaxValue1.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue1.Name = "labelMaxValue1";
@ -1500,7 +1537,7 @@
this.smartLabel6.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel6.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel6.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel6.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel6.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel6.LineSpacing = 0F;
this.smartLabel6.Location = new System.Drawing.Point(3, 176);
this.smartLabel6.Name = "smartLabel6";
@ -1523,7 +1560,7 @@
this.smartLabel61.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel61.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel61.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel61.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel61.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel61.LineSpacing = 0F;
this.smartLabel61.Location = new System.Drawing.Point(399, 392);
this.smartLabel61.Name = "smartLabel61";
@ -1546,7 +1583,7 @@
this.labelCurrentValue1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue1.LineSpacing = 0F;
this.labelCurrentValue1.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue1.Name = "labelCurrentValue1";
@ -1569,7 +1606,7 @@
this.smartLabel3.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel3.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel3.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel3.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel3.LineSpacing = 0F;
this.smartLabel3.Location = new System.Drawing.Point(3, 154);
this.smartLabel3.Name = "smartLabel3";
@ -1673,7 +1710,7 @@
this.labelResult2_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult2_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult2_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult2_1.Font = new System.Drawing.Font("New Gulim", 48F, System.Drawing.FontStyle.Bold);
this.labelResult2_1.Font = new System.Drawing.Font("새굴림", 48F, System.Drawing.FontStyle.Bold);
this.labelResult2_1.LineSpacing = 0F;
this.labelResult2_1.Location = new System.Drawing.Point(3, 42);
this.labelResult2_1.Name = "labelResult2_1";
@ -1697,7 +1734,7 @@
this.labelResultSD2.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD2.LineSpacing = 0F;
this.labelResultSD2.Location = new System.Drawing.Point(89, 254);
this.labelResultSD2.Name = "labelResultSD2";
@ -1720,7 +1757,7 @@
this.smartLabel14.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel14.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel14.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel14.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel14.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel14.LineSpacing = 0F;
this.smartLabel14.Location = new System.Drawing.Point(3, 254);
this.smartLabel14.Name = "smartLabel14";
@ -1743,7 +1780,7 @@
this.labelResult2.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult2.LineSpacing = 0F;
this.labelResult2.Location = new System.Drawing.Point(89, 232);
this.labelResult2.Name = "labelResult2";
@ -1766,7 +1803,7 @@
this.smartLabel16.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel16.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel16.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel16.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel16.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel16.LineSpacing = 0F;
this.smartLabel16.Location = new System.Drawing.Point(3, 232);
this.smartLabel16.Name = "smartLabel16";
@ -1789,7 +1826,7 @@
this.labelStDev2.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev2.LineSpacing = 0F;
this.labelStDev2.Location = new System.Drawing.Point(89, 198);
this.labelStDev2.Name = "labelStDev2";
@ -1812,7 +1849,7 @@
this.smartLabel18.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel18.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel18.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel18.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel18.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel18.LineSpacing = 0F;
this.smartLabel18.Location = new System.Drawing.Point(3, 198);
this.smartLabel18.Name = "smartLabel18";
@ -1835,7 +1872,7 @@
this.labelMaxValue2.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue2.LineSpacing = 0F;
this.labelMaxValue2.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue2.Name = "labelMaxValue2";
@ -1858,7 +1895,7 @@
this.smartLabel20.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel20.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel20.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel20.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel20.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel20.LineSpacing = 0F;
this.smartLabel20.Location = new System.Drawing.Point(3, 176);
this.smartLabel20.Name = "smartLabel20";
@ -1881,7 +1918,7 @@
this.labelCurrentValue2.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue2.LineSpacing = 0F;
this.labelCurrentValue2.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue2.Name = "labelCurrentValue2";
@ -1904,7 +1941,7 @@
this.smartLabel22.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel22.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel22.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel22.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel22.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel22.LineSpacing = 0F;
this.smartLabel22.Location = new System.Drawing.Point(3, 154);
this.smartLabel22.Name = "smartLabel22";
@ -1995,7 +2032,7 @@
this.labelResult5_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult5_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult5_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult5_1.Font = new System.Drawing.Font("New Gulim", 20F, System.Drawing.FontStyle.Bold);
this.labelResult5_1.Font = new System.Drawing.Font("새굴림", 20F, System.Drawing.FontStyle.Bold);
this.labelResult5_1.LineSpacing = 0F;
this.labelResult5_1.Location = new System.Drawing.Point(3, 42);
this.labelResult5_1.Name = "labelResult5_1";
@ -2032,7 +2069,7 @@
this.labelResultSD5.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD5.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD5.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD5.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD5.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD5.LineSpacing = 0F;
this.labelResultSD5.Location = new System.Drawing.Point(89, 254);
this.labelResultSD5.Name = "labelResultSD5";
@ -2055,7 +2092,7 @@
this.smartLabel44.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel44.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel44.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel44.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel44.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel44.LineSpacing = 0F;
this.smartLabel44.Location = new System.Drawing.Point(3, 254);
this.smartLabel44.Name = "smartLabel44";
@ -2078,7 +2115,7 @@
this.labelResult5.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult5.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult5.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult5.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult5.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult5.LineSpacing = 0F;
this.labelResult5.Location = new System.Drawing.Point(89, 232);
this.labelResult5.Name = "labelResult5";
@ -2101,7 +2138,7 @@
this.smartLabel46.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel46.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel46.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel46.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel46.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel46.LineSpacing = 0F;
this.smartLabel46.Location = new System.Drawing.Point(3, 232);
this.smartLabel46.Name = "smartLabel46";
@ -2124,7 +2161,7 @@
this.labelStDev5.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev5.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev5.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev5.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev5.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev5.LineSpacing = 0F;
this.labelStDev5.Location = new System.Drawing.Point(89, 198);
this.labelStDev5.Name = "labelStDev5";
@ -2147,7 +2184,7 @@
this.smartLabel48.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel48.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel48.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel48.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel48.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel48.LineSpacing = 0F;
this.smartLabel48.Location = new System.Drawing.Point(3, 198);
this.smartLabel48.Name = "smartLabel48";
@ -2170,7 +2207,7 @@
this.labelMaxValue5.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue5.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue5.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue5.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue5.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue5.LineSpacing = 0F;
this.labelMaxValue5.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue5.Name = "labelMaxValue5";
@ -2193,7 +2230,7 @@
this.smartLabel50.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel50.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel50.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel50.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel50.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel50.LineSpacing = 0F;
this.smartLabel50.Location = new System.Drawing.Point(3, 176);
this.smartLabel50.Name = "smartLabel50";
@ -2216,7 +2253,7 @@
this.labelCurrentValue5.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue5.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue5.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue5.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue5.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue5.LineSpacing = 0F;
this.labelCurrentValue5.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue5.Name = "labelCurrentValue5";
@ -2239,7 +2276,7 @@
this.smartLabel52.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel52.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel52.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel52.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel52.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel52.LineSpacing = 0F;
this.smartLabel52.Location = new System.Drawing.Point(3, 154);
this.smartLabel52.Name = "smartLabel52";
@ -2331,7 +2368,7 @@
this.labelResult9_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult9_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult9_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult9_1.Font = new System.Drawing.Font("New Gulim", 40F, System.Drawing.FontStyle.Bold);
this.labelResult9_1.Font = new System.Drawing.Font("새굴림", 40F, System.Drawing.FontStyle.Bold);
this.labelResult9_1.LineSpacing = 0F;
this.labelResult9_1.Location = new System.Drawing.Point(3, 42);
this.labelResult9_1.Name = "labelResult9_1";
@ -2367,7 +2404,7 @@
this.labelResultSD9.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD9.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD9.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD9.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD9.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD9.LineSpacing = 0F;
this.labelResultSD9.Location = new System.Drawing.Point(89, 254);
this.labelResultSD9.Name = "labelResultSD9";
@ -2390,7 +2427,7 @@
this.smartLabel64.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel64.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel64.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel64.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel64.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel64.LineSpacing = 0F;
this.smartLabel64.Location = new System.Drawing.Point(3, 254);
this.smartLabel64.Name = "smartLabel64";
@ -2413,7 +2450,7 @@
this.labelResult9.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult9.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult9.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult9.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult9.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult9.LineSpacing = 0F;
this.labelResult9.Location = new System.Drawing.Point(89, 232);
this.labelResult9.Name = "labelResult9";
@ -2436,7 +2473,7 @@
this.smartLabel66.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel66.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel66.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel66.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel66.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel66.LineSpacing = 0F;
this.smartLabel66.Location = new System.Drawing.Point(3, 232);
this.smartLabel66.Name = "smartLabel66";
@ -2459,7 +2496,7 @@
this.labelStDev9.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev9.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev9.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev9.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev9.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev9.LineSpacing = 0F;
this.labelStDev9.Location = new System.Drawing.Point(89, 198);
this.labelStDev9.Name = "labelStDev9";
@ -2482,7 +2519,7 @@
this.smartLabel68.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel68.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel68.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel68.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel68.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel68.LineSpacing = 0F;
this.smartLabel68.Location = new System.Drawing.Point(3, 198);
this.smartLabel68.Name = "smartLabel68";
@ -2505,7 +2542,7 @@
this.labelMaxValue9.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue9.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue9.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue9.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue9.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue9.LineSpacing = 0F;
this.labelMaxValue9.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue9.Name = "labelMaxValue9";
@ -2528,7 +2565,7 @@
this.smartLabel70.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel70.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel70.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel70.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel70.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel70.LineSpacing = 0F;
this.smartLabel70.Location = new System.Drawing.Point(3, 176);
this.smartLabel70.Name = "smartLabel70";
@ -2551,7 +2588,7 @@
this.labelCurrentValue9.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue9.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue9.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue9.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue9.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue9.LineSpacing = 0F;
this.labelCurrentValue9.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue9.Name = "labelCurrentValue9";
@ -2574,7 +2611,7 @@
this.smartLabel72.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel72.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel72.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel72.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel72.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel72.LineSpacing = 0F;
this.smartLabel72.Location = new System.Drawing.Point(3, 154);
this.smartLabel72.Name = "smartLabel72";
@ -2850,7 +2887,7 @@
this.labelResult10_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult10_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult10_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult10_1.Font = new System.Drawing.Font("New Gulim", 40F, System.Drawing.FontStyle.Bold);
this.labelResult10_1.Font = new System.Drawing.Font("새굴림", 40F, System.Drawing.FontStyle.Bold);
this.labelResult10_1.LineSpacing = 0F;
this.labelResult10_1.Location = new System.Drawing.Point(3, 42);
this.labelResult10_1.Name = "labelResult10_1";
@ -2873,7 +2910,7 @@
this.labelCurrentValue10.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue10.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue10.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue10.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue10.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue10.LineSpacing = 0F;
this.labelCurrentValue10.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue10.Name = "labelCurrentValue10";
@ -2909,7 +2946,7 @@
this.labelResultSD10.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD10.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD10.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD10.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD10.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD10.LineSpacing = 0F;
this.labelResultSD10.Location = new System.Drawing.Point(89, 254);
this.labelResultSD10.Name = "labelResultSD10";
@ -2932,7 +2969,7 @@
this.smartLabel54.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel54.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel54.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel54.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel54.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel54.LineSpacing = 0F;
this.smartLabel54.Location = new System.Drawing.Point(3, 254);
this.smartLabel54.Name = "smartLabel54";
@ -2955,7 +2992,7 @@
this.labelResult10.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult10.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult10.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult10.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult10.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult10.LineSpacing = 0F;
this.labelResult10.Location = new System.Drawing.Point(89, 232);
this.labelResult10.Name = "labelResult10";
@ -2978,7 +3015,7 @@
this.smartLabel56.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel56.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel56.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel56.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel56.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel56.LineSpacing = 0F;
this.smartLabel56.Location = new System.Drawing.Point(3, 232);
this.smartLabel56.Name = "smartLabel56";
@ -3001,7 +3038,7 @@
this.labelStDev10.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev10.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev10.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev10.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev10.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev10.LineSpacing = 0F;
this.labelStDev10.Location = new System.Drawing.Point(89, 198);
this.labelStDev10.Name = "labelStDev10";
@ -3024,7 +3061,7 @@
this.smartLabel58.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel58.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel58.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel58.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel58.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel58.LineSpacing = 0F;
this.smartLabel58.Location = new System.Drawing.Point(3, 198);
this.smartLabel58.Name = "smartLabel58";
@ -3047,7 +3084,7 @@
this.labelMaxValue10.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue10.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue10.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue10.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue10.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue10.LineSpacing = 0F;
this.labelMaxValue10.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue10.Name = "labelMaxValue10";
@ -3070,7 +3107,7 @@
this.smartLabel60.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel60.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel60.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel60.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel60.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel60.LineSpacing = 0F;
this.smartLabel60.Location = new System.Drawing.Point(3, 176);
this.smartLabel60.Name = "smartLabel60";
@ -3093,7 +3130,7 @@
this.smartLabel62.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel62.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel62.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel62.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel62.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel62.LineSpacing = 0F;
this.smartLabel62.Location = new System.Drawing.Point(3, 154);
this.smartLabel62.Name = "smartLabel62";
@ -3185,7 +3222,7 @@
this.labelResult8_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult8_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult8_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult8_1.Font = new System.Drawing.Font("New Gulim", 40F, System.Drawing.FontStyle.Bold);
this.labelResult8_1.Font = new System.Drawing.Font("새굴림", 40F, System.Drawing.FontStyle.Bold);
this.labelResult8_1.LineSpacing = 0F;
this.labelResult8_1.Location = new System.Drawing.Point(3, 42);
this.labelResult8_1.Name = "labelResult8_1";
@ -3221,7 +3258,7 @@
this.labelResultSD8.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD8.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD8.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD8.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD8.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD8.LineSpacing = 0F;
this.labelResultSD8.Location = new System.Drawing.Point(89, 254);
this.labelResultSD8.Name = "labelResultSD8";
@ -3244,7 +3281,7 @@
this.smartLabel74.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel74.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel74.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel74.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel74.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel74.LineSpacing = 0F;
this.smartLabel74.Location = new System.Drawing.Point(3, 254);
this.smartLabel74.Name = "smartLabel74";
@ -3267,7 +3304,7 @@
this.labelResult8.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult8.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult8.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult8.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult8.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult8.LineSpacing = 0F;
this.labelResult8.Location = new System.Drawing.Point(89, 232);
this.labelResult8.Name = "labelResult8";
@ -3290,7 +3327,7 @@
this.smartLabel76.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel76.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel76.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel76.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel76.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel76.LineSpacing = 0F;
this.smartLabel76.Location = new System.Drawing.Point(3, 232);
this.smartLabel76.Name = "smartLabel76";
@ -3313,7 +3350,7 @@
this.labelStDev8.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev8.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev8.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev8.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev8.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev8.LineSpacing = 0F;
this.labelStDev8.Location = new System.Drawing.Point(89, 198);
this.labelStDev8.Name = "labelStDev8";
@ -3336,7 +3373,7 @@
this.smartLabel78.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel78.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel78.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel78.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel78.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel78.LineSpacing = 0F;
this.smartLabel78.Location = new System.Drawing.Point(3, 198);
this.smartLabel78.Name = "smartLabel78";
@ -3359,7 +3396,7 @@
this.labelMaxValue8.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue8.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue8.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue8.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue8.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue8.LineSpacing = 0F;
this.labelMaxValue8.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue8.Name = "labelMaxValue8";
@ -3382,7 +3419,7 @@
this.smartLabel80.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel80.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel80.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel80.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel80.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel80.LineSpacing = 0F;
this.smartLabel80.Location = new System.Drawing.Point(3, 176);
this.smartLabel80.Name = "smartLabel80";
@ -3405,7 +3442,7 @@
this.labelCurrentValue8.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue8.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue8.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue8.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue8.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue8.LineSpacing = 0F;
this.labelCurrentValue8.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue8.Name = "labelCurrentValue8";
@ -3428,7 +3465,7 @@
this.smartLabel82.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel82.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel82.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel82.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel82.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel82.LineSpacing = 0F;
this.smartLabel82.Location = new System.Drawing.Point(3, 154);
this.smartLabel82.Name = "smartLabel82";
@ -3520,7 +3557,7 @@
this.labelResult7_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult7_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult7_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult7_1.Font = new System.Drawing.Font("New Gulim", 40F, System.Drawing.FontStyle.Bold);
this.labelResult7_1.Font = new System.Drawing.Font("새굴림", 40F, System.Drawing.FontStyle.Bold);
this.labelResult7_1.LineSpacing = 0F;
this.labelResult7_1.Location = new System.Drawing.Point(3, 42);
this.labelResult7_1.Name = "labelResult7_1";
@ -3556,7 +3593,7 @@
this.labelResultSD7.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD7.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD7.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD7.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD7.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD7.LineSpacing = 0F;
this.labelResultSD7.Location = new System.Drawing.Point(89, 254);
this.labelResultSD7.Name = "labelResultSD7";
@ -3579,7 +3616,7 @@
this.smartLabel84.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel84.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel84.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel84.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel84.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel84.LineSpacing = 0F;
this.smartLabel84.Location = new System.Drawing.Point(3, 254);
this.smartLabel84.Name = "smartLabel84";
@ -3602,7 +3639,7 @@
this.labelResult7.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult7.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult7.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult7.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult7.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult7.LineSpacing = 0F;
this.labelResult7.Location = new System.Drawing.Point(89, 232);
this.labelResult7.Name = "labelResult7";
@ -3625,7 +3662,7 @@
this.smartLabel86.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel86.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel86.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel86.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel86.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel86.LineSpacing = 0F;
this.smartLabel86.Location = new System.Drawing.Point(3, 232);
this.smartLabel86.Name = "smartLabel86";
@ -3648,7 +3685,7 @@
this.labelStDev7.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev7.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev7.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev7.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev7.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev7.LineSpacing = 0F;
this.labelStDev7.Location = new System.Drawing.Point(89, 198);
this.labelStDev7.Name = "labelStDev7";
@ -3671,7 +3708,7 @@
this.smartLabel88.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel88.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel88.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel88.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel88.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel88.LineSpacing = 0F;
this.smartLabel88.Location = new System.Drawing.Point(3, 198);
this.smartLabel88.Name = "smartLabel88";
@ -3694,7 +3731,7 @@
this.labelMaxValue7.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue7.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue7.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue7.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue7.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue7.LineSpacing = 0F;
this.labelMaxValue7.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue7.Name = "labelMaxValue7";
@ -3717,7 +3754,7 @@
this.smartLabel90.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel90.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel90.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel90.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel90.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel90.LineSpacing = 0F;
this.smartLabel90.Location = new System.Drawing.Point(3, 176);
this.smartLabel90.Name = "smartLabel90";
@ -3740,7 +3777,7 @@
this.labelCurrentValue7.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue7.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue7.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue7.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue7.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue7.LineSpacing = 0F;
this.labelCurrentValue7.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue7.Name = "labelCurrentValue7";
@ -3763,7 +3800,7 @@
this.smartLabel92.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel92.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel92.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel92.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel92.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel92.LineSpacing = 0F;
this.smartLabel92.Location = new System.Drawing.Point(3, 154);
this.smartLabel92.Name = "smartLabel92";
@ -3855,7 +3892,7 @@
this.labelResult6_1.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult6_1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult6_1.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult6_1.Font = new System.Drawing.Font("New Gulim", 20F, System.Drawing.FontStyle.Bold);
this.labelResult6_1.Font = new System.Drawing.Font("새굴림", 20F, System.Drawing.FontStyle.Bold);
this.labelResult6_1.LineSpacing = 0F;
this.labelResult6_1.Location = new System.Drawing.Point(3, 42);
this.labelResult6_1.Name = "labelResult6_1";
@ -3891,7 +3928,7 @@
this.labelResultSD6.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResultSD6.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResultSD6.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResultSD6.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD6.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResultSD6.LineSpacing = 0F;
this.labelResultSD6.Location = new System.Drawing.Point(89, 254);
this.labelResultSD6.Name = "labelResultSD6";
@ -3914,7 +3951,7 @@
this.smartLabel94.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel94.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel94.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel94.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel94.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel94.LineSpacing = 0F;
this.smartLabel94.Location = new System.Drawing.Point(3, 254);
this.smartLabel94.Name = "smartLabel94";
@ -3937,7 +3974,7 @@
this.labelResult6.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelResult6.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelResult6.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelResult6.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelResult6.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelResult6.LineSpacing = 0F;
this.labelResult6.Location = new System.Drawing.Point(89, 232);
this.labelResult6.Name = "labelResult6";
@ -3960,7 +3997,7 @@
this.smartLabel96.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel96.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel96.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel96.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel96.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel96.LineSpacing = 0F;
this.smartLabel96.Location = new System.Drawing.Point(3, 232);
this.smartLabel96.Name = "smartLabel96";
@ -3983,7 +4020,7 @@
this.labelStDev6.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelStDev6.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelStDev6.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelStDev6.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev6.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelStDev6.LineSpacing = 0F;
this.labelStDev6.Location = new System.Drawing.Point(89, 198);
this.labelStDev6.Name = "labelStDev6";
@ -4006,7 +4043,7 @@
this.smartLabel98.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel98.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel98.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel98.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel98.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel98.LineSpacing = 0F;
this.smartLabel98.Location = new System.Drawing.Point(3, 198);
this.smartLabel98.Name = "smartLabel98";
@ -4029,7 +4066,7 @@
this.labelMaxValue6.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelMaxValue6.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelMaxValue6.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelMaxValue6.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue6.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelMaxValue6.LineSpacing = 0F;
this.labelMaxValue6.Location = new System.Drawing.Point(89, 176);
this.labelMaxValue6.Name = "labelMaxValue6";
@ -4052,7 +4089,7 @@
this.smartLabel100.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel100.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel100.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel100.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel100.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel100.LineSpacing = 0F;
this.smartLabel100.Location = new System.Drawing.Point(3, 176);
this.smartLabel100.Name = "smartLabel100";
@ -4075,7 +4112,7 @@
this.labelCurrentValue6.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.labelCurrentValue6.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.labelCurrentValue6.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.labelCurrentValue6.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue6.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelCurrentValue6.LineSpacing = 0F;
this.labelCurrentValue6.Location = new System.Drawing.Point(89, 154);
this.labelCurrentValue6.Name = "labelCurrentValue6";
@ -4098,7 +4135,7 @@
this.smartLabel102.BackGroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.smartLabel102.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(27)))), ((int)(((byte)(42)))), ((int)(((byte)(82)))));
this.smartLabel102.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel102.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel102.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.smartLabel102.LineSpacing = 0F;
this.smartLabel102.Location = new System.Drawing.Point(3, 154);
this.smartLabel102.Name = "smartLabel102";
@ -4360,5 +4397,6 @@
private SmartX.SmartLabel labelResult1_1;
private SmartX.SmartLabel labelResult2_1;
private SmartX.SmartLabel labelResult5_1;
private SmartX.SmartButton buttonUser;
}
}

View File

@ -7,10 +7,13 @@ using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using SmartX;
using INT_PT002.DataStore;
using INT_PT002.Controls;
using INT_PT002.Part11_UserManager;
using INT_PT002.DialogForms;
namespace INT_PT002.Forms
{
@ -567,6 +570,128 @@ namespace INT_PT002.Forms
this.labelTime.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}
private bool UI_Invoke(ThreadStart invoker)
{
try
{
if (this.InvokeRequired)
{
if (this.IsDisposed)
return true;
this.Invoke(invoker);
}
else
{
invoker();
}
return true;
}
catch (Exception e)
{
return false;
}
}
private void Login()
{
DialogFormLogOn logOn = new DialogFormLogOn(this.ParentForm);
if (logOn.ShowDialog() == DialogResult.OK)
{
this.DisplayRefresh();
this.buttonUser.ButtonDown();
//this.ParentForm.TimerAutomaticLogout(true, this.ParentForm.SystemConfig.AutomaticLogout);
this.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.Login, "");
}
else
{
this.buttonUser.ButtonUp();
}
}
public void Logout()
{
this.ParentForm.SystemConfig.CURRENT_USER.Status = Define.E_UserStatus.LogOff;
this.buttonUser.ButtonUp();
this.DisplayRefresh();
// Part 11
this.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.Logout, "");
}
public void Part11AutomaticLogoutReset()
{
UserManager.UserManager_AutoLogoutTimeoutReset();
}
public void CallBackUserListLoginTimeoutDataEvent(UserManager.UserMgr_login_timeout_t user)
{
string code = "", message1 = "", message2 = "";
int warningTime = 0;
if (user.remainder_time != 0)
{
switch (this.ParentForm.SystemConfig.LANGUAGE)
{
case Define.E_LanguageID.Korean:
code = "로그인";
message1 = "잠시 후에 로그아웃 됩니다";
message2 = "";
break;
case Define.E_LanguageID.English:
code = "Login";
message1 = "You will be logged out after a while";
message2 = "";
break;
default:
break;
}
warningTime = this.ParentForm.FlagAutomaticLogoutWarningTime - 2;
this.UI_Invoke(delegate
{
DialogFormMessage msg = new DialogFormMessage(Define.E_MessageBoxIcon.Asterisk, code, message1, message2, warningTime);
msg.ShowDialog();
});
}
else
{
switch (this.ParentForm.SystemConfig.LANGUAGE)
{
case Define.E_LanguageID.Korean:
code = "Login";
message1 = "자동 로그아웃 되었습니다";
message2 = "";
break;
case Define.E_LanguageID.English:
code = "Login";
message1 = "automatically logged out";
message2 = "";
break;
default:
break;
}
// User Logout
UserManager.UserManager_UserLogout();
this.UI_Invoke(delegate
{
this.Logout();
});
this.UI_Invoke(delegate
{
DialogFormMessage msg = new DialogFormMessage(Define.E_MessageBoxIcon.Asterisk, code, message1, message2, 0);
msg.ShowDialog();
});
}
}
public void DisplayRefresh()
{
@ -607,6 +732,25 @@ namespace INT_PT002.Forms
this.timerOn.Enabled = true;
}
private void buttonUser_Click(object sender, EventArgs e)
{
// Automatic Logout Reset
if (this.ParentForm.SystemConfig.IS_LOGIN == true)
this.Part11AutomaticLogoutReset();
if (this.ParentForm.SystemConfig.CURRENT_USER.Status == Define.E_UserStatus.LogOff)
{
this.Login();
}
else
{
DialogFormYesNo msg = new DialogFormYesNo(this.ParentForm.SystemConfig.LANGUAGE, 12);
if (msg.ShowDialog() == DialogResult.Yes)
{
this.Logout();
}
}
}
private void smartDraw1_Click(object sender, EventArgs e)
{

View File

@ -54,7 +54,6 @@
this.pictureBox8 = new System.Windows.Forms.PictureBox();
this.pictureBox9 = new System.Windows.Forms.PictureBox();
this.pictureBox10 = new System.Windows.Forms.PictureBox();
this.pictureBox11 = new System.Windows.Forms.PictureBox();
this.pictureBox7 = new System.Windows.Forms.PictureBox();
this.pictureBox6 = new System.Windows.Forms.PictureBox();
this.pictureBox5 = new System.Windows.Forms.PictureBox();
@ -85,7 +84,6 @@
this.smartForm1.Controls.Add(this.pictureBox8);
this.smartForm1.Controls.Add(this.pictureBox9);
this.smartForm1.Controls.Add(this.pictureBox10);
this.smartForm1.Controls.Add(this.pictureBox11);
this.smartForm1.Controls.Add(this.pictureBox7);
this.smartForm1.Controls.Add(this.pictureBox6);
this.smartForm1.Controls.Add(this.pictureBox5);
@ -150,7 +148,7 @@
this.smartGroupBox1.Location = new System.Drawing.Point(24, 526);
this.smartGroupBox1.Name = "smartGroupBox1";
this.smartGroupBox1.RoundRadius = 5;
this.smartGroupBox1.Size = new System.Drawing.Size(979, 96);
this.smartGroupBox1.Size = new System.Drawing.Size(927, 96);
this.smartGroupBox1.TabIndex = 101;
this.smartGroupBox1.TextColor = System.Drawing.Color.White;
//
@ -162,7 +160,7 @@
this.smartLabel13.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel13.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel13.LineSpacing = 0F;
this.smartLabel13.Location = new System.Drawing.Point(845, 50);
this.smartLabel13.Location = new System.Drawing.Point(830, 50);
this.smartLabel13.Name = "smartLabel13";
this.smartLabel13.OverlapOptimize = true;
this.smartLabel13.PasswordChar = '\0';
@ -185,7 +183,7 @@
this.smartLabel14.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel14.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel14.LineSpacing = 0F;
this.smartLabel14.Location = new System.Drawing.Point(765, 50);
this.smartLabel14.Location = new System.Drawing.Point(750, 50);
this.smartLabel14.Name = "smartLabel14";
this.smartLabel14.OverlapOptimize = true;
this.smartLabel14.PasswordChar = '\0';
@ -208,7 +206,7 @@
this.smartLabel15.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel15.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel15.LineSpacing = 0F;
this.smartLabel15.Location = new System.Drawing.Point(685, 50);
this.smartLabel15.Location = new System.Drawing.Point(670, 50);
this.smartLabel15.Name = "smartLabel15";
this.smartLabel15.OverlapOptimize = true;
this.smartLabel15.PasswordChar = '\0';
@ -231,7 +229,7 @@
this.smartLabel16.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel16.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel16.LineSpacing = 0F;
this.smartLabel16.Location = new System.Drawing.Point(605, 50);
this.smartLabel16.Location = new System.Drawing.Point(590, 50);
this.smartLabel16.Name = "smartLabel16";
this.smartLabel16.OverlapOptimize = true;
this.smartLabel16.PasswordChar = '\0';
@ -254,7 +252,7 @@
this.smartLabel17.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel17.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel17.LineSpacing = 0F;
this.smartLabel17.Location = new System.Drawing.Point(525, 50);
this.smartLabel17.Location = new System.Drawing.Point(510, 50);
this.smartLabel17.Name = "smartLabel17";
this.smartLabel17.OverlapOptimize = true;
this.smartLabel17.PasswordChar = '\0';
@ -277,7 +275,7 @@
this.smartLabel18.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel18.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel18.LineSpacing = 0F;
this.smartLabel18.Location = new System.Drawing.Point(445, 50);
this.smartLabel18.Location = new System.Drawing.Point(430, 50);
this.smartLabel18.Name = "smartLabel18";
this.smartLabel18.OverlapOptimize = true;
this.smartLabel18.PasswordChar = '\0';
@ -300,7 +298,7 @@
this.smartLabel19.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel19.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel19.LineSpacing = 0F;
this.smartLabel19.Location = new System.Drawing.Point(365, 50);
this.smartLabel19.Location = new System.Drawing.Point(350, 50);
this.smartLabel19.Name = "smartLabel19";
this.smartLabel19.OverlapOptimize = true;
this.smartLabel19.PasswordChar = '\0';
@ -323,7 +321,7 @@
this.smartLabel20.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel20.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel20.LineSpacing = 0F;
this.smartLabel20.Location = new System.Drawing.Point(285, 50);
this.smartLabel20.Location = new System.Drawing.Point(270, 50);
this.smartLabel20.Name = "smartLabel20";
this.smartLabel20.OverlapOptimize = true;
this.smartLabel20.PasswordChar = '\0';
@ -346,7 +344,7 @@
this.smartLabel21.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel21.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel21.LineSpacing = 0F;
this.smartLabel21.Location = new System.Drawing.Point(205, 50);
this.smartLabel21.Location = new System.Drawing.Point(190, 50);
this.smartLabel21.Name = "smartLabel21";
this.smartLabel21.OverlapOptimize = true;
this.smartLabel21.PasswordChar = '\0';
@ -369,7 +367,7 @@
this.smartLabel22.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel22.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel22.LineSpacing = 0F;
this.smartLabel22.Location = new System.Drawing.Point(125, 50);
this.smartLabel22.Location = new System.Drawing.Point(110, 50);
this.smartLabel22.Name = "smartLabel22";
this.smartLabel22.OverlapOptimize = true;
this.smartLabel22.PasswordChar = '\0';
@ -392,7 +390,7 @@
this.smartLabel12.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel12.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel12.LineSpacing = 0F;
this.smartLabel12.Location = new System.Drawing.Point(37, 50);
this.smartLabel12.Location = new System.Drawing.Point(22, 50);
this.smartLabel12.Name = "smartLabel12";
this.smartLabel12.OverlapOptimize = true;
this.smartLabel12.PasswordChar = '\0';
@ -415,7 +413,7 @@
this.smartLabel7.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel7.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel7.LineSpacing = 0F;
this.smartLabel7.Location = new System.Drawing.Point(845, 20);
this.smartLabel7.Location = new System.Drawing.Point(830, 20);
this.smartLabel7.Name = "smartLabel7";
this.smartLabel7.OverlapOptimize = true;
this.smartLabel7.PasswordChar = '\0';
@ -438,7 +436,7 @@
this.smartLabel8.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel8.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel8.LineSpacing = 0F;
this.smartLabel8.Location = new System.Drawing.Point(765, 20);
this.smartLabel8.Location = new System.Drawing.Point(750, 20);
this.smartLabel8.Name = "smartLabel8";
this.smartLabel8.OverlapOptimize = true;
this.smartLabel8.PasswordChar = '\0';
@ -461,7 +459,7 @@
this.smartLabel9.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel9.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel9.LineSpacing = 0F;
this.smartLabel9.Location = new System.Drawing.Point(685, 20);
this.smartLabel9.Location = new System.Drawing.Point(670, 20);
this.smartLabel9.Name = "smartLabel9";
this.smartLabel9.OverlapOptimize = true;
this.smartLabel9.PasswordChar = '\0';
@ -484,7 +482,7 @@
this.smartLabel10.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel10.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel10.LineSpacing = 0F;
this.smartLabel10.Location = new System.Drawing.Point(605, 20);
this.smartLabel10.Location = new System.Drawing.Point(590, 20);
this.smartLabel10.Name = "smartLabel10";
this.smartLabel10.OverlapOptimize = true;
this.smartLabel10.PasswordChar = '\0';
@ -507,7 +505,7 @@
this.smartLabel11.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel11.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel11.LineSpacing = 0F;
this.smartLabel11.Location = new System.Drawing.Point(525, 20);
this.smartLabel11.Location = new System.Drawing.Point(510, 20);
this.smartLabel11.Name = "smartLabel11";
this.smartLabel11.OverlapOptimize = true;
this.smartLabel11.PasswordChar = '\0';
@ -530,7 +528,7 @@
this.smartLabel6.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel6.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel6.LineSpacing = 0F;
this.smartLabel6.Location = new System.Drawing.Point(445, 20);
this.smartLabel6.Location = new System.Drawing.Point(430, 20);
this.smartLabel6.Name = "smartLabel6";
this.smartLabel6.OverlapOptimize = true;
this.smartLabel6.PasswordChar = '\0';
@ -553,7 +551,7 @@
this.smartLabel5.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel5.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel5.LineSpacing = 0F;
this.smartLabel5.Location = new System.Drawing.Point(365, 20);
this.smartLabel5.Location = new System.Drawing.Point(350, 20);
this.smartLabel5.Name = "smartLabel5";
this.smartLabel5.OverlapOptimize = true;
this.smartLabel5.PasswordChar = '\0';
@ -576,7 +574,7 @@
this.smartLabel4.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel4.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel4.LineSpacing = 0F;
this.smartLabel4.Location = new System.Drawing.Point(285, 20);
this.smartLabel4.Location = new System.Drawing.Point(270, 20);
this.smartLabel4.Name = "smartLabel4";
this.smartLabel4.OverlapOptimize = true;
this.smartLabel4.PasswordChar = '\0';
@ -599,7 +597,7 @@
this.smartLabel3.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel3.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel3.LineSpacing = 0F;
this.smartLabel3.Location = new System.Drawing.Point(205, 20);
this.smartLabel3.Location = new System.Drawing.Point(190, 20);
this.smartLabel3.Name = "smartLabel3";
this.smartLabel3.OverlapOptimize = true;
this.smartLabel3.PasswordChar = '\0';
@ -622,7 +620,7 @@
this.smartLabel2.BorderStyle = SmartX.SmartLabel.BorderStyles.None;
this.smartLabel2.Font = new System.Drawing.Font("Arial", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel2.LineSpacing = 0F;
this.smartLabel2.Location = new System.Drawing.Point(125, 20);
this.smartLabel2.Location = new System.Drawing.Point(110, 20);
this.smartLabel2.Name = "smartLabel2";
this.smartLabel2.OverlapOptimize = true;
this.smartLabel2.PasswordChar = '\0';
@ -655,12 +653,6 @@
this.pictureBox10.Name = "pictureBox10";
this.pictureBox10.Size = new System.Drawing.Size(150, 120);
//
// pictureBox11
//
this.pictureBox11.Location = new System.Drawing.Point(34, 335);
this.pictureBox11.Name = "pictureBox11";
this.pictureBox11.Size = new System.Drawing.Size(150, 120);
//
// pictureBox7
//
this.pictureBox7.Location = new System.Drawing.Point(794, 335);
@ -972,7 +964,6 @@
private System.Windows.Forms.PictureBox pictureBox8;
private System.Windows.Forms.PictureBox pictureBox9;
private System.Windows.Forms.PictureBox pictureBox10;
private System.Windows.Forms.PictureBox pictureBox11;
private System.Windows.Forms.PictureBox pictureBox7;
private System.Windows.Forms.PictureBox pictureBox6;
private System.Windows.Forms.PictureBox pictureBox5;

View File

@ -18,32 +18,33 @@ namespace INT_PT002.Forms
private FormMain m_ParentForm;
// Recipe
private ControlMenuRecipeSetting Child_Recipe_Setting;
public ControlMenuRecipeSetting Child_Recipe_Setting;
// Setting
private ControlMenuSettingCommunication Child_Setting_Communication;
private ControlMenuSettingConfiguration Child_Setting_Configuration;
public ControlMenuSettingCommunication Child_Setting_Communication;
public ControlMenuSettingConfiguration Child_Setting_Configuration;
// User
private ControlMenuUserUserEditor Child_User_UserEditor;
public ControlMenuUserUserEditor Child_User_UserEditor;
public ControlMenuUserGroupEditor Child_User_GroupEditor;
// Manual
private ControlMenuManualIoTest Child_Manual_IoTest;
private ControlMenuManualMotorSetting Child_Manual_MotorSetting;
public ControlMenuManualIoTest Child_Manual_IoTest;
public ControlMenuManualMotorSetting Child_Manual_MotorSetting;
// Log
private ControlMenuLogHistory Child_Log_History;
private ControlMenuLogInspection Child_Log_Inspection;
private ControlMenuLogAlarm Child_Log_Alarm;
public ControlMenuLogHistory Child_Log_History;
public ControlMenuLogInspection Child_Log_Inspection;
public ControlMenuLogAlarm Child_Log_Alarm;
// System
private ControlMenuSystemInformation Child_System_Information;
private ControlMenuSystemTime Child_System_Time;
private ControlMenuSystemEquipment Child_System_Equipment;
private ControlMenuSystemUpdate Child_System_Update;
public ControlMenuSystemInformation Child_System_Information;
public ControlMenuSystemTime Child_System_Time;
public ControlMenuSystemEquipment Child_System_Equipment;
public ControlMenuSystemUpdate Child_System_Update;
private Define.E_TopMenuStore SelectedTopMenu;
private Define.E_MenuRecipeStore SelectedMenuRecipe;
private Define.E_MenuSettingStore SelectedMenuSetting;
private Define.E_MenuUserStore SelectedMenuUser;
private Define.E_MenuManualStore SelectedMenuManual;
private Define.E_MenuLogStore SelectedMenuLog;
private Define.E_MenuSystemStore SelectedMenuSystem;
public Define.E_TopMenuStore SelectedTopMenu;
public Define.E_MenuRecipeStore SelectedMenuRecipe;
public Define.E_MenuSettingStore SelectedMenuSetting;
public Define.E_MenuUserStore SelectedMenuUser;
public Define.E_MenuManualStore SelectedMenuManual;
public Define.E_MenuLogStore SelectedMenuLog;
public Define.E_MenuSystemStore SelectedMenuSystem;
#endregion
#region Constructor
@ -82,6 +83,7 @@ namespace INT_PT002.Forms
this.Child_Setting_Configuration = new ControlMenuSettingConfiguration(this);
this.Child_Setting_Communication = new ControlMenuSettingCommunication(this);
this.Child_User_UserEditor = new ControlMenuUserUserEditor(this);
this.Child_User_GroupEditor = new ControlMenuUserGroupEditor(this);
this.Child_Manual_IoTest = new ControlMenuManualIoTest(this);
this.Child_Manual_MotorSetting = new ControlMenuManualMotorSetting(this);
this.Child_Log_History = new ControlMenuLogHistory(this);
@ -96,6 +98,7 @@ namespace INT_PT002.Forms
this.Controls.Add(this.Child_Setting_Configuration);
this.Controls.Add(this.Child_Setting_Communication);
this.Controls.Add(this.Child_User_UserEditor);
this.Controls.Add(this.Child_User_GroupEditor);
this.Controls.Add(this.Child_Manual_IoTest);
this.Controls.Add(this.Child_Manual_MotorSetting);
this.Controls.Add(this.Child_Log_Alarm);
@ -110,6 +113,7 @@ namespace INT_PT002.Forms
this.Child_Setting_Configuration.Location = new Point(0, 39);
this.Child_Setting_Communication.Location = new Point(0, 39);
this.Child_User_UserEditor.Location = new Point(0, 39);
this.Child_User_GroupEditor.Location = new Point(0, 39);
this.Child_Manual_IoTest.Location = new Point(0, 39);
this.Child_Manual_MotorSetting.Location = new Point(0, 39);
this.Child_Log_Alarm.Location = new Point(0, 39);
@ -170,7 +174,8 @@ namespace INT_PT002.Forms
this.buttonLog.ButtonUp();
this.buttonSystem.ButtonUp();
this.buttonBottom1.ButtonText = "Editor";
this.buttonBottom1.ButtonText = "User Edit";
this.buttonBottom2.ButtonText = "Group Edit";
this.buttonBottom1.Visible = true;
this.buttonBottom2.Visible = false;
@ -306,6 +311,15 @@ namespace INT_PT002.Forms
this.buttonBottom3.ButtonUp();
this.buttonBottom4.ButtonUp();
break;
case Define.E_MenuUserStore._2_GroupEditor:
this.Child_User_GroupEditor.DisplayRefresh();
this.Child_User_GroupEditor.BringToFront();
this.buttonBottom1.ButtonUp();
this.buttonBottom2.ButtonDown();
this.buttonBottom3.ButtonUp();
this.buttonBottom4.ButtonUp();
break;
default:
break;
}

View File

@ -165,6 +165,12 @@
<Compile Include="Controls\Setting\ControlMenuSettingConfiguration.Designer.cs">
<DependentUpon>ControlMenuSettingConfiguration.cs</DependentUpon>
</Compile>
<Compile Include="Controls\User\ControlMenuUserGroupEditor.cs">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="Controls\User\ControlMenuUserGroupEditor.Designer.cs">
<DependentUpon>ControlMenuUserGroupEditor.cs</DependentUpon>
</Compile>
<Compile Include="Controls\User\ControlMenuUserUserEditor.cs">
<SubType>UserControl</SubType>
</Compile>
@ -208,6 +214,12 @@
<Compile Include="DialogForms\DialogFormPasswordKeyPad.designer.cs">
<DependentUpon>DialogFormPasswordKeyPad.cs</DependentUpon>
</Compile>
<Compile Include="DialogForms\DialogFormLogOn.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="DialogForms\DialogFormLogOn.Designer.cs">
<DependentUpon>DialogFormLogOn.cs</DependentUpon>
</Compile>
<Compile Include="Forms\FormConfiguration.cs">
<SubType>Form</SubType>
</Compile>
@ -245,6 +257,9 @@
<DependentUpon>FormMenu.cs</DependentUpon>
</Compile>
<Compile Include="Helper.cs" />
<Compile Include="Part11_UserManager\UserManager.cs" />
<Compile Include="Part11_UserManager\UserManager.Define.cs" />
<Compile Include="Part11_UserManager\UserManager.Structure.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="Controls\ControlMainDisplay.resx">
@ -303,10 +318,18 @@
<DependentUpon>ControlMenuSettingConfiguration.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Controls\User\ControlMenuUserGroupEditor.resx">
<DependentUpon>ControlMenuUserGroupEditor.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Controls\User\ControlMenuUserUserEditor.resx">
<DependentUpon>ControlMenuUserUserEditor.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="DialogForms\DialogFormLogOn.resx">
<DependentUpon>DialogFormLogOn.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="DialogForms\DialogFormNumKeyPad.resx">
<DependentUpon>DialogFormNumKeyPad.cs</DependentUpon>
<SubType>Designer</SubType>

View File

@ -0,0 +1,167 @@
using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace INT_PT002.Part11_UserManager
{
public partial class UserManager
{
private const string PathDll = "SD Card\\Run\\DllUserMgr.dll";
private delegate void fnUserMgrDebugCB(int level, StringBuilder pMessage);
private static fnUserMgrDebugCB fnUserMgrDebugCallBack;
private delegate void fnUserMgrNewUserCB(IntPtr pBuffer);
private static fnUserMgrNewUserCB fnUserMgrNewUserCallBack;
private delegate void fnUserMgrAddUserCB(ref UserMgr_user_add_t user_add);
private static fnUserMgrAddUserCB fnUserMgrAddUserCallBack;
private delegate void fnUserMgrModifyUserCB(ref UserMgr_user_modify_t user_mod);
private static fnUserMgrModifyUserCB fnUserMgrModifyUserCallBack;
private delegate void fnUserMgrModifyInfoCB(ref UserMgr_user_info_t user_info);
private static fnUserMgrModifyInfoCB fnUserMgrModifyInfoCallBack;
private delegate void fnUserMgrDelUserCB(ref UserMgr_user_del_t user_del);
private static fnUserMgrDelUserCB fnUserMgrDelUserCallBack;
private delegate void fnUserMgrUserLockCB(ref UserMgr_user_lock_t user_lock);
private static fnUserMgrUserLockCB fnUserMgrUserLockCallBack;
private delegate void fnUserMgrDefaultSettingCB(int status);
private static fnUserMgrDefaultSettingCB fnUserMgrDefaultSettingCallBack;
private delegate void fnUserMgrLoginCB(int status, IntPtr pBuffer);
private static fnUserMgrLoginCB fnUserMgrLoginCallBack;
private delegate void fnUserMgrLogoutCB(int status);
private static fnUserMgrLogoutCB fnUserMgrLogoutCallBack;
private delegate void fnUserMgrLoginTimeoutCB(ref UserMgr_login_timeout_t timeout);
private static fnUserMgrLoginTimeoutCB fnUserMgrLoginTimeoutCallBack;
private delegate void fnUserMgrGetListCB(ref UserMgr_user_list_t user_list);
private static fnUserMgrGetListCB fnUserMgrGetListCallBack;
private delegate void fnUserMgrGetListNameCB(ref UserMgr_user_list_name_t user_name);
private static fnUserMgrGetListNameCB fnUsermgrGetListNameCallBack;
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_DebugCB(fnUserMgrDebugCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_NewStatusCB(fnUserMgrNewUserCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_AddStatusCB(fnUserMgrAddUserCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_ModifyUserCB(fnUserMgrModifyUserCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_ModifyStatusCB(fnUserMgrModifyInfoCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_DelStatusCB(fnUserMgrDelUserCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_UserLockCB(fnUserMgrUserLockCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_DefaultSettingCB(fnUserMgrDefaultSettingCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_LoginStausCB(fnUserMgrLoginCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_LogoutStausCB(fnUserMgrLogoutCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_LoginTimeoutCB(fnUserMgrLoginTimeoutCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_GetListCB(fnUserMgrGetListCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Register_GetListNameCB(fnUserMgrGetListNameCB func);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_HelloWorld();
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Activation();
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern void DLL_UserMgr_Deactivation();
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserNew(IntPtr user_id, IntPtr user_pw, int fadmin, int expire_pw, int expire_account, IntPtr menuId);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserAdd(IntPtr user_id, IntPtr user_pw, int fadmin, int expire_pw, int expire_account, DateTime_t dateRegister, DateTime_t dateLogin);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserAddHistoryPW(IntPtr user_id, IntPtr user_pw);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserResetHistoryPW(IntPtr user_id);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserModify(IntPtr user_id, IntPtr user_pw, int fadmin, int expire_pw, int expire_account, IntPtr menuId);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserModifyPW(IntPtr user_id, IntPtr user_pw);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserModifyID(IntPtr user_org_id, IntPtr user_new_id);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserModifyOthers(IntPtr user_id, int fadmin, int expire_pw, int expire_account);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserDel(IntPtr user_id);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserAllDel_Default();
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserLockRelease(IntPtr user_id, bool lock_account, bool lock_password);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserLockGet(IntPtr user_id);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserLoginCB(IntPtr user_id, IntPtr user_pw);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserLoginDirect(IntPtr user_id, IntPtr user_pw, ref UserMgr_user_info_t user_info);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_UserLogout();
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_AutoLogoutTimeoutReset();
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_AutoLogoutTimeoutPause();
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_AutoLogoutSetTimeout(int timeout_min, int warning_timeout_sec);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_GetUserList(int index);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_GetUserListID(IntPtr user_id);
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_GetUserListName();
[DllImport(PathDll, CallingConvention = CallingConvention.Winapi)]
private static extern int DLL_UserMgr_SetFolder(IntPtr folder);
}
}

View File

@ -0,0 +1,361 @@
using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace INT_PT002.Part11_UserManager
{
public partial class UserManager
{
#region Field
// fnUserMgrDebugCB
public const int USERMGR_DBG_NORMAL = 0x0001;
public const int USERMGR_DBG_THREAD = 0x0002;
public const int USERMGR_DBG_LIST = 0x0004;
// fnUserMgrLoginCB
public const int USERMGR_LOGIN_STATUS_OK = 0x00;
public const int USERMGR_LOGIN_STATUS_ID_FAIL = 0x01;
public const int USERMGR_LOGIN_STATUS_PW_FAIL = 0x02;
// fnUserMgrLogoutCB
public const int USERMGR_LOGOUT_STATUS_OK = 0x00;
public const int USERMGR_LOGOUT_STATUS_FAIL = 0x01;
// fnUserMgrDelUserCB
//public const int USERMGR_DEL_STATUS_OK = 0x00;
//public const int USERMGR_DEL_STATUS_NOK = 0x01;
// lock_status
public const int USERMGR_LOCK_STATUS_NONE = 0x00;
public const int USERMGR_LOCK_STATUS_EXPIRE = 0x01;
public const int USERMGR_ID_MIN_LENGTH = 6;
public const int UERRMGR_ID_MAX_LENGTH = 20;
public const int USERMGR_PW_MIN_LENGTH = 6;
public const int USERMGR_PW_MAX_LENGTH = 20;
public const int MAX_USER_ID_LENGTH = 32;
public const int MAX_USER_PW_LEGNTH = 32;
public const int MAX_USER_HISTORY_PW_COUNT = 3;
public const int INVALID_VALUE = -1;
public const int USERMGR_USER_ADMINISTRATOR = 1;
public const int USERMGR_USER_NORMAL = 0;
public const int EXPIRE_PERIOD_PASSWORD_NOT_SUPPORT = 0;
public const int MAX_EXPIRE_PERIOD_PASSWORD = 90;
public const int DEFAULT_PASSWORD_EXPIRE_PERIOD = 90; // Days password change
public const int EXPIRE_PERIOD_ACCOUNT_NOT_SUPPORT = 0;
public const int MAX_EXPIRE_PERIOD_ACCOUNT = 180;
public const int DEFAULT_ACCOUNT_LOCK_PERIOD = 180; // Days login
public const int MAX_LOGIN_AUTO_TIMEOUT = 90;
public const int DEFAULT_LOGIN_WARNING_TIMEOUT_SEC = 60; // 60 sec during login, auto logout warning time
public const int DEFAULT_LOGIN_AUTO_TIMEOUT_MIN = 30; // 30 min during login, auto logout timeout
public const int USER_MENU_ID_MAX = 30; // MenuID_t buffer Size
#endregion
#region Enum E_user_mgr_status
public enum E_user_mgr_status
{
USER_MGR_STATUS_OK = 0x00,
// error status
USER_MGR_STATUS_ID_NOT_FOUND, // not found the user id
USER_MGR_STATUS_ID_DUPLICATE, // duplicate on id
USER_MGR_STATUS_ID_LENGTH_UNDER, // under the minimum length of id
USER_MGR_STATUS_ID_LENGTH_OVER, // over the maximum length of id
USER_MGR_STATUS_ID_CONT_LETTER, // continue characters or duplicate characters of id
USER_MGR_STATUS_ID_INVALID_CHAR, // include the invalid character on id
USER_MGR_STATUS_ID_ACCOUNT_LOCK,
USER_MGR_STATUS_PW_DUPLICATE_HISTORY, // duplicate on password history
USER_MGR_STATUS_PW_LENGTH_UNDER, // under the minimum length of password
USER_MGR_STATUS_PW_LENGTH_OVER, // over the maximum length of password
USER_MGR_STATUS_PW_CONT_LETTER, // continue characters or duplicate characters of password
USER_MGR_STATUS_PW_INVALID_CHAR, // include the invalid character on password
USER_MGR_STATUS_PW_EACH_MIN_CHAR, // not include minimum characters on password
USER_MGR_STATUS_PW_NOT_SAME, // password error
USER_MGR_STATUS_PW_PASSWORD_LOCK,
USER_MGR_STATUS_OTHER_OVER_PASSWORD_PERIOD, // over maximum password expire period (days)
USER_MGR_STATUS_OTHER_OVER_ACCOUNT_PERIOD, // over maximum account expire period (days)
USER_MGR_STATUS_OTHER_OVER_LOGIN_TIMEOUT, // over maximum auto logout time (minute)
USER_MGR_STATUS_MAX,
};
#endregion
#region Enum E_user_mgr_menu_id
public enum E_user_mgr_menu_id
{
USER_MENU_ID_PRODUCT_NO = 0x00,
USER_MENU_ID_WEIGHT_SETTING,
USER_MENU_ID_CLEAR,
USER_MENU_ID_TIME_SETTING,
USER_MENU_ID_INFORMATION,
USER_MENU_ID_DATA_BACKUP,
USER_MENU_ID_CALIBRATION,
USER_MENU_ID_CONFIGURATION,
USER_MENU_ID_UPDATE,
USER_MENU_ID_SYSTEM_SETTING,
USER_MENU_ID_FACTORY_RESET,
USER_MENU_ID_MOTOR_SETTING,
USER_MENU_ID_EQUIPMENT_SETTING,
USER_MENU_ID_IO_TEST,
USER_MENU_ID_USER_EDITOR,
USER_MENU_ID_DATA_STATISTICS,
USER_MENU_ID_RESERVE_16,
USER_MENU_ID_RESERVE_17,
USER_MENU_ID_RESERVE_18,
USER_MENU_ID_RESERVE_19,
USER_MENU_ID_RESERVE_20,
USER_MENU_ID_RESERVE_21,
USER_MENU_ID_RESERVE_22,
USER_MENU_ID_RESERVE_23,
USER_MENU_ID_RESERVE_24,
USER_MENU_ID_RESERVE_25,
USER_MENU_ID_RESERVE_26,
USER_MENU_ID_RESERVE_27,
USER_MENU_ID_RESERVE_28,
USER_MENU_ID_RESERVE_29,
USER_MENU_ID_MAX,
};
#endregion
#region Struct MenuID_t
[StructLayout(LayoutKind.Sequential)]
public struct MenuID_t
{
[MarshalAs(UnmanagedType.ByValArray, SizeConst = (int)E_user_mgr_menu_id.USER_MENU_ID_MAX)]
public bool[] fMenu;
}
#endregion
#region Struct DateTime_t
[StructLayout(LayoutKind.Sequential)]
public struct DateTime_t
{
[MarshalAs(UnmanagedType.U2)]
public UInt16 year;
[MarshalAs(UnmanagedType.U1)]
public byte month;
[MarshalAs(UnmanagedType.U1)]
public byte day;
[MarshalAs(UnmanagedType.U1)]
public byte hour;
[MarshalAs(UnmanagedType.U1)]
public byte minute;
[MarshalAs(UnmanagedType.U1)]
public byte second;
[MarshalAs(UnmanagedType.U1)]
public byte reserved;
public static int Size
{
get { return (int)(sizeof(UInt16) + 6); }
}
public void SetDate(UInt16 year, byte month, byte day)
{
this.year = year;
this.month = month;
this.day = day;
}
public void SetTime(byte hour, byte minute, byte second)
{
this.hour = hour;
this.minute = minute;
this.second = second;
}
public string GetDateTime()
{
string dateTime;
dateTime = string.Format("{0:D4}{1:D2}{2:D2}{3:D2}{4:D2}{5:D2}", year, month, day, hour, minute, second);
return dateTime;
}
}
#endregion
#region Struct UserMgr_user_info_t
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct UserMgr_user_info_t
{
[MarshalAs(UnmanagedType.I4)]
public Int32 status; // user_new_add_status_e
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_ID_LENGTH)]
public string user_id;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_PW_LEGNTH)]
public string user_pw;
[MarshalAs(UnmanagedType.I4)]
public Int32 fadmin;
[MarshalAs(UnmanagedType.I4)]
public Int32 expire_period_pw; // password lock
[MarshalAs(UnmanagedType.I4)]
public Int32 expire_period_account; // account lock
[MarshalAs(UnmanagedType.I4)]
public Int32 flock_status_account; // user ID (account) lock
[MarshalAs(UnmanagedType.I4)]
public Int32 flock_status_password; // password lock (need to change password)
[MarshalAs(UnmanagedType.Struct)]
public DateTime_t register_date; // date/time when the user password was registered or changed
[MarshalAs(UnmanagedType.Struct)]
public DateTime_t login_date; // date/time when the user was login
[MarshalAs(UnmanagedType.Struct)]
public DateTime_t expire_register_date;
[MarshalAs(UnmanagedType.Struct)]
public DateTime_t expire_account_date;
[MarshalAs(UnmanagedType.Struct)]
public MenuID_t menuID;
}
#endregion
#region Struct UserMgr_user_modify_t
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct UserMgr_user_modify_t
{
public int status;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_ID_LENGTH)]
public string user_id;
}
#endregion
#region Struct UserMgr_user_del_t
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct UserMgr_user_del_t
{
public int status;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_ID_LENGTH)]
public string user_id;
}
#endregion
#region Struct UserMgr_login_timeout_t
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct UserMgr_login_timeout_t
{
public int remainder_time;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_ID_LENGTH)]
public string user_id;
}
#endregion
#region Struct UserMgr_user_add_t
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct UserMgr_user_add_t
{
public int status;
public int flock_status_account;
public int flock_status_password;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_ID_LENGTH)]
public string user_id;
}
#endregion
#region Struct UserMgr_user_lock_t
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct UserMgr_user_lock_t
{
public int flock_status_account;
public int flock_status_password;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_ID_LENGTH)]
public string user_id;
}
#endregion
#region Struct UserMgr_user_list_t
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct UserMgr_user_list_t
{
[MarshalAs(UnmanagedType.I4)]
public int status; // user_new_add_status_e
[MarshalAs(UnmanagedType.I4)]
public int total_count;
[MarshalAs(UnmanagedType.I4)]
public int index;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_ID_LENGTH)]
public string user_id;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_PW_LEGNTH)]
public string user_pw;
[MarshalAs(UnmanagedType.I4)]
public Int32 fadmin;
[MarshalAs(UnmanagedType.I4)]
public Int32 expire_period_pw; // password lock
[MarshalAs(UnmanagedType.I4)]
public Int32 expire_period_account; // account lock
[MarshalAs(UnmanagedType.I4)]
public Int32 flock_status_account; // user ID (account) lock
[MarshalAs(UnmanagedType.I4)]
public Int32 flock_status_password; // password lock (need to change password)
[MarshalAs(UnmanagedType.Struct)]
public DateTime_t register_date; // date/time when the user password was registered or changed
[MarshalAs(UnmanagedType.Struct)]
public DateTime_t login_date; // date/time when the user was login
[MarshalAs(UnmanagedType.Struct)]
public DateTime_t expire_register_date;
[MarshalAs(UnmanagedType.Struct)]
public DateTime_t expire_account_date;
[MarshalAs(UnmanagedType.Struct)]
public MenuID_t menuID;
}
#endregion
#region Struct UserMgr_user_list_name_t
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct UserMgr_user_list_name_t
{
public int total_count;
public int index;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = MAX_USER_ID_LENGTH)]
public string user_id;
}
#endregion
}
}

View File

@ -0,0 +1,444 @@
using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace INT_PT002.Part11_UserManager
{
public partial class UserManager
{
public delegate void ObjectEventHandler(object data);
public static event ObjectEventHandler UserListNewDataEvent;
public static event ObjectEventHandler UserListAddDataEvent;
public static event ObjectEventHandler UserListModifyUserDataEvent;
public static event ObjectEventHandler UserListModifyInfoDataEvent;
public static event ObjectEventHandler UserListDeleteDataEvent;
public static event ObjectEventHandler UserListLockDataEvent;
public static event ObjectEventHandler UserListDefautSettingDataEvent;
public static event ObjectEventHandler UserListLoginTimeoutDataEvent;
public static event ObjectEventHandler UserListGetListDataEvent;
public static event ObjectEventHandler UserListGetListNameDataEvent;
public delegate void IntObjectEventHandler(int status, object data);
public static event IntObjectEventHandler UserListLoginDataEvent;
public delegate void IntEventHandler(int status);
public static event IntEventHandler UserListLogoutDataEvent;
public static void IntializeUserManager(string folder)
{
//Console.Write("Initialize User Manger \n");
// regisetr callback
fnUserMgrDebugCallBack = UserManager_DebugCallback;
DLL_UserMgr_Register_DebugCB(fnUserMgrDebugCallBack);
fnUserMgrNewUserCallBack = UserManager_NewUserCallBack;
DLL_UserMgr_Register_NewStatusCB(fnUserMgrNewUserCallBack);
fnUserMgrAddUserCallBack = UserManager_AddUserCallBack;
DLL_UserMgr_Register_AddStatusCB(fnUserMgrAddUserCallBack);
fnUserMgrModifyUserCallBack = UserManager_ModifyUserCallBack;
DLL_UserMgr_Register_ModifyUserCB(fnUserMgrModifyUserCallBack);
fnUserMgrModifyInfoCallBack = UserManager_ModifyInfoCallBack;
DLL_UserMgr_Register_ModifyStatusCB(fnUserMgrModifyInfoCallBack);
fnUserMgrDelUserCallBack = UserManager_DelUserCallBack;
DLL_UserMgr_Register_DelStatusCB(fnUserMgrDelUserCallBack);
fnUserMgrUserLockCallBack = UserManager_LockCallBack;
DLL_UserMgr_Register_UserLockCB(fnUserMgrUserLockCallBack);
fnUserMgrDefaultSettingCallBack = UserManager_DefaultSettingCallBack;
DLL_UserMgr_Register_DefaultSettingCB(fnUserMgrDefaultSettingCallBack);
fnUserMgrLoginCallBack = UserManager_LoginCallBack;
DLL_UserMgr_Register_LoginStausCB(fnUserMgrLoginCallBack);
fnUserMgrLogoutCallBack = UserManager_LogoutCallBack;
DLL_UserMgr_Register_LogoutStausCB(fnUserMgrLogoutCallBack);
fnUserMgrLoginTimeoutCallBack = UserManager_LoginTimeoutCallBack;
DLL_UserMgr_Register_LoginTimeoutCB(fnUserMgrLoginTimeoutCallBack);
fnUserMgrGetListCallBack = UserManager_GetListCallBack;
DLL_UserMgr_Register_GetListCB(fnUserMgrGetListCallBack);
fnUsermgrGetListNameCallBack = UserManager_GetListNameCallBack;
DLL_UserMgr_Register_GetListNameCB(fnUsermgrGetListNameCallBack);
// call the function
//DLL_UserMgr_HelloWorld();
DLL_UserMgr_Activation();
IntPtr pFolder = Marshal.StringToBSTR(folder);
DLL_UserMgr_SetFolder(pFolder);
// Test Only
//TestUserListData();
}
public static void TestUserListData()
{
DateTime_t regDateTime = new DateTime_t();
regDateTime.SetDate(2021, 10, 1);
regDateTime.SetTime(10, 11, 12);
DateTime_t loginDateTime = new DateTime_t();
loginDateTime.SetDate(2021, 9, 1);
loginDateTime.SetTime(10, 21, 12);
UserManager_UserAdd("Intech", "test12#$", 1, 90, 90, regDateTime, loginDateTime);
UserManager_UserAdd("Admin00", "test12#$", 1, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 2);
UserManager_UserAdd("Test101", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 3);
UserManager_UserAdd("Test102", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 4);
UserManager_UserAdd("Test103", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 5);
UserManager_UserAdd("Test104", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 6);
UserManager_UserAdd("Test105", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("Test123", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("Test321", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("ABC001", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("CBA001", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("AAA001", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("Test000", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("Test105", "test12#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("Test106", "test12", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("Test107", "test#$", 0, 90, 90, regDateTime, loginDateTime);
regDateTime.SetDate(2021, 10, 7);
UserManager_UserAdd("Test108", "1223#$%", 0, 90, 90, regDateTime, loginDateTime);
//UserManager_UserNew("Test200", "test12#$", 0, 20, 30);
DLL_UserMgr_GetUserListID(IntPtr.Zero);
}
public static void DeinitializeUserManger()
{
DLL_UserMgr_Register_DebugCB(null);
DLL_UserMgr_Register_NewStatusCB(null);
DLL_UserMgr_Deactivation();
}
#region UM_FUNCTION
public static void UserManager_GetUserList(String data)
{
if (String.IsNullOrEmpty(data) == true)
DLL_UserMgr_GetUserListID(IntPtr.Zero);
else
{
IntPtr pID = Marshal.StringToBSTR(data);
DLL_UserMgr_GetUserListID(pID);
}
}
public static void UserManager_UserAdd(String sID, String sPW, int fAdmin, int expire_period_pw, int expire_period_account, DateTime_t password_date, DateTime_t account_date)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
IntPtr pPW = Marshal.StringToBSTR(sPW.ToString());
DLL_UserMgr_UserAdd(pID, pPW, fAdmin, expire_period_pw, expire_period_account, password_date, account_date);
}
public static void UserManager_UserNew(String sID, String sPW, int fAdmin, int expire_period_pw, int expire_period_account, MenuID_t menuId)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
IntPtr pPW = Marshal.StringToBSTR(sPW.ToString());
IntPtr pMenuId = Marshal.AllocHGlobal(Marshal.SizeOf(menuId));
Marshal.StructureToPtr(menuId, pMenuId, false);
DLL_UserMgr_UserNew(pID, pPW, fAdmin, expire_period_pw, expire_period_account, pMenuId);
}
public static void UserManager_UserAddHistoryPW(String sID, String sHistoryPW)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
IntPtr pPW = Marshal.StringToBSTR(sHistoryPW.ToString());
DLL_UserMgr_UserAddHistoryPW(pID, pPW);
}
public static void UserManager_UserResetHistoryPW(String sID)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
DLL_UserMgr_UserResetHistoryPW(pID);
}
public static void UserManager_UserModify(String sID, String sPW, int fAdmin, int expire_period_pw, int expire_period_account, MenuID_t menuId)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
IntPtr pPW = Marshal.StringToBSTR(sPW.ToString());
IntPtr pMenuId = Marshal.AllocHGlobal(Marshal.SizeOf(menuId));
Marshal.StructureToPtr(menuId, pMenuId, false);
DLL_UserMgr_UserModify(pID, pPW, fAdmin, expire_period_pw, expire_period_account, pMenuId);
}
public static void UserManager_UserModifyPW(String sID, String sNewPW)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
IntPtr pPW = Marshal.StringToBSTR(sNewPW.ToString());
DLL_UserMgr_UserModifyPW(pID, pPW);
}
public static void UserManager_UserModifyID(String sID, String sNewID)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
IntPtr pNewID = Marshal.StringToBSTR(sNewID.ToString());
DLL_UserMgr_UserModifyID(pID, pNewID);
}
public static void UserManager_UserModifyOthers(String sID, int fadmin, int period_expire_pw, int period_expire_account)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
DLL_UserMgr_UserModifyOthers(pID, fadmin, period_expire_pw, period_expire_account);
}
public static void UserManager_UserDel(String sID)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
DLL_UserMgr_UserDel(pID);
}
public static void UserManager_UserAllDel()
{
DLL_UserMgr_UserAllDel_Default();
}
public static void UserManager_UserLockRelease(String sID, bool lock_account, bool lock_password)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
DLL_UserMgr_UserLockRelease(pID, lock_account, lock_password);
}
public static void UserManager_UserLockGet(String sID)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
DLL_UserMgr_UserLockGet(pID);
}
public static void UserManager_UserLoginCB(String sID, String sPW)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
IntPtr pPW = Marshal.StringToBSTR(sPW.ToString());
DLL_UserMgr_UserLoginCB(pID, pPW);
}
public static void UserManager_UserLoginDirect(string sID, string sPW, ref UserMgr_user_info_t user_info)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
IntPtr pPW = Marshal.StringToBSTR(sPW.ToString());
DLL_UserMgr_UserLoginDirect(pID, pPW, ref user_info);
}
public static void UserManager_UserLogout()
{
DLL_UserMgr_UserLogout();
}
public static void UserManager_AutoLogoutTimeoutReset()
{
DLL_UserMgr_AutoLogoutTimeoutReset();
}
public static void UserManager_AutoLogoutTimeoutPause()
{
DLL_UserMgr_AutoLogoutTimeoutPause();
}
public static void UserManager_AutoLogoutSetTimeout(int timeout_min, int warning_timeout_sec)
{
DLL_UserMgr_AutoLogoutSetTimeout(timeout_min, warning_timeout_sec);
}
public static void UserManager_GetUserList(int index)
{
DLL_UserMgr_GetUserList(index);
}
public static void UserManager_GetUserListID(String sID)
{
IntPtr pID = Marshal.StringToBSTR(sID.ToString());
DLL_UserMgr_GetUserListID(pID);
}
public static void UserManager_GetUserListName()
{
DLL_UserMgr_GetUserListName();
}
#endregion
#region UM_CALLBACK
private static void UserManager_GetListNameCallBack(ref UserMgr_user_list_name_t user_name)
{
try
{
if (UserListGetListNameDataEvent != null)
UserListGetListNameDataEvent(user_name);
}
catch
{
}
}
private static void UserManager_GetListCallBack(ref UserMgr_user_list_t user_list)
{
try
{
if (UserListGetListDataEvent != null)
UserListGetListDataEvent(user_list);
}
catch
{
}
}
private static void UserManager_LoginTimeoutCallBack(ref UserMgr_login_timeout_t timeout)
{
try
{
if (UserListLoginTimeoutDataEvent != null)
UserListLoginTimeoutDataEvent(timeout);
}
catch
{
}
}
private static void UserManager_LogoutCallBack(int status)
{
try
{
if (UserListLogoutDataEvent != null)
UserListLogoutDataEvent(status);
}
catch
{
}
}
private static void UserManager_LoginCallBack(int status, IntPtr pBuffer)
{
try
{
if (UserListLoginDataEvent != null)
UserListLoginDataEvent(status, pBuffer);
}
catch
{
}
}
private static void UserManager_LockCallBack(ref UserMgr_user_lock_t user_lock)
{
try
{
if (UserListLockDataEvent != null)
UserListLockDataEvent(user_lock);
}
catch
{
}
}
private static void UserManager_DefaultSettingCallBack(int status)
{
try
{
if (UserListDefautSettingDataEvent != null)
UserListDefautSettingDataEvent(status);
}
catch
{
}
}
private static void UserManager_DelUserCallBack(ref UserMgr_user_del_t user_del)
{
try
{
if (UserListDeleteDataEvent != null)
UserListDeleteDataEvent(user_del);
}
catch
{
}
}
private static void UserManager_ModifyUserCallBack(ref UserMgr_user_modify_t user_mod)
{
try
{
if (UserListModifyUserDataEvent != null)
UserListModifyUserDataEvent(user_mod);
}
catch
{
}
}
private static void UserManager_ModifyInfoCallBack(ref UserMgr_user_info_t user_info)
{
try
{
if (UserListModifyInfoDataEvent != null)
UserListModifyInfoDataEvent(user_info);
}
catch
{
}
}
private static void UserManager_AddUserCallBack(ref UserMgr_user_add_t user_add)
{
try
{
if (UserListAddDataEvent != null)
UserListAddDataEvent(user_add);
}
catch
{
}
}
private static void UserManager_NewUserCallBack(IntPtr pBuffer)
{
try
{
if (pBuffer != IntPtr.Zero)
{
UserMgr_user_info_t user_info = (UserMgr_user_info_t)Marshal.PtrToStructure(pBuffer, typeof(UserMgr_user_info_t));
if (UserListNewDataEvent != null)
UserListNewDataEvent(user_info);
}
}
catch
{
}
}
private static void UserManager_DebugCallback(int type, StringBuilder pMessage)
{
try
{
}
catch
{
}
}
#endregion
}
}

View File

@ -4,6 +4,7 @@ using System.Collections.Generic;
using System.Windows.Forms;
using INT_PT002.Forms;
using INT_PT002.DialogForms;
namespace INT_PT002
{
@ -15,7 +16,17 @@ namespace INT_PT002
[MTAThread]
static void Main()
{
Application.Run(new FormMain());
try
{
Application.Run(new FormMain());
}
catch (Exception ex)
{
FormMain.Exception(ex);
DialogFormMessage myMsg = new DialogFormMessage(1);
myMsg.ShowDialog();
}
}
}
}