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);
 }
Beispiel #5
0
 protected override void ExecuteAction()
 {
     base.ExecuteAction();
     WidgetId?.GetView()?.ExecuteSpecialAction();
 }