diff --git a/CloudlogCAT.sln b/CloudlogCAT.sln index 9e5a016..0e9e513 100644 --- a/CloudlogCAT.sln +++ b/CloudlogCAT.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.28010.2019 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33213.308 MinimumVisualStudioVersion = 10.0.40219.1 Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "CloudlogCAT", "OmniRig_VB_DEMO\CloudlogCAT.vbproj", "{ADCB9205-EB9A-4E96-B32F-1590B1784786}" EndProject diff --git a/OmniRig_VB_DEMO/AboutBox1.Designer.vb b/OmniRig_VB_DEMO/AboutBox1.Designer.vb index 2b0b026..4becefd 100644 --- a/OmniRig_VB_DEMO/AboutBox1.Designer.vb +++ b/OmniRig_VB_DEMO/AboutBox1.Designer.vb @@ -26,12 +26,12 @@ Partial Class AboutBox1 Private Sub InitializeComponent() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(AboutBox1)) Me.TableLayoutPanel = New System.Windows.Forms.TableLayoutPanel() - Me.PictureBox1 = New System.Windows.Forms.PictureBox() - Me.OKButton = New System.Windows.Forms.Button() - Me.LabelCompanyName = New System.Windows.Forms.Label() - Me.LabelCopyright = New System.Windows.Forms.Label() - Me.LabelVersion = New System.Windows.Forms.Label() Me.LabelProductName = New System.Windows.Forms.Label() + Me.LabelVersion = New System.Windows.Forms.Label() + Me.LabelCopyright = New System.Windows.Forms.Label() + Me.LabelCompanyName = New System.Windows.Forms.Label() + Me.OKButton = New System.Windows.Forms.Button() + Me.PictureBox1 = New System.Windows.Forms.PictureBox() Me.TableLayoutPanel.SuspendLayout() CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() @@ -59,37 +59,29 @@ Partial Class AboutBox1 Me.TableLayoutPanel.Size = New System.Drawing.Size(457, 355) Me.TableLayoutPanel.TabIndex = 0 ' - 'PictureBox1 - ' - Me.PictureBox1.Image = CType(resources.GetObject("PictureBox1.Image"), System.Drawing.Image) - Me.PictureBox1.Location = New System.Drawing.Point(3, 143) - Me.PictureBox1.Name = "PictureBox1" - Me.PictureBox1.Size = New System.Drawing.Size(444, 171) - Me.PictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage - Me.PictureBox1.TabIndex = 1 - Me.PictureBox1.TabStop = False - ' - 'OKButton + 'LabelProductName ' - Me.OKButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) - Me.OKButton.DialogResult = System.Windows.Forms.DialogResult.Cancel - Me.OKButton.Location = New System.Drawing.Point(379, 329) - Me.OKButton.Name = "OKButton" - Me.OKButton.Size = New System.Drawing.Size(75, 23) - Me.OKButton.TabIndex = 0 - Me.OKButton.Text = "&OK" + Me.LabelProductName.Dock = System.Windows.Forms.DockStyle.Fill + Me.LabelProductName.Location = New System.Drawing.Point(6, 0) + Me.LabelProductName.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) + Me.LabelProductName.MaximumSize = New System.Drawing.Size(0, 17) + Me.LabelProductName.Name = "LabelProductName" + Me.LabelProductName.Size = New System.Drawing.Size(448, 17) + Me.LabelProductName.TabIndex = 0 + Me.LabelProductName.Text = "Product Name" + Me.LabelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' - 'LabelCompanyName + 'LabelVersion ' - Me.LabelCompanyName.Dock = System.Windows.Forms.DockStyle.Fill - Me.LabelCompanyName.Location = New System.Drawing.Point(6, 105) - Me.LabelCompanyName.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) - Me.LabelCompanyName.MaximumSize = New System.Drawing.Size(0, 17) - Me.LabelCompanyName.Name = "LabelCompanyName" - Me.LabelCompanyName.Size = New System.Drawing.Size(448, 17) - Me.LabelCompanyName.TabIndex = 0 - Me.LabelCompanyName.Text = "Company Name" - Me.LabelCompanyName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.LabelVersion.Dock = System.Windows.Forms.DockStyle.Fill + Me.LabelVersion.Location = New System.Drawing.Point(6, 35) + Me.LabelVersion.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) + Me.LabelVersion.MaximumSize = New System.Drawing.Size(0, 17) + Me.LabelVersion.Name = "LabelVersion" + Me.LabelVersion.Size = New System.Drawing.Size(448, 17) + Me.LabelVersion.TabIndex = 0 + Me.LabelVersion.Text = "Version" + Me.LabelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' 'LabelCopyright ' @@ -103,29 +95,37 @@ Partial Class AboutBox1 Me.LabelCopyright.Text = "Copyright" Me.LabelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' - 'LabelVersion + 'LabelCompanyName ' - Me.LabelVersion.Dock = System.Windows.Forms.DockStyle.Fill - Me.LabelVersion.Location = New System.Drawing.Point(6, 35) - Me.LabelVersion.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) - Me.LabelVersion.MaximumSize = New System.Drawing.Size(0, 17) - Me.LabelVersion.Name = "LabelVersion" - Me.LabelVersion.Size = New System.Drawing.Size(448, 17) - Me.LabelVersion.TabIndex = 0 - Me.LabelVersion.Text = "Version" - Me.LabelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.LabelCompanyName.Dock = System.Windows.Forms.DockStyle.Fill + Me.LabelCompanyName.Location = New System.Drawing.Point(6, 105) + Me.LabelCompanyName.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) + Me.LabelCompanyName.MaximumSize = New System.Drawing.Size(0, 17) + Me.LabelCompanyName.Name = "LabelCompanyName" + Me.LabelCompanyName.Size = New System.Drawing.Size(448, 17) + Me.LabelCompanyName.TabIndex = 0 + Me.LabelCompanyName.Text = "Company Name" + Me.LabelCompanyName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft ' - 'LabelProductName + 'OKButton ' - Me.LabelProductName.Dock = System.Windows.Forms.DockStyle.Fill - Me.LabelProductName.Location = New System.Drawing.Point(6, 0) - Me.LabelProductName.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) - Me.LabelProductName.MaximumSize = New System.Drawing.Size(0, 17) - Me.LabelProductName.Name = "LabelProductName" - Me.LabelProductName.Size = New System.Drawing.Size(448, 17) - Me.LabelProductName.TabIndex = 0 - Me.LabelProductName.Text = "Product Name" - Me.LabelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.OKButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.OKButton.DialogResult = System.Windows.Forms.DialogResult.Cancel + Me.OKButton.Location = New System.Drawing.Point(379, 329) + Me.OKButton.Name = "OKButton" + Me.OKButton.Size = New System.Drawing.Size(75, 23) + Me.OKButton.TabIndex = 0 + Me.OKButton.Text = "&OK" + ' + 'PictureBox1 + ' + Me.PictureBox1.Image = CType(resources.GetObject("PictureBox1.Image"), System.Drawing.Image) + Me.PictureBox1.Location = New System.Drawing.Point(3, 143) + Me.PictureBox1.Name = "PictureBox1" + Me.PictureBox1.Size = New System.Drawing.Size(444, 171) + Me.PictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage + Me.PictureBox1.TabIndex = 1 + Me.PictureBox1.TabStop = False ' 'AboutBox1 ' diff --git a/OmniRig_VB_DEMO/App.config b/OmniRig_VB_DEMO/App.config index 5ba32f6..c5c646a 100644 --- a/OmniRig_VB_DEMO/App.config +++ b/OmniRig_VB_DEMO/App.config @@ -1,12 +1,12 @@ - + - -
+ +
- + @@ -25,6 +25,9 @@ + + + - \ No newline at end of file + diff --git a/OmniRig_VB_DEMO/CloudlogCAT.vbproj b/OmniRig_VB_DEMO/CloudlogCAT.vbproj index b87d188..85da36b 100644 --- a/OmniRig_VB_DEMO/CloudlogCAT.vbproj +++ b/OmniRig_VB_DEMO/CloudlogCAT.vbproj @@ -11,10 +11,11 @@ CloudlogCAT 512 WindowsForms - v4.5.2 + v4.8 true false - CloudlogCAT\ + + CloudlogCAT Publish\ true Disk false @@ -29,13 +30,8 @@ CloudlogCAT Magicbug Cloudlog -<<<<<<< HEAD - 6 - 1.0.0.%2a -======= - 4 - 1.3.0.%2a ->>>>>>> e221a03032e5c6a6f33ade8747dc3b7de93a3a4e + 1 + 1.3.1.%2a false true true @@ -65,7 +61,7 @@ On - Binary + Text Off @@ -127,6 +123,7 @@ Form + Form @@ -150,6 +147,7 @@ True Application.myapp + True True @@ -215,7 +213,7 @@ False - Microsoft .NET Framework 4.5.2 %28x86 and x64%29 + Microsoft .NET Framework 4.5.2 %28x86 und x64%29 true diff --git a/OmniRig_VB_DEMO/CloudlogTarget.vb b/OmniRig_VB_DEMO/CloudlogTarget.vb new file mode 100644 index 0000000..eac1514 --- /dev/null +++ b/OmniRig_VB_DEMO/CloudlogTarget.vb @@ -0,0 +1,115 @@ +Imports CloudlogCAT.My +Imports Microsoft.VisualBasic +Imports System.ComponentModel +Imports System.IO +Imports System.Runtime.Serialization +Imports System.Runtime.Serialization.Formatters.Binary + + +Public Class CloudlogTarget + + Private _name As String ' The name of this target, this is only visible in the error messages and in settings window + Private _radioName As String ' the String which is displayed in Cloudlog, Appended by 1 or 2 depending on the RIG Radio Button Setting + Private _url As String + Private _key As String + Private _active As Boolean ' Determines weather CloudlogCAT should push to this variable + + ' Empty construcor, initializes the object with basic Names, sets it to not be active + Public Sub New() + _name = "Target" + _radioName = "OmniRig" + _active = False + _url = "" + _key = "" + End Sub + + ' Complete Constructor + Public Sub New(ByVal name As String, ByVal radioName As String, ByVal url As String, ByVal key As String, ByVal active As Boolean) + _name = name + _radioName = radioName + _url = url + _key = key + _active = active + End Sub + + + ' A shared function which allows to serialize an ArrayList Object of CloudlogTargets objects into a string + ' This is needed as the settings functions only allows to store basic datatypes + ' Argument: ArrayList + ' Returns: String + Public Shared Function toSettingsString(ByVal list As ArrayList) As String + Dim serialized As String + Dim formatter As New BinaryFormatter() + Using memoryStream As New MemoryStream() + formatter.Serialize(memoryStream, list) + serialized = Convert.ToBase64String(memoryStream.ToArray()) + End Using + Return serialized + End Function + + ' A shared function which allows to deserialize a string into an ArrayList Object of CloudlogTarget objects into a string + ' This is needed as the settings functions only allows to store basic datatypes + ' Argument: ArrayList + ' Returns: String + Public Shared Function fromSettingsString(ByVal str As String) As ArrayList + Dim formatter As New BinaryFormatter() + Dim retrievedTargets As ArrayList + Using memoryStream As New MemoryStream(Convert.FromBase64String(str)) + retrievedTargets = DirectCast(formatter.Deserialize(memoryStream), ArrayList) + End Using + Return retrievedTargets + End Function + + + ' Setter and Getter Functions + + Public Property name() As String + Get + Return _name + End Get + Set(ByVal value As String) + _name = value + End Set + End Property + + + Public Property radioName() As String + Get + Return _radioName + End Get + Set(ByVal value As String) + _radioName = value + End Set + End Property + + + Public Property url() As String + Get + Return _url + End Get + Set(ByVal value As String) + _url = value + End Set + End Property + + + Public Property key() As String + Get + Return _key + End Get + Set(ByVal value As String) + _key = value + End Set + End Property + + + Public Property active() As Boolean + Get + Return _active + End Get + Set(ByVal value As Boolean) + _active = value + End Set + End Property + +End Class diff --git a/OmniRig_VB_DEMO/Form1.vb b/OmniRig_VB_DEMO/Form1.vb index 69577a3..e3df36c 100644 --- a/OmniRig_VB_DEMO/Form1.vb +++ b/OmniRig_VB_DEMO/Form1.vb @@ -1,4 +1,11 @@ -Public Class Form1 +Imports System.Diagnostics.Contracts +Imports System.Runtime +Imports CloudlogCAT.My + +Public Class Form1 + ' List of Cloudlog Targets + Dim targets As ArrayList + Dim targetsStr As String ' Strore the settings string to detect changes 'OmniRig events WithEvents Dim WithEvents OmniRigEngine As OmniRig.OmniRigX Dim Rig As OmniRig.RigX @@ -48,6 +55,16 @@ Const ST_NOTRESPONDING = &H3 Const ST_ONLINE = &H4 + Public Sub loadSettings() + ' only do the deserialization if something has changed, a hint of better performance + If Not String.Equals(My.Settings.MultiCloudlog, Me.targetsStr) Then + ' do the deserialization + Me.targets = CloudlogTarget.fromSettingsString(My.Settings.MultiCloudlog) + Me.targetsStr = My.Settings.MultiCloudlog + End If + End Sub + + 'Form LOAD events Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load @@ -60,6 +77,33 @@ TransverterOffsetToolStripMenuItem.Checked = True End If + ' Check weather we need to adjust the settings + If String.Equals(My.Settings.MultiCloudlog, "") Then + ' There are no Multi Cloudlog Entrys, create one + + Dim target As New CloudlogTarget() ' Initializes the new object with defaults sting and sets it as not active + + ' There are Settings strored in the URL and API, transport them (leagacy reasons!) + If Not String.Equals(My.Settings.CloudlogURL, "") Then + target.url = My.Settings.CloudlogURL + target.key = My.Settings.CloudlogAPIKey + target.active = True + Console.WriteLine(My.Settings.CloudlogURL) + End If + + ' Store the targets as a list, and save it + Dim targets As New ArrayList() + targets.Add(target) + Me.targets = targets + My.Settings.MultiCloudlog = CloudlogTarget.toSettingsString(targets) + Me.targetsStr = My.Settings.MultiCloudlog ' set the string to compoare against changes + My.Settings.Save() + Else + Me.targetsStr = "" ' force a load of objects + loadSettings() ' deserialize the string + End If + + StartOmniRig() End Sub @@ -106,7 +150,6 @@ Label3.Text = Rig.Freq 'Rig.GetRxFrequency End If ->>>>>>> e221a03032e5c6a6f33ade8747dc3b7de93a3a4e Select Case Rig.Mode Case PM_CW_L Label6.Text = "CW" @@ -129,34 +172,64 @@ End Select 'Connect to Cloudlog API and sync frequency - If My.Settings.CloudlogURL IsNot Nothing Then - Try - Using client As New Net.WebClient - System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12 + loadSettings() ' surely there is a better way to update the settings... but it works! + + + Dim allOK As Boolean + Dim anyTarget As Boolean + allOK = True ' If any of the targets fail, we need to know + anyTarget = False ' Additional flag, if any target is supposed to be active + + Dim timestamp As String = DateTime.UtcNow.ToString("yyyy/MM/dd HH:mm:ss") + + + For Each target As CloudlogTarget In targets + ' upload each to target, if requested and possible + If target.active And Not String.Equals(target.url, "") Then + anyTarget = True + Try + Using client As New Net.WebClient + System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12 + + Dim RadioName As String = "" + + ' The radio name will be populated my the target object + If RadioButton1.Checked Then + RadioName = "1" + Else + RadioName = "2" + End If + + + ' build string + Dim myString As String = "{""radio"": """ + target.radioName + " " + RadioName + """, ""frequency"": """ + newfreq.ToString + """, ""mode"": """ + Label6.Text + """, ""timestamp"": """ + timestamp + """, ""key"": """ + target.key + """}" + + Try + Dim responsebytes = client.UploadString(target.url + "/index.php/api/radio", myString) + Catch ex As Exception + If allOK = True Then ' only display error for the first entry, maybe room for improvement + ToolStripStatusLabel1.Text = "Cloudlog Synced for " + target.name + ": Failed, check URL/API" + allOK = False + End If + End Try + End Using + Catch ex As System.Net.WebException + If allOK = True Then + ToolStripStatusLabel1.Text = "Cloudlog Synced for " + target.name + " Failed" + allOK = False + End If + End Try - Dim RadioName As String = "" + End If + Next - If RadioButton1.Checked Then - RadioName = "OmniRig 1" - Else - RadioName = "OmniRig 2" - End If - - Dim timestamp as String = DateTime.UtcNow.ToString("yyyy/MM/dd HH:mm:ss") - - Dim myString As String = "{""radio"": """ + RadioName + """, ""frequency"": """ + newfreq.ToString + """, ""mode"": """ + Label6.Text + """, ""timestamp"": """ + timestamp + """, ""key"": """ + My.Settings.CloudlogAPIKey + """}" - - Try - Dim responsebytes = client.UploadString(My.Settings.CloudlogURL + "/index.php/api/radio", myString) - ToolStripStatusLabel1.Text = "Cloudlog Synced: " + timestamp - Catch ex As Exception - ToolStripStatusLabel1.Text = "Cloudlog Synced: Failed, check URL/API" - End Try - End Using - Catch ex As System.Net.WebException - ToolStripStatusLabel1.Text = "Cloudlog Synced: Failed" - End Try + + If Not anyTarget Then ' haven't even tried, display an error + ToolStripStatusLabel1.Text = "Cloudlog Synced: Failed, no target active" + ElseIf allOK Then + ToolStripStatusLabel1.Text = "Cloudlog Synced: " + timestamp ' all targets uploaded sucessfully! End If + End Sub 'Procedures diff --git a/OmniRig_VB_DEMO/Form2.Designer.vb b/OmniRig_VB_DEMO/Form2.Designer.vb index 90bef96..6d4d5bb 100644 --- a/OmniRig_VB_DEMO/Form2.Designer.vb +++ b/OmniRig_VB_DEMO/Form2.Designer.vb @@ -23,62 +23,146 @@ Partial Class CloudlogSettingsForm _ Private Sub InitializeComponent() Me.Label1 = New System.Windows.Forms.Label() - Me.TextBox1 = New System.Windows.Forms.TextBox() - Me.Button1 = New System.Windows.Forms.Button() + Me.URLBox = New System.Windows.Forms.TextBox() + Me.SaveBut = New System.Windows.Forms.Button() Me.Label2 = New System.Windows.Forms.Label() - Me.TextBox2 = New System.Windows.Forms.TextBox() + Me.KeyBox = New System.Windows.Forms.TextBox() + Me.NameBox = New System.Windows.Forms.TextBox() + Me.radioNameBox = New System.Windows.Forms.TextBox() + Me.TargetList = New System.Windows.Forms.ListBox() + Me.ActiveBox = New System.Windows.Forms.CheckBox() + Me.AddBut = New System.Windows.Forms.Button() + Me.SubBut = New System.Windows.Forms.Button() + Me.Label3 = New System.Windows.Forms.Label() + Me.Label4 = New System.Windows.Forms.Label() Me.SuspendLayout() ' 'Label1 ' Me.Label1.AutoSize = True - Me.Label1.Location = New System.Drawing.Point(13, 13) + Me.Label1.Location = New System.Drawing.Point(140, 65) Me.Label1.Name = "Label1" Me.Label1.Size = New System.Drawing.Size(131, 13) Me.Label1.TabIndex = 0 Me.Label1.Text = "Cloudlog Website Address" ' - 'TextBox1 + 'URLBox ' - Me.TextBox1.Location = New System.Drawing.Point(151, 13) - Me.TextBox1.Name = "TextBox1" - Me.TextBox1.Size = New System.Drawing.Size(206, 20) - Me.TextBox1.TabIndex = 1 + Me.URLBox.Location = New System.Drawing.Point(277, 62) + Me.URLBox.Name = "URLBox" + Me.URLBox.Size = New System.Drawing.Size(206, 20) + Me.URLBox.TabIndex = 6 ' - 'Button1 + 'SaveBut ' - Me.Button1.Location = New System.Drawing.Point(253, 72) - Me.Button1.Name = "Button1" - Me.Button1.Size = New System.Drawing.Size(104, 23) - Me.Button1.TabIndex = 2 - Me.Button1.Text = "Save" - Me.Button1.UseVisualStyleBackColor = True + Me.SaveBut.Location = New System.Drawing.Point(379, 112) + Me.SaveBut.Name = "SaveBut" + Me.SaveBut.Size = New System.Drawing.Size(104, 23) + Me.SaveBut.TabIndex = 9 + Me.SaveBut.Text = "Save" + Me.SaveBut.UseVisualStyleBackColor = True ' 'Label2 ' Me.Label2.AutoSize = True - Me.Label2.Location = New System.Drawing.Point(13, 46) + Me.Label2.Location = New System.Drawing.Point(182, 90) Me.Label2.Name = "Label2" Me.Label2.Size = New System.Drawing.Size(89, 13) Me.Label2.TabIndex = 3 Me.Label2.Text = "Cloudlog API Key" ' - 'TextBox2 + 'KeyBox ' - Me.TextBox2.Location = New System.Drawing.Point(151, 46) - Me.TextBox2.Name = "TextBox2" - Me.TextBox2.Size = New System.Drawing.Size(206, 20) - Me.TextBox2.TabIndex = 4 + Me.KeyBox.Location = New System.Drawing.Point(277, 87) + Me.KeyBox.Name = "KeyBox" + Me.KeyBox.Size = New System.Drawing.Size(206, 20) + Me.KeyBox.TabIndex = 7 + ' + 'NameBox + ' + Me.NameBox.Location = New System.Drawing.Point(277, 12) + Me.NameBox.Name = "NameBox" + Me.NameBox.Size = New System.Drawing.Size(206, 20) + Me.NameBox.TabIndex = 4 + ' + 'radioNameBox + ' + Me.radioNameBox.Location = New System.Drawing.Point(277, 37) + Me.radioNameBox.Name = "radioNameBox" + Me.radioNameBox.Size = New System.Drawing.Size(206, 20) + Me.radioNameBox.TabIndex = 5 + ' + 'TargetList + ' + Me.TargetList.FormattingEnabled = True + Me.TargetList.Location = New System.Drawing.Point(12, 12) + Me.TargetList.Name = "TargetList" + Me.TargetList.Size = New System.Drawing.Size(120, 95) + Me.TargetList.TabIndex = 1 + ' + 'ActiveBox + ' + Me.ActiveBox.AutoSize = True + Me.ActiveBox.Location = New System.Drawing.Point(277, 116) + Me.ActiveBox.Name = "ActiveBox" + Me.ActiveBox.Size = New System.Drawing.Size(56, 17) + Me.ActiveBox.TabIndex = 8 + Me.ActiveBox.Text = "Active" + Me.ActiveBox.UseVisualStyleBackColor = True + ' + 'AddBut + ' + Me.AddBut.Location = New System.Drawing.Point(12, 112) + Me.AddBut.Name = "AddBut" + Me.AddBut.Size = New System.Drawing.Size(37, 23) + Me.AddBut.TabIndex = 2 + Me.AddBut.Text = "➕" + Me.AddBut.UseVisualStyleBackColor = True + ' + 'SubBut + ' + Me.SubBut.Location = New System.Drawing.Point(95, 112) + Me.SubBut.Name = "SubBut" + Me.SubBut.Size = New System.Drawing.Size(37, 23) + Me.SubBut.TabIndex = 3 + Me.SubBut.Text = "➖" + Me.SubBut.UseVisualStyleBackColor = True + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(150, 40) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(121, 13) + Me.Label3.TabIndex = 11 + Me.Label3.Text = "Radio Name in Cloudlog" + ' + 'Label4 + ' + Me.Label4.AutoSize = True + Me.Label4.Location = New System.Drawing.Point(244, 15) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(27, 13) + Me.Label4.TabIndex = 12 + Me.Label4.Text = "Title" ' 'CloudlogSettingsForm ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(381, 102) - Me.Controls.Add(Me.TextBox2) + Me.ClientSize = New System.Drawing.Size(506, 162) + Me.Controls.Add(Me.Label4) + Me.Controls.Add(Me.Label3) + Me.Controls.Add(Me.SubBut) + Me.Controls.Add(Me.AddBut) + Me.Controls.Add(Me.ActiveBox) + Me.Controls.Add(Me.TargetList) + Me.Controls.Add(Me.radioNameBox) + Me.Controls.Add(Me.NameBox) + Me.Controls.Add(Me.KeyBox) Me.Controls.Add(Me.Label2) - Me.Controls.Add(Me.Button1) - Me.Controls.Add(Me.TextBox1) + Me.Controls.Add(Me.SaveBut) + Me.Controls.Add(Me.URLBox) Me.Controls.Add(Me.Label1) Me.MaximizeBox = False Me.MinimizeBox = False @@ -91,8 +175,16 @@ Partial Class CloudlogSettingsForm End Sub Friend WithEvents Label1 As Label - Friend WithEvents TextBox1 As TextBox - Friend WithEvents Button1 As Button + Friend WithEvents URLBox As TextBox + Friend WithEvents SaveBut As Button Friend WithEvents Label2 As Label - Friend WithEvents TextBox2 As TextBox + Friend WithEvents KeyBox As TextBox + Friend WithEvents NameBox As TextBox + Friend WithEvents radioNameBox As TextBox + Friend WithEvents TargetList As ListBox + Friend WithEvents ActiveBox As CheckBox + Friend WithEvents AddBut As Button + Friend WithEvents SubBut As Button + Friend WithEvents Label3 As Label + Friend WithEvents Label4 As Label End Class diff --git a/OmniRig_VB_DEMO/Form2.vb b/OmniRig_VB_DEMO/Form2.vb index 8fe00b5..c616f79 100644 --- a/OmniRig_VB_DEMO/Form2.vb +++ b/OmniRig_VB_DEMO/Form2.vb @@ -1,12 +1,123 @@ Public Class CloudlogSettingsForm - Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click - My.Settings.CloudlogURL = TextBox1.Text - My.Settings.CloudlogAPIKey = TextBox2.Text - Me.Close() + Dim targets As ArrayList + Private Sub SaveBut_Click(sender As Object, e As EventArgs) Handles SaveBut.Click + Dim target As CloudlogTarget + target = getValues() ' Get the target to be added + + + ' Basic sanity check, an empty name will result in empty but existing list entries + If String.Equals(target.name, "") Or String.Equals(target.url, "") Then + MsgBox("Neither Name nor URL May be Empty!") + Return + End If + + ' it is possible to click select without selecting anything in the list + ' Just add a new entry i + If TargetList.SelectedIndex = -1 Then + targets.Add(getValues) ' add new + Else + targets(TargetList.SelectedIndex) = getValues() ' Override + End If + + ' Store the list as a string + My.Settings.MultiCloudlog = CloudlogTarget.toSettingsString(targets) + My.Settings.Save() + ' update gui + populateList() End Sub Private Sub CloudlogSettingsForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load - TextBox1.Text = My.Settings.CloudlogURL - TextBox2.Text = My.Settings.CloudlogAPIKey + ' Get current settings and override the local object + targets = CloudlogTarget.fromSettingsString(My.Settings.MultiCloudlog) + ' Update the gui + populateList() + ' Select the first entry and populate the values into the textboxes + TargetList.SetSelected(0, True) + populateValues(0) + + End Sub + + Private Sub TargetList_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TargetList.SelectedIndexChanged + ' Ignore the un-select event + If TargetList.SelectedIndex >= 0 Then + ' update gui + populateValues(TargetList.SelectedIndex) + End If + End Sub + Private Sub populateList() + Dim selected As Integer + + ' We will clear the list, so stroe the currently selected item + selected = TargetList.SelectedIndex + ' clear list and populate the values + TargetList.Items.Clear() + For Each target As CloudlogTarget In targets + TargetList.Items.Add(target.name) + Next + + ' reselect the item, if neccesary + If 0 <= selected And selected < targets.Count Then + TargetList.SetSelected(selected, True) + populateValues(selected) + End If + + End Sub + + ' Puts the values from the list into the textboxes + Private Sub populateValues(ByVal index As Integer) + Dim target As CloudlogTarget + target = targets(index) + + NameBox.Text = target.name + radioNameBox.Text = target.radioName + URLBox.Text = target.url + KeyBox.Text = target.key + ActiveBox.Checked = target.active + + End Sub + + Private Function getValues() As CloudlogTarget + Dim target As New CloudlogTarget() + ' Create a new target object, remove trailling and leading spaces + target.name = NameBox.Text.Trim() + target.radioName = radioNameBox.Text.Trim() + target.url = URLBox.Text.Trim() + ' the url may not end with a / + While target.url.EndsWith("/") + target.url = target.url.Substring(0, target.url.Length - 1) + End While + target.key = KeyBox.Text.Trim() + target.active = ActiveBox.Checked + Return target + End Function + + Private Sub AddBut_Click(sender As Object, e As EventArgs) Handles AddBut.Click + Dim target As New CloudlogTarget() + ' Create a new basic Target, the name is increased to the count number + target.name = target.name & " " & (targets.Count + 1) + targets.Add(target) + ' put it in the list + populateList() + ' this new entry is neither selected nor saved, this is on purpose. The use needs to make changes to make saving worth it + End Sub + + Private Sub SubBut_Click(sender As Object, e As EventArgs) Handles SubBut.Click + Dim index As Integer + index = TargetList.SelectedIndex + ' Check weather anything is selected, and do not delete the last entry + If index > -1 And targets.Count > 1 Then + ' flush gui + NameBox.Text = "" + radioNameBox.Text = "" + URLBox.Text = "" + KeyBox.Text = "" + ActiveBox.Checked = False + ' remove and update gui + targets.RemoveAt(index) + populateList() + ' save + My.Settings.MultiCloudlog = CloudlogTarget.toSettingsString(targets) + My.Settings.Save() + End If End Sub End Class \ No newline at end of file diff --git a/OmniRig_VB_DEMO/My Project/AssemblyInfo.vb b/OmniRig_VB_DEMO/My Project/AssemblyInfo.vb index ac48209..1bed16b 100644 --- a/OmniRig_VB_DEMO/My Project/AssemblyInfo.vb +++ b/OmniRig_VB_DEMO/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' 既定値にすることができます: ' - - + + diff --git a/OmniRig_VB_DEMO/My Project/Resources.Designer.vb b/OmniRig_VB_DEMO/My Project/Resources.Designer.vb index ada3222..ad09a96 100644 --- a/OmniRig_VB_DEMO/My Project/Resources.Designer.vb +++ b/OmniRig_VB_DEMO/My Project/Resources.Designer.vb @@ -1,10 +1,10 @@ '------------------------------------------------------------------------------ ' -' This code was generated by a tool. -' Runtime Version:4.0.30319.42000 +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 ' -' Changes to this file may cause incorrect behavior and will be lost if -' the code is regenerated. +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. ' '------------------------------------------------------------------------------ @@ -15,14 +15,14 @@ Imports System Namespace My.Resources - 'This class was auto-generated by the StronglyTypedResourceBuilder - 'class via a tool like ResGen or Visual Studio. - 'To add or remove a member, edit your .ResX file then rerun ResGen - 'with the /str option, or rebuild your VS project. + 'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + '-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + 'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + 'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. ''' - ''' A strongly-typed resource class, for looking up localized strings, etc. + ''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. ''' - _ @@ -33,7 +33,7 @@ Namespace My.Resources Private resourceCulture As Global.System.Globalization.CultureInfo ''' - ''' Returns the cached ResourceManager instance used by this class. + ''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. ''' _ Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager @@ -47,8 +47,8 @@ Namespace My.Resources End Property ''' - ''' Overrides the current thread's CurrentUICulture property for all - ''' resource lookups using this strongly typed resource class. + ''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + ''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. ''' _ Friend Property Culture() As Global.System.Globalization.CultureInfo diff --git a/OmniRig_VB_DEMO/My Project/Settings.Designer.vb b/OmniRig_VB_DEMO/My Project/Settings.Designer.vb index c8f8ac9..1b4992f 100644 --- a/OmniRig_VB_DEMO/My Project/Settings.Designer.vb +++ b/OmniRig_VB_DEMO/My Project/Settings.Designer.vb @@ -1,10 +1,10 @@ '------------------------------------------------------------------------------ ' -' This code was generated by a tool. -' Runtime Version:4.0.30319.42000 +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 ' -' Changes to this file may cause incorrect behavior and will be lost if -' the code is regenerated. +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. ' '------------------------------------------------------------------------------ @@ -15,14 +15,14 @@ Option Explicit On Namespace My _ Partial Friend NotInheritable Class MySettings Inherits Global.System.Configuration.ApplicationSettingsBase Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) -#Region "My.Settings Auto-Save Functionality" +#Region "Automatische My.Settings-Speicherfunktion" #If _MyType = "WindowsForms" Then Private Shared addedHandler As Boolean @@ -113,6 +113,18 @@ Namespace My Me("TransverterOffsetType") = value End Set End Property + + _ + Public Property MultiCloudlog() As String + Get + Return CType(Me("MultiCloudlog"),String) + End Get + Set + Me("MultiCloudlog") = value + End Set + End Property End Class End Namespace diff --git a/OmniRig_VB_DEMO/My Project/Settings.settings b/OmniRig_VB_DEMO/My Project/Settings.settings index 94b4265..0f8f09c 100644 --- a/OmniRig_VB_DEMO/My Project/Settings.settings +++ b/OmniRig_VB_DEMO/My Project/Settings.settings @@ -17,5 +17,8 @@ + + + \ No newline at end of file diff --git a/OmniRig_VB_DEMO/My Project/app.manifest b/OmniRig_VB_DEMO/My Project/app.manifest index 5485cad..c654d83 100644 --- a/OmniRig_VB_DEMO/My Project/app.manifest +++ b/OmniRig_VB_DEMO/My Project/app.manifest @@ -19,8 +19,8 @@ - + diff --git a/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.exe b/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.exe index 0e084ea..81cd0df 100644 Binary files a/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.exe and b/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.exe differ diff --git a/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.exe.config b/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.exe.config index 5ba32f6..c5c646a 100644 --- a/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.exe.config +++ b/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.exe.config @@ -1,12 +1,12 @@ - + - -
+ +
- + @@ -25,6 +25,9 @@ + + + - \ No newline at end of file + diff --git a/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.pdb b/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.pdb index c95172d..7e717e5 100644 Binary files a/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.pdb and b/OmniRig_VB_DEMO/bin/Debug/CloudlogCAT.pdb differ diff --git a/OmniRig_VB_DEMO/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.vb b/OmniRig_VB_DEMO/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.vb new file mode 100644 index 0000000..e7dcac5 --- /dev/null +++ b/OmniRig_VB_DEMO/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.vb @@ -0,0 +1,7 @@ +' + Option Strict Off + Option Explicit On + + Imports System + Imports System.Reflection + diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.application b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.application index e2301c9..5c426e0 100644 --- a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.application +++ b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.application @@ -1,20 +1,20 @@  - + - + - + - lJZaO8tSPCCvJvWpfK2iargf1grFLkGJE4oCWnwbRAg= + Wm27OLRYJllPC9KaIhDe3L4ijNSYWhYfHRvB/bGOxIQ= diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.exe b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.exe index 2dfc8e2..81cd0df 100644 Binary files a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.exe and b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.exe differ diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.exe.manifest b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.exe.manifest index 657295d..e20f773 100644 --- a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.exe.manifest +++ b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.exe.manifest @@ -1,10 +1,10 @@  - + - + @@ -43,14 +43,14 @@ - - + + - C75VVJvxDVVyVYjWlaF+wx4DsFOs+CIrPk+W7yPLOcA= + fBODrOq8A3BzOd3uOsbtNogvtoGtgGuUPVoEMEpaQGA= @@ -63,13 +63,13 @@ t+YkUar7BQkecv0WXeIzZ08zzmX/bITAX+l62kmzD80= - + - 97ZF9x7UU/TAdsnUobeoZsDDrKK7sWqUT1DYfsGujMQ= + /8FbyePycsNgpmVYrq2FhGBGxoEicAxWMxLfqR3CTAc= diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.pdb b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.pdb index a075b75..7e717e5 100644 Binary files a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.pdb and b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.pdb differ diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.AssemblyReference.cache b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.AssemblyReference.cache new file mode 100644 index 0000000..45a6ab9 Binary files /dev/null and b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.AssemblyReference.cache differ diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.CoreCompileInputs.cache b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.CoreCompileInputs.cache index 5b48b12..fb9e1f4 100644 --- a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.CoreCompileInputs.cache +++ b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.CoreCompileInputs.cache @@ -1 +1 @@ -a52852b2fe3aa3058580960897b7baca1d5a2ac0 +d2e72992a80824992db47477ea132e762bcb885c diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.FileListAbsolute.txt b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.FileListAbsolute.txt index 6c81cd1..b0fa5ff 100644 --- a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.FileListAbsolute.txt +++ b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.FileListAbsolute.txt @@ -41,3 +41,26 @@ C:\Users\peter\OneDrive\Documents\GitHub\CloudlogCAT\OmniRig_VB_DEMO\bin\Debug\C C:\Users\peter\OneDrive\Documents\GitHub\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.exe.manifest C:\Users\peter\OneDrive\Documents\GitHub\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.application C:\Users\peter\OneDrive\Documents\GitHub\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.Form3.resources +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.vbproj.AssemblyReference.cache +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.vbproj.SuggestedBindingRedirects.cache +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\Interop.OmniRig.dll +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.vbproj.ResolveComReference.cache +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.AboutBox1.resources +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.Form1.resources +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.CloudlogSettingsForm.resources +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.Form3.resources +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.Resources.resources +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.vbproj.GenerateResource.cache +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.vbproj.CoreCompileInputs.cache +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.exe +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.xml +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.pdb +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\bin\Debug\CloudlogCAT.exe.config +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\bin\Debug\CloudlogCAT.exe.manifest +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\bin\Debug\CloudlogCAT.application +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\bin\Debug\CloudlogCAT.exe +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\bin\Debug\CloudlogCAT.pdb +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\bin\Debug\CloudlogCAT.xml +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.TrustInfo.xml +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.exe.manifest +C:\Users\FHoch\Documents\Projekte\CloudlogCAT\OmniRig_VB_DEMO\obj\Debug\CloudlogCAT.application diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.GenerateResource.cache b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.GenerateResource.cache index 171a5e1..1020dfd 100644 Binary files a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.GenerateResource.cache and b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.GenerateResource.cache differ diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.ResolveComReference.cache b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.ResolveComReference.cache index a850ce3..6653e36 100644 Binary files a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.ResolveComReference.cache and b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.ResolveComReference.cache differ diff --git a/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.SuggestedBindingRedirects.cache b/OmniRig_VB_DEMO/obj/Debug/CloudlogCAT.vbproj.SuggestedBindingRedirects.cache new file mode 100644 index 0000000..e69de29 diff --git a/OmniRig_VB_DEMO/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/OmniRig_VB_DEMO/obj/Debug/DesignTimeResolveAssemblyReferences.cache index 5144866..a534034 100644 Binary files a/OmniRig_VB_DEMO/obj/Debug/DesignTimeResolveAssemblyReferences.cache and b/OmniRig_VB_DEMO/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/OmniRig_VB_DEMO/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/OmniRig_VB_DEMO/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache index 3835009..abf3282 100644 Binary files a/OmniRig_VB_DEMO/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache and b/OmniRig_VB_DEMO/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/OmniRig_VB_DEMO/obj/Debug/Interop.OmniRig.dll b/OmniRig_VB_DEMO/obj/Debug/Interop.OmniRig.dll index 84d6a14..9054f3e 100644 Binary files a/OmniRig_VB_DEMO/obj/Debug/Interop.OmniRig.dll and b/OmniRig_VB_DEMO/obj/Debug/Interop.OmniRig.dll differ diff --git a/OmniRig_VB_DEMO/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll b/OmniRig_VB_DEMO/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll index b7a5548..bedc9b9 100644 Binary files a/OmniRig_VB_DEMO/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll and b/OmniRig_VB_DEMO/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll differ