private async void RatioPTTChecked(object sender, RoutedEventArgs e) { if (DisplayFrame.CurrentSourcePageType != typeof(PttMainPage)) { if (SplitView1.DisplayMode == SplitViewDisplayMode.CompactOverlay) { await rtb.RenderAsync(SplitContent); DissolveImage.Source = rtb; DissolveImage.Visibility = Visibility.Visible; DissolveImage.Opacity = 1.0; double duration = 150; AnimateDouble(DissolveImage, "Opacity", 0.0, duration + 50, () => { DissolveImage.Visibility = Visibility.Collapsed; }); SplitView1.DisplayMode = SplitViewDisplayMode.Overlay; DisplayFrame.Navigate(typeof(PttMainPage)); SplitContentTransform.X = 0; SplitContentTransform.Y = 20; AnimateDouble(SplitContentTransform, "Y", 0, duration, () => { SplitContentTransform.X = 0; }); } /*** * if (SplitView1.DisplayMode == SplitViewDisplayMode.Overlay) * { * // Overlay ==> CompactOverlay * await rtb.RenderAsync(SplitContent); * DissolveImage.Source = rtb; * DissolveImage.Visibility = Visibility.Visible; * DissolveImage.Opacity = 1.0; * double duration = 150; * AnimateDouble(DissolveImage, "Opacity", 0.0, duration + 50, () => * { * DissolveImage.Visibility = Visibility.Collapsed; * }); * * DisplayFrame.Navigate(typeof(PttMainPage)); * SplitContentTransform.X = SplitView1.CompactPaneLength; * * SplitContentTransform.Y = 20; * AnimateDouble(SplitContentTransform, "Y", 0, duration, () => { * * SplitView1.DisplayMode = SplitViewDisplayMode.CompactOverlay; * SplitContentTransform.X = 0; * }); * } * /***/ else { await StartDissolvingAsync(); DisplayFrame.Navigate(typeof(PttMainPage)); } } }
private async void YoutubePageChecked(object sender, RoutedEventArgs e) { if (DisplayFrame.CurrentSourcePageType != typeof(YoutubePage)) { if (SplitView1.DisplayMode == SplitViewDisplayMode.CompactOverlay && LiPTT.IsYoutubeFullScreen) { // CompactOverlay ==> Overlay await rtb.RenderAsync(SplitContent); DissolveImage.Source = rtb; DissolveImage.Visibility = Visibility.Visible; DissolveImage.Opacity = 1.0; double duration = 150; AnimateDouble(DissolveImage, "Opacity", 0.0, duration + 50, () => { DissolveImage.Visibility = Visibility.Collapsed; }); SplitView1.DisplayMode = SplitViewDisplayMode.Overlay; DisplayFrame.Navigate(typeof(YoutubePage)); SplitContentTransform.X = 0; SplitContentTransform.Y = 20; AnimateDouble(SplitContentTransform, "Y", 0, duration, () => { SplitContentTransform.X = 0; }); } else if (SplitView1.DisplayMode == SplitViewDisplayMode.Overlay && !LiPTT.IsYoutubeFullScreen) { // Overlay ==> CompactOverlay await rtb.RenderAsync(SplitContent); DissolveImage.Source = rtb; DissolveImage.Visibility = Visibility.Visible; DissolveImage.Opacity = 1.0; double duration = 150; AnimateDouble(DissolveImage, "Opacity", 0.0, duration + 50, () => { DissolveImage.Visibility = Visibility.Collapsed; }); DisplayFrame.Navigate(typeof(YoutubePage)); SplitContentTransform.X = SplitView1.CompactPaneLength; SplitContentTransform.Y = 20; AnimateDouble(SplitContentTransform, "Y", 0, duration, () => { SplitView1.DisplayMode = SplitViewDisplayMode.CompactOverlay; SplitContentTransform.X = 0; }); } else { await StartDissolvingAsync(); DisplayFrame.Navigate(typeof(YoutubePage)); } } }
private async Task <int> Run(Options options) { try { using (var ledDriver = LedDriver.Create()) { var displayDriver = new DisplayDriver(ledDriver); Task task; if (options.StringValue != null) { if (options.ForceScroll || DisplayFrame.GetDisplayedStringLength(options.StringValue) > 3) { task = displayDriver.ScrollString(options.StringValue, options.Duration); } else { displayDriver.WriteString(options.StringValue); task = Task.Delay(options.Duration); } } else if (options.DecimalValue != null) { displayDriver.WriteFrame(DisplayFrame.FromDecimal(options.DecimalValue.Value, StatusLed.Blue)); task = Task.Delay(options.Duration); } else if (options.BusyDelay != null) { task = displayDriver.BusyLoop(options.BusyDelay.Value, options.Duration); } else if (options.RawValue != null) { for (int i = 0; i < 32; i++) { bool bit = ((options.RawValue.Value << i) & 0x80000000u) != 0u; ledDriver.WriteBit(bit); } ledDriver.Latch(); task = Task.Delay(options.Duration); } else { Console.WriteLine("No option selected."); return(-1); } await task; displayDriver.Clear(); } return(0); } catch (Exception ex) { Console.WriteLine($"Error: {ex}"); return(-1); } }
private async void ColorPage_Click(object sender, RoutedEventArgs e) { if (DisplayFrame.CurrentSourcePageType != typeof(ColorPage)) { await StartDissolvingAsync(); DisplayFrame.Navigate(typeof(ColorPage)); } }
private async void RatioSettingChecked(object sender, RoutedEventArgs e) { if (DisplayFrame.CurrentSourcePageType != typeof(SettingPage)) { await StartDissolvingAsync(); DisplayFrame.Navigate(typeof(SettingPage)); SplitView1.DisplayMode = SplitViewDisplayMode.Overlay; } }
private void SwitchPage(object sender, EventArgs e) { DisplayFrame.Navigate(pageToLoad); if (NavigatorFree != null) { Tools.Animations.FadeIn(DisplayFrame, animationTime, NavigationFinished); } else { Tools.Animations.FadeIn(DisplayFrame, animationTime, null); } }
public void UpdateDisplay(DisplayFrame data) { //Render byte[] rendered = data.GetSerializedData(); //Create data to send byte[] buffer = new byte[2 + rendered.Length]; buffer[1] = 0x65; Array.Copy(rendered, 0, buffer, 2, rendered.Length); //Send device.WriteFeatureData(buffer); }
// -------- Navigator -------- public void Navigate(Page pageToLoad, double animationTime = .25d, bool animated = true) { if (!animated) { DisplayFrame.Navigate(pageToLoad); } else { this.pageToLoad = pageToLoad; this.animationTime = animationTime; Tools.Animations.FadeOut(DisplayFrame, animationTime, SwitchPage); } }
private int videoFrame = -1; //Used for recording. Set to 0 to begin, -1 to stop public OSInstance() { this.frame = new DisplayFrame(128, 40); this.connection = new KeyboardConnection(); this.connection.Init(); this.apps = new List <KeyboardApp>(); this.rand = new Random(); new Thread(() => { Hooky.Init(); }).Start(); Hooky.listeners += Hooky_listeners; }
private void Timer_Elapsed(object sender, ElapsedEventArgs e) { Dispatcher.Invoke(() => { switch (DisplayType) { case DISPLAY_TYPE.LOGO: DisplayFrame.Navigate(new LogoPage()); break; case DISPLAY_TYPE.TEXT: DisplayFrame.Navigate(new TextPage(showText)); break; } }); }
private void Window_Loaded(object sender, RoutedEventArgs e) { switch (DisplayType) { case DISPLAY_TYPE.LOGO: DisplayFrame.Navigate(new LogoPage()); break; case DISPLAY_TYPE.TEXT: DisplayFrame.Navigate(new TextPage(showText)); break; case DISPLAY_TYPE.SEATMAPS: DisplayFrame.Navigate(new SeatMapPage(aircraftConfigurationId, frontDoorUsingFlag, rearDoorUsingFlag)); break; } }
private static void AssertFrame( bool expectedRed, bool expectedGreen, bool expectedBlue, DisplayCharacter expectedLeft, DisplayCharacter expectedMiddle, DisplayCharacter expectedRight, DisplayFrame actual ) { Assert.AreEqual(expectedRed, actual.StatusLeds[StatusLed.Red]); Assert.AreEqual(expectedGreen, actual.StatusLeds[StatusLed.Green]); Assert.AreEqual(expectedBlue, actual.StatusLeds[StatusLed.Blue]); Assert.AreEqual(expectedLeft.Value, actual.Characters[2].Value); Assert.AreEqual(expectedMiddle.Value, actual.Characters[1].Value); Assert.AreEqual(expectedRight.Value, actual.Characters[0].Value); }
// -------- Initialization -------- public MainWindow() { InitializeComponent(); instance = this; Editor.Initiate(); Project.VerifyDirectories(); Project.VerifyEnchantDefaultFiles(); EnchantPack.LoadEnchantPacks(); DisplayFrame.Navigate(new WelcomePage()); InitializeColorBar(); ActionBar.Height = 0; }
private void HandleEsc(object sender, KeyEventArgs e) { if (e.Key == Key.Escape) { Close(); } if (e.Key == Key.T && DisplayType != DISPLAY_TYPE.SEATMAPS) { if (timer != null && timer.Enabled) { timer.Enabled = false; } seatMapPage = new SeatMapPage(aircraftConfigurationId, frontDoorUsingFlag, rearDoorUsingFlag, "C_3"); DisplayFrame.Navigate(seatMapPage); timer = new Timer(guidanceTime * 1000); timer.AutoReset = false; timer.Elapsed += Timer_Elapsed; timer.Start(); } }
private async void RatioBBSChecked(object sender, RoutedEventArgs e) { RatioBBS.IsEnabled = false; if (DisplayFrame.CurrentSourcePageType != typeof(BBSPage)) { // CompactOverlay ==> Overlay if (SplitView1.DisplayMode == SplitViewDisplayMode.CompactOverlay) { await StartDissolvingAsync(); DisplayFrame.Navigate(typeof(BBSPage)); SplitView1.DisplayMode = SplitViewDisplayMode.Overlay; } else { await StartDissolvingAsync(); DisplayFrame.Navigate(typeof(BBSPage)); SplitView1.DisplayMode = SplitViewDisplayMode.Overlay; } } }
private void MainPage_Loaded(object sender, RoutedEventArgs e) { DisplayFrame.Navigate(typeof(PttMainPage)); RatioPTT.IsChecked = true; }
public LoginWindow() { InitializeComponent(); DisplayFrame.Navigate(new LoginPage(this)); }
public MenuWindow() { InitializeComponent(); DisplayFrame.Navigate(new MenuPage(this)); }
private static DisplayFrame CreateFrameDecimal(decimal value) => DisplayFrame.FromDecimal(value, StatusLed.Blue);