/// <summary> /// Retourne le type du Component que ce GraphTypeInfo réclame à _type /// </summary> public Type ClaimsComponentTo(ShapeTypeInfo _type) { foreach (ClassClaimer _claimer in ClaimersForEdit) { if (_claimer.fromType == _type.TypeName) { return(SolutionClasses.Type(_claimer.claimedType)); } } return(null); }
/// <summary> /// Retourne l'objet réclamé par une autre Shape. /// </summary> public Base GetClaimedComponentBy(ShapeTypeInfo _by) { for (int _i = 0; _i < ClaimedBy.Count; _i++) { if (ClaimedBy[_i] == _by) { return(ClaimedComponents[_i]); } } Type _t = _by.ClaimsComponentTo(this); if (_t == null) { return(null); } Base _newcomponent = SolutionClasses.Factory(_t.Name); ClaimedComponents.Add(_newcomponent); ClaimedBy.Add(_by); return(_newcomponent); }