internal ISOViewModelBase(ISerializableObject thisObj, ISOViewModelContainer container) { _obj = thisObj; _container = container; Name = getName(); Icon = getIcon(); if (!isRoot()) { var pVM = _container.getViewModelForISO(Parent); pVM.injectChild(this); } fillProperties(); }
public static ISOViewModelBase fromISO(ISerializableObject obj, ISOViewModelContainer container) { if (obj != null && container != null) { if(obj is CollectionEventSeries) return new EventSeriesVM(obj as CollectionEventSeries,container); if (obj is CollectionEvent) return new CollectionEventVM(obj as CollectionEvent, container); if (obj is CollectionSpecimen) return new CollectionSpecimenVM(obj as CollectionSpecimen, container); if (obj is IdentificationUnitAnalysis) return new IUAnalysisVM(obj as IdentificationUnitAnalysis, container); if (obj is IdentificationUnitGeoAnalysis) return new IUGeoAnalysisVM(obj as IdentificationUnitGeoAnalysis, container); if (obj is IdentificationUnit) return new IdentificationUnitVM(obj as IdentificationUnit, container); return new DefaultVM(obj, container); } return null; }