public EyeWindow(bool isLeft, Patient pat, DateTime time)
        {
            Parameters = new List <string>();

            var t = ConfigLogic.Instance.ReadEyeInfo(pat, time, isLeft);

            _ellipses       = new List <EllipseData>();
            _commentBinding = new ObservableCollection <string>();
            InitializeComponent();
            _diagnosisBinding    = new List <string>();
            _objs                = new List <PropObj>();
            Title                = isLeft ? "Левый глаз" : "Правый глаз";
            DataContext          = this;
            DiagList.ItemsSource = _diagnosisBinding;

            foreach (string instanceParameter in ConfigLogic.Instance.Parameters)
            {
                PropObj po = new PropObj {
                    Property = instanceParameter
                };
                _objs.Add(po);
            }

            if (t != null)
            {
                ep = new EyeParser(t);
                ep.FillParams(_objs);
                foreach (EllipseData ellipseData in _ellipses)
                {
                    _commentBinding.Add(ellipseData.Text);
                }
                RealDiagnosis = ep.DiagsValues;
                UpdateDiag();
                EyeImage.Source    = ep.GetImage();
                UsedImagePath      = ep.ImagePath;
                NewImagePath       = ep.ImagePath;
                OkButton.IsEnabled = true;
                DrawBtn.IsEnabled  = true;
            }
            else
            {
                RealDiagnosis = new List <int>();
                for (int i = 0; i < 16; i++)
                {
                    RealDiagnosis.Add(0);
                }
            }

            ParametersDataGrid.ItemsSource = _objs;
            PointsList.ItemsSource         = _commentBinding;
        }
Esempio n. 2
0
        // ========================================
        // property
        // ========================================

        // ========================================
        // method
        // ========================================
        public override void ConfigureDetailForm(DetailSettingsForm detailForm)
        {
            /// property detail page
            var propObj = new PropObj()
            {
                Name       = _operation.Name,
                Stereotype = _operation.Stereotype,
                Type       = _operation.TypeName,
                Parameters = _operation.Parameters,
                IsAbstract = _operation.IsAbstract,
                IsStatic   = _operation.IsStatic,
                Visibility = _operation.Visibility,
            };

            Func <object, ICommand> updateCmdProvider = obj => {
                var old = new PropObj()
                {
                    Name       = _operation.Name,
                    Stereotype = _operation.Stereotype,
                    Type       = _operation.TypeName,
                    Parameters = _operation.Parameters,
                    IsAbstract = _operation.IsAbstract,
                    IsStatic   = _operation.IsStatic,
                    Visibility = _operation.Visibility,
                };
                return(new DelegatingCommand(
                           () => {
                    _operation.Name = propObj.Name;
                    _operation.Stereotype = propObj.Stereotype;
                    _operation.TypeName = propObj.Type;
                    _operation.Parameters = propObj.Parameters;
                    _operation.IsAbstract = propObj.IsAbstract;
                    _operation.IsStatic = propObj.IsStatic;
                    _operation.Visibility = propObj.Visibility;
                },
                           () => {
                    _operation.Name = old.Name;
                    _operation.Stereotype = old.Stereotype;
                    _operation.TypeName = old.Type;
                    _operation.Parameters = old.Parameters;
                    _operation.IsAbstract = old.IsAbstract;
                    _operation.IsStatic = old.IsStatic;
                    _operation.Visibility = old.Visibility;
                }
                           ));
            };
            var propPage = new PropertyDetailSettingsPage(propObj, updateCmdProvider);

            detailForm.RegisterPage("モデル", propPage);
        }
Esempio n. 3
0
        public override void ConfigureDetailForm(DetailSettingsForm detailForm)
        {
            /// property detail page
            var propObj = new PropObj()
            {
                Name       = _Classifier.Name,
                Stereotype = _Classifier.Stereotype,
                IsAbstract = _Classifier.IsAbstract,
                Visibility = _Classifier.Visibility,
            };

            Func <object, ICommand> updateCmdProvider = obj => {
                var old = new PropObj()
                {
                    Name       = _Classifier.Name,
                    Stereotype = _Classifier.Stereotype,
                    IsAbstract = _Classifier.IsAbstract,
                    Visibility = _Classifier.Visibility,
                };
                return(new DelegatingCommand(
                           () => {
                    _Classifier.Name = propObj.Name;
                    _Classifier.Stereotype = propObj.Stereotype;
                    _Classifier.IsAbstract = propObj.IsAbstract;
                    _Classifier.Visibility = propObj.Visibility;
                },
                           () => {
                    _Classifier.Name = old.Name;
                    _Classifier.Stereotype = old.Stereotype;
                    _Classifier.IsAbstract = old.IsAbstract;
                    _Classifier.Visibility = old.Visibility;
                }
                           ));
            };
            var propPage = new PropertyDetailSettingsPage(propObj, updateCmdProvider);

            detailForm.RegisterPage("モデル", propPage);

            base.ConfigureDetailForm(detailForm);
        }
        // ========================================
        // property
        // ========================================

        // ========================================
        // method
        // ========================================
        public override void ConfigureDetailForm(DetailSettingsForm detailForm)
        {
            /// property detail page
            var propObj = new PropObj()
            {
                Name             = _property.Name,
                Stereotype       = _property.Stereotype,
                Type             = _property.TypeName,
                IsStatic         = _property.IsStatic,
                IsDerived        = _property.IsDerived,
                IsReadOnly       = _property.IsReadOnly,
                IsUnique         = _property.IsUnique,
                IsOrdered        = _property.IsOrdered,
                IsUpperUnlimited = _property.IsUpperUnlimited,
                Upper            = _property.Upper,
                Lower            = _property.Lower,
                Default          = _property.Default,
                Visibility       = _property.Visibility,
            };

            Func <object, ICommand> updateCmdProvider = obj => {
                var old = new PropObj()
                {
                    Name             = _property.Name,
                    Stereotype       = _property.Stereotype,
                    Type             = _property.TypeName,
                    IsStatic         = _property.IsStatic,
                    IsDerived        = _property.IsDerived,
                    IsReadOnly       = _property.IsReadOnly,
                    IsUnique         = _property.IsUnique,
                    IsOrdered        = _property.IsOrdered,
                    IsUpperUnlimited = _property.IsUpperUnlimited,
                    Upper            = _property.Upper,
                    Lower            = _property.Lower,
                    Default          = _property.Default,
                    Visibility       = _property.Visibility,
                };
                return(new DelegatingCommand(
                           () => {
                    _property.Name = propObj.Name;
                    _property.Stereotype = propObj.Stereotype;
                    _property.TypeName = propObj.Type;
                    _property.IsStatic = propObj.IsStatic;
                    _property.IsDerived = propObj.IsDerived;
                    _property.IsReadOnly = propObj.IsReadOnly;
                    _property.IsUnique = propObj.IsUnique;
                    _property.IsOrdered = propObj.IsOrdered;
                    _property.IsUpperUnlimited = propObj.IsUpperUnlimited;
                    _property.Upper = propObj.Upper;
                    _property.Lower = propObj.Lower;
                    _property.Default = propObj.Default;
                    _property.Visibility = propObj.Visibility;
                },
                           () => {
                    _property.Name = old.Name;
                    _property.Stereotype = old.Stereotype;
                    _property.TypeName = old.Type;
                    _property.IsStatic = old.IsStatic;
                    _property.IsDerived = old.IsDerived;
                    _property.IsReadOnly = old.IsReadOnly;
                    _property.IsUnique = old.IsUnique;
                    _property.IsOrdered = old.IsOrdered;
                    _property.IsUpperUnlimited = old.IsUpperUnlimited;
                    _property.Upper = old.Upper;
                    _property.Lower = old.Lower;
                    _property.Default = old.Default;
                    _property.Visibility = old.Visibility;
                }
                           ));
            };
            var propPage = new PropertyDetailSettingsPage(propObj, updateCmdProvider);

            detailForm.RegisterPage("モデル", propPage);
        }
Esempio n. 5
0
        public override void ConfigureDetailForm(DetailSettingsForm detailForm)
        {
            var fig = _owner.Figure;

            var assoc  = _owner.Model;
            var source = assoc.SourceMemberEnd;
            var target = assoc.TargetMemberEnd;

            /// property detail page
            var propObj = new PropObj()
            {
                IsSourceNavigable = assoc.IsSourceNavigable,
                IsTargetNavigable = assoc.IsTargetNavigable,
                SourceMemberEnd   = new MemberEnd()
                {
                    Name             = source.Name,
                    Stereotype       = source.Stereotype,
                    Aggregation      = source.Aggregation,
                    IsUpperUnlimited = source.IsUpperUnlimited,
                    Upper            = source.Upper,
                    Lower            = source.Lower,
                    Visibility       = source.Visibility,
                },
                TargetMemberEnd = new MemberEnd()
                {
                    Name             = target.Name,
                    Stereotype       = target.Stereotype,
                    Aggregation      = target.Aggregation,
                    IsUpperUnlimited = target.IsUpperUnlimited,
                    Upper            = target.Upper,
                    Lower            = target.Lower,
                    Visibility       = target.Visibility,
                },
            };

            Func <object, ICommand> updateCmdProvider = obj => {
                var old = new PropObj()
                {
                    IsSourceNavigable = assoc.IsSourceNavigable,
                    IsTargetNavigable = assoc.IsTargetNavigable,
                    SourceMemberEnd   = new MemberEnd()
                    {
                        Name             = source.Name,
                        Stereotype       = source.Stereotype,
                        Aggregation      = source.Aggregation,
                        IsUpperUnlimited = source.IsUpperUnlimited,
                        Upper            = source.Upper,
                        Lower            = source.Lower,
                        Visibility       = source.Visibility,
                    },
                    TargetMemberEnd = new MemberEnd()
                    {
                        Name             = target.Name,
                        Stereotype       = target.Stereotype,
                        Aggregation      = target.Aggregation,
                        IsUpperUnlimited = target.IsUpperUnlimited,
                        Upper            = target.Upper,
                        Lower            = target.Lower,
                        Visibility       = target.Visibility,
                    },
                };
                return(new DelegatingCommand(
                           () => {
                    assoc.IsSourceNavigable = propObj.IsSourceNavigable;
                    assoc.IsTargetNavigable = propObj.IsTargetNavigable;

                    source.Name = propObj.SourceMemberEnd.Name;
                    source.Stereotype = propObj.SourceMemberEnd.Stereotype;
                    source.Aggregation = propObj.SourceMemberEnd.Aggregation;
                    source.IsUpperUnlimited = propObj.SourceMemberEnd.IsUpperUnlimited;
                    source.Upper = propObj.SourceMemberEnd.Upper;
                    source.Lower = propObj.SourceMemberEnd.Lower;
                    source.Visibility = propObj.SourceMemberEnd.Visibility;

                    target.Name = propObj.TargetMemberEnd.Name;
                    target.Stereotype = propObj.TargetMemberEnd.Stereotype;
                    target.Aggregation = propObj.TargetMemberEnd.Aggregation;
                    target.IsUpperUnlimited = propObj.TargetMemberEnd.IsUpperUnlimited;
                    target.Upper = propObj.TargetMemberEnd.Upper;
                    target.Lower = propObj.TargetMemberEnd.Lower;
                    target.Visibility = propObj.TargetMemberEnd.Visibility;
                },
                           () => {
                    assoc.IsSourceNavigable = old.IsSourceNavigable;
                    assoc.IsTargetNavigable = old.IsTargetNavigable;

                    source.Name = old.SourceMemberEnd.Name;
                    source.Stereotype = old.SourceMemberEnd.Stereotype;
                    source.Aggregation = old.SourceMemberEnd.Aggregation;
                    source.IsUpperUnlimited = old.SourceMemberEnd.IsUpperUnlimited;
                    source.Upper = old.SourceMemberEnd.Upper;
                    source.Lower = old.SourceMemberEnd.Lower;
                    source.Visibility = old.SourceMemberEnd.Visibility;

                    target.Name = old.TargetMemberEnd.Name;
                    target.Stereotype = old.TargetMemberEnd.Stereotype;
                    target.Aggregation = old.TargetMemberEnd.Aggregation;
                    target.IsUpperUnlimited = old.TargetMemberEnd.IsUpperUnlimited;
                    target.Upper = old.TargetMemberEnd.Upper;
                    target.Lower = old.TargetMemberEnd.Lower;
                    target.Visibility = old.TargetMemberEnd.Visibility;
                }
                           ));
            };
            var propPage = new PropertyDetailSettingsPage(propObj, updateCmdProvider);

            detailForm.RegisterPage("モデル", propPage);

            /// line detail page
            var borderPage = new EdgeLineDetailPage(new[] { _owner.Host });

            borderPage.LineColor     = fig.LineColor;
            borderPage.LineWidth     = fig.LineWidth;
            borderPage.LineDashStyle = fig.LineDashStyle;
            borderPage.IsModified    = false;
            detailForm.RegisterPage("線", borderPage);
        }