using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;

namespace arFrame.Control
{
    [TypeConverterAttribute(typeof(ExpandableObjectConverter))]
    public class MenuItem
    {
        [Category("arFrame"),DisplayName("메뉴이름")]
        public string Text { get; set; }
        [Category("arFrame"), DisplayName("색상-테두리"), Description("메뉴속성의 테두리 기능이 켜져야 합니다")]
        public System.Drawing.Color BorderColor { get; set; }
        [Category("arFrame"),DisplayName("색상-배경1"),Description("메뉴속성의 배경 기능이 켜져야 합니다")]
        public System.Drawing.Color BackColor { get; set; }
        [Category("arFrame"), DisplayName("색상-배경2"), Description("메뉴속성의 배경 기능이 켜져야 합니다")]
        public System.Drawing.Color BackColor2 { get; set; }
        [Category("arFrame"),DisplayName("색상-글자")]
        public System.Drawing.Color ForeColor { get; set; }
        [Category("arFrame"),DisplayName("메뉴 구분자로 사용합니다")]
        public Boolean isSeparate { get; set; }
        [Category("arFrame"),DisplayName("오른쪽 붙임")]
        public Boolean isRightMenu { get; set; }
        [Category("arFrame"),DisplayName("실행 명령")]
        public string Command { get; set; }
        [Category("arFrame"),DisplayName("아이콘 이미지")]
        public System.Drawing.Bitmap Image { get; set; }
        [Category("arFrame"),DisplayName("글자 정렬 방식")]
        public System.Drawing.ContentAlignment TextAlign { get; set; }
        [Category("arFrame"),DisplayName("이미지 정렬 방식")]
        public System.Drawing.ContentAlignment ImageAlign { get; set; }
        [Category("arFrame"),DisplayName("글자 여백")]
        public System.Windows.Forms.Padding Padding { get; set; }
        [Category("arFrame"),DisplayName("메뉴 사용여부"),Description("활성화시 메뉴의 클릭이벤트가 발생하지 않습니다")]
        public Boolean Enable { get; set; }
        [Category("arFrame"),DisplayName("이미지 표시 여백(좌,상)")]
        public System.Drawing.Point ImagePadding { get; set; }
        [Category("arFrame"),DisplayName("이미지 표시 크기(너비,높이)")]
        public System.Drawing.Size ImageSize { get; set; }
        [Category("arFrame"),DisplayName("메뉴 간격")]
        public int MenuWidth { get; set; }

        [Category("arFrame"),DisplayName("번호")]
        public int No { get; set; }
                
        public MenuItem()
        {
            Enable = true;
            BorderColor = System.Drawing.Color.FromArgb(20, 20, 20);
            BackColor = System.Drawing.Color.DimGray;
            BackColor2 = System.Drawing.Color.FromArgb(100, 100, 100);
            ForeColor = System.Drawing.Color.Black;
            Text = "Menu";
            isRightMenu = false;
            Command = string.Empty;
            Image = null;
            isSeparate = false;
            TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
            ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
            Padding = new System.Windows.Forms.Padding(0, 0, 0, 0);
            ImagePadding = new System.Drawing.Point(0, 0);
            ImageSize = new System.Drawing.Size(0, 0);
            MenuWidth = 0;
            No = 0;
        }
    }
}
