private void DisplayCurrentInstance(List <InstanceSavePropertyDescriptor> pdc, InstanceSave instanceSave) { ElementSave elementSave = instanceSave.GetBaseElementSave(); StateSave stateToDisplay; if (elementSave != null) { if (elementSave is StandardElementSave) { // if we use the standard elements manager, we don't get any custom categories, so we need to add those: stateToDisplay = StandardElementsManager.Self.GetDefaultStateFor(elementSave.Name).Clone(); foreach (var category in elementSave.Categories) { var expectedName = category.Name + "State"; var variable = elementSave.GetVariableFromThisOrBase(expectedName); if (variable != null) { stateToDisplay.Variables.Add(variable); } } } else { stateToDisplay = GetRecursiveStateFor(elementSave); } } else { stateToDisplay = new StateSave(); } DisplayCurrentElement(pdc, elementSave, instanceSave, stateToDisplay, instanceSave.Name, AmountToDisplay.ElementAndExposedOnly); }
private PropertyDescriptorCollection DisplayCurrentInstance(PropertyDescriptorCollection pdc, InstanceSave instanceSave) { ElementSave elementSave = instanceSave.GetBaseElementSave(); StateSave stateToDisplay; if (elementSave != null) { stateToDisplay = elementSave.States[0]; } else { stateToDisplay = new StateSave(); } pdc = DisplayCurrentElement(pdc, elementSave, instanceSave, stateToDisplay, instanceSave.Name, AmountToDisplay.ElementAndExposedOnly); return(pdc); }
public StandardElementSave GetRootStandardElementSave(InstanceSave instanceSave) { return(GetRootStandardElementSave(instanceSave.GetBaseElementSave())); }