public static void Edit(this WidgetId id, bool dismiss = false) { var settings = id.GetSettings(); if (settings == null) { return; } var view = id.GetView(); var name = id.GetName(); var previousHorizontalAlignment = settings.HorizontalAlignment; var previousVerticalAlignment = settings.VerticalAlignment; var previousIsDocked = settings.IsDocked; if (dismiss) { view?.Dismiss(); } new WidgetEditor(name, settings).ShowDialog(); if (view != null && !view.IsClosed) { view.UpdateUi(isDocked: previousIsDocked, dockHorizontalAlignment: previousHorizontalAlignment, dockVerticalAlignment: previousVerticalAlignment); } }
public static void Remove(this WidgetId id, bool msg = false) { var settings = id.GetSettings(); if (settings == null) { return; } if (msg && Popup.Show($"Are you sure you want to delete \"{settings.Name}\"?", MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.Yes) == MessageBoxResult.No) { return; } settings.Backup(); App.WidgetsSettingsStore.Widgets.Remove(settings); var view = id.GetView(); if (view != null) { view.Close(); App.WidgetViews.Remove(view); } }
public static void CloseView(this WidgetId id, bool reload = false) { try { var view = id.GetView(); if (view == null) { id.LoadView(); return; } if (reload) { view.CloseAction = () => { id.LoadView(); }; } view.CloseAnimation(); } catch (Exception ex) { var name = id.GetName(); Popup.ShowAsync($"{name} failed to close.\n\n{ex.Message}", image: MessageBoxImage.Error); } }
protected override void ExecuteAction() { base.ExecuteAction(); WidgetId?.GetView()?.HideUi(CheckIdleStatus, CheckHideStatus); }
protected override void ExecuteAction() { base.ExecuteAction(); WidgetId?.GetView()?.ExecuteSpecialAction(); }