mirror of
https://github.com/babalae/better-genshin-impact
synced 2025-01-07 03:17:16 +08:00
fixed #661
This commit is contained in:
parent
60f1a271c4
commit
a66b802bbd
@ -12,4 +12,6 @@ public partial class KeyMouseScriptItem : ObservableObject
|
||||
private string _createTimeStr = string.Empty;
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
public string Path { get; set; } = string.Empty;
|
||||
}
|
||||
|
@ -106,7 +106,7 @@
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ui:Button Command="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type local:KeyMouseRecordPage}}, Path=DataContext.StartPlayCommand}"
|
||||
CommandParameter="{Binding Name}"
|
||||
CommandParameter="{Binding Path}"
|
||||
Content="播放脚本"
|
||||
Icon="{ui:SymbolIcon Play24}" />
|
||||
</StackPanel>
|
||||
|
@ -45,15 +45,16 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation
|
||||
|
||||
private void InitScriptListViewData()
|
||||
{
|
||||
_scriptItems.Clear();
|
||||
ScriptItems.Clear();
|
||||
var fileInfos = LoadScriptFiles(scriptPath)
|
||||
.OrderByDescending(f => f.CreationTime)
|
||||
.ToList();
|
||||
foreach (var f in fileInfos)
|
||||
{
|
||||
_scriptItems.Add(new KeyMouseScriptItem
|
||||
ScriptItems.Add(new KeyMouseScriptItem
|
||||
{
|
||||
Name = f.Name,
|
||||
Path = f.FullName,
|
||||
CreateTime = f.CreationTime,
|
||||
CreateTimeStr = f.CreationTime.ToString("yyyy-MM-dd HH:mm:ss")
|
||||
});
|
||||
@ -67,7 +68,7 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation
|
||||
Directory.CreateDirectory(folder);
|
||||
}
|
||||
|
||||
var files = Directory.GetFiles(folder, "*.*",
|
||||
var files = Directory.GetFiles(folder, "*.json",
|
||||
SearchOption.AllDirectories);
|
||||
|
||||
return files.Select(file => new FileInfo(file)).ToList();
|
||||
@ -120,12 +121,13 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
public async Task OnStartPlay(string name)
|
||||
public async Task OnStartPlay(string path)
|
||||
{
|
||||
string name = Path.GetFileName(path);
|
||||
_logger.LogInformation("重放开始:{Name}", name);
|
||||
try
|
||||
{
|
||||
var s = await File.ReadAllTextAsync(Path.Combine(scriptPath, name));
|
||||
var s = await File.ReadAllTextAsync(path);
|
||||
|
||||
await new TaskRunner(DispatcherTimerOperationEnum.UseSelfCaptureImage)
|
||||
.RunAsync(async () => await KeyMouseMacroPlayer.PlayMacro(s, CancellationContext.Instance.Cts.Token));
|
||||
@ -159,11 +161,11 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation
|
||||
if (!string.IsNullOrEmpty(str))
|
||||
{
|
||||
// 检查原始文件是否存在
|
||||
var originalFilePath = Path.Combine(scriptPath, item.Name);
|
||||
var originalFilePath = item.Path;
|
||||
if (File.Exists(originalFilePath))
|
||||
{
|
||||
// 重命名文件
|
||||
File.Move(originalFilePath, Path.Combine(scriptPath, str + ".json"));
|
||||
File.Move(originalFilePath, Path.Combine(Path.GetDirectoryName(originalFilePath)!, str + ".json"));
|
||||
_snackbarService.Show(
|
||||
"修改名称成功",
|
||||
$"脚本名称 {item.Name} 修改为 {str}",
|
||||
@ -199,7 +201,7 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation
|
||||
}
|
||||
try
|
||||
{
|
||||
File.Delete(Path.Combine(scriptPath, item.Name));
|
||||
File.Delete(item.Path);
|
||||
_snackbarService.Show(
|
||||
"删除成功",
|
||||
$"{item.Name} 已经被删除",
|
||||
|
Loading…
Reference in New Issue
Block a user