mirror of
https://github.com/wwiinnddyy/LanMountainDesktop.git
synced 2026-06-22 00:54:26 +08:00
0.7.6
加入删除页面二次确认
This commit is contained in:
@@ -959,6 +959,10 @@
|
|||||||
"study.interrupt_density.unavailable": "--",
|
"study.interrupt_density.unavailable": "--",
|
||||||
"desktop.add_page": "Add page",
|
"desktop.add_page": "Add page",
|
||||||
"desktop.delete_page": "Delete page",
|
"desktop.delete_page": "Delete page",
|
||||||
|
"desktop.delete_page_confirm.title": "Confirm Delete Page",
|
||||||
|
"desktop.delete_page_confirm.message": "Are you sure you want to delete the current page?\n\nThis will remove all components on this page and cannot be undone.",
|
||||||
|
"desktop.delete_page_confirm.primary": "Delete",
|
||||||
|
"desktop.delete_page_confirm.close": "Cancel",
|
||||||
"placement.fill": "Fill",
|
"placement.fill": "Fill",
|
||||||
"placement.fit": "Fit",
|
"placement.fit": "Fit",
|
||||||
"placement.stretch": "Stretch",
|
"placement.stretch": "Stretch",
|
||||||
|
|||||||
@@ -953,6 +953,10 @@
|
|||||||
"study.interrupt_density.unavailable": "--",
|
"study.interrupt_density.unavailable": "--",
|
||||||
"desktop.add_page": "新增页面",
|
"desktop.add_page": "新增页面",
|
||||||
"desktop.delete_page": "删除页面",
|
"desktop.delete_page": "删除页面",
|
||||||
|
"desktop.delete_page_confirm.title": "确认删除页面",
|
||||||
|
"desktop.delete_page_confirm.message": "确定要删除当前页面吗?\n\n此操作将删除当前页面上的所有组件,且无法撤销。",
|
||||||
|
"desktop.delete_page_confirm.primary": "删除",
|
||||||
|
"desktop.delete_page_confirm.close": "取消",
|
||||||
"placement.fill": "填充",
|
"placement.fill": "填充",
|
||||||
"placement.fit": "适应",
|
"placement.fit": "适应",
|
||||||
"placement.stretch": "拉伸",
|
"placement.stretch": "拉伸",
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Threading.Tasks;
|
||||||
using Avalonia;
|
using Avalonia;
|
||||||
using Avalonia.Controls;
|
using Avalonia.Controls;
|
||||||
using Avalonia.Controls.Shapes;
|
using Avalonia.Controls.Shapes;
|
||||||
@@ -10,6 +11,7 @@ using Avalonia.Layout;
|
|||||||
using Avalonia.Media;
|
using Avalonia.Media;
|
||||||
using Avalonia.Threading;
|
using Avalonia.Threading;
|
||||||
using Avalonia.VisualTree;
|
using Avalonia.VisualTree;
|
||||||
|
using FluentAvalonia.UI.Controls;
|
||||||
using FluentIcons.Avalonia;
|
using FluentIcons.Avalonia;
|
||||||
using FluentIcons.Common;
|
using FluentIcons.Common;
|
||||||
using LanMountainDesktop.ComponentSystem;
|
using LanMountainDesktop.ComponentSystem;
|
||||||
@@ -22,6 +24,8 @@ using LanMountainDesktop.Settings.Core;
|
|||||||
using LanMountainDesktop.Theme;
|
using LanMountainDesktop.Theme;
|
||||||
using LanMountainDesktop.Views.Components;
|
using LanMountainDesktop.Views.Components;
|
||||||
using PathShape = Avalonia.Controls.Shapes.Path;
|
using PathShape = Avalonia.Controls.Shapes.Path;
|
||||||
|
using Symbol = FluentIcons.Common.Symbol;
|
||||||
|
using SymbolIcon = FluentIcons.Avalonia.SymbolIcon;
|
||||||
|
|
||||||
namespace LanMountainDesktop.Views;
|
namespace LanMountainDesktop.Views;
|
||||||
|
|
||||||
@@ -826,7 +830,7 @@ public partial class MainWindow
|
|||||||
AddDesktopPage();
|
AddDesktopPage();
|
||||||
break;
|
break;
|
||||||
case "desktop.delete_page":
|
case "desktop.delete_page":
|
||||||
DeleteCurrentDesktopPage();
|
ConfirmAndDeleteCurrentDesktopPage();
|
||||||
break;
|
break;
|
||||||
case "component.delete":
|
case "component.delete":
|
||||||
DeleteSelectedComponent();
|
DeleteSelectedComponent();
|
||||||
@@ -840,6 +844,29 @@ public partial class MainWindow
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async void ConfirmAndDeleteCurrentDesktopPage()
|
||||||
|
{
|
||||||
|
if (_desktopPageCount <= MinDesktopPageCount)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var dialog = new ContentDialog
|
||||||
|
{
|
||||||
|
Title = L("desktop.delete_page_confirm.title", "确认删除页面"),
|
||||||
|
Content = L("desktop.delete_page_confirm.message", "确定要删除当前页面吗?\n\n此操作将删除当前页面上的所有组件,且无法撤销。"),
|
||||||
|
PrimaryButtonText = L("desktop.delete_page_confirm.close", "取消"),
|
||||||
|
SecondaryButtonText = L("desktop.delete_page_confirm.primary", "删除"),
|
||||||
|
DefaultButton = ContentDialogButton.Primary
|
||||||
|
};
|
||||||
|
|
||||||
|
var result = await dialog.ShowAsync(this);
|
||||||
|
if (result == ContentDialogResult.Secondary)
|
||||||
|
{
|
||||||
|
DeleteCurrentDesktopPage();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void DeleteSelectedComponent()
|
private void DeleteSelectedComponent()
|
||||||
{
|
{
|
||||||
if (_selectedDesktopComponentHost is null || _selectedDesktopComponentHost.Tag is not string placementId)
|
if (_selectedDesktopComponentHost is null || _selectedDesktopComponentHost.Tag is not string placementId)
|
||||||
|
|||||||
Reference in New Issue
Block a user