Exemple #1
0
        private void Start()
        {
            Observable.Merge(
                hourField.OnValueChangedAsObservable().Skip(1),
                minuteField.OnValueChangedAsObservable().Skip(1),
                secondField.OnValueChangedAsObservable().Skip(1),
                frameField.OnValueChangedAsObservable().Skip(1),
                dropdown.OnValueChangedAsObservable().Skip(1).Select(value => value.ToString())
                )
            .Subscribe(value =>
            {
                SetDirty();

                data = ParseData(hourField.text, minuteField.text, secondField.text, frameField.text,
                                 dropdown.options[dropdown.value].text);
                if (data == null)
                {
                    Invalid();
                }
            }).AddTo(this);

            _commandSettingController.OnListChangedAsObservable.Subscribe(list =>
            {
                UpdateOptionList(list);
                UpdateCommandSelection();
            }).AddTo(this);

            UpdateOptionList(_commandSettingController.Load());
        }
Exemple #2
0
        private void Start()
        {
            Observable.Merge(
                commandIdText.OnValueChangedAsObservable().Skip(1),
                commandText.OnValueChangedAsObservable().Skip(1),
                memoText.OnValueChangedAsObservable().Skip(1),
                modeDropdown.OnValueChangedAsObservable().Select(value => value.ToString()).Skip(1)
                )
            .Subscribe(value =>
            {
                SetDirty();

                data = ParseData(modeDropdown.value, commandIdText.text, commandText.text, memoText.text);
            }).AddTo(this);
        }
        private void Start()
        {
            Observable.Merge(
                midiNumberTextInput.OnValueChangedAsObservable().Skip(1),
                midiTypeDropdown.OnValueChangedAsObservable().Select(value => value.ToString()).Skip(1),
                oscConvertAddressTextInput.OnValueChangedAsObservable().Skip(1)
                )
            .Subscribe(value =>
            {
                SetDirty();

                if (!ParseData(midiNumberTextInput.text))
                {
                    Invalid();
                }
            }).AddTo(this);
        }
Exemple #4
0
        private void Start()
        {
            var savedData = globalFrameOffsetController.Load();

            defaultColor = offsetFrameInputBackground.color;

            framerateDropdown.options = new List <TMP_Dropdown.OptionData>()
            {
                new TMP_Dropdown.OptionData("30 FPS"), new TMP_Dropdown.OptionData("29.97 FPS"),
                new TMP_Dropdown.OptionData("60 FPS"), new TMP_Dropdown.OptionData("59.97 FPS")
            };

            framerateDropdown.value = savedData.FrameRateType;
            offsetFrameInput.text   = savedData.Offset.ToString();

            framerateDropdown.OnValueChangedAsObservable().Subscribe(value =>
            {
                frameRateType = (FrameRateType)Enum.ToObject(typeof(FrameRateType), value);

                globalFrameOffsetController.Update(new GlobalFrameOffset
                {
                    FrameRateType = (int)frameRateType, Offset = offset
                });
            }).AddTo(this);

            offsetFrameInput.OnValueChangedAsObservable().Subscribe(text =>
            {
                if (int.TryParse(text, out var result))
                {
                    offset = result;
                    offsetFrameInputBackground.color = defaultColor;

                    globalFrameOffsetController.Update(new GlobalFrameOffset
                    {
                        FrameRateType = (int)frameRateType, Offset = offset
                    });
                }
                else
                {
                    offsetFrameInputBackground.color = Color.red;
                }
            }).AddTo(this);

            saveButton.OnClickAsObservable().Subscribe(_ => { globalFrameOffsetController.Save(); }).AddTo(this);
        }