Commit Graph

5 Commits

Author SHA1 Message Date
7deaa65c39 更新引用和事件处理,移除 ButtonViewModel 类
在 `EditorWin.xaml.cs` 中:
- 添加了 `System.Text.Encodings.Web` 和 `System.Text.Json` 的引用。
- 在 `TreeView_AddTabItem` 方法中,添加了对 `title` 为空的检查。
- 将 `UpdateUI` 事件替换为 `SavePointLeft` 事件。
- 将 `KeyDown` 事件替换为 `PreviewKeyDown` 事件。
- 添加了对 `Ctrl + Alt + L` 快捷键的处理,用于格式化 JSON 文本。

在 `RustTools.csproj` 中:
- 更新了多个包的版本,包括 `CommunityToolkit.Mvvm`、`Microsoft.Extensions.Hosting`、`Microsoft.WindowsAppSDK`、`System.Management` 和 `WinUIEx`。
- 移除了 `Microsoft.Windows.CsWinRT` 包的引用。
- 添加了 `CommunityToolkit.WinUI.Controls.Sizers` 包的引用。

在 `ButtonViewModel.cs` 中:
- 移除了 `ButtonViewModel` 类及其内容。

在 `RankingViewModel.cs` 中:
- 在 `RankingList` 为空时,添加了对 `modData` 和 `modData.Data` 为空的检查。
- 更新了 `item.Icon` 的替换逻辑。

在 `UserPage.xaml.cs` 中:
- 在用户登录逻辑中,添加了对 `userSpaceInfo` 为空的检查。
2025-01-24 20:01:29 +08:00
80e402e386 优化标签页管理和事件处理逻辑
在 `EditorTreeView.cs` 文件中:
- 增加了检查是否存在相同标签页的逻辑,并在存在时选中该标签页。
- 增加了 `SelectedItem` 事件,用于在标签页已经存在时触发。
- 在添加新的 `TabViewItem` 时,增加了 `Tag` 属性以存储文件路径。

在 `EditorWin.xaml.cs` 文件中:
- 修改了 `TabViewList` 和 `DataSource` 的初始化方式,从 `new()` 改为 `[]`。
- 在 `EditorWin` 的构造函数中,增加了对 `treeView.SelectedItem` 事件的处理逻辑。
- 在 `TreeView_AddTabItem` 方法中,增加了对 `codeEditorControl.KeyDown` 事件的处理逻辑,当按下 `Ctrl + S` 时,保存当前文件内容并清空撤销缓冲区。

在 `wj.cs` 文件中:
- 修改了 `xrwb` 方法的签名,将 `name` 参数改为可空类型,并增加了对 `name` 为空的检查逻辑,如果 `name` 为空则返回 `false`。

修复标签页选择逻辑并添加快捷键支持

在 `EditorTreeView.cs` 文件中:
- 在 `else` 分支中添加了检查是否已存在标签页的逻辑,如果存在则选中该标签页并返回。
- 在 `AddTabItem` 事件后添加了 `SelectedItem` 事件。

在 `EditorWin.xaml.cs` 文件中:
- 添加了 `Microsoft.UI.Input` 和 `Windows.System` 的引用。
- 将 `TabViewList` 和 `DataSource` 的初始化从 `new()` 改为 `[]`。
- 在 `treeView.SelectedItem` 事件中添加了选中标签页的逻辑。
- 在 `TreeView_AddTabItem` 方法中添加了对 `codeEditorControl.KeyDown` 事件的处理,支持 `Ctrl + S` 快捷键保存文件。

在 `wj.cs` 文件中:
- 修改了 `xrwb` 方法的签名,参数 `name` 允许为空,并在方法内部添加了对 `name` 为空的检查。
2025-01-22 16:24:37 +08:00
e88ec9db04 重构 EditorTreeView 以使用 Microsoft.UI.Xaml.Controls
在 `EditorTreeView.cs` 中:
- 添加了 `Microsoft.UI.Xaml.Controls`、`RustTools.muqing` 和 `WinUIEditor` 的引用。
- 将 `EditorTreeView` 类从继承 `TreeView` 改为继承 `Microsoft.UI.Xaml.Controls.TreeView`。
- 修改了事件处理程序的绑定方式,去掉了 `this` 关键字。
- 修改了 `TreeView_ItemInvoked`、`TreeView_Expanding` 和 `TreeView_Collapsed` 方法的参数类型,使用了 `Microsoft.UI.Xaml.Controls.TreeView`。
- 在 `TreeView_ItemInvoked` 方法中,添加了处理文件点击事件的逻辑,包括创建 `CodeEditorControl` 实例并将其添加到 `TabViewItem` 中。
- 添加了 `AddTabItem` 事件。

在 `EditorWin.xaml` 中:
- 添加了 `WinUIEditor` 的命名空间引用。
- 在 `Grid` 中添加了 `RowDefinition`,用于定义 `TabView` 的头部和内容区域的高度。
- 注释掉了 `CodeEditorControl` 的 XAML 定义。

在 `EditorWin.xaml.cs` 中:
- 添加了 `Microsoft.UI.Xaml.Media` 和 `WinUIEditor` 的引用。
- 在 `EditorWin` 构造函数中,添加了 `gridedit.SizeChanged` 事件处理程序,用于调整 `TabView` 的高度。
- 添加了 `TreeView_AddTabItem` 方法,用于处理 `AddTabItem` 事件。
- 删除了 `MyTabView_AddTabButtonClick` 方法。

在 `RustTools.csproj` 中:
- 添加了 `WinUIEdit` 包的引用。

重构 EditorTreeView 并添加 WinUI 支持

将 EditorTreeView 类更改为 Microsoft.UI.Xaml.Controls.TreeView,添加相关命名空间引用。更新方法参数类型并处理文件点击事件。调整 EditorWin.xaml 和 EditorWin.xaml.cs 文件,添加事件处理逻辑。移除 MyTabView_AddTabButtonClick 方法,并在 RustTools.csproj 中添加 WinUIEdit 包引用。
2025-01-21 19:26:04 +08:00
f21ffd521a 更新异常处理、控件属性和事件处理程序
在 `App.xaml.cs` 文件中,捕获 `Exception` 异常时,添加了调试输出信息,输出内容为“发生未知错误: ”加上异常信息。
在 `EditorWin.xaml` 文件中,将 `TreeView` 的 `CanReorderItems` 属性从 `True` 修改为 `False`。
在 `EditorWin.xaml` 文件中,`TabView` 控件添加了 `AddTabButtonClick` 和 `TabCloseRequested` 事件处理程序,并将 `IsAddTabButtonVisible` 属性设置为 `False`。
在 `EditorWin.xaml.cs` 文件中,添加了 `MyTabView_AddTabButtonClick` 和 `MyTabView_TabCloseRequested` 方法,用于处理添加和关闭选项卡的事件。
在 `RustTools.csproj` 文件中,调整了注释的格式,使其在 VS Code 中显示正确的图标,并调整了 `ItemGroup` 的格式。
2025-01-16 19:22:27 +08:00
fc72ca7467 进行项目文件位置优化 2025-01-16 18:40:29 +08:00