150 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			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;
 | |
|             }
 | |
|         }
 | |
|   
 | |
|     }
 | |
| }
 |