76 lines
2.4 KiB
VB.net

Imports System.Data.SQLite
Public Class frmSettings
Dim ToAdd As New List(Of String)
Dim ToDelete As New List(Of String)
Private Sub frmSettings_Load(sender As Object, e As EventArgs) Handles MyBase.Load
LoadSettings()
End Sub
Private Sub LoadSettings()
txtUSDir.Text = My.Settings.UltraStarDirectory
fillPaths()
End Sub
Private Async Sub fillPaths()
lstPaths.Items.Clear()
For Each p As String In Await LibraryRepository.GetLibraries
lstPaths.Items.Add(p)
Next
End Sub
Private Sub btnPathAdd_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnPathAdd.ItemClick
If FBD.ShowDialog = DialogResult.OK Then
Dim pfad As String = FBD.SelectedPath
ToAdd.Add(pfad)
lstPaths.Items.Add(pfad)
End If
End Sub
Private Sub btnSave_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnSave.ItemClick
SaveSettings()
Me.DialogResult = DialogResult.OK
End Sub
Private Sub SaveSettings()
'Allgemein speichern
My.Settings.UltraStarDirectory = txtUSDir.Text
My.Settings.Save()
'Pfade speichern
LibraryRepository.AddLibraries(ToAdd)
ToAdd.Clear()
LibraryRepository.DeleteLibraries(ToDelete)
ToDelete.Clear()
End Sub
Private Sub btnPathDelete_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnPathDelete.ItemClick
If lstPaths.SelectedItem IsNot Nothing Then
ToDelete.Add(CStr(lstPaths.SelectedItem))
lstPaths.Items.Remove(CStr(lstPaths.SelectedItem))
End If
End Sub
Private Sub frmSettings_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
If (ToAdd.Count + ToDelete.Count) > 0 Then
Dim ds = MessageBox.Show("Möchten Sie die Änderungen speichern?", Me.Text, MessageBoxButtons.YesNo)
If ds = DialogResult.Yes Then
SaveSettings()
Me.DialogResult = DialogResult.OK
ElseIf ds <> DialogResult.No Then
e.Cancel = True
End If
End If
End Sub
Private Sub btnUSDX_Click(sender As Object, e As EventArgs) Handles btnUSDir.Click
If FBD.ShowDialog = DialogResult.OK Then
txtUSDir.Text = FBD.SelectedPath
End If
End Sub
End Class