2.12.7.0
This commit is contained in:
@@ -28,13 +28,11 @@
|
||||
|
||||
SliderLoad()
|
||||
|
||||
#If BETA Then
|
||||
PanLauncherHide.Visibility = Visibility.Visible
|
||||
#End If
|
||||
If BuildType = BuildTypes.Release Then PanLauncherHide.Visibility = Visibility.Visible
|
||||
|
||||
'设置解锁
|
||||
If Not RadioLauncherTheme8.IsEnabled Then LabLauncherTheme8Copy.ToolTip = "累积赞助达到 ¥23.33 后,在爱发电私信发送【解锁码】以解锁。" & vbCrLf & "右键打开赞助页面,如果觉得 PCL 做得还不错就支持一下吧 =w=!"
|
||||
RadioLauncherTheme8.ToolTip = "累积赞助达到 ¥23.33 后,在爱发电私信发送【解锁码】以解锁"
|
||||
If Not RadioLauncherTheme8.IsEnabled Then LabLauncherTheme8Copy.ToolTip = $"累积赞助达到 ¥23.33 后,在爱发电私信发送【土豆 {Identify}】以解锁。" & vbCrLf & "右键打开赞助页面,如果觉得 PCL 做得还不错就支持一下吧 =w=!"
|
||||
RadioLauncherTheme8.ToolTip = $"累积赞助达到 ¥23.33 后,在爱发电私信发送【土豆 {Identify}】以解锁"
|
||||
If Not RadioLauncherTheme9.IsEnabled Then LabLauncherTheme9Copy.ToolTip = "· 反馈一个 Bug,在标记为 [完成] 后回复识别码要求解锁(右键打开反馈页面)" & vbCrLf & "· 提交一个 Pull Request 或主页预设,在标记为 [完成] 后回复识别码要求解锁"
|
||||
RadioLauncherTheme9.ToolTip = "· 反馈一个 Bug,在标记为 [完成] 后回复识别码要求解锁" & vbCrLf & "· 提交一个 Pull Request 或主页预设,在标记为 [完成] 后回复识别码要求解锁"
|
||||
'极客蓝的处理在 ThemeCheck 中
|
||||
@@ -46,112 +44,36 @@
|
||||
BackgroundRefresh(False, False)
|
||||
|
||||
'标题栏
|
||||
CType(FindName("RadioLogoType" & Settings.Get("UiLogoType")), MyRadioBox).Checked = True
|
||||
CheckLogoLeft.Visibility = If(RadioLogoType0.Checked, Visibility.Visible, Visibility.Collapsed)
|
||||
PanLogoText.Visibility = If(RadioLogoType2.Checked, Visibility.Visible, Visibility.Collapsed)
|
||||
PanLogoChange.Visibility = If(RadioLogoType3.Checked, Visibility.Visible, Visibility.Collapsed)
|
||||
TextLogoText.Text = Settings.Get("UiLogoText")
|
||||
CheckLogoLeft.Checked = Settings.Get("UiLogoLeft")
|
||||
|
||||
'背景音乐
|
||||
CheckMusicRandom.Checked = Settings.Get("UiMusicRandom")
|
||||
CheckMusicAuto.Checked = Settings.Get("UiMusicAuto")
|
||||
CheckMusicStop.Checked = Settings.Get("UiMusicStop")
|
||||
CheckMusicStart.Checked = Settings.Get("UiMusicStart")
|
||||
SliderMusicVolume.Value = Settings.Get("UiMusicVolume")
|
||||
MusicRefreshUI()
|
||||
|
||||
'主页
|
||||
CType(FindName("RadioCustomType" & Settings.Get("UiCustomType")), MyRadioBox).Checked = True
|
||||
OnUiCustomTypeChanged(Settings.Get("UiCustomType"))
|
||||
TextCustomNet.Text = Settings.Get("UiCustomNet")
|
||||
|
||||
'功能隐藏
|
||||
CheckLauncherEmail.Checked = Settings.Get("UiLauncherEmail")
|
||||
CheckHiddenPageDownload.Checked = Settings.Get("UiHiddenPageDownload")
|
||||
CheckHiddenPageLink.Checked = Settings.Get("UiHiddenPageLink")
|
||||
CheckHiddenPageSetup.Checked = Settings.Get("UiHiddenPageSetup")
|
||||
CheckHiddenPageOther.Checked = Settings.Get("UiHiddenPageOther")
|
||||
CheckHiddenFunctionSelect.Checked = Settings.Get("UiHiddenFunctionSelect")
|
||||
CheckHiddenFunctionModUpdate.Checked = Settings.Get("UiHiddenFunctionModUpdate")
|
||||
CheckHiddenFunctionHidden.Checked = Settings.Get("UiHiddenFunctionHidden")
|
||||
CheckHiddenSetupLaunch.Checked = Settings.Get("UiHiddenSetupLaunch")
|
||||
CheckHiddenSetupUI.Checked = Settings.Get("UiHiddenSetupUi")
|
||||
CheckHiddenSetupLink.Checked = Settings.Get("UiHiddenSetupLink")
|
||||
CheckHiddenSetupSystem.Checked = Settings.Get("UiHiddenSetupSystem")
|
||||
CheckHiddenOtherAbout.Checked = Settings.Get("UiHiddenOtherAbout")
|
||||
CheckHiddenOtherFeedback.Checked = Settings.Get("UiHiddenOtherFeedback")
|
||||
CheckHiddenOtherVote.Checked = Settings.Get("UiHiddenOtherVote")
|
||||
CheckHiddenOtherHelp.Checked = Settings.Get("UiHiddenOtherHelp")
|
||||
CheckHiddenOtherTest.Checked = Settings.Get("UiHiddenOtherTest")
|
||||
|
||||
OnMainPageTypeChanged()
|
||||
Catch ex As NullReferenceException
|
||||
Log(ex, "个性化设置项存在异常,已被自动重置", LogLevel.Msgbox)
|
||||
Log(ex, "个性化设置项存在异常,已被自动重置", NotifyLevel.MsgBox)
|
||||
Reset()
|
||||
Catch ex As Exception
|
||||
Log(ex, "重载个性化设置时出错", LogLevel.Feedback)
|
||||
Log(ex, "重载个性化设置时出错", NotifyLevel.MsgBoxAndFeedback)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'初始化
|
||||
Public Sub Reset()
|
||||
Try
|
||||
SettingService.ResetSettings(Me)
|
||||
Settings.Reset("UiLauncherLogo")
|
||||
Settings.Reset("UiLauncherEmail")
|
||||
Settings.Reset("UiLogoType")
|
||||
Settings.Reset("UiLogoText")
|
||||
Settings.Reset("UiLogoLeft")
|
||||
Settings.Reset("UiMusicVolume")
|
||||
Settings.Reset("UiMusicStop")
|
||||
Settings.Reset("UiMusicStart")
|
||||
Settings.Reset("UiMusicRandom")
|
||||
Settings.Reset("UiMusicAuto")
|
||||
Settings.Reset("UiCustomType")
|
||||
Settings.Reset("UiCustomNet")
|
||||
Settings.Reset("UiHiddenPageDownload")
|
||||
Settings.Reset("UiHiddenPageLink")
|
||||
Settings.Reset("UiHiddenPageSetup")
|
||||
Settings.Reset("UiHiddenPageOther")
|
||||
Settings.Reset("UiHiddenFunctionSelect")
|
||||
Settings.Reset("UiHiddenFunctionModUpdate")
|
||||
Settings.Reset("UiHiddenFunctionHidden")
|
||||
Settings.Reset("UiHiddenSetupLaunch")
|
||||
Settings.Reset("UiHiddenSetupUi")
|
||||
Settings.Reset("UiHiddenSetupLink")
|
||||
Settings.Reset("UiHiddenSetupSystem")
|
||||
Settings.Reset("UiHiddenOtherAbout")
|
||||
Settings.Reset("UiHiddenOtherFeedback")
|
||||
Settings.Reset("UiHiddenOtherVote")
|
||||
Settings.Reset("UiHiddenOtherHelp")
|
||||
Settings.Reset("UiHiddenOtherTest")
|
||||
|
||||
Log("[Setup] 已初始化个性化设置!")
|
||||
Hint("已初始化个性化设置", HintType.Green, False)
|
||||
Catch ex As Exception
|
||||
Log(ex, "初始化个性化设置失败", LogLevel.Msgbox)
|
||||
Log(ex, "初始化个性化设置失败", NotifyLevel.MsgBox)
|
||||
End Try
|
||||
|
||||
Refresh()
|
||||
End Sub
|
||||
|
||||
'将控件改变路由到设置改变
|
||||
Private Shared Sub SliderChange(sender As MySlider, e As Object) Handles SliderMusicVolume.Change
|
||||
If AniControlEnabled = 0 Then Settings.Set(sender.Tag, sender.Value)
|
||||
End Sub
|
||||
Private Shared Sub CheckBoxChange(sender As MyCheckBox, e As Object) Handles CheckMusicStop.Change, CheckMusicRandom.Change, CheckMusicAuto.Change, CheckLogoLeft.Change, CheckHiddenFunctionHidden.Change, CheckHiddenFunctionSelect.Change, CheckHiddenFunctionModUpdate.Change, CheckHiddenPageDownload.Change, CheckHiddenPageLink.Change, CheckHiddenPageOther.Change, CheckHiddenPageSetup.Change, CheckHiddenSetupLaunch.Change, CheckHiddenSetupSystem.Change, CheckHiddenSetupLink.Change, CheckHiddenSetupUI.Change, CheckHiddenOtherAbout.Change, CheckHiddenOtherFeedback.Change, CheckHiddenOtherVote.Change, CheckHiddenOtherHelp.Change, CheckHiddenOtherTest.Change, CheckMusicStart.Change, CheckLauncherEmail.Change
|
||||
If AniControlEnabled = 0 Then Settings.Set(sender.Tag, sender.Checked)
|
||||
End Sub
|
||||
Private Shared Sub TextBoxChange(sender As MyTextBox, e As Object) Handles TextLogoText.ValidatedTextChanged, TextCustomNet.ValidatedTextChanged
|
||||
If AniControlEnabled = 0 Then Settings.Set(sender.Tag, sender.Text)
|
||||
End Sub
|
||||
Private Shared Sub RadioBoxChange(sender As MyRadioBox, e As Object) Handles RadioLogoType0.Check, RadioLogoType1.Check, RadioLogoType2.Check, RadioLogoType3.Check, RadioCustomType0.Check, RadioCustomType1.Check, RadioCustomType2.Check, RadioCustomType3.Check
|
||||
If AniControlEnabled = 0 Then Settings.Set(sender.Tag.ToString.Split("/")(0), Val(sender.Tag.ToString.Split("/")(1)))
|
||||
End Sub
|
||||
|
||||
'背景图片
|
||||
Private Sub BtnUIBgOpen_Click(sender As Object, e As EventArgs) Handles BtnBackgroundOpen.Click
|
||||
OpenExplorer(Path & "PCL\Pictures\")
|
||||
OpenExplorer(PathExeFolder & "PCL\Pictures\")
|
||||
End Sub
|
||||
Private Sub BtnBackgroundRefresh_Click(sender As Object, e As EventArgs) Handles BtnBackgroundRefresh.Click
|
||||
BackgroundRefresh(True, True)
|
||||
@@ -175,7 +97,7 @@
|
||||
End Sub
|
||||
Private Sub BtnBackgroundClear_Click(sender As Object, e As EventArgs) Handles BtnBackgroundClear.Click
|
||||
If MyMsgBox("即将删除背景图片文件夹中的所有文件。" & vbCrLf & "此操作不可撤销,是否确定?", "警告",, "取消", IsWarn:=True) = 1 Then
|
||||
DeleteDirectory(Path & "PCL\Pictures")
|
||||
DeleteDirectory(PathExeFolder & "PCL\Pictures")
|
||||
BackgroundRefresh(False, True)
|
||||
Hint("背景图片已清空!", HintType.Green)
|
||||
End If
|
||||
@@ -189,9 +111,9 @@
|
||||
Try
|
||||
|
||||
'获取可用的图片文件
|
||||
Directory.CreateDirectory(Path & "PCL\Pictures\")
|
||||
DirectoryUtils.Create(PathExeFolder & "PCL\Pictures\")
|
||||
Dim Pic As New List(Of String)
|
||||
For Each File In EnumerateFiles(Path & "PCL\Pictures\")
|
||||
For Each File In EnumerateFiles(PathExeFolder & "PCL\Pictures\")
|
||||
If File.Extension.Lower <> ".ini" AndAlso File.Extension.Lower <> ".db" Then '文件夹可能会被加入 .ini 和 thumbs.db
|
||||
Pic.Add(File.FullName)
|
||||
End If
|
||||
@@ -220,9 +142,9 @@
|
||||
If ex.Message.Contains("参数无效") Then
|
||||
Log("刷新背景图片失败,该图片文件可能并非标准格式。" & vbCrLf &
|
||||
"你可以尝试使用画图打开该文件并重新保存,这会让图片变为标准格式。" & vbCrLf &
|
||||
"文件:" & Address, LogLevel.Msgbox)
|
||||
"文件:" & Address, NotifyLevel.MsgBox)
|
||||
Else
|
||||
Log(ex, "刷新背景图片失败(" & Address & ")", LogLevel.Msgbox)
|
||||
Log(ex, "刷新背景图片失败(" & Address & ")", NotifyLevel.MsgBox)
|
||||
End If
|
||||
End Try
|
||||
End If
|
||||
@@ -230,7 +152,7 @@
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
Log(ex, "刷新背景图片时出现未知错误", LogLevel.Feedback)
|
||||
Log(ex, "刷新背景图片时出现未知错误", NotifyLevel.MsgBoxAndFeedback)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
@@ -240,17 +162,17 @@
|
||||
If FileName = "" Then Return
|
||||
Try
|
||||
'拷贝文件
|
||||
File.Delete(Path & "PCL\Logo.png")
|
||||
CopyFile(FileName, Path & "PCL\Logo.png")
|
||||
File.Delete(PathExeFolder & "PCL\Logo.png")
|
||||
CopyFile(FileName, PathExeFolder & "PCL\Logo.png")
|
||||
'设置当前显示
|
||||
FrmMain.ImageTitleLogo.Source = Nothing '防止因为 Source 属性前后的值相同而不更新 (#5628)
|
||||
FrmMain.ImageTitleLogo.Source = Path & "PCL\Logo.png"
|
||||
FrmMain.ImageTitleLogo.Source = PathExeFolder & "PCL\Logo.png"
|
||||
Catch ex As Exception
|
||||
If ex.Message.Contains("参数无效") Then
|
||||
Log("改变标题栏图片失败,该图片文件可能并非标准格式。" & vbCrLf &
|
||||
"你可以尝试使用画图打开该文件并重新保存,这会让图片变为标准格式。", LogLevel.Msgbox)
|
||||
"你可以尝试使用画图打开该文件并重新保存,这会让图片变为标准格式。", NotifyLevel.MsgBox)
|
||||
Else
|
||||
Log(ex, "设置标题栏图片失败", LogLevel.Msgbox)
|
||||
Log(ex, "设置标题栏图片失败", NotifyLevel.MsgBox)
|
||||
End If
|
||||
FrmMain.ImageTitleLogo.Source = Nothing
|
||||
End Try
|
||||
@@ -259,23 +181,23 @@
|
||||
If Not (AniControlEnabled = 0 AndAlso e.RaiseByMouse) Then Return
|
||||
Refresh:
|
||||
'已有图片则不再选择
|
||||
If File.Exists(Path & "PCL\Logo.png") Then
|
||||
If File.Exists(PathExeFolder & "PCL\Logo.png") Then
|
||||
Try
|
||||
FrmMain.ImageTitleLogo.Source = Nothing '防止因为 Source 属性前后的值相同而不更新 (#5628)
|
||||
FrmMain.ImageTitleLogo.Source = Path & "PCL\Logo.png"
|
||||
FrmMain.ImageTitleLogo.Source = PathExeFolder & "PCL\Logo.png"
|
||||
Catch ex As Exception
|
||||
If ex.Message.Contains("参数无效") Then
|
||||
Log("调整标题栏图片失败,该图片文件可能并非标准格式。" & vbCrLf &
|
||||
"你可以尝试使用画图打开该文件并重新保存,这会让图片变为标准格式。", LogLevel.Msgbox)
|
||||
"你可以尝试使用画图打开该文件并重新保存,这会让图片变为标准格式。", NotifyLevel.MsgBox)
|
||||
Else
|
||||
Log(ex, "调整标题栏图片失败", LogLevel.Msgbox)
|
||||
Log(ex, "调整标题栏图片失败", NotifyLevel.MsgBox)
|
||||
End If
|
||||
FrmMain.ImageTitleLogo.Source = Nothing
|
||||
e.Handled = True
|
||||
Try
|
||||
File.Delete(Path & "PCL\Logo.png")
|
||||
File.Delete(PathExeFolder & "PCL\Logo.png")
|
||||
Catch exx As Exception
|
||||
Log(exx, "清理错误的标题栏图片失败", LogLevel.Msgbox)
|
||||
Log(exx, "清理错误的标题栏图片失败", NotifyLevel.MsgBox)
|
||||
End Try
|
||||
End Try
|
||||
Return
|
||||
@@ -288,27 +210,27 @@ Refresh:
|
||||
Else
|
||||
Try
|
||||
'拷贝文件
|
||||
File.Delete(Path & "PCL\Logo.png")
|
||||
CopyFile(FileName, Path & "PCL\Logo.png")
|
||||
File.Delete(PathExeFolder & "PCL\Logo.png")
|
||||
CopyFile(FileName, PathExeFolder & "PCL\Logo.png")
|
||||
GoTo Refresh
|
||||
Catch ex As Exception
|
||||
Log(ex, "复制标题栏图片失败", LogLevel.Msgbox)
|
||||
Log(ex, "复制标题栏图片失败", NotifyLevel.MsgBox)
|
||||
End Try
|
||||
End If
|
||||
End Sub
|
||||
Private Sub BtnLogoDelete_Click(sender As Object, e As EventArgs) Handles BtnLogoDelete.Click
|
||||
Try
|
||||
File.Delete(Path & "PCL\Logo.png")
|
||||
File.Delete(PathExeFolder & "PCL\Logo.png")
|
||||
RadioLogoType1.SetChecked(True, True)
|
||||
Hint("标题栏图片已清空!", HintType.Green)
|
||||
Catch ex As Exception
|
||||
Log(ex, "清空标题栏图片失败", LogLevel.Msgbox)
|
||||
Log(ex, "清空标题栏图片失败", NotifyLevel.MsgBox)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'背景音乐
|
||||
Private Sub BtnMusicOpen_Click(sender As Object, e As EventArgs) Handles BtnMusicOpen.Click
|
||||
OpenExplorer(Path & "PCL\Musics\")
|
||||
OpenExplorer(PathExeFolder & "PCL\Musics\")
|
||||
End Sub
|
||||
Private Sub BtnMusicRefresh_Click(sender As Object, e As EventArgs) Handles BtnMusicRefresh.Click
|
||||
MusicRefreshPlay(True)
|
||||
@@ -320,7 +242,7 @@ Refresh:
|
||||
PanMusicDetail.Visibility = Visibility.Visible
|
||||
BtnMusicClear.Visibility = Visibility.Visible
|
||||
CardMusic.Title = "背景音乐(" &
|
||||
EnumerateFiles(Path & "PCL\Musics\").Count(Function(f) Not {".ini", ".jpg", ".txt", ".cfg", ".lrc", ".db", ".png"}.Contains(f.Extension.Lower)) &
|
||||
EnumerateFiles(PathExeFolder & "PCL\Musics\").Count(Function(f) Not {".ini", ".jpg", ".txt", ".cfg", ".lrc", ".db", ".png"}.Contains(f.Extension.Lower)) &
|
||||
" 首)"
|
||||
Else
|
||||
PanMusicVolume.Visibility = Visibility.Collapsed
|
||||
@@ -342,16 +264,16 @@ Refresh:
|
||||
Thread.Sleep(200)
|
||||
'删除文件
|
||||
Try
|
||||
DeleteDirectory(Path & "PCL\Musics")
|
||||
DeleteDirectory(PathExeFolder & "PCL\Musics")
|
||||
Hint("背景音乐已删除!", HintType.Green)
|
||||
Catch ex As Exception
|
||||
Log(ex, "删除背景音乐失败", LogLevel.Msgbox)
|
||||
Log(ex, "删除背景音乐失败", NotifyLevel.MsgBox)
|
||||
End Try
|
||||
Try
|
||||
Directory.CreateDirectory(Path & "PCL\Musics")
|
||||
DirectoryUtils.Create(PathExeFolder & "PCL\Musics\")
|
||||
RunInUi(Sub() MusicRefreshPlay(False))
|
||||
Catch ex As Exception
|
||||
Log(ex, "重建背景音乐文件夹失败", LogLevel.Msgbox)
|
||||
Log(ex, "重建背景音乐文件夹失败", NotifyLevel.MsgBox)
|
||||
End Try
|
||||
End Sub)
|
||||
End If
|
||||
@@ -368,14 +290,14 @@ Refresh:
|
||||
'主页
|
||||
Private Sub BtnCustomFile_Click(sender As Object, e As EventArgs) Handles BtnCustomFile.Click
|
||||
Try
|
||||
If File.Exists(Path & "PCL\Custom.xaml") Then
|
||||
If File.Exists(PathExeFolder & "PCL\Custom.xaml") Then
|
||||
If MyMsgBox("当前已存在布局文件,继续生成教学文件将会覆盖现有布局文件!", "覆盖确认", "继续", "取消", IsWarn:=True) = 2 Then Return
|
||||
End If
|
||||
WriteFile(Path & "PCL\Custom.xaml", GetResources("Custom"))
|
||||
FileUtils.Write(PathExeFolder & "PCL\Custom.xaml", GetResources("Custom"))
|
||||
Hint("教学文件已生成!", HintType.Green)
|
||||
OpenExplorer(Path & "PCL\Custom.xaml")
|
||||
OpenExplorer(PathExeFolder & "PCL\Custom.xaml")
|
||||
Catch ex As Exception
|
||||
Log(ex, "生成教学文件失败", LogLevel.Feedback)
|
||||
Log(ex, "生成教学文件失败", NotifyLevel.MsgBoxAndFeedback)
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub BtnCustomRefresh_Click() Handles BtnCustomRefresh.Click
|
||||
@@ -390,9 +312,9 @@ Refresh:
|
||||
"你可以在生成教学文件后直接刷新主页,对照着进行修改,更有助于理解。" & vbCrLf &
|
||||
"直接将主页文件拖进 PCL 窗口也可以快捷加载。", "主页自定义教程")
|
||||
End Sub
|
||||
Public Shared Sub OnUiCustomTypeChanged(Value As Integer)
|
||||
Public Shared Sub OnMainPageTypeChanged()
|
||||
If FrmSetupUI Is Nothing Then Return
|
||||
Select Case Value
|
||||
Select Case CInt(Settings.Get("UiCustomType"))
|
||||
Case 0 '无
|
||||
FrmSetupUI.PanCustomPreset.Visibility = Visibility.Collapsed
|
||||
FrmSetupUI.PanCustomLocal.Visibility = Visibility.Collapsed
|
||||
@@ -577,7 +499,7 @@ Refresh:
|
||||
'备注
|
||||
If FrmSetupUI IsNot Nothing Then FrmSetupUI.CardSwitch.Title = If(HiddenForceShow, "功能隐藏(已暂时关闭,按 F12 以重新启用)", "功能隐藏")
|
||||
Catch ex As Exception
|
||||
Log(ex, "刷新功能隐藏项目失败", LogLevel.Feedback)
|
||||
Log(ex, "刷新功能隐藏项目失败", NotifyLevel.MsgBoxAndFeedback)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
|
||||
Reference in New Issue
Block a user