Esempio n. 1
0
        public FrameViewModel(IFrameable frameable, 
            IHostTransformation hostTransformation, IFrameSaver frameSaver)
        {
            Frameable = frameable;
            HostTransformation = hostTransformation;
            FrameSaver = frameSaver;

            hostTransformation.PropertyChanged +=
                (sender, args) =>
                {
                    switch (args.PropertyName)
                    {
                        case "Quadrangle":
                            OnPropertyChanged("Quadrangle");
                            break;
                        case "Transformation":
                            OnPropertyChanged("Transformation");
                            OnPropertyChanged("Lines");
                            OnPropertyChanged("Points");
                            OnPropertyChanged("Elements");
                            break;
                    }
                };
            if (frameSaver != null)
            {
                SaveFileContainer = new SaveFileContainerViewModel(this, frameSaver.GetType());
            }
        }