diff --git a/GUIs.ZooFlow/ClassLayout.vb b/GUIs.ZooFlow/ClassWindowLayout.vb
similarity index 55%
rename from GUIs.ZooFlow/ClassLayout.vb
rename to GUIs.ZooFlow/ClassWindowLayout.vb
index efc741e8..17f68662 100644
--- a/GUIs.ZooFlow/ClassLayout.vb
+++ b/GUIs.ZooFlow/ClassWindowLayout.vb
@@ -1,37 +1,52 @@
Imports System.Xml
Imports System.IO
Imports DigitalData.Modules.Logging
-Public Class ClassWindowLocation
- Private _Logger As Logger
- Public Sub New(LogConfig As LogConfig)
- _Logger = LogConfig.GetLogger
+Public Class ClassWindowLayout
+ Inherits Base.BaseClass
+
+ Private _FileName As String
+ Private _Reader As XmlReader
+ Private _Settings As XmlWriterSettings
+
+ Public Sub New(pLogConfig As LogConfig)
+ MyBase.New(pLogConfig)
+
+ _Settings = New XmlWriterSettings With {
+ .Encoding = Text.Encoding.UTF8,
+ .Indent = True
+ }
End Sub
- Public Sub LoadFormLocationSize(ByRef form As Form, Optional LoadSize As Boolean = True)
+ Public Sub LoadFormLocationSize(ByRef pForm As Form, Optional pLoadSize As Boolean = True)
Try
- Dim _path, _pathold As String
+ Dim oPath, oAlternatePath As String
+
+ oPath = Path.Combine(Application.UserAppDataPath(), pForm.Name & "-Layout.xml")
+ oAlternatePath = oPath.Replace("frm", "frmfrm")
+ If File.Exists(oAlternatePath) Then
+ Dim oNewFilename = Path.GetFileName(oPath)
- _path = Path.Combine(Application.UserAppDataPath(), form.Name & "-Layout.xml")
- _pathold = _path.Replace("frm", "frmfrm")
- If File.Exists(_pathold) Then
- Dim newfilename = Path.GetFileName(_path)
Try
- My.Computer.FileSystem.RenameFile(_pathold, newfilename)
+ My.Computer.FileSystem.RenameFile(oAlternatePath, oNewFilename)
Catch ex As Exception
- My.Computer.FileSystem.DeleteFile(_pathold)
+ Logger.Error(ex)
+ My.Computer.FileSystem.DeleteFile(oAlternatePath)
+
End Try
- _path = Path.Combine(Application.UserAppDataPath(), form.Name & "-Layout.xml")
+
+ oPath = Path.Combine(Application.UserAppDataPath(), pForm.Name & "-Layout.xml")
End If
- Dim layout As ClassLayout = New ClassLayout(_path)
+ _FileName = oPath
+
Dim settings As System.Collections.Generic.List(Of ClassSetting)
- settings = layout.Load()
+ settings = Load()
If settings.Count = 0 Then
- settings.Add(New ClassSetting("PositionX", form.Location.X))
- settings.Add(New ClassSetting("PositionY", form.Location.Y))
- settings.Add(New ClassSetting("Width", form.Size.Width))
- settings.Add(New ClassSetting("Height", form.Size.Height))
- layout.Save(settings)
+ settings.Add(New ClassSetting("PositionX", pForm.Location.X))
+ settings.Add(New ClassSetting("PositionY", pForm.Location.Y))
+ settings.Add(New ClassSetting("Width", pForm.Size.Width))
+ settings.Add(New ClassSetting("Height", pForm.Size.Height))
+ Save(settings)
End If
Dim x, y, w, h As Integer
For Each s As ClassSetting In settings
@@ -50,16 +65,16 @@ Public Class ClassWindowLocation
Dim screenWidth As Integer = Screen.PrimaryScreen.Bounds.Width
Dim screenHeight As Integer = Screen.PrimaryScreen.Bounds.Height
If x = 5000 Then
- form.WindowState = FormWindowState.Maximized
+ pForm.WindowState = FormWindowState.Maximized
Else
Dim rect As New Rectangle(x, y, 0, 0)
If IsVisibleOnAnyScreen(rect) Then
If x >= 0 And y >= 0 Then
- form.Location = New Point(x, y)
+ pForm.Location = New Point(x, y)
End If
- If w > 0 And h > 0 And LoadSize = True Then
- form.Size = New Size(w, h)
+ If w > 0 And h > 0 And pLoadSize = True Then
+ pForm.Size = New Size(w, h)
End If
End If
' form.Size = New Size(310, 190)
@@ -81,12 +96,12 @@ Public Class ClassWindowLocation
End If
Next
If result = False Then
- _Logger.Info(">> Saved layout is not fitting to Resolution. Default is loaded.")
+ Logger.Info(">> Saved layout is not fitting to Resolution. Default is loaded.")
End If
Return result
Catch ex As Exception
- _Logger.Info("Error in IsVisibleOnAnyScreen: " & ex.Message)
- _Logger.Error(ex.Message)
+ Logger.Info("Error in IsVisibleOnAnyScreen: " & ex.Message)
+ Logger.Error(ex.Message)
Return False
End Try
End Function
@@ -120,7 +135,7 @@ Public Class ClassWindowLocation
settings.Add(New ClassSetting("Width", width))
settings.Add(New ClassSetting("Height", height))
- layout.Save(settings)
+ Save(settings)
Catch notFoundEx As System.IO.FileNotFoundException
Catch ex As Exception
@@ -129,77 +144,79 @@ Public Class ClassWindowLocation
End Sub
-End Class
-
-
-'-------------------------------------------------------------------
-
-Public Class ClassSetting
- Public _name As String
- Public _value As Integer
-
- Public Sub New(name As String, value As Integer)
- _name = name
- _value = value
- End Sub
-End Class
-
-Public Class ClassLayout
- Private _filename As String
- Private _reader As XmlReader
- Private _settings As XmlWriterSettings
-
- Public Sub New(filename As String)
- _filename = filename
-
- _settings = New XmlWriterSettings()
- _settings.Encoding = System.Text.Encoding.UTF8
- _settings.Indent = True
- End Sub
Public Sub Save(settings As System.Collections.Generic.List(Of ClassSetting))
- Dim w = XmlTextWriter.Create(_filename, _settings)
+ Try
+ Dim w = XmlWriter.Create(_FileName, _Settings)
- w.WriteStartDocument()
- w.WriteStartElement("Settings")
+ w.WriteStartDocument()
+ w.WriteStartElement("Settings")
+
+ For Each setting As ClassSetting In settings
+ w.WriteStartElement("Setting")
+ w.WriteAttributeString("name", setting._name)
+ w.WriteAttributeString("value", setting._value.ToString())
+ w.WriteEndElement()
+ Next
- For Each setting As ClassSetting In settings
- w.WriteStartElement("Setting")
- w.WriteAttributeString("name", setting._name)
- w.WriteAttributeString("value", setting._value.ToString())
w.WriteEndElement()
- Next
+ w.WriteEndDocument()
- w.WriteEndElement()
- w.WriteEndDocument()
-
- w.Dispose()
- w.Close()
+ w.Dispose()
+ w.Close()
+ Catch ex As Exception
+ Logger.Error(ex)
+ End Try
End Sub
- Public Function Load() As System.Collections.Generic.List(Of ClassSetting)
- Dim Result As System.Collections.Generic.List(Of ClassSetting) = New System.Collections.Generic.List(Of ClassSetting)()
+ Public Function Load() As List(Of ClassSetting)
+ Dim Result As List(Of ClassSetting) = New List(Of ClassSetting)()
- If Not File.Exists(_filename) Then
+ If Not File.Exists(_FileName) Then
Return Result
End If
- _reader = XmlReader.Create(_filename)
+ _Reader = XmlReader.Create(_FileName)
- While _reader.Read()
- If _reader.IsStartElement() Then
- If _reader.Name = "Setting" Then
- Dim name As String = _reader("name")
- Dim value As Integer = Integer.Parse(_reader("value"))
+ While _Reader.Read()
+ If _Reader.IsStartElement() Then
+ If _Reader.Name = "Setting" Then
+ Dim name As String = _Reader("name")
+ Dim value As Integer = Integer.Parse(_Reader("value"))
Dim setting As ClassSetting = New ClassSetting(name, value)
Result.Add(setting)
End If
End If
End While
- _reader.Dispose()
- _reader.Close()
+ _Reader.Dispose()
+ _Reader.Close()
Return Result
End Function
+
+ Public Class ClassSetting
+ Public _name As String
+ Public _value As Integer
+
+ Public Sub New(name As String, value As Integer)
+ _name = name
+ _value = value
+ End Sub
+ End Class
+End Class
+
+
+'-------------------------------------------------------------------
+
+
+
+Public Class ClassLayout
+
+
+ Public Sub New(filename As String)
+
+ End Sub
+
+
End Class
diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj
index 8aecc13c..2ca2298d 100644
--- a/GUIs.ZooFlow/ZooFlow.vbproj
+++ b/GUIs.ZooFlow/ZooFlow.vbproj
@@ -245,7 +245,7 @@
-
+