private void AddKnownPartsAndStates(ThemeClass cls) { foreach (var partInfo in ThemeInfo.GetParts(cls.ClassName)) { bool partDefined = cls.FindPart(partInfo.Item1) != null; var part = cls.AddPart(partInfo.Item1, partInfo.Item2); part.IsUndefined = !partDefined; foreach (var stateInfo in ThemeInfo.GetStates(part)) { bool stateDefined = part.FindState(stateInfo.Item1) != null; var state = part.AddState(stateInfo.Item1, stateInfo.Item2); state.IsUndefined = !stateDefined; } } }
public ThemeState AddState(int stateId, string name = null) { ThemeState state = FindState(stateId); if (state == null) { state = new ThemeState(this, stateId, name ?? ThemeInfo.GetStateName(Parent.ClassName, Id, stateId)); if (stateId == 0) { partState = state; } else { states.Add(state); } } return(state); }
public ThemePart AddPart(int partId, string partName = null) { ThemePart part = FindPart(partId); if (part != null) { return(part); } part = new ThemePart(this, partId, partName ?? ThemeInfo.GetPartName(ClassName, partId)); if (partId == 0) { classPart = part; } else { parts.Add(part); } return(part); }