// TODO: Need a preview event to implement computed and assignable correctly private void AstTableColumnBaseNode_SingletonPropertyChanged(object sender, VulcanPropertyChangedEventArgs e) { if (e.PropertyName == "Computed") { VulcanOnPropertyChanged("IsComputed", IsComputed, IsComputed); VulcanOnPropertyChanged("IsAssignable", IsAssignable, IsAssignable); } }
private void AstTableNode_SingletonPropertyChanged(object sender, VulcanPropertyChangedEventArgs e) { if (e.PropertyName == "Table") { if (e.OldValue != null) { ((AstTableNode)e.OldValue).Columns.CollectionChanged -= TableColumns_CollectionChanged; OnClearBaseTableColumns(); } if (Table != null) { foreach (var column in Table.Columns) { OnAddBaseTableColumn(column); } Table.Columns.CollectionChanged += TableColumns_CollectionChanged; } } }
private void AstNode_AnySingletonPropertyChanged(object sender, VulcanPropertyChangedEventArgs e) { PropertyInfo property = GetType().GetProperty(e.PropertyName); if (property != null) { if (e.PropertyName == "BimlFile") { var oldBimlFile = e.OldValue as BimlFile; var newBimlFile = e.NewValue as BimlFile; if (oldBimlFile != null) { oldBimlFile.ParseableChanged += BimlFile_ParseableChanged; } if (newBimlFile != null) { newBimlFile.ParseableChanged += BimlFile_ParseableChanged; } } } }
private void AstNamedNode_SingletonPropertyChanged(object sender, VulcanPropertyChangedEventArgs e) { if (e.PropertyName == "ScopeBoundary") { var oldScopeBoundary = e.OldValue as IScopeBoundary; if (oldScopeBoundary != null) { oldScopeBoundary.PropertyChanged -= ScopeBoundary_PropertyChanged; } var newScopeBoundary = e.NewValue as IScopeBoundary; if (newScopeBoundary != null) { newScopeBoundary.PropertyChanged += ScopeBoundary_PropertyChanged; } } if (e.PropertyName == "Name") { VulcanOnPropertyChanged("ScopedName", ScopedName, ScopedName); } }
private void AstSingleInTransformationNode_SingletonPropertyChanged(object sender, VulcanPropertyChangedEventArgs e) { /* * if (e.PropertyName == "InputPath") * { * var oldInputPath = e.OldValue as AstDataflowInputPathNode; * var newInputPath = e.NewValue as AstDataflowInputPathNode; * if (oldInputPath != null && oldInputPath.OutputPath.Transformation != null) * { * oldInputPath.OutputPath.Transformation.UnbindInputPath(oldInputPath); * } * if (newInputPath != null && newInputPath.OutputPath.Transformation != null) * { * newInputPath.OutputPath.Transformation.BindInputPath(newInputPath); * } * } */ }
private void AstAttributeRelationshipNode_SingletonPropertyChanged(object sender, VulcanPropertyChangedEventArgs e) { if (e.PropertyName == "Parent" || e.PropertyName == "Child") { VulcanCompositeCollectionChanged(_attributes, e.OldValue as AstNamedNode, e.NewValue as AstNamedNode); } }