Ejemplo n.º 1
0
 private void SetConfiguredAction(PinButton pinButton, PinAction pinAction = PinAction.None)
 {
     PinSetup.Hide();
     var pin = (Pin)pinButton.DataContext;
     pin.Value = 0;
     pin.ConfiguredAction = pinAction;
     SavePinState(pin);
 }
Ejemplo n.º 2
0
        private void SetupButton(PinButton pinButton)
        {
            var pin = (Pin)pinButton.DataContext;

            PinSetupCaption.Text = pin.Caption;
            PinSetupAnalogRead.Visibility = pin.Functions.Contains(PinAction.AnalogRead) ? Visibility.Visible : Visibility.Collapsed;
            PinSetupAnalogWrite.Visibility = pin.Functions.Contains(PinAction.AnalogWrite) ? Visibility.Visible : Visibility.Collapsed;
            PinSetupAnalogWriteDac.Visibility = pin.Functions.Contains(PinAction.AnalogWriteDac) ? Visibility.Visible : Visibility.Collapsed;
            PinSetupDigitalgRead.Visibility = pin.Functions.Contains(PinAction.DigitalRead) ? Visibility.Visible : Visibility.Collapsed;
            PinSetupDigitalWrite.Visibility = pin.Functions.Contains(PinAction.DigitalWrite) ? Visibility.Visible : Visibility.Collapsed;

            PinSetupAnalogRead.DataContext = pinButton;
            PinSetupAnalogWrite.DataContext = pinButton;
            PinSetupAnalogWriteDac.DataContext = pinButton;
            PinSetupDigitalgRead.DataContext = pinButton;
            PinSetupDigitalWrite.DataContext = pinButton;

            PinSetup.ShowAt(pinButton);
        }
Ejemplo n.º 3
0
        private async void PinUpdate(PinButton pinButton)
        {
            var pin = (Pin)pinButton.DataContext;

            switch (pin.ConfiguredAction)
            {
                case PinAction.AnalogRead:
                    pin.AnalogReadAsync();
                    break;
                case PinAction.AnalogWrite:
                case PinAction.AnalogWriteDac:
                    AnalogPinWriteCaption.Text = string.Format(analogPinWriteCaption, pin.Caption);
                    AnalogPinSlider.Minimum = 0;
                    AnalogPinSlider.Maximum = pin.MaxAnalogWriteValue;
                    AnalogPinSlider.Value = pin.Value;
                    AnalogPinSlider.DataContext = pin;
                    AnalogPinValueText.Text = pin.Value.ToString();
                    AnalogValueFlyout.ShowAt(pinButton);
                    break;
                case PinAction.DigitalRead:
                    await pin.DigitalReadAsync();
                    break;
                case PinAction.DigitalWrite:
                    pin.DigitalWriteAsync();
                    break;
            }
        }