コード例 #1
0
        } // update()


        private void _migrateBiologicalProps( CswNbtMetaDataNodeType BiologicalNT )
        {
            CswNbtMetaDataObjectClass BiologicalOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.BiologicalClass );
            CswNbtObjClassDesignNodeType BiologicalDNT = BiologicalNT.DesignNode;

            //assign the Biological NT to the Biological OC. This will automatically force a re-sync of props
            BiologicalDNT.changeParentObjectClass( BiologicalOC );

            //we need to create the nodetype props now that the object class is correct
            _CswNbtSchemaModTrnsctn.MetaData.makeMissingNodeTypeProps();
            //add Physical State to the Add layout
            CswNbtMetaDataNodeTypeProp StateNTP = _CswNbtSchemaModTrnsctn.MetaData.getNodeTypeProp( BiologicalNT.NodeTypeId, CswNbtObjClassBiological.PropertyName.PhysicalState );
            StateNTP.updateLayout( CswEnumNbtLayoutType.Add, false, DisplayRow: 1 );
        }
コード例 #2
0
        public override void update()
        {
            CswNbtMetaDataObjectClass VendorOC = _CswNbtSchemaModTrnsctn.MetaData.getObjectClass( CswEnumNbtObjectClass.VendorClass );

            // For the existing vendor nodetype(s), set the default value of Internal to false.
            foreach( CswNbtMetaDataNodeType VendorNT in VendorOC.getNodeTypes() )
            {
                CswNbtMetaDataNodeTypeProp VendorInternalNTP = VendorNT.getNodeTypePropByObjectClassProp( CswNbtObjClassVendor.PropertyName.Internal );
                VendorInternalNTP.DesignNode.AttributeProperty[CswEnumNbtPropertyAttributeName.DefaultValue].AsLogical.Checked = CswEnumTristate.False;
                VendorInternalNTP.DesignNode.postChanges( false );

                // For all existing vendor nodes, set Internal to false.
                foreach( CswNbtObjClassVendor VendorNode in VendorNT.getNodes( false, true ) )
                {
                    VendorNode.Internal.Checked = CswEnumTristate.False;
                    VendorNode.postChanges( false );
                }

            }

            // Duplicate the existing Vendor nodetype, and name the new Vendor nodetype "Internal Vendor"
            CswNbtMetaDataNodeType FirstVendorNT = VendorOC.getNodeTypes().FirstOrDefault();
            if( null != FirstVendorNT )
            {
                CswNbtObjClassDesignNodeType NewVendorNTNode = FirstVendorNT.DesignNode.CopyNode( OnCopy: delegate( CswNbtNode CopiedNode )
                    {
                        ( (CswNbtObjClassDesignNodeType) CopiedNode ).NodeTypeName.Text = "Internal Vendor";
                    } );
                NewVendorNTNode.postChanges( false );

                // For the new vendor nodetype, set the default value of Internal to true.
                CswNbtMetaDataNodeTypeProp VendorInternalNTP = NewVendorNTNode.RelationalNodeType.getNodeTypePropByObjectClassProp( CswNbtObjClassVendor.PropertyName.Internal );
                VendorInternalNTP.DesignNode.AttributeProperty[CswEnumNbtPropertyAttributeName.DefaultValue].AsLogical.Checked = CswEnumTristate.True;
                VendorInternalNTP.DesignNode.postChanges( false );
            }

            // Fix the default 'Vendors' view to use the Vendor object class instead of the nodetype.
            if( _CswNbtSchemaModTrnsctn.isMaster() )
            {
                CswNbtView View = _CswNbtSchemaModTrnsctn.restoreView( "Vendors", CswEnumNbtViewVisibility.Global );
                if( null != View )
                {
                    View.Root.ChildRelationships.Clear();
                    CswNbtViewRelationship rel1 = View.AddViewRelationship( VendorOC, true );
                    View.save();
                }
            }

        } // update()
コード例 #3
0
        public static void getDesignNodeType( ICswResources CswResources, CswNbtDesignReturn Return, string NodeTypeId )
        {
            CswNbtResources _CswNbtResources = (CswNbtResources) CswResources;
            CswPrimaryKey NodeTypePk = new CswPrimaryKey( "nodetypes", CswConvert.ToInt32( NodeTypeId ) );
            if( CswTools.IsPrimaryKey( NodeTypePk ) )
            {
                CswNbtObjClassDesignNodeType DesignNodeType = _CswNbtResources.Nodes.getNodeByRelationalId( NodeTypePk );
                if( null != DesignNodeType )
                {
                    DesignResponse DesignResponse = new DesignResponse();
                    DesignResponse.NodePk = CswConvert.ToString( DesignNodeType.NodeId );
                    DesignResponse.NodeKey = DesignNodeType.Node.NodeLink;
                    DesignResponse.NodeTypeId = DesignNodeType.NodeTypeId;
                    DesignResponse.NodeTypeName = DesignNodeType.NodeTypeName.Text;
                    DesignResponse.IconFileName = CswNbtMetaDataObjectClass.IconPrefix18 + DesignNodeType.IconFileName.Value.ToString();
                    DesignResponse.ObjectClassId = DesignNodeType.ObjectClass.ObjectClassId;
                    Return.Data = DesignResponse;
                }
            }

        }// getDesignNodeType()