Files
vms2016_kadisp/cVMS.NET_CS/HMI/MainDisplay/CWINDOW.cs
2024-11-26 20:15:16 +09:00

150 lines
4.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;
using System.Drawing.Drawing2D;
using System.Drawing;
using System.Windows.Forms;
namespace vmsnet.HMI
{
[TypeConverterAttribute(typeof(ExpandableObjectConverter)), Serializable()]
public partial class CWINDOW
{
private int idx;
private String title;
private String matrix;
// public RectangleF R = new RectangleF(0, 0, 0, 0);
public Single _itemwidth;
public Single _itemheight;
private int rowcount;
private int columncount;
//private Single alamh;
//private Single alaml;
private Boolean _debug=false;
////연결종료된시간이있다.
//public UInt16 disconnecttime = 0;
//public UInt16 restarttime = 0;
public delegate void OnChangeDataHandler();
public event OnChangeDataHandler OnChangeData;
public CWINDOW()
{
idx = 0;
title = "WINDOW";
matrix = "1x1";
_itemwidth = 0;
_itemheight = 0;
}
public CWINDOW(String ptitle, String pMatrix, Single iw, Single ih)
{
this.title = ptitle;
this.matrix = pMatrix;
this._itemheight = ih;
this._itemwidth = iw;
//this.R = r;
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("개발자"), Description("debug Mode")]
public Boolean Debug
{
get { return _debug; }
set { _debug = value; }
}
//[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("알람설정"), Description("상위 알람값입니다.")]
//public Single HIGH
//{
// get { return alamh; }
// set { alamh = value;
// try { OnChangeData(); }
// catch { }
// }
//}
//[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("알람설정"), Description("하위 알람값입니다.")]
//public Single LOW
//{
// get { return alaml; }
// set { alaml = value;
// try { OnChangeData(); }
// catch { }
// }
//}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("x"), Description("x"),Browsable(false)]
public Single ITEMWIDTH
{
get { return _itemwidth; }
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("x"), Description("x"), Browsable(false)]
public Single ITEMHEIGHT
{
get { return _itemheight; }
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("Appearance"), Description("Appearance and Style"),Browsable(true)]
public int IDX
{
get { return idx; }
set { idx = value; }
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("일반"), Description("해당 윈도우의 이름입니다.")]
public String
{
get { return title; }
set { title = value;
if (OnChangeData != null) OnChangeData();
}
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("Appearance"), Description("Appearance and Style"),Browsable(false)]
public String MATRIX
{
get { return matrix; }
set
{
matrix = value.Replace("*","x").Replace("X","x");
this.rowcount = Int32.Parse(matrix.Split(new Char[] { 'x' })[0]);
this.columncount = Int32.Parse(matrix.Split(new Char[] { 'x' })[1]);
}
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("Appearance"), Description("Appearance and Style"), Browsable(false)]
public int RowCount
{
get
{
if (this.rowcount == 0)
{
this.rowcount = Int32.Parse(matrix.Split(new Char[] { 'x' })[0]);
}
return this.rowcount;
}
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content), Category("Appearance"), Description("Appearance and Style"), Browsable(false)]
public int CoulumnCount
{
get
{
if (this.columncount == 0)
{
this.columncount = Int32.Parse(matrix.Split(new Char[] { 'x' })[1]);
}
return this.columncount;
}
}
}
}