private void FlyoutsPreviewMouseDown(object sender, MouseButtonEventArgs e) { FrameworkElement element = (e.OriginalSource as FrameworkElement); if (element != null && element.TryFindParent <Flyout>() != null) { return; } if (Flyouts.OverrideExternalCloseButton == null) { foreach (Flyout flyout in Flyouts.GetFlyouts()) { if (flyout.ExternalCloseButton == e.ChangedButton && (flyout.IsPinned == false || Flyouts.OverrideIsPinned == true)) { flyout.IsOpen = false; } } } else if (Flyouts.OverrideExternalCloseButton == e.ChangedButton) { foreach (Flyout flyout in Flyouts.GetFlyouts()) { if (flyout.IsPinned == false || Flyouts.OverrideIsPinned == true) { flyout.IsOpen = false; } } } }
private void FlyoutsPreviewMouseDown(object sender, MouseButtonEventArgs e) { DependencyObject element = (e.OriginalSource as DependencyObject); if (element != null && element.TryFindParent <Flyout>() != null) { return; } if (Flyouts.OverrideExternalCloseButton == null) { foreach (Flyout flyout in Flyouts.GetFlyouts().Where(x => x.IsOpen && x.ExternalCloseButton == e.ChangedButton && (!x.IsPinned || Flyouts.OverrideIsPinned))) { flyout.IsOpen = false; e.Handled = true; } } else if (Flyouts.OverrideExternalCloseButton == e.ChangedButton) { foreach (Flyout flyout in Flyouts.GetFlyouts().Where(x => x.IsOpen && (!x.IsPinned || Flyouts.OverrideIsPinned))) { flyout.IsOpen = false; e.Handled = true; } } }
public static IDisposable PushFlyout(string flyoutName, object context) { if (flyoutName == null) { throw new ArgumentNullException(nameof(flyoutName)); } var handle = new FlyoutHandle(flyoutName, context); if (TargetElement == null) { QueuedFlyouts.Enqueue(handle); return(handle); } var oldFlyout = CurrentFlyout; Flyouts.Add(oldFlyout); var flyout = GetFlyout(handle); SwapFlyouts(oldFlyout, flyout); return(handle); }
private void FlyoutsPreviewMouseDown(object sender, MouseButtonEventArgs e) { var element = (e.OriginalSource as DependencyObject); if (element != null) { // no preview if we just clicked these elements if (element.TryFindParent <Flyout>() != null || Equals(element.TryFindParent <ContentControl>(), this.icon) || element.TryFindParent <WindowCommands>() != null || element.TryFindParent <WindowButtonCommands>() != null) { return; } } if (Flyouts.OverrideExternalCloseButton == null) { foreach (var flyout in Flyouts.GetFlyouts().Where(x => x.IsOpen && x.ExternalCloseButton == e.ChangedButton && (!x.IsPinned || Flyouts.OverrideIsPinned))) { flyout.IsOpen = false; e.Handled = true; } } else if (Flyouts.OverrideExternalCloseButton == e.ChangedButton) { foreach (var flyout in Flyouts.GetFlyouts().Where(x => x.IsOpen && (!x.IsPinned || Flyouts.OverrideIsPinned))) { flyout.IsOpen = false; e.Handled = true; } } }
public void Handle(OpenFlyoutEvent message) { var flyout = Flyouts.FirstOrDefault(f => f.Flyout == message.Flyout); if (flyout != null) { flyout.IsOpen = true; } }
private void CloseFlyouts() { RxApp.MainThreadScheduler.Schedule(_ => { foreach (var flyout in Flyouts.Where(flyout => flyout != null && flyout.IsOpen)) { flyout.IsOpen = false; } }); }
public void AddOrUpdateFlyouts(IFlyoutBaseVm flyout) { var flyoutType = flyout.GetType(); var oldFlyout = Flyouts.FirstOrDefault(e => e.GetType().Name == flyoutType.Name); if (oldFlyout != null) { Flyouts.Remove(oldFlyout); } Flyouts.Add(BootStrapper.CreateFlyoutControl(flyout)); }
public static void PopFlyout(string flyoutName) { if (flyoutName is null) { throw new ArgumentNullException(nameof(flyoutName)); } var old = (Flyout)App.Current.Resources[flyoutName]; Flyouts.Remove(old); }
public void DoToggleFlyout(FlyoutBaseViewModel flyout) { if(!Flyouts.Contains(flyout)) { Flyouts.Add(flyout); } foreach(FlyoutBaseViewModel fbvw in Flyouts) { if (fbvw.Equals(flyout)) continue; fbvw.IsOpen = false; } flyout.IsOpen = !flyout.IsOpen; }
void App_CommandsRequested(SettingsPane sender, SettingsPaneCommandsRequestedEventArgs args) { var optionsCharmCmd = new SettingsCommand("options", "Options", handler => { var flyout = Flyouts.Build("Options", new Settings()); flyout.Show(); }); var privacyPolicyCharmCmd = new SettingsCommand("privacy", "Privacy policy", handler => { var flyout = Flyouts.Build("Privacy policy", new PrivacyPolicy()); flyout.Show(); }); var appCommands = args.Request.ApplicationCommands; appCommands.Add(optionsCharmCmd); appCommands.Add(privacyPolicyCharmCmd); }
/// <summary> /// Clean-up! /// </summary> protected override void OnDispose() { //Clear the flyouts Flyouts.Clear(); //Dispose the login view if (null != _loginView) { _loginView.UserLoggedIn -= LoginViewUserLoggedIn; _loginView.Dispose(); } //Dispose the application view. if (null != SelectedView) { SelectedView.Dispose(); } }
private void Grid_DragStarting(UIElement sender, DragStartingEventArgs args) => Flyouts.ShowFlyoutBase(sender);
private void Grid_RightTapped(object sender, RightTappedRoutedEventArgs e) => Flyouts.ShowFlyoutBase(sender);
private void InitSettingsCharm() { var flyout = Flyouts.Build("Options", new Settings()); SettingsPane.GetForCurrentView().CommandsRequested += App_CommandsRequested; }
public void CloseSettings() { Flyouts.First().IsOpen = false; }
public void Settings() { Flyouts.First().IsOpen = !Flyouts.First().IsOpen; }