コード例 #1
0
        public override void SetValue(IDuration d)
        {
            var rd = d as RandomDuration;

            durationWidgets_.SetValue(rd?.Time, new FloatRange(0, 10));
        }
コード例 #2
0
        public override void AddToTopUI(IModifier m)
        {
            var changed = (m != modifier_);

            modifier_ = m as EyesModifier;

            previews_.Modifier = modifier_;
            previews_.Create();

            if (modifier_ == null)
            {
                return;
            }

            if (modifier_.Targets.Count != targets_.Count)
            {
                changed = true;
            }

            if (changed)
            {
                targets_.Clear();

                foreach (var t in modifier_.Targets)
                {
                    targets_.Add(
                        new EyesModifierTargetUIContainer(modifier_, t));
                }
            }


            saccadeTime_.SetValue(
                modifier_.SaccadeTime, new FloatRange(0, 5));
            focusDuration_.SetValue(
                modifier_.FocusDuration, new FloatRange(0, 1));
            saccadeMin_.Parameter  = modifier_.SaccadeMinParameter;
            saccadeMax_.Parameter  = modifier_.SaccadeMaxParameter;
            minDistance_.Parameter = modifier_.MinDistanceParameter;
            previewsEnabled_.Value = previews_.Enabled;
            previewsAlpha_.Value   = previews_.Alpha;

            UpdateGaze();
            UpdateBlink();

            AddAtomWidgets(m);
            widgets_.AddToUI(saccade_);
            widgets_.AddToUI(focusDurationCollapsible_);
            widgets_.AddToUI(minDistance_);
            widgets_.AddToUI(gaze_);
            widgets_.AddToUI(blink_);
            widgets_.AddToUI(new SmallSpacer(Widget.Right));
            widgets_.AddToUI(addTarget_);
            widgets_.AddToUI(previewsEnabled_);
            widgets_.AddToUI(previewsAlpha_);

            if (targets_.Count > 0)
            {
                widgets_.AddToUI(new SmallSpacer(Widget.Right));
                foreach (var t in targets_)
                {
                    widgets_.AddToUI(t.Collapsible);
                }
            }

            widgets_.AddToUI(new LargeSpacer(Widget.Right));
            widgets_.AddToUI(new LargeSpacer(Widget.Right));

            base.AddToTopUI(m);
        }