Пример #1
0
        private void EhShowCustomTickSpacingChanged()
        {
            var isShown = _view.ShowCustomTickSpacing;

            if (isShown)
            {
                if (_tickSpacingController == null)
                {
                    if (_doc.TickSpacing == null)
                    {
                        _doc.TickSpacing = new Altaxo.Graph.Scales.Ticks.LinearTickSpacing();
                    }
                    _tickSpacingController = new TickSpacingController()
                    {
                        UseDocumentCopy = UseDocument.Directly
                    };
                    _tickSpacingController.InitializeDocument(_doc.TickSpacing);
                    Current.Gui.FindAndAttachControlTo(_tickSpacingController);
                    if (null != _view)
                    {
                        _view.TickSpacingView = _tickSpacingController.ViewObject;
                    }
                }
            }
            else
            {
                _doc.TickSpacing       = null;
                _view.TickSpacingView  = null;
                _tickSpacingController = null;
            }
        }
Пример #2
0
        protected override void Initialize(bool initData)
        {
            base.Initialize(initData);

            if (initData)
            {
                _context = _doc.GetPropertyContext();

                if (_doc.AxisLineStyle != null)
                {
                    _axisLineStyleController = (IMVCAController)Current.Gui.GetControllerAndControl(new object[] { _doc.AxisLineStyle }, typeof(IMVCAController), UseDocument.Directly);
                }
                else
                {
                    _axisLineStyleController = null;
                }

                if (_doc.TickSpacing != null)
                {
                    _tickSpacingController = new TickSpacingController()
                    {
                        UseDocumentCopy = UseDocument.Directly
                    };
                    _tickSpacingController.InitializeDocument(_doc.TickSpacing);
                    Current.Gui.FindAndAttachControlTo(_tickSpacingController);
                }
            }

            if (_view != null)
            {
                _view.AxisTitle             = _doc.TitleText;
                _view.ShowAxisLine          = _doc.IsAxisLineEnabled;
                _view.ShowMajorLabels       = _doc.AreMajorLabelsEnabled;
                _view.ShowMinorLabels       = _doc.AreMinorLabelsEnabled;
                _view.LineStyleView         = _axisLineStyleController == null ? null : _axisLineStyleController.ViewObject;
                _view.ShowCustomTickSpacing = _doc.TickSpacing != null;
                _view.TickSpacingView       = _tickSpacingController != null ? _tickSpacingController.ViewObject : null;
            }
        }
Пример #3
0
        public override System.Collections.Generic.IEnumerable <ControllerAndSetNullMethod> GetSubControllers()
        {
            yield return(new ControllerAndSetNullMethod(_axisLineStyleController, () => _axisLineStyleController = null));

            yield return(new ControllerAndSetNullMethod(_tickSpacingController, () => _tickSpacingController = null));
        }