コード例 #1
0
ファイル: CremaDataType.cs プロジェクト: teize001/Crema
        private CremaDataType(TypeInfo typeInfo)
        {
            this.builder = new CremaDataTypeMemberBuilder(this);
            this.type    = new InternalDataType(this, typeInfo.Name, typeInfo.CategoryPath)
            {
                IsFlag  = typeInfo.IsFlag,
                Comment = typeInfo.Comment,
                Tags    = typeInfo.Tags,
            };
            this.attributes            = new CremaAttributeCollection(this.type);
            this.members               = new CremaDataTypeMemberCollection(this.type);
            this.type.CreationInfo     = typeInfo.CreationInfo;
            this.type.ModificationInfo = typeInfo.ModificationInfo;

            foreach (var item in typeInfo.Members)
            {
                var member = this.NewMember();
                member.Name      = item.Name;
                member.Value     = item.Value;
                member.Comment   = item.Comment;
                member.IsEnabled = item.IsEnabled;
                member.Tags      = item.Tags;
                this.Members.Add(member);
            }
            this.type.AcceptChanges();
            this.AttachEventHandlers();
        }
コード例 #2
0
ファイル: CremaDataType.cs プロジェクト: teize001/Crema
        internal CremaDataType(InternalDataType type)
        {
            this.type       = type;
            this.builder    = new CremaDataTypeMemberBuilder(this);
            this.attributes = new CremaAttributeCollection(this.type);
            this.members    = new CremaDataTypeMemberCollection(this.type);

            this.AttachEventHandlers();
        }
コード例 #3
0
ファイル: CremaDataType.cs プロジェクト: teize001/Crema
        public CremaDataType(string name, string categoryPath)
        {
            this.builder    = new CremaDataTypeMemberBuilder(this);
            this.type       = new InternalDataType(this, name, categoryPath);
            this.attributes = new CremaAttributeCollection(this.type);
            this.members    = new CremaDataTypeMemberCollection(this.type);

            this.AttachEventHandlers();
        }
コード例 #4
0
ファイル: CremaDataTypeMember.cs プロジェクト: teize001/Crema
 public CremaDataTypeMember(CremaDataTypeMemberBuilder builder)
 {
     if (builder == null)
     {
         throw new ArgumentNullException();
     }
     this.type   = builder.Type;
     this.member = builder.DataRow;
 }
コード例 #5
0
 public InternalDataTypeMember(CremaDataTypeMemberBuilder builder, InternalDataType table)
     : base(table, builder.InternalBuilder)
 {
     this.table  = table;
     base.Target = builder.NewMember(this);
 }
コード例 #6
0
ファイル: CremaDataType.cs プロジェクト: teize001/Crema
 internal CremaDataTypeMember InvokeNewTypeMemberFromBuilder(CremaDataTypeMemberBuilder builder)
 {
     return(this.NewTypeMemberFromBuilder(builder));
 }
コード例 #7
0
ファイル: CremaDataType.cs プロジェクト: teize001/Crema
 protected virtual CremaDataTypeMember NewTypeMemberFromBuilder(CremaDataTypeMemberBuilder builder)
 {
     return(new CremaDataTypeMember(builder));
 }