public ExampleOperationViewModel CreateDefaultExampleOperationViewModel(Pt position)
        {
            var visModel = OperationViewModelFactory.CreateDefaultExampleOperationViewModel(MainModel.SchemaModel, position);

            visModel.Position = position;
            addAttachmentViews(visModel);
            OperationViewModels.Add(visModel);
            return(visModel);
        }
        public HistogramOperationViewModel CreateDefaultHistogramOperationViewModel(AttributeModel attributeModel, Pt position)
        {
            var visModel = OperationViewModelFactory.CreateDefaultHistogramOperationViewModel(MainModel.SchemaModel, attributeModel, position);

            visModel.Position = position;
            addAttachmentViews(visModel);
            OperationViewModels.Add(visModel);
            return(visModel);
        }
        public OperationContainerView CopyOperationViewModel(OperationViewModel operationViewModel, Pt?centerPoint)
        {
            var newOperationContainerView = new OperationContainerView();
            var newOperationViewModel     = OperationViewModelFactory.CopyOperationViewModel(operationViewModel);

            addAttachmentViews(newOperationViewModel);
            OperationViewModels.Add(newOperationViewModel);

            if (centerPoint.HasValue)
            {
                newOperationViewModel.Position = (Pt)centerPoint - operationViewModel.Size / 2.0;
            }

            newOperationContainerView.DataContext = newOperationViewModel;
            InkableScene.Add(newOperationContainerView);
            return(newOperationContainerView);
        }