public CompositionViewModel(ICompositionService service) { //TODO I thought this was done in ShellViewModel. Investigate Provenance_X = Infrastructure.Constants.Palette.TruePaletteWidth; Provenance_Y = Infrastructure.Constants.Defaults.MeasureHeight; ProvenanceVisibility = Visibility.Collapsed; UploadDetailsVisibility = Visibility.Collapsed; //End TODO Hide(); MeasureManager.Initialize(); _service = service; if (_service.Composition == null || _service.Composition.Staffgroups.Count == 0) { service.CompositionLoadingComplete += CompositionLoadingComplete; service.CompositionLoadingError += CompositionLoadingError; service.GetCompositionAsync(); } else { LoadComposition(service.Composition); } SubscribeEvents(); DefineCommands(); ScaleX = 1; ScaleY = 1; ScrollWidth = EditorState.ViewportWidth - horizontalScrollOffset; ScrollHeight = EditorState.ViewportHeight - verticalScrollOffset; ScrollVisibility = ScrollBarVisibility.Auto; }