Esempio n. 1
0
 protected override void OnValueChanged()
 {
     base.OnValueChanged();
     //Log.Debug($"UISliderBase.OnValueChanged() RefreshingValues={RefreshingValues}");
     if (RefreshingValues && Root?.GetData() is NodeData nodeData)
     {
         bool mixed = MixedValues;
         RefreshNode(nodeData);
         //Log.Debug($"UISliderBase.OnValueChanged() mixed={mixed} {MixedValues}");
     }
     else if (!Refreshing)
     {
         Apply();
     }
 }
        public void Refresh()
        {
            if (VERBOSE)
            {
                Log.Debug("Refresh called()\n" + Environment.StackTrace);
            }
            RefreshValues();
            refreshing_ = true;
            if (root_?.GetData() is NodeData nodeData)
            {
                RefreshNode(nodeData);
            }

            parent.isVisible = isVisible = this.isEnabled;
            Invalidate();
            refreshing_ = false;
        }
 protected override void OnValueChanged()
 {
     base.OnValueChanged();
     if (RefreshingValues && Root?.GetData() is NodeData nodeData)
     {
         bool mixed = MixedValues;
         RefreshNode(nodeData);
         if (mixed != MixedValues)
         {
             Invalidate();
         }
     }
     else if (!Refreshing)
     {
         Apply();
     }
     //UpdateTooltip();
 }
        //protected override void OnKeyDown(UIKeyEventParameter p) {
        //    if (!containsMouse)
        //        return;
        //    scrollWheelAmount = ScrollStep;
        //    base.OnKeyDown(p);
        //    bool arrowkey = p.keycode == KeyCode.LeftArrow || p.keycode == KeyCode.RightArrow
        //        || p.keycode == KeyCode.UpArrow || p.keycode == KeyCode.DownArrow;
        //    if (arrowkey)
        //        QuantizeValue(ScrollStep);
        //    if (p.keycode == KeyCode.Delete)
        //        Reset();
        //}
        #endregion

        public void Apply()
        {
            Assert(!Refreshing);
            object data = Root.GetData();

            if (data is NodeData nodeData)
            {
                ApplyNode(nodeData);
                nodeData.Update();
            }
            else if (data is SegmentEndData segEndData)
            {
                ApplySegmentEnd(segEndData);
                segEndData.Update();
            }

            Root?.RefreshValues();
        }
Esempio n. 5
0
        public void Apply()
        {
            if (VERBOSE)
            {
                Log.Debug("UIResetButton.Apply called()\n" + Environment.StackTrace);
            }
            var data = root_?.GetData();

            data?.ResetToDefault(); // also calls RefreshAndUpdate()
            Assert(!refreshing_, "!refreshing_");
            root_.Refresh();
        }
Esempio n. 6
0
        public bool Left; // going away from the junction.

        public void Apply()
        {
            Assert(!refreshing_, "!refreshing_");
            Log.Debug("LockDirCheckbox.Apply called()\n" /* + Environment.StackTrace*/);

            SegmentEndData data = root_?.GetData() as SegmentEndData;

            if (data == null)
            {
                return;
            }

            data.Corner(Left).LockLength = this.isChecked;
            if (ControlIsPressed && Mirror != null)
            {
                Mirror.isChecked = isChecked;
            }

            data.RefreshAndUpdate();
            root_.Refresh();
        }
Esempio n. 7
0
        public void RefreshValues()
        {
            refreshing_ = true;
            INetworkData data = root_.GetData();

            if (data == null)
            {
                Disable();
                return;
            }
            isEnabled   = !data.IsDefault();
            refreshing_ = false;
        }
Esempio n. 8
0
        public void Apply()
        {
            if (VERBOSE)
            {
                Log.Debug("UIResetButton.Apply called()\n" + Environment.StackTrace);
            }
            var data = root_?.GetData();

            Action(data);
            data.RefreshAndUpdate();
            Assert(!refreshing_, "!refreshing_");
            root_.Refresh();
        }
Esempio n. 9
0
        public void RefreshValues()
        {
            refreshing_ = true;
            INetworkData data = root_?.GetData();

            if (data is SegmentEndData segmentEndData)
            {
                bool b = segmentEndData.CanModifyTwist();
                if (b)
                {
                    this.isChecked = segmentEndData.Twist;
                    isEnabled      = segmentEndData.FlatJunctions;
                }
                isVisible = parent.isVisible = b;
                //Log.Debug($"TwistChekbox.Refresh() isVisible={isVisible} b={b}");
            }
            else
            {
                Hide();
            }
            refreshing_ = false;
        }
        public void Apply()
        {
            Log.Debug("UIUnFlattenJunctionsCheckbox.Apply called()\n" /* + Environment.StackTrace*/);
            SegmentEndData data = root_?.GetData() as SegmentEndData;

            if (data == null)
            {
                return;
            }

            data.FlatJunctions = this.isChecked;
            if (!this.isChecked)
            {
                data.Twist = false;
            }
            else
            {
                data.Twist = data.DefaultTwist;
            }
            data.DeltaSlopeAngleDeg = 0;
            Assert(!refreshing_, "!refreshing_");
            data.RefreshAndUpdate();
            root_.Refresh();
        }
        public void RefreshValues()
        {
            refreshing_ = true;
            INetworkData data = root_?.GetData();

            if (data is SegmentEndData segmentEndData)
            {
                isChecked = segmentEndData.Nodeless;
                isEnabled = segmentEndData.CanModifyNodeless();
            }
            else if (data is NodeData nodeData)
            {
                throw new NotImplementedException();
            }
            else
            {
                Disable();
            }
            refreshing_ = false;
        }