Migliorata pagina configurazioni

This commit is contained in:
Nicola Pievani
2025-08-25 10:01:18 +02:00
parent 1b918c31ac
commit 219cd35a6a
26 changed files with 976 additions and 504 deletions
@@ -1 +1 @@
d2b932f18ef2e5c798fd58426e0d24aa6cf31e94f0a9380c5153e4ca9c7312e0
e95e89768799aa70174d795dd6cd51d4394677f14b86bcd305000d17f87ae1d9
+80 -68
View File
@@ -30,54 +30,55 @@ Partial Class FrmMain
Me.LbFocalLenght = New System.Windows.Forms.Label()
Me.TimerZoom = New System.Windows.Forms.Timer(Me.components)
Me.GBImgFromCam = New System.Windows.Forms.GroupBox()
Me.BtnDefAree = New System.Windows.Forms.Button()
Me.BtnCorrLens = New System.Windows.Forms.Button()
Me.BtnCorrCompleta = New System.Windows.Forms.Button()
Me.GBCorrected = New System.Windows.Forms.GroupBox()
Me.BtnSave = New System.Windows.Forms.Button()
Me.GBCalibration = New System.Windows.Forms.GroupBox()
Me.Label3 = New System.Windows.Forms.Label()
Me.Label2 = New System.Windows.Forms.Label()
Me.Label1 = New System.Windows.Forms.Label()
Me.lbYmm = New System.Windows.Forms.Label()
Me.lbXmm = New System.Windows.Forms.Label()
Me.PictureBox2 = New System.Windows.Forms.PictureBox()
Me.LbAltRif = New System.Windows.Forms.Label()
Me.LbAltCali = New System.Windows.Forms.Label()
Me.PictureBox1 = New System.Windows.Forms.PictureBox()
Me.BtnAbortCal = New System.Windows.Forms.Button()
Me.BtnSaveCal = New System.Windows.Forms.Button()
Me.ToolStrip1 = New System.Windows.Forms.ToolStrip()
Me.BtnLoad = New System.Windows.Forms.ToolStripButton()
Me.cmdZoomAll = New System.Windows.Forms.ToolStripButton()
Me.BtnZoom11 = New System.Windows.Forms.ToolStripButton()
Me.BtnZoomPan = New System.Windows.Forms.ToolStripButton()
Me.BtnCorrProsp = New System.Windows.Forms.ToolStripButton()
Me.BtnCfg = New System.Windows.Forms.ToolStripButton()
Me.BtnBackG = New System.Windows.Forms.ToolStripButton()
Me.BtnEdgeFinder = New System.Windows.Forms.ToolStripButton()
Me.BtnChangeThreshold = New System.Windows.Forms.ToolStripButton()
Me.BtnIncrTh = New System.Windows.Forms.ToolStripButton()
Me.lbThreshold = New System.Windows.Forms.ToolStripLabel()
Me.btnSearch = New System.Windows.Forms.ToolStripButton()
Me.RefreshCameras = New System.Windows.Forms.ToolStripButton()
Me.StatusStrip1 = New System.Windows.Forms.StatusStrip()
Me.TStatus = New System.Windows.Forms.ToolStripStatusLabel()
Me.ProgressBar = New System.Windows.Forms.ToolStripProgressBar()
Me.lbMousePosmm = New System.Windows.Forms.ToolStripStatusLabel()
Me.TimerMain = New System.Windows.Forms.Timer(Me.components)
Me.GBDefAree = New System.Windows.Forms.GroupBox()
Me.BtnVentosa = New System.Windows.Forms.Button()
Me.BtnExpT = New System.Windows.Forms.Button()
Me.BtnStone = New System.Windows.Forms.Button()
Me.BtnAbortDefAree = New System.Windows.Forms.Button()
Me.BtnSaveAree = New System.Windows.Forms.Button()
Me.ComboBoxCameras = New System.Windows.Forms.ComboBox()
Me.ComboBoxCameraCfg = New System.Windows.Forms.ComboBox()
Me.ImageControl1 = New ImageControl()
Me.Button1 = New System.Windows.Forms.Button()
Me.BtnDefAree = New System.Windows.Forms.Button()
Me.BtnCorrLens = New System.Windows.Forms.Button()
Me.BtnCorrCompleta = New System.Windows.Forms.Button()
Me.GBCorrected = New System.Windows.Forms.GroupBox()
Me.BtnSave = New System.Windows.Forms.Button()
Me.GBCalibration = New System.Windows.Forms.GroupBox()
Me.Label3 = New System.Windows.Forms.Label()
Me.Label2 = New System.Windows.Forms.Label()
Me.Label1 = New System.Windows.Forms.Label()
Me.lbYmm = New System.Windows.Forms.Label()
Me.lbXmm = New System.Windows.Forms.Label()
Me.PictureBox2 = New System.Windows.Forms.PictureBox()
Me.LbAltRif = New System.Windows.Forms.Label()
Me.LbAltCali = New System.Windows.Forms.Label()
Me.PictureBox1 = New System.Windows.Forms.PictureBox()
Me.BtnAbortCal = New System.Windows.Forms.Button()
Me.BtnSaveCal = New System.Windows.Forms.Button()
Me.ToolStrip1 = New System.Windows.Forms.ToolStrip()
Me.BtnLoad = New System.Windows.Forms.ToolStripButton()
Me.cmdZoomAll = New System.Windows.Forms.ToolStripButton()
Me.BtnZoom11 = New System.Windows.Forms.ToolStripButton()
Me.BtnZoomPan = New System.Windows.Forms.ToolStripButton()
Me.BtnCorrProsp = New System.Windows.Forms.ToolStripButton()
Me.BtnCfg = New System.Windows.Forms.ToolStripButton()
Me.BtnBackG = New System.Windows.Forms.ToolStripButton()
Me.BtnEdgeFinder = New System.Windows.Forms.ToolStripButton()
Me.BtnChangeThreshold = New System.Windows.Forms.ToolStripButton()
Me.BtnIncrTh = New System.Windows.Forms.ToolStripButton()
Me.lbThreshold = New System.Windows.Forms.ToolStripLabel()
Me.btnSearch = New System.Windows.Forms.ToolStripButton()
Me.RefreshCameras = New System.Windows.Forms.ToolStripButton()
Me.StatusStrip1 = New System.Windows.Forms.StatusStrip()
Me.TStatus = New System.Windows.Forms.ToolStripStatusLabel()
Me.ProgressBar = New System.Windows.Forms.ToolStripProgressBar()
Me.lbMousePosmm = New System.Windows.Forms.ToolStripStatusLabel()
Me.TimerMain = New System.Windows.Forms.Timer(Me.components)
Me.GBDefAree = New System.Windows.Forms.GroupBox()
Me.BtnVentosa = New System.Windows.Forms.Button()
Me.BtnExpT = New System.Windows.Forms.Button()
Me.BtnStone = New System.Windows.Forms.Button()
Me.BtnAbortDefAree = New System.Windows.Forms.Button()
Me.BtnSaveAree = New System.Windows.Forms.Button()
Me.ComboBoxCameras = New System.Windows.Forms.ComboBox()
Me.ComboBoxCameraCfg = New System.Windows.Forms.ComboBox()
Me.BtnEnd = New System.Windows.Forms.Button()
Me.BtnTakeFoto = New System.Windows.Forms.Button()
Me.BtnShowMsg = New System.Windows.Forms.Button()
Me.ImageList2 = New System.Windows.Forms.ImageList(Me.components)
Me.ImageControl1 = New ImageControl()
Me.GBImgFromCam.SuspendLayout()
Me.GBCorrected.SuspendLayout()
Me.GBCalibration.SuspendLayout()
@@ -414,6 +415,35 @@ Partial Class FrmMain
resources.ApplyResources(Me.ComboBoxCameraCfg, "ComboBoxCameraCfg")
Me.ComboBoxCameraCfg.Name = "ComboBoxCameraCfg"
'
'BtnEnd
'
Me.BtnEnd.Image = Global.My.Resources.Resources._exit
resources.ApplyResources(Me.BtnEnd, "BtnEnd")
Me.BtnEnd.Name = "BtnEnd"
Me.BtnEnd.UseVisualStyleBackColor = True
'
'BtnTakeFoto
'
resources.ApplyResources(Me.BtnTakeFoto, "BtnTakeFoto")
Me.BtnTakeFoto.ImageList = Me.ImageList1
Me.BtnTakeFoto.Name = "BtnTakeFoto"
Me.BtnTakeFoto.UseVisualStyleBackColor = True
'
'BtnShowMsg
'
resources.ApplyResources(Me.BtnShowMsg, "BtnShowMsg")
Me.BtnShowMsg.ImageList = Me.ImageList2
Me.BtnShowMsg.Name = "BtnShowMsg"
Me.BtnShowMsg.UseVisualStyleBackColor = True
'
'ImageList2
'
Me.ImageList2.ImageStream = CType(resources.GetObject("ImageList2.ImageStream"), System.Windows.Forms.ImageListStreamer)
Me.ImageList2.TransparentColor = System.Drawing.Color.Transparent
Me.ImageList2.Images.SetKeyName(0, "accept.png")
Me.ImageList2.Images.SetKeyName(1, "cross.png")
Me.ImageList2.Images.SetKeyName(2, "warning.png")
'
'ImageControl1
'
resources.ApplyResources(Me.ImageControl1, "ImageControl1")
@@ -431,31 +461,12 @@ Partial Class FrmMain
Me.ImageControl1.ZoomFactor = 1.0R
Me.ImageControl1.ZoomOnMouseWheel = True
'
'Button1
'
resources.ApplyResources(Me.Button1, "Button1")
Me.Button1.Name = "Button1"
Me.Button1.UseVisualStyleBackColor = True
'
'BtnEnd
'
Me.BtnEnd.Image = Global.My.Resources.Resources._exit
resources.ApplyResources(Me.BtnEnd, "BtnEnd")
Me.BtnEnd.Name = "BtnEnd"
Me.BtnEnd.UseVisualStyleBackColor = True
'
'BtnTakeFoto
'
resources.ApplyResources(Me.BtnTakeFoto, "BtnTakeFoto")
Me.BtnTakeFoto.ImageList = Me.ImageList1
Me.BtnTakeFoto.Name = "BtnTakeFoto"
Me.BtnTakeFoto.UseVisualStyleBackColor = True
'
'FrmMain
'
resources.ApplyResources(Me, "$this")
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.Controls.Add(Me.Button1)
Me.BackColor = System.Drawing.SystemColors.Control
Me.Controls.Add(Me.BtnShowMsg)
Me.Controls.Add(Me.ComboBoxCameraCfg)
Me.Controls.Add(Me.ComboBoxCameras)
Me.Controls.Add(Me.GBDefAree)
@@ -538,5 +549,6 @@ Partial Class FrmMain
Friend WithEvents ComboBoxCameras As ComboBox
Friend WithEvents ComboBoxCameraCfg As ComboBox
Friend WithEvents RefreshCameras As ToolStripButton
Friend WithEvents Button1 As Button
Friend WithEvents BtnShowMsg As Button
Friend WithEvents ImageList2 As ImageList
End Class
+310 -142
View File
@@ -128,7 +128,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAS
TwAAAk1TRnQBSQFMAgEBCQEAAUwBAgFMAQIBMgEAATIBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
TwAAAk1TRnQBSQFMAgEBCQEAAZwBAgGcAQIBMgEAATIBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwAByAMAAZYDAAEBAQABCAUAATABdRgAAYACAAGAAwACgAEAAYADAAGAAQABgAEAAoACAAPAAQABwAHc
AcABAAHwAcoBpgEAATMFAAEzAQABMwEAATMBAAIzAgADFgEAAxwBAAMiAQADKQEAA1UBAANNAQADQgEA
AzkBAAGAAXwB/wEAAlAB/wEAAZMBAAHWAQAB/wHsAcwBAAHGAdYB7wEAAdYC5wEAAZABqQGtAgAB/wEz
@@ -478,10 +478,13 @@
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="LbImageStatus.Location" type="System.Drawing.Point, System.Drawing">
<value>109, 519</value>
<value>145, 639</value>
</data>
<data name="LbImageStatus.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="LbImageStatus.Size" type="System.Drawing.Size, System.Drawing">
<value>0, 13</value>
<value>0, 16</value>
</data>
<data name="LbImageStatus.TabIndex" type="System.Int32, mscorlib">
<value>25</value>
@@ -505,10 +508,13 @@
<value>NoControl</value>
</data>
<data name="LbFocalLenght.Location" type="System.Drawing.Point, System.Drawing">
<value>381, 13</value>
<value>508, 16</value>
</data>
<data name="LbFocalLenght.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="LbFocalLenght.Size" type="System.Drawing.Size, System.Drawing">
<value>0, 13</value>
<value>0, 16</value>
</data>
<data name="LbFocalLenght.TabIndex" type="System.Int32, mscorlib">
<value>31</value>
@@ -532,10 +538,13 @@
<value>NoControl</value>
</data>
<data name="BtnDefAree.Location" type="System.Drawing.Point, System.Drawing">
<value>10, 175</value>
<value>13, 215</value>
</data>
<data name="BtnDefAree.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnDefAree.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 50</value>
<value>80, 62</value>
</data>
<data name="BtnDefAree.TabIndex" type="System.Int32, mscorlib">
<value>43</value>
@@ -556,10 +565,13 @@
<value>NoControl</value>
</data>
<data name="BtnCorrLens.Location" type="System.Drawing.Point, System.Drawing">
<value>10, 109</value>
<value>13, 134</value>
</data>
<data name="BtnCorrLens.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnCorrLens.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 50</value>
<value>80, 62</value>
</data>
<data name="BtnCorrLens.TabIndex" type="System.Int32, mscorlib">
<value>42</value>
@@ -580,10 +592,13 @@
<value>NoControl</value>
</data>
<data name="BtnCorrCompleta.Location" type="System.Drawing.Point, System.Drawing">
<value>10, 28</value>
<value>13, 34</value>
</data>
<data name="BtnCorrCompleta.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnCorrCompleta.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 50</value>
<value>80, 62</value>
</data>
<data name="BtnCorrCompleta.TabIndex" type="System.Int32, mscorlib">
<value>39</value>
@@ -601,10 +616,16 @@
<value>2</value>
</data>
<data name="GBImgFromCam.Location" type="System.Drawing.Point, System.Drawing">
<value>500, 140</value>
<value>667, 172</value>
</data>
<data name="GBImgFromCam.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GBImgFromCam.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GBImgFromCam.Size" type="System.Drawing.Size, System.Drawing">
<value>80, 302</value>
<value>107, 372</value>
</data>
<data name="GBImgFromCam.TabIndex" type="System.Int32, mscorlib">
<value>44</value>
@@ -690,10 +711,13 @@
<value>NoControl</value>
</data>
<data name="BtnSave.Location" type="System.Drawing.Point, System.Drawing">
<value>14, 240</value>
<value>19, 295</value>
</data>
<data name="BtnSave.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnSave.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 50</value>
<value>80, 62</value>
</data>
<data name="BtnSave.TabIndex" type="System.Int32, mscorlib">
<value>22</value>
@@ -711,10 +735,16 @@
<value>0</value>
</data>
<data name="GBCorrected.Location" type="System.Drawing.Point, System.Drawing">
<value>598, 140</value>
<value>797, 172</value>
</data>
<data name="GBCorrected.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GBCorrected.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GBCorrected.Size" type="System.Drawing.Size, System.Drawing">
<value>80, 302</value>
<value>107, 372</value>
</data>
<data name="GBCorrected.TabIndex" type="System.Int32, mscorlib">
<value>45</value>
@@ -738,10 +768,13 @@
<value>NoControl</value>
</data>
<data name="Label3.Location" type="System.Drawing.Point, System.Drawing">
<value>27, 172</value>
<value>36, 212</value>
</data>
<data name="Label3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="Label3.Size" type="System.Drawing.Size, System.Drawing">
<value>69, 13</value>
<value>88, 16</value>
</data>
<data name="Label3.TabIndex" type="System.Int32, mscorlib">
<value>56</value>
@@ -768,10 +801,13 @@
<value>NoControl</value>
</data>
<data name="Label2.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 218</value>
<value>8, 268</value>
</data>
<data name="Label2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="Label2.Size" type="System.Drawing.Size, System.Drawing">
<value>14, 13</value>
<value>16, 16</value>
</data>
<data name="Label2.TabIndex" type="System.Int32, mscorlib">
<value>55</value>
@@ -798,10 +834,13 @@
<value>NoControl</value>
</data>
<data name="Label1.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 190</value>
<value>8, 234</value>
</data>
<data name="Label1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="Label1.Size" type="System.Drawing.Size, System.Drawing">
<value>14, 13</value>
<value>15, 16</value>
</data>
<data name="Label1.TabIndex" type="System.Int32, mscorlib">
<value>54</value>
@@ -828,10 +867,13 @@
<value>NoControl</value>
</data>
<data name="lbYmm.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 217</value>
<value>32, 267</value>
</data>
<data name="lbYmm.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="lbYmm.Size" type="System.Drawing.Size, System.Drawing">
<value>76, 21</value>
<value>101, 26</value>
</data>
<data name="lbYmm.TabIndex" type="System.Int32, mscorlib">
<value>53</value>
@@ -855,10 +897,13 @@
<value>NoControl</value>
</data>
<data name="lbXmm.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 187</value>
<value>32, 230</value>
</data>
<data name="lbXmm.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="lbXmm.Size" type="System.Drawing.Size, System.Drawing">
<value>76, 21</value>
<value>101, 26</value>
</data>
<data name="lbXmm.TabIndex" type="System.Int32, mscorlib">
<value>52</value>
@@ -879,10 +924,13 @@
<value>NoControl</value>
</data>
<data name="PictureBox2.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 100</value>
<value>16, 123</value>
</data>
<data name="PictureBox2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="PictureBox2.Size" type="System.Drawing.Size, System.Drawing">
<value>65, 40</value>
<value>87, 49</value>
</data>
<data name="PictureBox2.TabIndex" type="System.Int32, mscorlib">
<value>51</value>
@@ -906,10 +954,13 @@
<value>NoControl</value>
</data>
<data name="LbAltRif.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 143</value>
<value>16, 176</value>
</data>
<data name="LbAltRif.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="LbAltRif.Size" type="System.Drawing.Size, System.Drawing">
<value>65, 21</value>
<value>87, 26</value>
</data>
<data name="LbAltRif.TabIndex" type="System.Int32, mscorlib">
<value>50</value>
@@ -933,10 +984,13 @@
<value>NoControl</value>
</data>
<data name="LbAltCali.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 53</value>
<value>16, 65</value>
</data>
<data name="LbAltCali.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="LbAltCali.Size" type="System.Drawing.Size, System.Drawing">
<value>65, 21</value>
<value>87, 26</value>
</data>
<data name="LbAltCali.TabIndex" type="System.Int32, mscorlib">
<value>49</value>
@@ -957,10 +1011,13 @@
<value>NoControl</value>
</data>
<data name="PictureBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 23</value>
<value>16, 28</value>
</data>
<data name="PictureBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="PictureBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>65, 27</value>
<value>87, 33</value>
</data>
<data name="PictureBox1.TabIndex" type="System.Int32, mscorlib">
<value>48</value>
@@ -981,10 +1038,13 @@
<value>NoControl</value>
</data>
<data name="BtnAbortCal.Location" type="System.Drawing.Point, System.Drawing">
<value>14, 266</value>
<value>19, 327</value>
</data>
<data name="BtnAbortCal.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnAbortCal.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 37</value>
<value>80, 46</value>
</data>
<data name="BtnAbortCal.TabIndex" type="System.Int32, mscorlib">
<value>24</value>
@@ -1073,10 +1133,13 @@
<value>NoControl</value>
</data>
<data name="BtnSaveCal.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 309</value>
<value>16, 380</value>
</data>
<data name="BtnSaveCal.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnSaveCal.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 50</value>
<value>80, 62</value>
</data>
<data name="BtnSaveCal.TabIndex" type="System.Int32, mscorlib">
<value>23</value>
@@ -1094,10 +1157,16 @@
<value>10</value>
</data>
<data name="GBCalibration.Location" type="System.Drawing.Point, System.Drawing">
<value>684, 114</value>
<value>912, 140</value>
</data>
<data name="GBCalibration.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GBCalibration.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GBCalibration.Size" type="System.Drawing.Size, System.Drawing">
<value>108, 365</value>
<value>144, 449</value>
</data>
<data name="GBCalibration.TabIndex" type="System.Int32, mscorlib">
<value>46</value>
@@ -1120,7 +1189,7 @@
<data name="BtnLoad.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABlSURBVDhPxZBRCsAwCEM9uufZJTdkWrpoaToKDbyvmodW
YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAABlSURBVDhPxZBRCsAwCEM9uufZJTdkWrpoaToKDbyvmodW
ZGdU9UZwZhgbrkJJWvmSjEsqOIFLMC54JVNBQRPgWgxJwCZKA4HdOsdKsUn+g6KARPG3wEiCVUlX/gpW
SAJP/8ByOA85jMsZFmo5BQAAAABJRU5ErkJggg==
</value>
@@ -1129,7 +1198,7 @@
<value>Magenta</value>
</data>
<data name="BtnLoad.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 42</value>
<value>29, 42</value>
</data>
<data name="BtnLoad.Text" xml:space="preserve">
<value>Open picture</value>
@@ -1137,7 +1206,7 @@
<data name="cmdZoomAll.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADjSURBVFhHxZTRDcIwDAU9Avv/MAojMBIoFQ+Vw2nslJiT
YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADjSURBVFhHxZTRDcIwDAU9Avv/MAojMBIoFQ+Vw2nslJiT
nkQF9jupIWbzXMzsbmZXflGByh+vlEqwvFSiV14iMSpfKhEtXypBWFpOmQCLspmivXPBhdmk0YETs4s4
FzqY+9MuuCgK59rnoUT7gTf4K4FDiX25N5iFc/vdXxIs95KF88xbIlLekoXzXjaJ6BWbhfNeNoHoPZ+F
88zHOfAkBJ+jcK5bLigh+ByFc4fl4u8XUeOvV7GHFs3mNFyYzTLKinqUCvAvOsr0gTsiKrGkXIwklpaL
@@ -1148,7 +1217,7 @@
<value>Magenta</value>
</data>
<data name="cmdZoomAll.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 42</value>
<value>29, 42</value>
</data>
<data name="cmdZoomAll.Text" xml:space="preserve">
<value>Zoom All</value>
@@ -1156,7 +1225,7 @@
<data name="BtnZoom11.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
/aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
@@ -1172,7 +1241,7 @@
<value>Magenta</value>
</data>
<data name="BtnZoom11.Size" type="System.Drawing.Size, System.Drawing">
<value>26, 42</value>
<value>32, 42</value>
</data>
<data name="BtnZoom11.Text" xml:space="preserve">
<value>1:1</value>
@@ -1181,7 +1250,7 @@
<value>Magenta</value>
</data>
<data name="BtnZoomPan.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 42</value>
<value>29, 42</value>
</data>
<data name="BtnZoomPan.Text" xml:space="preserve">
<value>ToolStripButton1</value>
@@ -1189,7 +1258,7 @@
<data name="BtnCorrProsp.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
/aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
@@ -1205,7 +1274,7 @@
<value>Magenta</value>
</data>
<data name="BtnCorrProsp.Size" type="System.Drawing.Size, System.Drawing">
<value>70, 42</value>
<value>85, 42</value>
</data>
<data name="BtnCorrProsp.Text" xml:space="preserve">
<value>Corr. Prosp</value>
@@ -1214,7 +1283,7 @@
<value>Magenta</value>
</data>
<data name="BtnCfg.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 42</value>
<value>29, 42</value>
</data>
<data name="BtnCfg.Text" xml:space="preserve">
<value>Cfg</value>
@@ -1222,7 +1291,7 @@
<data name="BtnBackG.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
/aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
@@ -1238,7 +1307,7 @@
<value>Magenta</value>
</data>
<data name="BtnBackG.Size" type="System.Drawing.Size, System.Drawing">
<value>72, 42</value>
<value>90, 42</value>
</data>
<data name="BtnBackG.Text" xml:space="preserve">
<value>Back Image</value>
@@ -1261,7 +1330,7 @@
<data name="BtnChangeThreshold.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
/aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
@@ -1277,7 +1346,7 @@
<value>Magenta</value>
</data>
<data name="BtnChangeThreshold.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 42</value>
<value>35, 42</value>
</data>
<data name="BtnChangeThreshold.Text" xml:space="preserve">
<value>Th-</value>
@@ -1285,7 +1354,7 @@
<data name="BtnIncrTh.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAIFSURBVDhPpZLtS1NhGMbPPxJmmlYSgqHiKzGU1EDxg4iK
YKyG2WBogqMYJQOtCEVRFBGdTBCJfRnkS4VaaWNT5sqx1BUxRXxDHYxAJLvkusEeBaPAB+5z4Jzn+t3X
/aLhnEfjo8m+dCoa+7/C3O2Hqe0zDC+8KG+cRZHZhdzaaWTVTCLDMIY0vfM04Nfh77/G/sEhwpEDbO3t
I7TxE8urEVy99fT/AL5gWDLrTB/hnF4XsW0khCu5ln8DmJliT2AXrcNBsU1gj/MH4nMeKwBrPktM28xM
@@ -1301,7 +1370,7 @@
<value>Magenta</value>
</data>
<data name="BtnIncrTh.Size" type="System.Drawing.Size, System.Drawing">
<value>33, 42</value>
<value>39, 42</value>
</data>
<data name="BtnIncrTh.Text" xml:space="preserve">
<value>Th+</value>
@@ -1328,7 +1397,7 @@
<value>Magenta</value>
</data>
<data name="RefreshCameras.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 42</value>
<value>29, 42</value>
</data>
<data name="RefreshCameras.Text" xml:space="preserve">
<value>ToolStripButton1</value>
@@ -1340,7 +1409,7 @@
<value>0, 0</value>
</data>
<data name="ToolStrip1.Size" type="System.Drawing.Size, System.Drawing">
<value>795, 45</value>
<value>1060, 45</value>
</data>
<data name="ToolStrip1.TabIndex" type="System.Int32, mscorlib">
<value>101</value>
@@ -1364,7 +1433,7 @@
<value>479, 12</value>
</metadata>
<data name="TStatus.Size" type="System.Drawing.Size, System.Drawing">
<value>67, 17</value>
<value>86, 20</value>
</data>
<data name="TStatus.Text" xml:space="preserve">
<value>Not Started</value>
@@ -1373,19 +1442,22 @@
<value>No</value>
</data>
<data name="ProgressBar.Size" type="System.Drawing.Size, System.Drawing">
<value>150, 16</value>
<value>200, 18</value>
</data>
<data name="lbMousePosmm.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 17</value>
<value>38, 20</value>
</data>
<data name="lbMousePosmm.Text" xml:space="preserve">
<value>X Y </value>
</data>
<data name="StatusStrip1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 550</value>
<value>0, 678</value>
</data>
<data name="StatusStrip1.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>1, 0, 19, 0</value>
</data>
<data name="StatusStrip1.Size" type="System.Drawing.Size, System.Drawing">
<value>795, 22</value>
<value>1060, 26</value>
</data>
<data name="StatusStrip1.TabIndex" type="System.Int32, mscorlib">
<value>102</value>
@@ -1412,10 +1484,13 @@
<value>NoControl</value>
</data>
<data name="BtnVentosa.Location" type="System.Drawing.Point, System.Drawing">
<value>18, 111</value>
<value>24, 137</value>
</data>
<data name="BtnVentosa.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnVentosa.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 37</value>
<value>80, 46</value>
</data>
<data name="BtnVentosa.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
@@ -1439,10 +1514,13 @@
<value>NoControl</value>
</data>
<data name="BtnExpT.Location" type="System.Drawing.Point, System.Drawing">
<value>18, 23</value>
<value>24, 28</value>
</data>
<data name="BtnExpT.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnExpT.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 37</value>
<value>80, 46</value>
</data>
<data name="BtnExpT.TabIndex" type="System.Int32, mscorlib">
<value>28</value>
@@ -1466,10 +1544,13 @@
<value>NoControl</value>
</data>
<data name="BtnStone.Location" type="System.Drawing.Point, System.Drawing">
<value>18, 66</value>
<value>24, 81</value>
</data>
<data name="BtnStone.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnStone.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 37</value>
<value>80, 46</value>
</data>
<data name="BtnStone.TabIndex" type="System.Int32, mscorlib">
<value>27</value>
@@ -1493,10 +1574,13 @@
<value>NoControl</value>
</data>
<data name="BtnAbortDefAree.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 201</value>
<value>21, 247</value>
</data>
<data name="BtnAbortDefAree.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnAbortDefAree.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 37</value>
<value>80, 46</value>
</data>
<data name="BtnAbortDefAree.TabIndex" type="System.Int32, mscorlib">
<value>26</value>
@@ -1585,10 +1669,13 @@
<value>NoControl</value>
</data>
<data name="BtnSaveAree.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 251</value>
<value>21, 309</value>
</data>
<data name="BtnSaveAree.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnSaveAree.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 50</value>
<value>80, 62</value>
</data>
<data name="BtnSaveAree.TabIndex" type="System.Int32, mscorlib">
<value>25</value>
@@ -1606,10 +1693,16 @@
<value>4</value>
</data>
<data name="GBDefAree.Location" type="System.Drawing.Point, System.Drawing">
<value>586, 48</value>
<value>781, 59</value>
</data>
<data name="GBDefAree.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GBDefAree.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GBDefAree.Size" type="System.Drawing.Size, System.Drawing">
<value>97, 317</value>
<value>129, 390</value>
</data>
<data name="GBDefAree.TabIndex" type="System.Int32, mscorlib">
<value>103</value>
@@ -1627,13 +1720,13 @@
<value>3</value>
</data>
<data name="ComboBoxCameras.Location" type="System.Drawing.Point, System.Drawing">
<value>465, 10</value>
<value>620, 12</value>
</data>
<data name="ComboBoxCameras.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>2, 2, 2, 2</value>
<value>3, 2, 3, 2</value>
</data>
<data name="ComboBoxCameras.Size" type="System.Drawing.Size, System.Drawing">
<value>129, 21</value>
<value>171, 24</value>
</data>
<data name="ComboBoxCameras.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -1651,13 +1744,13 @@
<value>2</value>
</data>
<data name="ComboBoxCameraCfg.Location" type="System.Drawing.Point, System.Drawing">
<value>598, 11</value>
<value>797, 14</value>
</data>
<data name="ComboBoxCameraCfg.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>2, 2, 2, 2</value>
<value>3, 2, 3, 2</value>
</data>
<data name="ComboBoxCameraCfg.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 21</value>
<value>107, 24</value>
</data>
<data name="ComboBoxCameraCfg.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -1674,68 +1767,17 @@
<data name="&gt;&gt;ComboBoxCameraCfg.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="ImageControl1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="ImageControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>15, 70</value>
</data>
<data name="ImageControl1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="ImageControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>546, 554</value>
</data>
<data name="ImageControl1.TabIndex" type="System.Int32, mscorlib">
<value>35</value>
</data>
<data name="&gt;&gt;ImageControl1.Name" xml:space="preserve">
<value>ImageControl1</value>
</data>
<data name="&gt;&gt;ImageControl1.Type" xml:space="preserve">
<value>ImageControl, CameraMng, Version=2.7.7.1, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;ImageControl1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;ImageControl1.ZOrder" xml:space="preserve">
<value>10</value>
</data>
<data name="Button1.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="Button1.Location" type="System.Drawing.Point, System.Drawing">
<value>693, 11</value>
</data>
<data name="Button1.Size" type="System.Drawing.Size, System.Drawing">
<value>87, 23</value>
</data>
<data name="Button1.TabIndex" type="System.Int32, mscorlib">
<value>104</value>
</data>
<data name="Button1.Text" xml:space="preserve">
<value>Configurazione</value>
</data>
<data name="&gt;&gt;Button1.Name" xml:space="preserve">
<value>Button1</value>
</data>
<data name="&gt;&gt;Button1.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;Button1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;Button1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="BtnEnd.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BtnEnd.Location" type="System.Drawing.Point, System.Drawing">
<value>724, 504</value>
<value>965, 620</value>
</data>
<data name="BtnEnd.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnEnd.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 50</value>
<value>80, 62</value>
</data>
<data name="BtnEnd.TabIndex" type="System.Int32, mscorlib">
<value>22</value>
@@ -1759,10 +1801,13 @@
<value>NoControl</value>
</data>
<data name="BtnTakeFoto.Location" type="System.Drawing.Point, System.Drawing">
<value>696, 58</value>
<value>928, 71</value>
</data>
<data name="BtnTakeFoto.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="BtnTakeFoto.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 50</value>
<value>80, 62</value>
</data>
<data name="BtnTakeFoto.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@@ -1779,6 +1824,120 @@
<data name="&gt;&gt;BtnTakeFoto.ZOrder" xml:space="preserve">
<value>13</value>
</data>
<data name="BtnShowMsg.ImageIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<metadata name="ImageList2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>585, 9</value>
</metadata>
<data name="ImageList2.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAB+
CwAAAk1TRnQBSQFMAgEBAwEAAUgBAAFIAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wQAAf8B8wHvAa4CSAGQ
AfcB8gH/BQAC/wHzAQcBbwFGAWgBjgGTAfIC/wIAAf8B9AzyAfMB/xIAAfQB9wFJAXEBdwOcAZcBSQHs
AfMDAAH/AfQBBwGOAWoFZAGOAfcB8wH/AQAB8wGSBxwFcwHtAfARAAH/AewBbAF8BsABfAFPAesB8wIA
Af8BkwGOAWoBZAdqAY4B8wH/AewBmQyaAXQB6xEAAe8BAgPAAuQEwAHkAU8B7AH/AQABBwEWAWoBaQFo
AUYCRwFqAW8BbgFqAUcBkwH/AW0BmQWaAXMB7AWaAXkB6hAAAf8BZgGcAsABnAFsAUkBnATAAXwBSQHy
AfQBbwFHAUYB7wEZAe0BRgEXAewBvAEHAW8BRwFvAfIB8AFzBZoBcwHsBJoBegFzAQcQAAEHAUkCwAF8
AUkBbQHrAUgBnATAAZcB9wG8AhcBbwEHAf8B8gHtAW4B8AH/AfABbgIXAQcB/wH3AZkEmgGfAZkEmgF6
Ae0B9BAAARIBdwHAAZwBSAHrAQcB8AHsAUgBnAPAAZwBEgHtAxcBTAEHAf8B8wHyAf8B8AHtAxcB7QEA
AfIBcwGgA5oB7QHqAaACmgF6Ae0BBwH/EQABnAHAAUkBbQHxARUBDwH0AewBSAF8AsABnAFJAeoEFwFM
AbwC/wHyAewBTAMXAW4BAAH/Ae8BeAOaAewBEwGfApoBegHsAfQRAAEOAZwBwAFOARMDbAEQAQcB7AFJ
AXwBwAGcAUkBbgRNAe0B8AL/AfMB7QFvA00BTAEAAf8B8wHtAaACmgHsARMBnwGaAaAB6wHwAf8RAAHr
AXcBwAF8AXEBTwLAAXEBFQHvAesBSQHkAXcBbQGSAuMBdAHtAfAB/wHwAbwB/wHyAZIBdQLjAZMCAAH/
AQcBcwKaAewBEwGfAZoBHAHtAf8SAAHwAUkHwAFPARUBFAFIAeQBcQHvAfABdAHjAXMB8AH/AfAB7QFz
AQcB/wHxAUsB4wFSAbwDAAH0AewBmQGaAesBFAKfAewB8xMAAf8BQwGcB8ABdwFsAsABbAHzAf8BkwF1
AW8BkgG8AXQBUgF1AXMBBwEcAUwBdQF0AfMEAAHwAe0BmgEcAe0BmgFzAQcVAAG8AUkBnAfAAeQBwAFs
AfcB/wEAAfABdAFTAnQBUgN1AXQBbwFTAZkBvAH/BAAB/wHvAZkCmgGZAe0B9BUAAf8B7wFJAZwGwAGc
AQIB7AH0AgAB/wG8AVIBdQdTAXkBBwH0Af8FAAHyAZICnwHtAbwB/xYAAf8BBwFmAQIBdwKcAXcBbAFm
Ae8B/wMAAv8B8AF0AXkEdQF6AXQBvAH2Af8GAAH/AfABkgHtAQcB/xkAAf8BvAHrAg4BEgEHAf8IAAH/
AfABHAFzAVABHAHwAfQKAAT/FgABQgFNAT4HAAE+AwABKAMAAUADAAEQAwABAQEAAQEFAAGAFwAD/wEA
AeABBwHAAQMEAAHAAQMBgAEBBAABgAEBAYAFAAGAAQABgBkAAYAHAAGAAQEGAAGAAQEGAAHAAQMGAAHg
AQcGAAHwAQ8CAAGAAQABgAEAAfABDwIAAYABAQGAAQAB+AEPAgABwAEDAYABAQH4AR8CAAHwAQ8B8AEP
AfwBPwIACw==
</value>
</data>
<data name="BtnShowMsg.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BtnShowMsg.Location" type="System.Drawing.Point, System.Drawing">
<value>912, 14</value>
</data>
<data name="BtnShowMsg.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 24</value>
</data>
<data name="BtnShowMsg.TabIndex" type="System.Int32, mscorlib">
<value>105</value>
</data>
<data name="&gt;&gt;BtnShowMsg.Name" xml:space="preserve">
<value>BtnShowMsg</value>
</data>
<data name="&gt;&gt;BtnShowMsg.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;BtnShowMsg.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;BtnShowMsg.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="ImageControl1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="ImageControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>20, 86</value>
</data>
<data name="ImageControl1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="ImageControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>727, 681</value>
</data>
<data name="ImageControl1.TabIndex" type="System.Int32, mscorlib">
<value>35</value>
</data>
<data name="&gt;&gt;ImageControl1.Name" xml:space="preserve">
<value>ImageControl1</value>
</data>
<data name="&gt;&gt;ImageControl1.Type" xml:space="preserve">
<value>ImageControl, CameraMng, Version=2.7.8.1, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;ImageControl1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;ImageControl1.ZOrder" xml:space="preserve">
<value>10</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
@@ -1786,10 +1945,13 @@
<value>25</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
<value>8, 16</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>795, 572</value>
<value>1060, 704</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterScreen</value>
@@ -1917,6 +2079,12 @@
<data name="&gt;&gt;TimerMain.Type" xml:space="preserve">
<value>System.Windows.Forms.Timer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;ImageList2.Name" xml:space="preserve">
<value>ImageList2</value>
</data>
<data name="&gt;&gt;ImageList2.Type" xml:space="preserve">
<value>System.Windows.Forms.ImageList, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>FrmMain</value>
</data>
+88 -47
View File
@@ -23,6 +23,7 @@ Public Class FrmMain
DefVentosa
End Enum
' Inn sequenza in funzione della gravità dell'errore
Private Enum ReadCfgResult
OK
WARNING
@@ -42,6 +43,8 @@ Public Class FrmMain
m_sDataRoot = GetIniValue("Data", "DataRoot", Application.StartupPath & "\DataRoot.ini")
End Sub
Private sMsgErr As String = String.Empty
Private m_Image As System.Drawing.Image
Private m_ZoomFactor As Double
' Permette di aggiornare la pagina principale del programma 'SetFormStatus()'
@@ -85,7 +88,7 @@ Public Class FrmMain
End If
Else
BtnTakeFoto.ImageIndex = 1
TStatus.Text = "--"
TStatus.Text = " --- "
End If
BtnCfg.Visible = bExtended
@@ -93,6 +96,8 @@ Public Class FrmMain
BtnVentosa.Visible = VacuumCheckEnable
btnSearch.Visible = VacuumCheckEnable
ComboBoxCameras.Visible = False
Select Case status
Case en_status.NoImage
GBCalibration.Visible = False
@@ -194,11 +199,11 @@ Public Class FrmMain
Dim sTextMsg As String = String.Format("L'identificativo della camera della configurazione corrente non è disponibile. " &
"Verificare che sia accessa oppure che esista. ")
MessageBox.Show(sTextMsg, "Avvertenza", MessageBoxButtons.OK, MessageBoxIcon.Warning)
ComboBoxCameras.SelectedIndex = 0
ComboBoxCameras.SelectedIndex = -1
End If
' Attivo la
If Not ModalitaNascosta Then
Camera.Connect(ComboBoxCameras.SelectedItem)
If ComboBoxCameras.SelectedIndex > -1 Then Camera.Connect(ComboBoxCameras.SelectedItem)
Else
Camera.Connect(CameraID)
End If
@@ -224,18 +229,22 @@ Public Class FrmMain
End If
Next
If Not IsCfgValid Then
'If Not ModalitaNascosta Then
' Non esiste una configurazione
Dim sTextMsg As String = String.Format("Nessuna configurazione presenta una connessione alla camera valida. " &
"Nel file 'CamaeraMng.cgf' il campo 'CameraID' è vuoto o non assente. ")
MessageBox.Show(sTextMsg, "Avvertenza", MessageBoxButtons.OK, MessageBoxIcon.Warning)
ComboBoxCameraCfg.SelectedIndex = 0
End If
"Nel file 'CamaeraMng.cgf' il campo 'CameraID' è vuoto o assente. ")
MessageBox.Show(sTextMsg, "Avvertenza", MessageBoxButtons.OK, MessageBoxIcon.Warning)
ComboBoxCameraCfg.SelectedIndex = 0
'End If
End If
Else
'If Not ModalitaNascosta Then
' Non esiste una configurazione
Dim sTextMsg As String = String.Format("Nella cartella '{0}' non sono state trovate configurazioni valide. " &
"(CameraMng, CameraMng1, CameraMng2..)", sDataRoot)
MessageBox.Show(sTextMsg, "Avvertenza", MessageBoxButtons.OK, MessageBoxIcon.Warning)
Return False
MessageBox.Show(sTextMsg, "Avvertenza", MessageBoxButtons.OK, MessageBoxIcon.Warning)
Return False
'End If
End If
Return True
End Function
@@ -264,7 +273,6 @@ Public Class FrmMain
ProgressBar.Maximum = 100
ProgressBar.Value = 0
SetFormStatus()
' carico elenco camere attive è creo la connessione
LoadCamerasList()
@@ -274,11 +282,6 @@ Public Class FrmMain
SpessLastra = ImageMng.ZCali
FrmStart.Close()
'If Camera.Connected And RichiestaFoto Then
' Camera.TakeFoto()
' RichiestaFoto = False
'End If
If VacuumCheckEnable Then
TimerMain.Enabled = True
End If
@@ -399,36 +402,37 @@ Public Class FrmMain
Next
End Sub
' Costruisco il percorso del file letto da configurazione
Private Sub IsCorrectFilePathReadFromCfg(DirToReadCfg As String, ByRef sStringPath As String, ByRef sMsg As String)
Dim bOk As ReadCfgResult = ReadCfgResult.OK
' Costruisco il percorso del file letto da configurazione: restituisco l'esito dell'operazione (Nel riferimento restituisco la sintesi dell'operazione di lettura)
Private Function IsCorrectFilePathReadFromCfg(DirToReadCfg As String, ByRef sStringPath As String, ByRef sMsg As String, ByRef CfgResult As ReadCfgResult) As ReadCfgResult
Dim CurrCfgResult As ReadCfgResult = ReadCfgResult.OK
sStringPath = sStringPath.Trim
If Not sStringPath.StartsWith("\") And Not sStringPath.StartsWith(".\") Then
' Warning! il percorso potrebbe non essere relativo
If sStringPath.Contains("CameraMng") Then
' Errore! il percorso contiene un riferimento alla cartella
bOk = ReadCfgResult.ERR0
CurrCfgResult = ReadCfgResult.ERR0
Else
bOk = ReadCfgResult.WARNING
CurrCfgResult = ReadCfgResult.WARNING
sStringPath = DirToReadCfg & "\" & sStringPath
End If
Else
' OK! il percorso è potenzialmente correto
If sStringPath.Contains("\CameraMng") Then
' Errore! il percorso contiene un riferimento alla cartella
bOk = ReadCfgResult.ERR1
CurrCfgResult = ReadCfgResult.ERR1
Else
' rimuovo il primo carattere se è il punto (".")
If sStringPath.StartsWith(".") Then sStringPath.Remove(0, 1)
' Ok! il percorso è accettato
bOk = ReadCfgResult.OK
CurrCfgResult = ReadCfgResult.OK
sStringPath = DirToReadCfg & sStringPath
End If
End If
CreateMsgTextErr(bOk, sStringPath, sMsg)
End Sub
CreateMsgTextErr(CurrCfgResult, sStringPath, sMsg)
' Valuto se il risultato restituito deve modificare il
CfgResult = SetIcoResultCfg(CfgResult, CurrCfgResult)
Return CurrCfgResult
End Function
Private Sub CreateMsgTextErr(ReadCfg As ReadCfgResult, sStringPath As String, ByRef sMsg As String)
Select Case ReadCfg
@@ -441,6 +445,13 @@ Public Class FrmMain
End Select
End Sub
Private Function SetIcoResultCfg(ResultCfg As ReadCfgResult, CurrResultCfg As ReadCfgResult) As ReadCfgResult
If CurrResultCfg > ResultCfg Then
ResultCfg = CurrResultCfg
End If
Return ResultCfg
End Function
' procedo alla lettura del file *.cfg
Private Sub LeggiFileConfigurazione()
@@ -462,7 +473,8 @@ Public Class FrmMain
DirToReadCfg = DirToReadCfg & MainModule.IndexProc
End If
Dim sMsgErr As String = String.Empty
Dim CfgResult As ReadCfgResult = ReadCfgResult.OK
sMsgErr = String.Empty
' Console.WriteLine("LETTURA CONFIGURAZIONE: " & MainModule.IndexProc & " -- " & DirToReadCfg)
@@ -493,6 +505,7 @@ Public Class FrmMain
VacDirModels = ""
bExtended = False
bBtnLoad = False
CameraID = ""
reader = New StreamReader(NomeFileCfg)
nfi.NumberDecimalSeparator = "."
@@ -503,15 +516,15 @@ Public Class FrmMain
TmpString = reader.ReadLine()
If TmpString.StartsWith("FileCali=") Then
FileLensCalib = Mid(TmpString, 10)
IsCorrectFilePathReadFromCfg(DirToReadCfg, FileLensCalib, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, FileLensCalib, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("LensCalibType=") Then
LensCalibType = Convert.ToInt16(Mid(TmpString, 15))
ElseIf TmpString.StartsWith("FileCaliProsp=") Then
FileCalibProsp = Mid(TmpString, 15)
IsCorrectFilePathReadFromCfg(DirToReadCfg, FileCalibProsp, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, FileCalibProsp, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("FileCaliRes=") Then
FileCalibRes = Mid(TmpString, 13)
IsCorrectFilePathReadFromCfg(DirToReadCfg, FileCalibRes, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, FileCalibRes, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("Extended=") Then
bExtended = CInt(TmpString.Substring(9)) > 0 'lascio vedere tutti i bottoni
BtnCfg.Visible = bExtended
@@ -521,10 +534,10 @@ Public Class FrmMain
BtnLoad.Visible = bExtended
ElseIf TmpString.StartsWith("SaveDir=") Then
SaveDir = Mid(TmpString, 9)
IsCorrectFilePathReadFromCfg(DirToReadCfg, SaveDir, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, SaveDir, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("TmpDir=") Then
DirTmp = Mid(TmpString, 8)
IsCorrectFilePathReadFromCfg(DirToReadCfg, DirTmp, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, DirTmp, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("MaxPxWidth=") Then
TmpInt = Convert.ToInt16(Mid(TmpString, 12))
If TmpInt > 0 Then ImageMng.MaxPxWidthOutImage = TmpInt
@@ -532,7 +545,7 @@ Public Class FrmMain
_visione.ReduceImage = CInt(TmpString.Substring(11)) 'pyr_down nel riconoscimento bordi
ElseIf TmpString.StartsWith("LogDir=") Then
SaveLogDir = Mid(TmpString, 8)
IsCorrectFilePathReadFromCfg(DirToReadCfg, SaveLogDir, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, SaveLogDir, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("CameraID=") Then
CameraID = Mid(TmpString, 10)
CfgForm.LbCfgCameraID.Text = CameraID
@@ -574,16 +587,16 @@ Public Class FrmMain
VacuumCheckEnable = TmpInt > 0
ElseIf TmpString.StartsWith("VacFileStart=") Then
VacFileStart = Mid(TmpString, Len("StartVacFile=") + 1)
IsCorrectFilePathReadFromCfg(DirToReadCfg, VacFileStart, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, VacFileStart, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("VacFilePos=") Then
VacFilePos = Mid(TmpString, Len("VacFilePos=") + 1)
IsCorrectFilePathReadFromCfg(DirToReadCfg, VacFilePos, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, VacFilePos, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("VacFileEnd=") Then
VacFileEnd = Mid(TmpString, Len("VacFileEnd=") + 1)
IsCorrectFilePathReadFromCfg(DirToReadCfg, VacFileEnd, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, VacFileEnd, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("VacDirModels=") Then
VacDirModels = Mid(TmpString, Len("VacDirModels=") + 1)
IsCorrectFilePathReadFromCfg(DirToReadCfg, VacDirModels, sMsgErr)
IsCorrectFilePathReadFromCfg(DirToReadCfg, VacDirModels, sMsgErr, CfgResult)
ElseIf TmpString.StartsWith("VacMinScore=") Then
VacMinScore = Convert.ToDouble(Mid(TmpString, Len("VacMinScore=") + 1), nfi)
ElseIf TmpString.StartsWith("VacTolmm=") Then
@@ -593,10 +606,29 @@ Public Class FrmMain
reader.Close()
reader.Dispose()
If Not String.IsNullOrEmpty(sMsgErr) And Not ModalitaNascosta Then
MessageBox.Show(sMsgErr, NomeFileCfg, MessageBoxButtons.OK, MessageBoxIcon.Hand)
' Gestione dell'icone del bottone per esito lettura configurazione
Dim nIndexIcoCfg As Integer = 0
Select Case CfgResult
Case ReadCfgResult.OK
nIndexIcoCfg = 0
Case ReadCfgResult.WARNING
nIndexIcoCfg = 2
Case ReadCfgResult.ERR0, ReadCfgResult.ERR1
nIndexIcoCfg = 1
End Select
If Not String.IsNullOrEmpty(sMsgErr) Then
If Not ModalitaNascosta Then
BtnShowMsg.ImageIndex = nIndexIcoCfg
BtnShowMsg.Visible = True
Else
Console.WriteLine("ERRORE LETTURA CONFIGURAZIONE: " & MainModule.IndexProc & " -- " & sMsgErr)
End If
Else
Console.WriteLine("ERRORE LETTURA CONFIGURAZIONE: " & MainModule.IndexProc & " -- " & sMsgErr)
If Not ModalitaNascosta Then
BtnShowMsg.ImageIndex = nIndexIcoCfg
BtnShowMsg.Visible = False
End If
End If
Catch ex As Exception
@@ -1148,14 +1180,18 @@ Public Class FrmMain
#If WinXp Then
strWinXP = " (WinXP)"
#End If
Dim ver As String = My.Application.Info.Version.Major.ToString() & "." &
My.Application.Info.Version.Minor.ToString() &
(ChrW(97 - 1 + My.Application.Info.Version.Build)).ToString() &
My.Application.Info.Version.Revision.ToString()
Me.Text = "EgalTech Camera Manager" & strWinXP & " v" & System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString()
Me.Text = "EgalTech Camera Manager" & strWinXP & " v" & ver
BtnLoad.Visible = bExtended
ImageControl1.PanMode = True
' Carico la configurazione corrente
Inizializza()
TStatus.Text = "Initialized"
' TStatus.Text = "Initialized"
If ModalitaNascosta Then Me.Visible = False
' Avvio su un nuvo processo la comunicazione con il programma OmagCUT
@@ -1232,7 +1268,10 @@ Public Class FrmMain
CfgForm.LbDeviceStatus.Text = If(Camera.Connected, "Connected", "Disconnected")
' assegnato solo dall'evento connessione, perciò lo ribadisco
CfgForm.LbCameraID.Text = Camera.CameraID
CfgForm.ShowDialog()
' CfgForm.ShowDialog()
' Nuova gestione della pagina delle configurazioni
SetConfigForm.ShowDialog()
End Sub
Private Sub BtnEnd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnEnd.Click
@@ -1825,9 +1864,9 @@ Public Class FrmMain
Private Sub ComboBoxCameras_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBoxCameras.SelectedIndexChanged
If Not ModalitaNascosta Then
LeggiFileConfigurazione()
SetFormStatus()
' LeggiFileConfigurazione()
Camera.Connect(ComboBoxCameras.SelectedItem)
SetFormStatus()
End If
End Sub
@@ -1847,6 +1886,7 @@ Public Class FrmMain
sTextMsg &= ": " & CameraID & "' non è valido."
End If
MessageBox.Show(sTextMsg, "Avvertenza", MessageBoxButtons.OK, MessageBoxIcon.Error)
ComboBoxCameras.SelectedIndex = -1
End If
End If
ImageMng.m_fileCaliLensRead = False
@@ -1860,8 +1900,9 @@ Public Class FrmMain
LoadCamerasList()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
SetConfigForm.ShowDialog()
Private Sub BtnShowMsg_Click(sender As Object, e As EventArgs) Handles BtnShowMsg.Click
Dim sTitle As String = "Esito lettura configurazione " & ComboBoxCameraCfg.SelectedItem
MessageBox.Show(sMsgErr, sTitle, MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End Sub
#End Region ' Events
+2 -2
View File
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.7.7.1")>
<Assembly: AssemblyFileVersion("2.7.7.1")>
<Assembly: AssemblyVersion("2.7.8.1")>
<Assembly: AssemblyFileVersion("2.7.8.1")>
+8 -7
View File
@@ -57,7 +57,7 @@ Partial Class SetConfigForm
Me.DataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize
Me.DataGridView1.Columns.AddRange(New System.Windows.Forms.DataGridViewColumn() {Me.Config, Me.ImageConfig, Me.ComboCamera, Me.ImageCamera, Me.SaveConfig, Me.ApplyConfig})
Me.DataGridView1.Location = New System.Drawing.Point(47, 31)
Me.DataGridView1.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.DataGridView1.Margin = New System.Windows.Forms.Padding(4)
Me.DataGridView1.Name = "DataGridView1"
Me.DataGridView1.RowHeadersWidth = 51
Me.DataGridView1.Size = New System.Drawing.Size(788, 196)
@@ -68,7 +68,7 @@ Partial Class SetConfigForm
'
Me.PictureBox1.Image = Global.My.Resources.Resources.accept
Me.PictureBox1.Location = New System.Drawing.Point(39, 59)
Me.PictureBox1.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.PictureBox1.Margin = New System.Windows.Forms.Padding(4)
Me.PictureBox1.Name = "PictureBox1"
Me.PictureBox1.Size = New System.Drawing.Size(39, 33)
Me.PictureBox1.TabIndex = 1
@@ -78,7 +78,7 @@ Partial Class SetConfigForm
'
Me.PictureBox2.Image = Global.My.Resources.Resources.warning
Me.PictureBox2.Location = New System.Drawing.Point(39, 102)
Me.PictureBox2.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.PictureBox2.Margin = New System.Windows.Forms.Padding(4)
Me.PictureBox2.Name = "PictureBox2"
Me.PictureBox2.Size = New System.Drawing.Size(39, 33)
Me.PictureBox2.TabIndex = 2
@@ -88,7 +88,7 @@ Partial Class SetConfigForm
'
Me.PictureBox3.Image = Global.My.Resources.Resources.cross
Me.PictureBox3.Location = New System.Drawing.Point(39, 153)
Me.PictureBox3.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.PictureBox3.Margin = New System.Windows.Forms.Padding(4)
Me.PictureBox3.Name = "PictureBox3"
Me.PictureBox3.Size = New System.Drawing.Size(39, 32)
Me.PictureBox3.TabIndex = 3
@@ -120,9 +120,9 @@ Partial Class SetConfigForm
Me.GroupBox1.Controls.Add(Me.PictureBox2)
Me.GroupBox1.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.GroupBox1.Location = New System.Drawing.Point(47, 245)
Me.GroupBox1.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.GroupBox1.Margin = New System.Windows.Forms.Padding(4)
Me.GroupBox1.Name = "GroupBox1"
Me.GroupBox1.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.GroupBox1.Padding = New System.Windows.Forms.Padding(4)
Me.GroupBox1.Size = New System.Drawing.Size(788, 209)
Me.GroupBox1.TabIndex = 5
Me.GroupBox1.TabStop = False
@@ -216,6 +216,7 @@ Partial Class SetConfigForm
'
Me.ImageConfig.FillWeight = 53.93283!
Me.ImageConfig.HeaderText = "Result Cfg"
Me.ImageConfig.Image = Global.My.Resources.Resources.warning
Me.ImageConfig.MinimumWidth = 6
Me.ImageConfig.Name = "ImageConfig"
'
@@ -255,7 +256,7 @@ Partial Class SetConfigForm
Me.ClientSize = New System.Drawing.Size(884, 469)
Me.Controls.Add(Me.GroupBox1)
Me.Controls.Add(Me.DataGridView1)
Me.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.Margin = New System.Windows.Forms.Padding(4)
Me.Name = "SetConfigForm"
Me.Text = "SetConfigForm"
CType(Me.DataGridView1, System.ComponentModel.ISupportInitialize).EndInit()
+453 -234
View File
@@ -1,17 +1,48 @@
Imports System.Globalization
Imports System.IO
Imports Emgu.CV.Flann
Public Class SetConfigForm
Private CameraListCfg As New List(Of String)
Private myImage As Image
Private Const IdCamEmpty As String = " --- "
Private CurrIndexRow As Integer = 0
Private CurrAppliedConfig As String = 0
Private bIsSavedAll As Boolean = True
Private IDConfig As String = String.Empty
Private IDCamera As String = String.Empty
Private IndexCurrentRow As Integer = 0
Private m_myImage As Image
Private m_UpdatingDataSource As Boolean = False
' Indice della riga correntemente selezionata
Private m_nCurrIndexRow As Integer = 0
' Nome della configurazione corrente del programma
Private m_sCurrAppliedIdCfg As String = 0
Private Enum ICO
ERR_ = -1
WARNING_ = 0
OK_ = 2
End Enum
Private Enum COLUMN
ID_CFG = 0
CFG_ICO = 1
ID_CAM = 2
CAM_ICO = 3
SAVE_CMD = 4
APPLY_CMD = 5
End Enum
' Elementi che popolano la lista delle camere disponibili
Private Structure EbnableCamItem
' Indica l'Id della camera
Public IdCam As String
' Indica se l'Id è già stato assegnato ad una configurazione
Public IsEnable As Boolean
' Indice se l'Id della camera è connessa
Public IsConnected As Boolean
' Indica l'id della configurazione in cui è in uso
Public IdCfg As List(Of String)
End Structure
' Lista degli Id REALMENTE disponibili
Private EnableCamList As New List(Of EbnableCamItem)
Sub New()
@@ -21,192 +52,177 @@ Public Class SetConfigForm
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
End Sub
' OK: popolo la datagrid all'avvio del programma
Private Sub LoadWindows() Handles Me.Load
PopolateDataGrid()
EnableCamList.Clear()
' Preparo lisra EnableCamList
LoadListOfEnableCamItem()
' Popola la DataGridView e al caricamento seleziono la riga del'IdCfg impostato
PopolateDataGrid(True)
' recupero il nome della configurazione impostata
m_sCurrAppliedIdCfg = If(FrmMain.ComboBoxCameraCfg.SelectedItem.Equals("Default"), "0", FrmMain.ComboBoxCameraCfg.SelectedItem)
End Sub
CurrAppliedConfig = If(FrmMain.ComboBoxCameraCfg.SelectedItem.Equals("Default"), "0", FrmMain.ComboBoxCameraCfg.SelectedItem)
#Region "METODI GESTIONE COMBOBOX"
' ------- INIZIO ------- gestione EnableCamList ----------------------------
' Deseleziona tutte le righe attualmente selezionate (opzionale ma consigliato)
DataGridView1.ClearSelection()
' Verifica che la griglia non sia vuota
If DataGridView1.Rows.Count > 0 Then
' Imposta la cella corrente alla prima cella della prima riga
DataGridView1.CurrentCell = DataGridView1.Rows(CurrAppliedConfig).Cells(0)
DataGridView1.Rows(CurrAppliedConfig).Selected = True
' OK: Costruisco la lista EnableCamList sulla base delle configurazioni salvate
Private Sub LoadListOfEnableCamItem()
Dim DirToReadCfg As String = FrmMain.sDataRoot
' Assegnno di defualt una camera VUOTA
Dim NOCam As EbnableCamItem
NOCam.IdCam = IdCamEmpty
NOCam.IsEnable = True
NOCam.IsConnected = False
NOCam.IdCfg = New List(Of String)
EnableCamList.Add(NOCam)
' Inizializzo la lista con le camere realmente disponibili (IsEnable=true)
For Each CameraItem As String In FrmMain.ComboBoxCameras.Items
Dim ItemCam As EbnableCamItem
ItemCam.IdCam = CameraItem
ItemCam.IsEnable = True
ItemCam.IsConnected = True
ItemCam.IdCfg = New List(Of String)
EnableCamList.Add(ItemCam)
Next
' Per ogni camera disponibile assegno l'ID della configuraione associata
For Each CfgItem As String In FrmMain.ComboBoxCameraCfg.Items
CfgItem = If(CfgItem = "Default", String.Empty, CfgItem)
Dim NomeFileCfg As String = DirToReadCfg & CfgItem & "\CameraMng.cfg"
' Recupero l'Id della camera configurata nel file Cfg
Dim IDCameraFromCgf As String = ReadIdCameraFromCfg(NomeFileCfg)
' Se esiste l'Id
If Not String.IsNullOrEmpty(IDCameraFromCgf) Then
' Verifico se l'Id della camera è connessa
Dim IndID As Integer = EnableCamList.FindIndex(Function(x) x.IdCam = IDCameraFromCgf)
If IndID < 0 Then
' l'Id della camera non è nell'elenco delle camere connesse: lo aggiungo
Dim ItemCam As EbnableCamItem
ItemCam.IdCam = IDCameraFromCgf
ItemCam.IsEnable = False
ItemCam.IsConnected = False
ItemCam.IdCfg = New List(Of String)({CfgItem})
EnableCamList.Add(ItemCam)
Else
' Recupero l'oggetto associato alla camera corrente
Dim CurrCam As EbnableCamItem = EnableCamList(IndID)
' l'Id della camera è connessa: aggiorno l'Id dalla configurazione
CurrCam.IsEnable = False
CurrCam.IdCfg.Add(CfgItem)
' Riassegno alla lista (solo la lista IdCfg viene aggiornata veramente...)
EnableCamList(IndID) = CurrCam
End If
Else
' l'Id della camera non esiste (recupero la prima camera), ma una configurazione si
Dim IndID As Integer = 0
Dim CurrCam As EbnableCamItem = EnableCamList(IndID)
CurrCam.IdCfg.Add(CfgItem)
End If
Next
End Sub
' OK: Data la config e il nuvo IDCam mi occupo di aggiornare la lista EnableCamList (NON DataGridView)
Private Sub UpdateListOfEnableCamItem(CfgItem As String, NewIdCam As String)
' Recupero la camera assegnata alla configurazione
Dim IndIDCam As Integer = GetCurrCamIndFromCfg(CfgItem)
If IndIDCam > EnableCamList.Count - 1 Then Return
Dim CurrCam As EbnableCamItem = EnableCamList(IndIDCam)
If IsNothing(CurrCam) Then Return
' Verifico che sia presente in elenco
If CurrCam.IdCfg.FindIndex((Function(x) x = CfgItem)) < 0 Then Return
' Rimuovo questo elemento dalla lista delle configurazioni (per rifereminto si aggiorna anche la lista)
CurrCam.IdCfg.Remove(CfgItem)
' Se la camera non ha nessun assegnamento allora aggiorno lo stato
If CurrCam.IdCfg.Count < 1 Then
CurrCam.IsEnable = True
EnableCamList(IndIDCam) = CurrCam
End If
IndIDCam = EnableCamList.FindIndex((Function(x) x.IdCam = NewIdCam))
If IndIDCam > -1 Then
CurrCam = EnableCamList(IndIDCam)
' verifico che non sia già inserito in elenco (se la grafica non fosse allineata...)
If CurrCam.IdCfg.FindIndex((Function(x) x = CfgItem)) < 0 Then
CurrCam.IdCfg.Add(CfgItem)
' Aggiorno anche lo stato
If CurrCam.IdCam <> IdCamEmpty And CurrCam.IsEnable Then
CurrCam.IsEnable = False
EnableCamList(IndIDCam) = CurrCam
End If
End If
End If
End Sub
Private Sub PopolateDataGrid()
' ------- FINE ------- gestione EnableCamList ----------------------------
' OK: Carico gli elementi della tabella (n_CurrIndex: indice selezionato); bFirstRun: set la config applicata
Private Sub PopolateDataGrid(Optional bFirstRun As Boolean = False)
' Ripulisco tutti i dati della datagrid
DataGridView1.Rows.Clear()
CameraListCfg.Clear()
ComboCamera.Items.Clear()
Dim DirToReadCfg As String = FrmMain.sDataRoot
' Popolo combobox con idcamera
For Each CameraItem As String In FrmMain.ComboBoxCameras.Items
ComboCamera.Items.Add(CameraItem)
Next
' Popolo text con configurazione
' Per ogni configurazione genero una riga della datagrid
For Each CfgItem As String In FrmMain.ComboBoxCameraCfg.Items
Dim NomeFileCfg As String = DirToReadCfg & If(CfgItem = "Default", String.Empty, CfgItem) & "\CameraMng.cfg"
CfgItem = If(CfgItem = "Default", String.Empty, CfgItem)
' Creo una nuova riga della tabella
Dim riga As New DataGridViewRow()
' Crea le celle corrispondenti alle colonne
riga.CreateCells(DataGridView1)
riga.Cells(0).Value = CfgItem
Dim id As String = ReadIdCameraFromCfg(NomeFileCfg)
If Not String.IsNullOrEmpty(id) Then
' Icone CFG
If CameraListCfg.IndexOf(id) < 0 Then
CameraListCfg.Add(id)
riga.Cells(1).Value = GetCurrIco(2)
Else
riga.Cells(1).Value = GetCurrIco(0)
End If
' Icone CAMERA
If ComboCamera.Items.IndexOf(id) > -1 Then
riga.Cells(3).Value = GetCurrIco(2)
riga.Cells(2).Value = id
Else
riga.Cells(3).Value = GetCurrIco(0)
End If
Else
riga.Cells(1).Value = GetCurrIco(-1)
riga.Cells(3).Value = GetCurrIco(-1)
End If
riga.Cells(4).Value = "Save"
riga.Cells(5).Value = "Apply"
' Popolo text con configurazione: assegno Indice della configurazione
riga.Cells(COLUMN.ID_CFG).Value = CfgItem
' Aggiorno le icone (leggendo la lista EnableCamList)
RefreshIcoAndComboBox(riga)
riga.Cells(COLUMN.SAVE_CMD).Value = "Save"
riga.Cells(COLUMN.APPLY_CMD).Value = "Apply"
' Aggiungi la riga completa al DataGridView
DataGridView1.Rows.Add(riga)
If CfgItem = FrmMain.ComboBoxCameraCfg.SelectedItem Then
DataGridView1.ClearSelection()
' Mantengo la selezione sulla riga corrente
DataGridView1.Rows(DataGridView1.Rows.Count - 1).Selected = True
' Indico in grassetto il comando Apply
' Mi assicuro che la cella sia del tipo corretto
If TypeOf riga.Cells(5) Is DataGridViewButtonCell Then
' Ottiengo la cella specifica
Dim cellaBottone As DataGridViewButtonCell = CType(riga.Cells(5), DataGridViewButtonCell)
' Recupero il font attuale della cella per non perdere le altre proprietà (come la dimensione)
Dim fontAttuale As Font = cellaBottone.Style.Font
' Se non è stato impostato un font, usane uno di default per sicurezza
If fontAttuale Is Nothing Then
fontAttuale = Me.DataGridView1.Font ' Usa il font del DataGridView come base
End If
' Assegno un NUOVO oggetto Font con lo stile Bold
cellaBottone.Style.Font = New Font(fontAttuale, FontStyle.Bold)
End If
' Imposto la configurazione corrente come attiva
If bFirstRun And CfgItem = FrmMain.ComboBoxCameraCfg.SelectedItem Then
' --> DataGridView1.ClearSelection()
' Recupero l'indice della riga corrente che deve rimanere selezionata
Dim LastIndexRow As Integer = DataGridView1.Rows.Count - 1
' --> DataGridView1.Rows(DataGridView1.Rows.Count - 1).Selected = True
' Imposto la selezione sulla riga corrente
SelectCurrIndexRow(LastIndexRow)
' Indico in grassetto il comando Apply della configurazione corrente
SetStatusApplyFont(LastIndexRow, True)
End If
Next
' Seleziono la riga associata alla configurazione impostata
End Sub
' OK: Assegna le nuove combobox per ogni configurazione
Private Sub UpdateDataGridView()
' Aggiorno le lista degli ID camera per ogni riga della tabella
For IndexRow As Integer = 0 To DataGridView1.Rows.Count - 1
' recupero la riga corrente della tabella
Dim riga As DataGridViewRow = DataGridView1.Rows(IndexRow)
' Aggiorno la lista della combobox e le icone
RefreshIcoAndComboBox(riga)
Next
End Sub
Private Sub RefreshDataGrid(IndexRawDataGrid As Integer)
DataGridView1.ClearSelection()
Dim CfgItem As String = DataGridView1.Rows(IndexRawDataGrid).Cells("Config").Value.ToString()
' Aggiorno lo stato delle icone della lista
Dim DirToReadCfg As String = FrmMain.sDataRoot
Dim NomeFileCfg As String = DirToReadCfg & If(CfgItem = "Default", String.Empty, CfgItem) & "\CameraMng.cfg"
' Creo la nuova riga che sostituirà quella precedente
Dim riga As DataGridViewRow = DataGridView1.Rows(IndexRawDataGrid)
' Crea le celle corrispondenti alle colonne
riga.Cells(0).Value = CfgItem
Dim id As String = ReadIdCameraFromCfg(NomeFileCfg)
If Not String.IsNullOrEmpty(id) Then
' Icone CFG
If CameraListCfg.IndexOf(id) < 0 Then
riga.Cells(1).Value = GetCurrIco(2)
Else
riga.Cells(1).Value = GetCurrIco(0)
' OK: Recupero l'INDICE (della lista EnableCmaList) della camera associata a CfgItem
Private Function GetCurrCamIndFromCfg(CfgItem As String) As Integer
Dim IndIDCam As Integer = 0
For Ind As Integer = 0 To EnableCamList.Count - 1
If EnableCamList(Ind).IdCfg.FindIndex((Function(y) y = CfgItem)) > -1 Then
IndIDCam = Ind
Exit For
End If
' Icone CAMERA
If ComboCamera.Items.IndexOf(id) > -1 Then
riga.Cells(3).Value = GetCurrIco(2)
riga.Cells(2).Value = id
Else
riga.Cells(3).Value = GetCurrIco(0)
End If
Else
riga.Cells(1).Value = GetCurrIco(-1)
riga.Cells(3).Value = GetCurrIco(-1)
End If
riga.Cells(4).Value = "Save"
riga.Cells(5).Value = "Apply"
' Sostituisco la riga corrente: rimuovo la precedente riga e ne inserisco una nuova
DataGridView1.Rows.RemoveAt(IndexRawDataGrid)
DataGridView1.Rows.Insert(IndexRawDataGrid, riga)
' Mantengo la selezione sulla riga corrente
DataGridView1.CurrentCell = riga.Cells(0)
DataGridView1.Rows(IndexRawDataGrid).Selected = True
End Sub
Private Sub RefreshSelectedItemCfg(IndexRawDataGrid As Integer)
' 1. RIPRISTINA IL FONT DELLA RIGA PRECEDENTE
' Controlla se c'era una riga precedente valida e se non è la stessa che stiamo per modificare
If CurrAppliedConfig > -1 AndAlso CurrAppliedConfig <> IndexRawDataGrid Then
' Assicurati che l'indice sia ancora nel range del DataGridView
If CurrAppliedConfig < DataGridView1.Rows.Count Then
Dim lastRow As DataGridViewRow = DataGridView1.Rows(CurrAppliedConfig)
Dim lastCellButton As DataGridViewButtonCell = CType(lastRow.Cells(5), DataGridViewButtonCell)
Dim lastFont As Font = lastCellButton.Style.Font
' Crea un nuovo font basato su quello esistente, ma con stile Regular
If lastFont IsNot Nothing Then
lastCellButton.Style.Font = New Font(lastFont, FontStyle.Regular)
End If
End If
End If
DataGridView1.ClearSelection()
' 2. AGGIORNA I DATI DELLA RIGA ESISTENTE
Dim CfgItem As String = DataGridView1.Rows(IndexRawDataGrid).Cells("Config").Value.ToString()
' Aggiorno lo stato delle icone della lista
Dim DirToReadCfg As String = FrmMain.sDataRoot
Dim NomeFileCfg As String = DirToReadCfg & If(CfgItem = "Default", String.Empty, CfgItem) & "\CameraMng.cfg"
' Creo la nuova riga che sostituirà quella precedente
Dim riga As DataGridViewRow = DataGridView1.Rows(IndexRawDataGrid)
' Crea le celle corrispondenti alle colonne
riga.Cells(0).Value = CfgItem
Dim id As String = ReadIdCameraFromCfg(NomeFileCfg)
If Not String.IsNullOrEmpty(id) Then
' Icone CFG
If CameraListCfg.IndexOf(id) < 0 Then
riga.Cells(1).Value = GetCurrIco(2)
Else
riga.Cells(1).Value = GetCurrIco(0)
End If
' Icone CAMERA
If ComboCamera.Items.IndexOf(id) > -1 Then
riga.Cells(3).Value = GetCurrIco(2)
riga.Cells(2).Value = id
Else
riga.Cells(3).Value = GetCurrIco(0)
End If
Else
riga.Cells(1).Value = GetCurrIco(-1)
riga.Cells(3).Value = GetCurrIco(-1)
End If
riga.Cells(4).Value = "Save"
riga.Cells(5).Value = "Apply"
' 3. APPLICA IL GRASSETTO ALLA RIGA CORRENTE
Dim currentCellButton As DataGridViewButtonCell = CType(riga.Cells(5), DataGridViewButtonCell)
Dim currentFont As Font = currentCellButton.Style.Font
If currentFont Is Nothing Then
currentFont = Me.DataGridView1.Font ' Usa il font del DataGridView come base
End If
' Assegna un NUOVO oggetto Font con lo stile Bold
currentCellButton.Style.Font = New Font(currentFont, FontStyle.Bold)
' 4. AGGIORNA L'INDICE DA RICORDARE
CurrAppliedConfig = IndexRawDataGrid
' Mantengo la selezione sulla riga corrente
DataGridView1.CurrentCell = riga.Cells(0)
DataGridView1.Rows(IndexRawDataGrid).Selected = True
End Sub
Next
Return IndIDCam
End Function
' OK: Lettura dell'IDCam dal file di configurazione
Private Function ReadIdCameraFromCfg(NomeFileCfg As String) As String
Dim IDCamera As String = String.Empty
Dim reader As New StreamReader(NomeFileCfg)
@@ -229,18 +245,20 @@ Public Class SetConfigForm
Return IDCamera
End Function
' OK: Restituisce l'immagine associata all'Enum indicato
Private Function GetCurrIco(Index As Integer) As Image
Select Case Index
Case -1
myImage = My.Resources.cross
Case 0
myImage = My.Resources.warning
Case ICO.ERR_
m_myImage = My.Resources.cross
Case ICO.WARNING_
m_myImage = My.Resources.warning
Case Else
myImage = My.Resources.accept
m_myImage = My.Resources.accept
End Select
Return myImage
Return m_myImage
End Function
' OK: Salva l'IDCam nella configurazione corrente
Public Sub SaveIDCamera(IDConfing As String, IDCamera As String)
Dim NomeFileCfg, TmpString As String
Dim NomeFileTempCfg, DirToReadCfg As String
@@ -249,6 +267,7 @@ Public Class SetConfigForm
Dim writer As StreamWriter
Try
If IDConfing.Contains("Default") Then IDConfing = ""
DirToReadCfg = FrmMain.sDataRoot & IDConfing
NomeFileCfg = DirToReadCfg & "\CameraMng.cfg"
NomeFileTempCfg = DirToReadCfg & "\CameraMngTmp.cfg"
@@ -266,7 +285,7 @@ Public Class SetConfigForm
writer.WriteLine(TmpString, CultureInfo.InvariantCulture)
End If
End While
writer.WriteLine("CameraID=" & IDCamera, CultureInfo.InvariantCulture)
writer.WriteLine("CameraID=" & If(IDCamera = IdCamEmpty, "", IDCamera), CultureInfo.InvariantCulture)
FileClose(nf)
writer.Close()
File.Copy(NomeFileCfg, SaveFileCfg)
@@ -282,105 +301,305 @@ Public Class SetConfigForm
End Try
End Sub
' OK: Data la riga della DataGrid viene assegnato il font: bSet=True -> BOLD, bSet=False -> REGULAR
Private Sub SetStatusApplyFont(IndexRowDataGrid As Integer, bSet As Boolean)
If IndexRowDataGrid > -1 Then
Dim ApplyCellButton As DataGridViewButtonCell = CType(DataGridView1.Rows(IndexRowDataGrid).Cells(COLUMN.APPLY_CMD), DataGridViewButtonCell)
Dim CurrFont As Font = ApplyCellButton.Style.Font
' Crea un nuovo font basato su quello esistente, ma con stile Regular
If IsNothing(CurrFont) Then CurrFont = Me.DataGridView1.Font
ApplyCellButton.Style.Font = New Font(CurrFont, If(bSet, FontStyle.Bold, FontStyle.Regular))
End If
End Sub
' OK: Aggiorno la DataGrid per visualizzare la configurazione attiva
Private Function ApplyCurrCfg(CurrIdCfg As String, Optional bForce As Boolean = False) As Boolean
' Se il nome della configurazione corrente è già attivo allora esco
If (m_sCurrAppliedIdCfg = CurrIdCfg And Not bForce) And String.IsNullOrEmpty(CurrIdCfg) Then Return False
' Recupero l'indice della DataGrid associato alla configurazione applicata: rimuovo il font BOLD
Dim IndAppliedIdCfg As Integer = -1
For Index As Integer = 0 To DataGridView1.Rows.Count - 1
If DataGridView1.Rows(Index).Cells(COLUMN.ID_CFG).Value = m_sCurrAppliedIdCfg Then
IndAppliedIdCfg = Index
Exit For
End If
Next
' Ripristino il font Regular
SetStatusApplyFont(IndAppliedIdCfg, False)
' Recupero l'indice della DataGrid associato alla configurazione
Dim IndCurrIdCfg As Integer = -1
For Index As Integer = 0 To DataGridView1.Rows.Count - 1
If DataGridView1.Rows(Index).Cells(COLUMN.ID_CFG).Value = CurrIdCfg Then
IndCurrIdCfg = Index
Exit For
End If
Next
' Applico il font Bold
SetStatusApplyFont(IndCurrIdCfg, True)
' Assegno come applicata cfg corrente
m_sCurrAppliedIdCfg = CurrIdCfg
Return True
End Function
#End Region ' Metodi gestione combobox
' OK: Aggiorna l'icone della riga corrente
Private Function RefreshIcoAndComboBox(ByRef riga As DataGridViewRow) As Boolean
'Dim riga As DataGridViewRow = DataGridView1.Rows(IndexRow)
Dim CfgItem As String = riga.Cells(COLUMN.ID_CFG).Value
' Recupero la camera assegnata alla configurazione
Dim IndIDCam As Integer = GetCurrCamIndFromCfg(CfgItem)
If IndIDCam > EnableCamList.Count - 1 Then Return False
Dim CurrCam As EbnableCamItem = EnableCamList(IndIDCam)
If IsNothing(CurrCam) Then Return False
' Configurazione delle icone della pagina
If CurrCam.IdCam = IdCamEmpty Then
' CFG ICO
riga.Cells(COLUMN.CFG_ICO).Value = GetCurrIco(ICO.ERR_)
' CAM ICO
riga.Cells(COLUMN.CAM_ICO).Value = GetCurrIco(ICO.ERR_)
Else
' CFG ICO
If CurrCam.IdCfg(0) = CfgItem Then
riga.Cells(COLUMN.CFG_ICO).Value = GetCurrIco(ICO.OK_)
Else
riga.Cells(COLUMN.CFG_ICO).Value = GetCurrIco(ICO.WARNING_)
End If
' CAM ICO
If CurrCam.IsConnected Then
riga.Cells(COLUMN.CAM_ICO).Value = GetCurrIco(ICO.OK_)
Else
riga.Cells(COLUMN.CAM_ICO).Value = GetCurrIco(ICO.WARNING_)
End If
End If
' Creo la lista degli IdCam disponibili per la configurazione corrente
Dim CamList As New List(Of String)
' Procedo alla creazione della lista delle camere libere
For Each CameraItem As EbnableCamItem In EnableCamList
If CameraItem.IsEnable Then
CamList.Add(CameraItem.IdCam)
End If
Next
' Aggiungo la camera assegnata a questa configurazione
If CurrCam.IdCam <> IdCamEmpty Then CamList.Add(CurrCam.IdCam)
' Se la camera non è in elenco tra le camere disponibili (Id già occupato)
If CamList.IndexOf(CurrCam.IdCam) < 0 Then
CamList.Add(CurrCam.IdCam)
End If
If m_nCurrIndexRow = riga.Index Then
Dim Pippo As Boolean = True
End If
' Assegno la lista alla cella ComboBox
Dim comboBoxCell As DataGridViewComboBoxCell = TryCast(riga.Cells.Item(COLUMN.ID_CAM), DataGridViewComboBoxCell)
If Not IsNothing(comboBoxCell) Then
m_UpdatingDataSource = True
' Imposto l'ID della camera (sembra che questa assegnazione non generi nessun evento)
comboBoxCell.Value = CurrCam.IdCam
' verifice che le due liste siano uguali
Dim bAreSame As Boolean = False
If Not IsNothing(comboBoxCell.DataSource) Then
' Ad ogni assegnazione della lista viene lanciato l'evento
bAreSame = True
If comboBoxCell.DataSource.Count <> CamList.Count Then
' Hanno numero di elementi differenti: quindi sicuramente diverse
bAreSame = False
Else
' Verifico che tutti gli elementi di una lista siano anche nell'altra
For Each Item As String In comboBoxCell.DataSource
If CamList.FindIndex(Function(x) x = Item) < 0 Then
bAreSame = False
Exit For
End If
Next
End If
End If
' Se le liste sono diverse anche per contenuto allora ricarico
If Not bAreSame Then comboBoxCell.DataSource = CamList
m_UpdatingDataSource = False
End If
Return True
End Function
' Aggiorno la selezione della tabella e setto la riga corrente nella variabile m_nCurrIndexRow
Private Sub SelectCurrIndexRow(IndexRow As Integer)
' Verifico che l'indice di riga sia valido
If IndexRow < 0 Or IndexRow > DataGridView1.RowCount Then Return
' Se la selezione è la stessa riga che è in uso allora non aggiorno
If IndexRow = m_nCurrIndexRow Then Return
Me.Invalidate()
DataGridView1.ClearSelection()
DataGridView1.Rows(IndexRow).Selected = True
m_nCurrIndexRow = IndexRow
End Sub
#Region "EVENTS"
'Private CMB As ComboBox
' Selezione ComboBox
Private Sub DataGridView1_EditingControlShowing(sender As Object, e As DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing
' Seleziono la riga indicata
SelectCurrIndexRow(DataGridView1.CurrentCell.RowIndex)
' Controlla se la cella corrente è nella colonna della ComboBox e se il controllo è una ComboBox
If DataGridView1.CurrentCell.ColumnIndex = DataGridView1.Columns("ComboCamera").Index AndAlso TypeOf e.Control Is ComboBox Then
Dim comboBox As ComboBox = TryCast(e.Control, ComboBox)
If comboBox IsNot Nothing Then
' Rimuovi eventuali gestori eventi precedenti per evitare eventi duplicati
' Questo è importante se l'utente modifica più volte la stessa cella
' Salvo un riferimento alla combobox selezionata: viene cancellato il riferimento al termine della selezione
'CMB = comboBox
' Rimuovi i gestori precedenti per evitare agganci multipli
RemoveHandler comboBox.SelectedIndexChanged, AddressOf DataGridViewComboBox_SelectedIndexChanged
' Aggiungi il gestore eventi per l'evento SelectedIndexChanged della ComboBox
'Aggiungo il gestore eventi per l'evento SelectedIndexChanged della ComboBox
AddHandler comboBox.SelectedIndexChanged, AddressOf DataGridViewComboBox_SelectedIndexChanged
End If
End If
End Sub
' Questo è il gestore eventi che si attiverà quando l'utente seleziona un elemento nella ComboBox
' Questo è il gestore eventi che si attiverà quando l'utente seleziona un elemento nella ComboBox -- Handles DataGridView1.EditingControlShowing
Private Sub DataGridViewComboBox_SelectedIndexChanged(sender As Object, e As EventArgs)
Dim comboBox As ComboBox = TryCast(sender, ComboBox)
If comboBox IsNot Nothing Then
'Dim comboBox As ComboBox = CMB
If Not IsNothing(comboBox) AndAlso Not IsNothing(comboBox.SelectedItem) Then
' Nuovo valore
Dim selectedValue As String = comboBox.SelectedItem.ToString()
Dim currentRowIndex As Integer = DataGridView1.CurrentCell.RowIndex
' Precedente valore
Dim IDCamera As String = If(Not IsNothing(DataGridView1.Rows(currentRowIndex).Cells("ComboCamera").Value), DataGridView1.Rows(currentRowIndex).Cells("ComboCamera").Value.ToString(), String.Empty)
' Id della configurazione corrente
Dim IDCfg As String = DataGridView1.Rows(currentRowIndex).Cells("Config").Value.ToString()
If IDCamera <> selectedValue Then
DataGridView1.Rows(currentRowIndex).Cells(4).Value = "Save*"
' Aggiorno l'elenco EnableCamList
If Not m_UpdatingDataSource Then
UpdateListOfEnableCamItem(IDCfg, selectedValue)
Else
UpdateListOfEnableCamItem(IDCfg, IDCamera)
End If
' Ricostruisco la DataGrid
UpdateDataGridView()
' Aggiorno il valore del bottone
DataGridView1.Rows(currentRowIndex).Cells(COLUMN.SAVE_CMD).Value = "Save*"
End If
End If
End Sub
' Tutti i click sulla datagrid passono da qui
' Selezione del valore di una cella: gestione dei bottoni SAVE & APPLY
Private Sub DataGridView1_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
' Controlla che il click non sia sull'intestazione della colonna
If e.RowIndex < 0 Then Return
DataGridView1.Rows(e.RowIndex).Selected = True
' seleziona la riga indicata
SelectCurrIndexRow(e.RowIndex)
If e.ColumnIndex < 0 Then Return
IndexCurrentRow = e.RowIndex
IDConfig = DataGridView1.Rows(e.RowIndex).Cells("Config").Value.ToString()
IDCamera = If(Not IsNothing(DataGridView1.Rows(e.RowIndex).Cells("ComboCamera").Value), DataGridView1.Rows(e.RowIndex).Cells("ComboCamera").Value.ToString(), String.Empty)
' recupero l'Id della configurazione e l'Id della camera
Dim sIDConfig As String = DataGridView1.Rows(m_nCurrIndexRow).Cells("Config").Value.ToString()
Dim sIDCamera As String = If(Not IsNothing(DataGridView1.Rows(m_nCurrIndexRow).Cells("ComboCamera").Value), DataGridView1.Rows(e.RowIndex).Cells("ComboCamera").Value.ToString(), String.Empty)
' Controlla se il click è avvenuto nella colonna dei bottoni (Usa il nome che hai dato alla colonna)
If Me.DataGridView1.Columns(e.ColumnIndex).Name = "SaveConfig" Then
If Not String.IsNullOrEmpty(IDConfig) And Not String.IsNullOrEmpty(IDCamera) Then
SaveIDCamera(IDConfig, IDCamera)
DataGridView1.Rows(e.RowIndex).Cells(4).Value = "Save"
RefreshDataGrid(e.RowIndex)
bIsSavedAll = True
Else
MessageBox.Show("Non è possibile salvare l'ID di una camera non connessa.", "Avviso", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
If Not String.IsNullOrEmpty(sIDConfig) Then
SaveIDCamera(sIDConfig, sIDCamera)
DataGridView1.Rows(m_nCurrIndexRow).Cells(COLUMN.SAVE_CMD).Value = "Save"
'' Aggiorno l'elenco EnableCamList
'UpdateListOfEnableCamItem(sIDConfig, sIDCamera)
'' Ricostruisco la DataGrid SENZA forzare la selezione della riga
'PopolateDataGrid(False)
End If
' Se la configurazione è applicata allora procedo ad aggiornare anche il programma
If m_sCurrAppliedIdCfg = sIDConfig Then
If Not ApplyCurrCfg(sIDConfig, True) Then Return
' seleziona la riga indicata
SelectCurrIndexRow(e.RowIndex)
' Aggiorno la camera in uso nel programma
Dim IndCamera As Integer = FrmMain.ComboBoxCameras.Items.IndexOf(sIDCamera)
If IndCamera > -1 Then FrmMain.ComboBoxCameras.SelectedIndex = IndCamera
Dim IndCameraCfg As Integer = FrmMain.ComboBoxCameraCfg.Items.IndexOf(sIDConfig)
If IndCameraCfg > -1 Then FrmMain.ComboBoxCameraCfg.SelectedIndex = IndCameraCfg
End If
ElseIf Me.DataGridView1.Columns(e.ColumnIndex).Name = "ApplyConfig" Then
If Not (String.IsNullOrEmpty(IDConfig) And String.IsNullOrEmpty(IDCamera)) Then
' verifico che non sia stato salvato l'id indicato
If DataGridView1.Rows(e.RowIndex).Cells(4).Value.ToString().Contains("*"c) Then
If Not String.IsNullOrEmpty(sIDConfig) And Not String.IsNullOrEmpty(sIDCamera) And sIDCamera <> IdCamEmpty Then
' Verifico che non ci sia una modifica attiva
If DataGridView1.Rows(m_nCurrIndexRow).Cells(COLUMN.SAVE_CMD).Value.ToString().Contains("*"c) Then
MessageBox.Show("Salvare la configurazione prima di applicarla.", "Informazione", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
Return
End If
Dim IndCamera As Integer = FrmMain.ComboBoxCameras.Items.IndexOf(IDCamera)
FrmMain.ComboBoxCameras.SelectedIndex = IndCamera
Dim IndCameraCfg As Integer = FrmMain.ComboBoxCameraCfg.Items.IndexOf(IDConfig)
FrmMain.ComboBoxCameraCfg.SelectedIndex = IndCameraCfg
RefreshSelectedItemCfg(e.RowIndex)
If Not ApplyCurrCfg(sIDConfig) Then Return
' seleziona la riga indicata
SelectCurrIndexRow(e.RowIndex)
' Aggiorno la camera in uso nel programma
Dim IndCamera As Integer = FrmMain.ComboBoxCameras.Items.IndexOf(sIDCamera)
If IndCamera > -1 Then FrmMain.ComboBoxCameras.SelectedIndex = IndCamera
Dim IndCameraCfg As Integer = FrmMain.ComboBoxCameraCfg.Items.IndexOf(sIDConfig)
If IndCameraCfg > -1 Then FrmMain.ComboBoxCameraCfg.SelectedIndex = IndCameraCfg
Else
MessageBox.Show("Non è possibile applicare una configurazione di una camera non connessa.", "Avviso", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
End If
ElseIf Me.DataGridView1.Columns(e.ColumnIndex).Name = "ComboCamera" Then
' riconosco che è stata selezionata la combobox
End If
End Sub
' Chiusura della finestra
Private Sub SetConfig_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
' 💡 FORZA LA FINE DELLA MODALITÀ DI MODIFICA
' FORZA LA FINE DELLA MODALITÀ DI MODIFICA
Me.Validate()
Dim result As DialogResult
Dim ListOfIndexModifiedCfg As New List(Of Integer)
Dim bExit As Boolean = True
For IndexRow As Integer = 0 To DataGridView1.Rows.Count - 1
If DataGridView1.Rows(IndexRow).Cells(4).Value = "Save*" Then
' Ci sono modifiche. Chiedi all'utente cosa fare.
If bIsSavedAll Then
result = MessageBox.Show("Salvare tutte le configurazioni modificate o no?", "Attenzione", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning)
End If
Select Case result
Case DialogResult.Yes
' Salvataggio
If DataGridView1.Rows(IndexRow).Cells(0).Value = "Default" Then DataGridView1.Rows(IndexRow).Cells(0).Value = String.Empty
SaveIDCamera(DataGridView1.Rows(IndexRow).Cells(0).Value, DataGridView1.Rows(IndexRow).Cells(2).Value)
DataGridView1.Rows(IndexRow).Cells(4).Value = "Save"
RefreshDataGrid(IndexRow)
bIsSavedAll = False
Case DialogResult.No
' La finestra si chiuderà normalmente. Non fare nulla.
bIsSavedAll = True
Return
Case DialogResult.Cancel
' L'utente ha annullato l'operazione. Annulla la chiusura della finestra.
bIsSavedAll = True
e.Cancel = True
End Select
' Verifico se ci sia nessuna modifica attiva
If DataGridView1.Rows(IndexRow).Cells(COLUMN.SAVE_CMD).Value = "Save*" Then
ListOfIndexModifiedCfg.Add(IndexRow)
bExit = False
End If
Next
bIsSavedAll = True
' Se non ci sono modifiche allora esco subito
If bExit Then Return
' Costruisco il messaggio in funzione del numero di elementi presenti
Dim sMsg As String = "Vuoi salvare la modifica corrente?"
If ListOfIndexModifiedCfg.Count > 1 Then
sMsg = "Vuoi salvare le modifiche correnti?"
End If
result = MessageBox.Show(sMsg, "Attenzione", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning)
Select Case result
Case DialogResult.Yes
' Salvataggio
For Each IndexRow As Integer In ListOfIndexModifiedCfg
' Salvataggio
SaveIDCamera(DataGridView1.Rows(IndexRow).Cells(COLUMN.ID_CFG).Value, DataGridView1.Rows(IndexRow).Cells(COLUMN.ID_CAM).Value)
Next
Case DialogResult.No
' La finestra si chiuderà normalmente. Non fare nulla.
Return
Case DialogResult.Cancel
' L'utente ha annullato l'operazione. Annulla la chiusura della finestra.
e.Cancel = True
End Select
' Al termine la finestra viene chiusa
End Sub
#End Region ' Events
End Class
+15
View File
@@ -32,6 +32,11 @@ CameraMng
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.accept">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.Blocchetti">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
@@ -62,6 +67,11 @@ CameraMng
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.cross">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.DefAree">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
@@ -92,6 +102,11 @@ CameraMng
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.warning">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.zoom_all_img">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
+1 -1
View File
@@ -137,7 +137,7 @@ Public Class clsCamera
If _connected Then Disconnect()
If bodyID = "" Then
Connect(0)
' Connect(0)
Return
End If
@@ -1 +1 @@
80ba11b124538c7d3079f30cd12468109ae550e631cf8c94dfc5efc15b795614
69636ff66d10d465f87b29c6b3440534ee373b52aa51b9726c6ce7a90119bc6f
Binary file not shown.
@@ -1 +1 @@
6dfe2777d17f530c20a47946243d5514a0d9ccf3b3bc8a842d8aaf280d73ff42
e63cd9d1bff65e57a3ee15db15da52f89e1cb74102fae0c75198f4c36fa0c215
@@ -48,3 +48,4 @@ C:\EgtDev\cameramanager\CameraMng\obj\x64\Release\CameraMng.vbproj.Up2Date
C:\EgtDev\cameramanager\CameraMng\obj\x64\Release\CameraMng.exe
C:\EgtDev\cameramanager\CameraMng\obj\x64\Release\CameraMng.xml
C:\EgtDev\cameramanager\CameraMng\obj\x64\Release\CameraMng.pdb
C:\EgtDev\cameramanager\CameraMng\obj\x64\Release\SetConfigForm.resources
+15
View File
@@ -32,6 +32,11 @@ CameraMng
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.accept">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.Blocchetti">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
@@ -62,6 +67,11 @@ CameraMng
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.cross">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.DefAree">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
@@ -92,6 +102,11 @@ CameraMng
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.warning">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
</summary>
</member>
<member name="P:My.Resources.Resources.zoom_all_img">
<summary>
Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
Binary file not shown.
Binary file not shown.