} // 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 ); }
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()
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()