private void setErrorFlag(BaseNode node) { switch (node.NodeType) { case MyNodes.EnvelopeGroup: case MyNodes.Envelope: case MyNodes.AENode: break; case MyNodes.Root: RootNode rNode = node as RootNode; rNode.SetError(this.e_isCatagoryError(rNode.Catagory)); foreach (BaseNode child in node.Nodes) { setErrorFlag(child); } break; case MyNodes.AccountType: TypeNode tNode = node as TypeNode; tNode.SetError(this.e_isTypeError(tNode.Catagory, tNode.TypeID)); foreach (BaseNode child in node.Nodes) { setErrorFlag(child); } break; case MyNodes.Account: AccountNode aNode = node as AccountNode; aNode.SetError(this.e_isAccountError(aNode.AccountID)); break; } }
private bool setErrorFlag(BaseNode node, int accountID, bool error) { switch (node.NodeType) { case MyNodes.EnvelopeGroup: case MyNodes.Envelope: case MyNodes.AENode: break; case MyNodes.Root: RootNode rNode = node as RootNode; rNode.SetError(this.e_isCatagoryError(rNode.Catagory)); foreach (BaseNode child in node.Nodes) { if (setErrorFlag(child, accountID, error)) { return(true); } } break; case MyNodes.AccountType: TypeNode tNode = node as TypeNode; tNode.SetError(this.e_isTypeError(tNode.Catagory, tNode.TypeID)); foreach (BaseNode child in node.Nodes) { if (setErrorFlag(child, accountID, error)) { return(true); } } break; case MyNodes.Account: AccountNode aNode = node as AccountNode; if (aNode.AccountID == accountID) { aNode.SetError(error); return(true); } break; } return(false); }