Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions PCL.Core/App/Config.cs
Original file line number Diff line number Diff line change
Expand Up @@ -543,6 +543,11 @@ partial class HideConfigGroup
/// </summary>
[ConfigItem<bool>("LaunchAdvanceDisableCrashAnalysis", false, ConfigSource.Local)] public partial bool DisableCrashAnalysis { get; set; }

/// <summary>
/// 允许将错误报告收起为角落入口,并在独立窗口中重新打开。
/// </summary>
[ConfigItem<bool>("LaunchAdvanceCrashReportDock", true, ConfigSource.Local)] public partial bool CrashReportDock { get; set; }

/// <summary>
/// 渲染器。
/// </summary>
Expand Down
10 changes: 10 additions & 0 deletions PCL.Core/App/Localization/Languages/en-GB.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -111,11 +111,17 @@
<!-- Crash -->

<sys:String x:Key="Crash.Analysis.Error.Failed">Crash analysis failed. See the details below.</sys:String>
<sys:String x:Key="Crash.Dialog.Button.Dock">Collapse</sys:String>
<sys:String x:Key="Crash.Dialog.Button.ExportReport">Export crash report</sys:String>
<sys:String x:Key="Crash.Dialog.Button.GoToModify">Modify settings</sys:String>
<sys:String x:Key="Crash.Dialog.Button.OpenInWindow">Open in a separate window</sys:String>
<sys:String x:Key="Crash.Dialog.Button.OpenLog">View log</sys:String>
<sys:String x:Key="Crash.Dialog.Title.Auto">Minecraft crashed</sys:String>
<sys:String x:Key="Crash.Dialog.Title.Manual">Crash report analysis result</sys:String>
<sys:String x:Key="Crash.Dock.Discard.ToolTip">Discard this crash report</sys:String>
<sys:String x:Key="Crash.Dock.Entry">{0}-{1}</sys:String>
<sys:String x:Key="Crash.Dock.Entry.ToolTip">Click to view this crash report in a separate window, so you can keep it at hand while fixing the problem.</sys:String>
<sys:String x:Key="Crash.Dock.Hint">Crash report collapsed. You can reopen it from the entry at the bottom-right corner.</sys:String>
<sys:String x:Key="Crash.Export.Failed.CopyDetails">Copy details</sys:String>
<sys:String x:Key="Crash.Export.Failed.Message">The crash report could not be exported.&#xA;&#xA;Target path: {0}</sys:String>
<sys:String x:Key="Crash.Export.Failed.MessageWithoutPath">The crash report could not be exported, and the target path is unavailable.</sys:String>
Expand Down Expand Up @@ -196,6 +202,8 @@
<sys:String x:Key="Crash.Report.SaveDialog.DefaultFileName">Crash Report-{0}.zip</sys:String>
<sys:String x:Key="Crash.Report.SaveDialog.Filter">Minecraft crash report (*.zip)|*.zip</sys:String>
<sys:String x:Key="Crash.Report.SaveDialog.Title">Select save location</sys:String>
<sys:String x:Key="Crash.Report.Window.Copy">Copy report</sys:String>
<sys:String x:Key="Crash.Report.Window.Title">Crash report</sys:String>

<!-- Crash.Report.Environment -->

Expand Down Expand Up @@ -2732,6 +2740,8 @@
<!-- Setup.Launch.Advanced -->

<sys:String x:Key="Setup.Launch.Advanced.DisableCrashAnalysis">Disable automatic crash analysis</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.CrashReportDock">Collapse crash reports and view them separately</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.CrashReportDock.ToolTip">When enabled, the crash report can be collapsed into an entry at the bottom-right corner and reopened in a separate window at any time, so you can keep it at hand while fixing mod conflicts.</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableCrashAnalysis.ToolTip">When enabled, the crash analysis page will no longer automatically appear when the game crashes.</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableJlw">Disable Java Launch Wrapper</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableJlw.Arm64Notice">Do not wrap with Java Wrapper when launching the game.&#xA;Java Wrapper has been forcibly disabled because the system is ARM64 architecture.</sys:String>
Expand Down
10 changes: 10 additions & 0 deletions PCL.Core/App/Localization/Languages/en-US.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -111,11 +111,17 @@
<!-- Crash -->

<sys:String x:Key="Crash.Analysis.Error.Failed">Crash analysis failed. See the details below.</sys:String>
<sys:String x:Key="Crash.Dialog.Button.Dock">Collapse</sys:String>
<sys:String x:Key="Crash.Dialog.Button.ExportReport">Export crash report</sys:String>
<sys:String x:Key="Crash.Dialog.Button.GoToModify">Modify settings</sys:String>
<sys:String x:Key="Crash.Dialog.Button.OpenInWindow">Open in a separate window</sys:String>
<sys:String x:Key="Crash.Dialog.Button.OpenLog">View log</sys:String>
<sys:String x:Key="Crash.Dialog.Title.Auto">Minecraft crashed</sys:String>
<sys:String x:Key="Crash.Dialog.Title.Manual">Crash report analysis result</sys:String>
<sys:String x:Key="Crash.Dock.Discard.ToolTip">Discard this crash report</sys:String>
<sys:String x:Key="Crash.Dock.Entry">{0}-{1}</sys:String>
<sys:String x:Key="Crash.Dock.Entry.ToolTip">Click to view this crash report in a separate window, so you can keep it at hand while fixing the problem.</sys:String>
<sys:String x:Key="Crash.Dock.Hint">Crash report collapsed. You can reopen it from the entry at the bottom-right corner.</sys:String>
<sys:String x:Key="Crash.Export.Failed.CopyDetails">Copy details</sys:String>
<sys:String x:Key="Crash.Export.Failed.Message">The crash report could not be exported.&#xA;&#xA;Target path: {0}</sys:String>
<sys:String x:Key="Crash.Export.Failed.MessageWithoutPath">The crash report could not be exported, and the target path is unavailable.</sys:String>
Expand Down Expand Up @@ -196,6 +202,8 @@
<sys:String x:Key="Crash.Report.SaveDialog.DefaultFileName">Crash Report-{0}.zip</sys:String>
<sys:String x:Key="Crash.Report.SaveDialog.Filter">Minecraft crash report (*.zip)|*.zip</sys:String>
<sys:String x:Key="Crash.Report.SaveDialog.Title">Select save location</sys:String>
<sys:String x:Key="Crash.Report.Window.Copy">Copy report</sys:String>
<sys:String x:Key="Crash.Report.Window.Title">Crash report</sys:String>

<!-- Crash.Report.Environment -->

Expand Down Expand Up @@ -2732,6 +2740,8 @@
<!-- Setup.Launch.Advanced -->

<sys:String x:Key="Setup.Launch.Advanced.DisableCrashAnalysis">Disable automatic crash analysis</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.CrashReportDock">Collapse crash reports and view them separately</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.CrashReportDock.ToolTip">When enabled, the crash report can be collapsed into an entry at the bottom-right corner and reopened in a separate window at any time, so you can keep it at hand while fixing mod conflicts.</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableCrashAnalysis.ToolTip">When enabled, the crash analysis page will no longer automatically appear when the game crashes.</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableJlw">Disable Java Launch Wrapper</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableJlw.Arm64Notice">Do not wrap with Java Wrapper when launching the game.&#xA;Java Wrapper has been forcibly disabled because the system is ARM64 architecture.</sys:String>
Expand Down
10 changes: 10 additions & 0 deletions PCL.Core/App/Localization/Languages/zh-CN.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -111,11 +111,17 @@
<!-- Crash -->

<sys:String x:Key="Crash.Analysis.Error.Failed">崩溃分析失败。请查看错误详情。</sys:String>
<sys:String x:Key="Crash.Dialog.Button.Dock">收起</sys:String>
<sys:String x:Key="Crash.Dialog.Button.ExportReport">导出错误报告</sys:String>
<sys:String x:Key="Crash.Dialog.Button.GoToModify">前往修改</sys:String>
<sys:String x:Key="Crash.Dialog.Button.OpenInWindow">在独立窗口中打开</sys:String>
<sys:String x:Key="Crash.Dialog.Button.OpenLog">查看日志</sys:String>
<sys:String x:Key="Crash.Dialog.Title.Auto">Minecraft 出现错误</sys:String>
<sys:String x:Key="Crash.Dialog.Title.Manual">错误报告分析结果</sys:String>
<sys:String x:Key="Crash.Dock.Discard.ToolTip">丢弃这份错误报告</sys:String>
<sys:String x:Key="Crash.Dock.Entry">{0}-{1}</sys:String>
<sys:String x:Key="Crash.Dock.Entry.ToolTip">点击可在独立窗口中查看这次游戏崩溃的错误报告,便于一边处理问题一边对照。</sys:String>
<sys:String x:Key="Crash.Dock.Hint">错误报告已收起,可在右下角入口中重新打开。</sys:String>
<sys:String x:Key="Crash.Export.Failed.CopyDetails">复制详细信息</sys:String>
<sys:String x:Key="Crash.Export.Failed.Message">无法导出错误报告。&#xA;&#xA;目标路径:{0}</sys:String>
<sys:String x:Key="Crash.Export.Failed.MessageWithoutPath">无法导出错误报告,且未能获取目标路径。</sys:String>
Expand Down Expand Up @@ -196,6 +202,8 @@
<sys:String x:Key="Crash.Report.SaveDialog.DefaultFileName">错误报告-{0}.zip</sys:String>
<sys:String x:Key="Crash.Report.SaveDialog.Filter">Minecraft 错误报告(*.zip)|*.zip</sys:String>
<sys:String x:Key="Crash.Report.SaveDialog.Title">选择保存位置</sys:String>
<sys:String x:Key="Crash.Report.Window.Copy">复制报告</sys:String>
<sys:String x:Key="Crash.Report.Window.Title">错误报告</sys:String>

<!-- Crash.Report.Environment -->

Expand Down Expand Up @@ -2732,6 +2740,8 @@
<!-- Setup.Launch.Advanced -->

<sys:String x:Key="Setup.Launch.Advanced.DisableCrashAnalysis">禁用自动崩溃分析</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.CrashReportDock">错误报告可收起并独立查看</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.CrashReportDock.ToolTip">启用后,游戏崩溃时的错误报告可以收起为右下角入口,并在独立窗口中重新打开,便于一边处理模组冲突一边查看错误原因。</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableCrashAnalysis.ToolTip">启用后,游戏崩溃时将不再自动弹出崩溃分析页面。</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableJlw">禁用 Java Launch Wrapper</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableJlw.Arm64Notice">在启动游戏时不使用 Java Wrapper 进行包装。&#xA;由于系统为 ARM64 架构,Java Wrapper 已被强制禁用。</sys:String>
Expand Down
10 changes: 10 additions & 0 deletions PCL.Core/App/Localization/Languages/zh-TW.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -111,11 +111,17 @@
<!-- Crash -->

<sys:String x:Key="Crash.Analysis.Error.Failed">崩潰分析失敗。請檢視錯誤詳情。</sys:String>
<sys:String x:Key="Crash.Dialog.Button.Dock">收合</sys:String>
<sys:String x:Key="Crash.Dialog.Button.ExportReport">匯出錯誤報告</sys:String>
<sys:String x:Key="Crash.Dialog.Button.GoToModify">前往修改</sys:String>
<sys:String x:Key="Crash.Dialog.Button.OpenInWindow">在獨立視窗中開啟</sys:String>
<sys:String x:Key="Crash.Dialog.Button.OpenLog">檢視日誌</sys:String>
<sys:String x:Key="Crash.Dialog.Title.Auto">Minecraft 出現錯誤</sys:String>
<sys:String x:Key="Crash.Dialog.Title.Manual">錯誤報告分析結果</sys:String>
<sys:String x:Key="Crash.Dock.Discard.ToolTip">丟棄這份錯誤報告</sys:String>
<sys:String x:Key="Crash.Dock.Entry">{0}-{1}</sys:String>
<sys:String x:Key="Crash.Dock.Entry.ToolTip">點擊可在獨立視窗中檢視這次遊戲崩潰的錯誤報告,便於一邊處理問題一邊對照。</sys:String>
<sys:String x:Key="Crash.Dock.Hint">錯誤報告已收合,可在右下角入口中重新開啟。</sys:String>
<sys:String x:Key="Crash.Export.Failed.CopyDetails">複製詳細資訊</sys:String>
<sys:String x:Key="Crash.Export.Failed.Message">無法匯出錯誤報告。&#xA;&#xA;目標路徑:{0}</sys:String>
<sys:String x:Key="Crash.Export.Failed.MessageWithoutPath">無法匯出錯誤報告,且未能取得目標路徑。</sys:String>
Expand Down Expand Up @@ -196,6 +202,8 @@
<sys:String x:Key="Crash.Report.SaveDialog.DefaultFileName">錯誤報告-{0}.zip</sys:String>
<sys:String x:Key="Crash.Report.SaveDialog.Filter">Minecraft 錯誤報告(*.zip)|*.zip</sys:String>
<sys:String x:Key="Crash.Report.SaveDialog.Title">選擇儲存位置</sys:String>
<sys:String x:Key="Crash.Report.Window.Copy">複製報告</sys:String>
<sys:String x:Key="Crash.Report.Window.Title">錯誤報告</sys:String>

<!-- Crash.Report.Environment -->

Expand Down Expand Up @@ -2732,6 +2740,8 @@
<!-- Setup.Launch.Advanced -->

<sys:String x:Key="Setup.Launch.Advanced.DisableCrashAnalysis">停用自動崩潰分析</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.CrashReportDock">錯誤報告可收合並獨立檢視</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.CrashReportDock.ToolTip">啟用後,遊戲崩潰時的錯誤報告可以收合為右下角入口,並在獨立視窗中重新開啟,便於一邊處理模組衝突一邊查看錯誤原因。</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableCrashAnalysis.ToolTip">啟用後,遊戲崩潰時將不再自動彈出崩潰分析頁面。</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableJlw">停用 Java Launch Wrapper</sys:String>
<sys:String x:Key="Setup.Launch.Advanced.DisableJlw.Arm64Notice">在啟動遊戲時不使用 Java Wrapper 進行包裝。&#xA;由於系統為 ARM64 架構,Java Wrapper 已被強制停用。</sys:String>
Expand Down
3 changes: 3 additions & 0 deletions Plain Craft Launcher 2/Controls/MyMsg/MyMsgMarkdown.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@
<my:MyButton ColorType="Normal" x:FieldModifier="public" Text="测试按钮3" x:Name="Btn3" Margin="12,0,0,0"
Click="Btn3_Click" TextPadding="7" SnapsToDevicePixels="False" Padding="5,0"
UseLayoutRounding="False" />
<my:MyButton ColorType="Normal" x:FieldModifier="public" Text="测试按钮4" x:Name="Btn4" Margin="12,0,0,0"
Click="Btn4_Click" TextPadding="7" SnapsToDevicePixels="False" Padding="5,0"
UseLayoutRounding="False" />
</StackPanel>
</Grid>
</Border>
Expand Down
18 changes: 18 additions & 0 deletions Plain Craft Launcher 2/Controls/MyMsg/MyMsgMarkdown.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,15 @@ public MyMsgMarkdown(ModMain.MyMsgBoxConverter converter)
AppendUniqueNameSuffix(Btn1);
AppendUniqueNameSuffix(Btn2);
AppendUniqueNameSuffix(Btn3);
AppendUniqueNameSuffix(Btn4);
myConverter = converter;
LabTitle.Text = converter.Title;
LabCaption.Markdown = converter.Text;
DataContext = this;
ConfigurePrimaryButton(converter.Button1, converter.IsWarn);
ConfigureSecondaryButton(Btn2, converter.Button2);
ConfigureSecondaryButton(Btn3, converter.Button3);
ConfigureSecondaryButton(Btn4, converter.Button4);
ShapeLine.StrokeThickness = ModBase.GetWPFSize(1d);
}

Expand Down Expand Up @@ -192,6 +194,22 @@ public void Btn3_Click(object sender, MouseButtonEventArgs e)
}
}

public void Btn4_Click(object sender, MouseButtonEventArgs e)
{
if (myConverter.IsExited)
return;
if (myConverter.Button4Action is not null)
{
myConverter.Button4Action();
}
else
{
myConverter.IsExited = true;
myConverter.Result = 4;
Close();
}
}

private void Drag(object? sender = null, MouseButtonEventArgs? e = null)
{
try
Expand Down
3 changes: 3 additions & 0 deletions Plain Craft Launcher 2/Controls/MyMsg/MyMsgText.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@
<my:MyButton ColorType="Normal" x:FieldModifier="public" Text="测试按钮3" Click="Btn3_Click" x:Name="Btn3"
Margin="12,0,0,0"
TextPadding="7" SnapsToDevicePixels="False" Padding="5,0" UseLayoutRounding="False" />
<my:MyButton ColorType="Normal" x:FieldModifier="public" Text="测试按钮4" Click="Btn4_Click" x:Name="Btn4"
Margin="12,0,0,0"
TextPadding="7" SnapsToDevicePixels="False" Padding="5,0" UseLayoutRounding="False" />
</StackPanel>
</Grid>
</Border>
Expand Down
18 changes: 18 additions & 0 deletions Plain Craft Launcher 2/Controls/MyMsg/MyMsgText.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,14 @@ public MyMsgText(ModMain.MyMsgBoxConverter converter)
AppendUniqueNameSuffix(Btn1);
AppendUniqueNameSuffix(Btn2);
AppendUniqueNameSuffix(Btn3);
AppendUniqueNameSuffix(Btn4);
myConverter = converter;
LabTitle.Text = converter.Title;
LabCaption.Text = converter.Text;
ConfigurePrimaryButton(converter.Button1, converter.IsWarn);
ConfigureSecondaryButton(Btn2, converter.Button2);
ConfigureSecondaryButton(Btn3, converter.Button3);
ConfigureSecondaryButton(Btn4, converter.Button4);
ShapeLine.StrokeThickness = ModBase.GetWPFSize(1d);
}

Expand Down Expand Up @@ -176,6 +178,22 @@ public void Btn3_Click(object sender, MouseButtonEventArgs e)
}
}

public void Btn4_Click(object sender, MouseButtonEventArgs e)
{
if (myConverter.IsExited)
return;
if (myConverter.Button4Action is not null)
{
myConverter.Button4Action();
}
else
{
myConverter.IsExited = true;
myConverter.Result = 4;
Close();
}
}

private void Drag(object sender, MouseButtonEventArgs e)
{
try
Expand Down
1 change: 1 addition & 0 deletions Plain Craft Launcher 2/FormMain.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,7 @@
Margin="0,0,0,20"
Grid.Row="0" Grid.RowSpan="2" Panel.ZIndex="1" />
<StackPanel x:Name="PanExtraButtons" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Row="1" Margin="15">
<local:CrashReportDock x:Name="PanCrashReportDock" HorizontalAlignment="Right" Margin="0,0,0,8" />
Comment thread
whitecat346 marked this conversation as resolved.
<local:MyExtraButton x:Name="BtnExtraUpdateRestart" HorizontalAlignment="Right"
Click="BtnExtraUpdateRestart_Click"
VerticalAlignment="Center" ToolTip="{DynamicResource Main.Extra.UpdateRestart.ToolTip}"
Expand Down
Loading
Loading