better ui for zoom & icon

This commit is contained in:
Vincent BOUQUET
2024-02-17 22:38:11 +01:00
parent e0ee7ca9dc
commit 4171dce2e7
6 changed files with 104 additions and 31 deletions

2
MainForm.Designer.cs generated
View File

@@ -28,6 +28,7 @@
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
lbMain = new ListBox();
SuspendLayout();
//
@@ -48,6 +49,7 @@
AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(800, 450);
Controls.Add(lbMain);
Icon = (Icon)resources.GetObject("$this.Icon");
Name = "MainForm";
Text = "RoboSpot MotionCamera finder";
FormClosing += MainForm_FormClosing;

View File

@@ -57,4 +57,29 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAP9UAAD/VwAA
/w0AAAAAAAAAgwAAAMgAAADIAAAAyAAAALsAAAAAAAAAAAAAAAAAAADLAAAA0AAAGNQAAN/4AAD//wAA
//8AAP/iAAD/HgAAAIIAAAD/AAAA/wAAAP8AAAD/AAAAFgAAAAAAAAAUAAAA/wAAAP8AAIT/AAD//wAA
//8AAP//AAD//wAA/5cAAABYAAAA/wAAAP8AAAD/AAAA/wAAAEAAAAAAAAAALwAAAP8AAAD/AACi/wAA
//8AAP//AAD//wAA//8AAP+0AAAALwAAAP8AAAD/AAAA/wAAAP8AAABrAAAAAAAAAEsAAAD/AAAA/wAA
Wv8AAP//AAD//wAA//8AAP//AAD/bQAAAAgAAAD9AAAA/wAAAP8AAAD/AAAAlQAAAAAAAABnAAAA/wAA
AP8AAAD/AAB7/wAA9fcAAP/wAAD/iAAAAAIAAAAAAAAA2wAAAP8AAAD/AAAA/wAAAM8AAABQAAAApgAA
AP8AAAD/AAAA/wAAAP8AAABXAAAAAAAAAAAAAAAAAAAAAAAAALEAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
AP8AAAD/AAAA/wAAAP8AAAD/AAAApgAAABsAAAAAAAAAAAAAAAAAAACIAAAA/wAAAP8AAAD/AAAA/wAA
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADsAAAAMwAAAAAAAAAAAAAAXgAAAP8AAAD/AAAA/wAA
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAOMAAAALAAAAAAAAADQAAAD/AAAA/wAA
AP8AAAD/AAAAZAAAAAAAAAAAAAAADgAAAMoAAAD/AAAA/wAAAP8AAAD/AAAAawAAAAAAAAAMAAAA/gAA
AP8AAAD/AAAA/wAAAIwAAAAAAAAAAAAAAAYAAACwAAAA/wAAAP8AAAD/AAAA/wAAAKgAAAAAAAAAAAAA
AOEAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACfAAAAAAAA
AAAAAAC3AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD9AAAAPgAA
AAAAAAAAAAAAjQAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADXAAAAUAAA
AAAAAAAAAAAAAAAAABkAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADQAAAAZAAAAAAAA
AAAAAAAA//EAAAcAAAACAAAAAgAAAAIAAACCAQAAgAcAAIADAACAAQAAgAAAAIGAAACBwAAAwAAAAMAA
AADAAQAAwAcAAA==
</value>
</data>
</root>

View File

@@ -31,11 +31,12 @@ namespace robospot_camera_finder
private void InitializeComponent()
{
components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(StreamViewer));
videoView = new LibVLCSharp.WinForms.VideoView();
tbZoom = new TrackBar();
lblMinZoom = new Label();
lblMaxZoom = new Label();
timerUpdateZoom = new System.Windows.Forms.Timer(components);
btnZoomMin = new Button();
btnZoomMax = new Button();
((System.ComponentModel.ISupportInitialize)videoView).BeginInit();
((System.ComponentModel.ISupportInitialize)tbZoom).BeginInit();
SuspendLayout();
@@ -68,44 +69,49 @@ namespace robospot_camera_finder
tbZoom.KeyUp += tbZoom_KeyUp;
tbZoom.MouseUp += tbZoom_MouseUp;
//
// lblMinZoom
//
lblMinZoom.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
lblMinZoom.AutoSize = true;
lblMinZoom.Location = new Point(902, 492);
lblMinZoom.Name = "lblMinZoom";
lblMinZoom.Size = new Size(19, 15);
lblMinZoom.TabIndex = 2;
lblMinZoom.Text = "1x";
//
// lblMaxZoom
//
lblMaxZoom.Anchor = AnchorStyles.Top | AnchorStyles.Right;
lblMaxZoom.AutoSize = true;
lblMaxZoom.Location = new Point(902, 12);
lblMaxZoom.Name = "lblMaxZoom";
lblMaxZoom.Size = new Size(25, 15);
lblMaxZoom.TabIndex = 3;
lblMaxZoom.Text = "32x";
//
// timerUpdateZoom
//
timerUpdateZoom.Enabled = true;
timerUpdateZoom.Interval = 10000;
timerUpdateZoom.Tick += timerUpdateZoom_Tick;
//
// btnZoomMin
//
btnZoomMin.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
btnZoomMin.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
btnZoomMin.Location = new Point(886, 484);
btnZoomMin.Name = "btnZoomMin";
btnZoomMin.Size = new Size(42, 23);
btnZoomMin.TabIndex = 2;
btnZoomMin.Text = "1x";
btnZoomMin.UseVisualStyleBackColor = true;
btnZoomMin.Click += btnZoomMin_Click;
//
// btnZoomMax
//
btnZoomMax.Anchor = AnchorStyles.Top | AnchorStyles.Right;
btnZoomMax.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
btnZoomMax.Location = new Point(886, 12);
btnZoomMax.Name = "btnZoomMax";
btnZoomMax.Size = new Size(42, 23);
btnZoomMax.TabIndex = 3;
btnZoomMax.Text = "32x";
btnZoomMax.UseVisualStyleBackColor = true;
btnZoomMax.Click += btnZoomMax_Click;
//
// StreamViewer
//
AutoScaleDimensions = new SizeF(7F, 15F);
AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(933, 519);
Controls.Add(lblMaxZoom);
Controls.Add(lblMinZoom);
Controls.Add(btnZoomMax);
Controls.Add(btnZoomMin);
Controls.Add(tbZoom);
Controls.Add(videoView);
Icon = (Icon)resources.GetObject("$this.Icon");
Margin = new Padding(4, 3, 4, 3);
Name = "StreamViewer";
Text = "LibVLCSharp.WinForms";
Text = "Camera";
FormClosed += StreamViewer_FormClosed;
((System.ComponentModel.ISupportInitialize)videoView).EndInit();
((System.ComponentModel.ISupportInitialize)tbZoom).EndInit();
@@ -117,8 +123,8 @@ namespace robospot_camera_finder
private LibVLCSharp.WinForms.VideoView videoView;
private TrackBar tbZoom;
private Label lblMinZoom;
private Label lblMaxZoom;
private System.Windows.Forms.Timer timerUpdateZoom;
private Button btnZoomMin;
private Button btnZoomMax;
}
}

View File

@@ -22,6 +22,9 @@ namespace robospot_camera_finder
string password = "RoboSpot10";
string cam_ip = "";
int max_zoom_pulse = 9999;
int min_zoom_pulse = 10;
public StreamViewer(string name, string ip)
{
InitializeComponent();
@@ -56,13 +59,13 @@ namespace robospot_camera_finder
private void sendZoomValue(string zoom_pulse)
{
// clamp values to allowed range
if (int.Parse(zoom_pulse) < 10)
if (int.Parse(zoom_pulse) < min_zoom_pulse)
{
zoom_pulse = "10";
zoom_pulse = min_zoom_pulse.ToString();
}
if (int.Parse(zoom_pulse) > 9999)
if (int.Parse(zoom_pulse) > max_zoom_pulse)
{
zoom_pulse = "9999";
zoom_pulse = max_zoom_pulse.ToString();
}
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://" + cam_ip + "/stw-cgi/ptzcontrol.cgi?msubmenu=absolute&action=control&ZoomPulse=" + zoom_pulse);
@@ -91,5 +94,17 @@ namespace robospot_camera_finder
{
updateZoomSlider();
}
private void btnZoomMax_Click(object sender, EventArgs e)
{
tbZoom.Value = max_zoom_pulse;
sendZoomValue(tbZoom.Value.ToString());
}
private void btnZoomMin_Click(object sender, EventArgs e)
{
tbZoom.Value = min_zoom_pulse;
sendZoomValue(tbZoom.Value.ToString());
}
}
}

View File

@@ -60,4 +60,29 @@
<metadata name="timerUpdateZoom.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAP9UAAD/VwAA
/w0AAAAAAAAAgwAAAMgAAADIAAAAyAAAALsAAAAAAAAAAAAAAAAAAADLAAAA0AAAGNQAAN/4AAD//wAA
//8AAP/iAAD/HgAAAIIAAAD/AAAA/wAAAP8AAAD/AAAAFgAAAAAAAAAUAAAA/wAAAP8AAIT/AAD//wAA
//8AAP//AAD//wAA/5cAAABYAAAA/wAAAP8AAAD/AAAA/wAAAEAAAAAAAAAALwAAAP8AAAD/AACi/wAA
//8AAP//AAD//wAA//8AAP+0AAAALwAAAP8AAAD/AAAA/wAAAP8AAABrAAAAAAAAAEsAAAD/AAAA/wAA
Wv8AAP//AAD//wAA//8AAP//AAD/bQAAAAgAAAD9AAAA/wAAAP8AAAD/AAAAlQAAAAAAAABnAAAA/wAA
AP8AAAD/AAB7/wAA9fcAAP/wAAD/iAAAAAIAAAAAAAAA2wAAAP8AAAD/AAAA/wAAAM8AAABQAAAApgAA
AP8AAAD/AAAA/wAAAP8AAABXAAAAAAAAAAAAAAAAAAAAAAAAALEAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
AP8AAAD/AAAA/wAAAP8AAAD/AAAApgAAABsAAAAAAAAAAAAAAAAAAACIAAAA/wAAAP8AAAD/AAAA/wAA
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADsAAAAMwAAAAAAAAAAAAAAXgAAAP8AAAD/AAAA/wAA
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAOMAAAALAAAAAAAAADQAAAD/AAAA/wAA
AP8AAAD/AAAAZAAAAAAAAAAAAAAADgAAAMoAAAD/AAAA/wAAAP8AAAD/AAAAawAAAAAAAAAMAAAA/gAA
AP8AAAD/AAAA/wAAAIwAAAAAAAAAAAAAAAYAAACwAAAA/wAAAP8AAAD/AAAA/wAAAKgAAAAAAAAAAAAA
AOEAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACfAAAAAAAA
AAAAAAC3AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD9AAAAPgAA
AAAAAAAAAAAAjQAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADXAAAAUAAA
AAAAAAAAAAAAAAAAABkAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADQAAAAZAAAAAAAA
AAAAAAAA//EAAAcAAAACAAAAAgAAAAIAAACCAQAAgAcAAIADAACAAQAAgAAAAIGAAACBwAAAwAAAAMAA
AADAAQAAwAcAAA==
</value>
</data>
</root>

BIN
favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB