adding discovery menu
This commit is contained in:
69
MainForm.Designer.cs
generated
69
MainForm.Designer.cs
generated
@@ -32,7 +32,15 @@
|
|||||||
lbMain = new ListBox();
|
lbMain = new ListBox();
|
||||||
statusStripMain = new StatusStrip();
|
statusStripMain = new StatusStrip();
|
||||||
toolStripStatusLabel = new ToolStripStatusLabel();
|
toolStripStatusLabel = new ToolStripStatusLabel();
|
||||||
|
menuStrip1 = new MenuStrip();
|
||||||
|
discoveryToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
startToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
stopToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
forceReloadToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
saveToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
loadToolStripMenuItem = new ToolStripMenuItem();
|
||||||
statusStripMain.SuspendLayout();
|
statusStripMain.SuspendLayout();
|
||||||
|
menuStrip1.SuspendLayout();
|
||||||
SuspendLayout();
|
SuspendLayout();
|
||||||
//
|
//
|
||||||
// lbMain
|
// lbMain
|
||||||
@@ -60,19 +68,73 @@
|
|||||||
toolStripStatusLabel.Name = "toolStripStatusLabel";
|
toolStripStatusLabel.Name = "toolStripStatusLabel";
|
||||||
toolStripStatusLabel.Size = new Size(0, 17);
|
toolStripStatusLabel.Size = new Size(0, 17);
|
||||||
//
|
//
|
||||||
|
// menuStrip1
|
||||||
|
//
|
||||||
|
menuStrip1.Items.AddRange(new ToolStripItem[] { discoveryToolStripMenuItem });
|
||||||
|
menuStrip1.Location = new Point(0, 0);
|
||||||
|
menuStrip1.Name = "menuStrip1";
|
||||||
|
menuStrip1.Size = new Size(800, 24);
|
||||||
|
menuStrip1.TabIndex = 2;
|
||||||
|
menuStrip1.Text = "menuStrip1";
|
||||||
|
//
|
||||||
|
// discoveryToolStripMenuItem
|
||||||
|
//
|
||||||
|
discoveryToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { startToolStripMenuItem, stopToolStripMenuItem, forceReloadToolStripMenuItem, saveToolStripMenuItem, loadToolStripMenuItem });
|
||||||
|
discoveryToolStripMenuItem.Name = "discoveryToolStripMenuItem";
|
||||||
|
discoveryToolStripMenuItem.Size = new Size(70, 20);
|
||||||
|
discoveryToolStripMenuItem.Text = "Discovery";
|
||||||
|
//
|
||||||
|
// startToolStripMenuItem
|
||||||
|
//
|
||||||
|
startToolStripMenuItem.Name = "startToolStripMenuItem";
|
||||||
|
startToolStripMenuItem.Size = new Size(180, 22);
|
||||||
|
startToolStripMenuItem.Text = "Start";
|
||||||
|
startToolStripMenuItem.Click += startToolStripMenuItem_Click;
|
||||||
|
//
|
||||||
|
// stopToolStripMenuItem
|
||||||
|
//
|
||||||
|
stopToolStripMenuItem.Enabled = false;
|
||||||
|
stopToolStripMenuItem.Name = "stopToolStripMenuItem";
|
||||||
|
stopToolStripMenuItem.Size = new Size(180, 22);
|
||||||
|
stopToolStripMenuItem.Text = "Stop";
|
||||||
|
stopToolStripMenuItem.Click += stopToolStripMenuItem_Click;
|
||||||
|
//
|
||||||
|
// forceReloadToolStripMenuItem
|
||||||
|
//
|
||||||
|
forceReloadToolStripMenuItem.Name = "forceReloadToolStripMenuItem";
|
||||||
|
forceReloadToolStripMenuItem.Size = new Size(180, 22);
|
||||||
|
forceReloadToolStripMenuItem.Text = "Force reload";
|
||||||
|
forceReloadToolStripMenuItem.Click += forceReloadToolStripMenuItem_Click;
|
||||||
|
//
|
||||||
|
// saveToolStripMenuItem
|
||||||
|
//
|
||||||
|
saveToolStripMenuItem.Name = "saveToolStripMenuItem";
|
||||||
|
saveToolStripMenuItem.Size = new Size(180, 22);
|
||||||
|
saveToolStripMenuItem.Text = "Save";
|
||||||
|
//
|
||||||
|
// loadToolStripMenuItem
|
||||||
|
//
|
||||||
|
loadToolStripMenuItem.Name = "loadToolStripMenuItem";
|
||||||
|
loadToolStripMenuItem.Size = new Size(180, 22);
|
||||||
|
loadToolStripMenuItem.Text = "Load";
|
||||||
|
//
|
||||||
// MainForm
|
// MainForm
|
||||||
//
|
//
|
||||||
AutoScaleDimensions = new SizeF(7F, 15F);
|
AutoScaleDimensions = new SizeF(7F, 15F);
|
||||||
AutoScaleMode = AutoScaleMode.Font;
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
ClientSize = new Size(800, 450);
|
ClientSize = new Size(800, 450);
|
||||||
Controls.Add(statusStripMain);
|
Controls.Add(statusStripMain);
|
||||||
|
Controls.Add(menuStrip1);
|
||||||
Controls.Add(lbMain);
|
Controls.Add(lbMain);
|
||||||
Icon = (Icon)resources.GetObject("$this.Icon");
|
Icon = (Icon)resources.GetObject("$this.Icon");
|
||||||
|
MainMenuStrip = menuStrip1;
|
||||||
Name = "MainForm";
|
Name = "MainForm";
|
||||||
Text = "RoboSpot MotionCamera finder";
|
Text = "RoboSpot MotionCamera finder";
|
||||||
FormClosing += MainForm_FormClosing;
|
FormClosing += MainForm_FormClosing;
|
||||||
statusStripMain.ResumeLayout(false);
|
statusStripMain.ResumeLayout(false);
|
||||||
statusStripMain.PerformLayout();
|
statusStripMain.PerformLayout();
|
||||||
|
menuStrip1.ResumeLayout(false);
|
||||||
|
menuStrip1.PerformLayout();
|
||||||
ResumeLayout(false);
|
ResumeLayout(false);
|
||||||
PerformLayout();
|
PerformLayout();
|
||||||
}
|
}
|
||||||
@@ -82,5 +144,12 @@
|
|||||||
private ListBox lbMain;
|
private ListBox lbMain;
|
||||||
private StatusStrip statusStripMain;
|
private StatusStrip statusStripMain;
|
||||||
private ToolStripStatusLabel toolStripStatusLabel;
|
private ToolStripStatusLabel toolStripStatusLabel;
|
||||||
|
private MenuStrip menuStrip1;
|
||||||
|
private ToolStripMenuItem discoveryToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem startToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem stopToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem forceReloadToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem saveToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem loadToolStripMenuItem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
74
MainForm.cs
74
MainForm.cs
@@ -15,6 +15,8 @@ namespace robospot_camera_finder
|
|||||||
public static string cam_username = "admin";
|
public static string cam_username = "admin";
|
||||||
public static string cam_password = "RoboSpot10";
|
public static string cam_password = "RoboSpot10";
|
||||||
|
|
||||||
|
private static string browse_scope = "_rtsp._tcp";
|
||||||
|
|
||||||
public class Camera
|
public class Camera
|
||||||
{
|
{
|
||||||
private IPAddress ip;
|
private IPAddress ip;
|
||||||
@@ -93,8 +95,6 @@ namespace robospot_camera_finder
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
browser.StartBrowse("_rtsp._tcp");
|
|
||||||
|
|
||||||
lbMain.DataSource = all_cameras;
|
lbMain.DataSource = all_cameras;
|
||||||
lbMain.DisplayMember = "camera_name";
|
lbMain.DisplayMember = "camera_name";
|
||||||
lbMain.ValueMember = "camera_ip";
|
lbMain.ValueMember = "camera_ip";
|
||||||
@@ -111,8 +111,34 @@ namespace robospot_camera_finder
|
|||||||
|
|
||||||
browser.ServiceRemoved += (sender, args) =>
|
browser.ServiceRemoved += (sender, args) =>
|
||||||
{
|
{
|
||||||
ServiceRemoved(sender, args);
|
if (browser.IsBrowsing)
|
||||||
|
{
|
||||||
|
ServiceRemoved(sender, args);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
browse(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void browse(bool browse_needed)
|
||||||
|
{
|
||||||
|
if (browse_needed)
|
||||||
|
{
|
||||||
|
if (!browser.IsBrowsing)
|
||||||
|
{
|
||||||
|
browser.StartBrowse(browse_scope);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (browser.IsBrowsing)
|
||||||
|
{
|
||||||
|
browser.StopBrowse();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
startToolStripMenuItem.Enabled = !browser.IsBrowsing;
|
||||||
|
stopToolStripMenuItem.Enabled = browser.IsBrowsing;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ServiceAdded(object sender, ServiceAnnouncementEventArgs args)
|
private void ServiceAdded(object sender, ServiceAnnouncementEventArgs args)
|
||||||
@@ -140,8 +166,25 @@ namespace robospot_camera_finder
|
|||||||
serial = serial_line.Substring("SerialNumber=".Length).Trim();
|
serial = serial_line.Substring("SerialNumber=".Length).Trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
Camera camera = new Camera("Camera " + cam_addr.ToString() + " - " + location + " - " + serial, cam_addr, location, serial);
|
Camera new_camera = new Camera("Camera " + cam_addr.ToString() + " - " + location + " - " + serial, cam_addr, location, serial);
|
||||||
all_cameras.Add(camera);
|
|
||||||
|
if (all_cameras.Count == 0)
|
||||||
|
{
|
||||||
|
all_cameras.Add(new_camera);
|
||||||
|
} else
|
||||||
|
{
|
||||||
|
for (int i = 0; i < all_cameras.Count; i++)
|
||||||
|
{
|
||||||
|
if (all_cameras[i].camera_serial == new_camera.camera_serial)
|
||||||
|
{
|
||||||
|
all_cameras[i] = new_camera;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
all_cameras.Add(new_camera);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -180,5 +223,26 @@ namespace robospot_camera_finder
|
|||||||
toolStripStatusLabel.Text = "";
|
toolStripStatusLabel.Text = "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void startToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
browse(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void stopToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
browse(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void forceReloadToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
DialogResult result = MessageBox.Show("Are you sure you want to clear discovered cameras and restart the discovery process ?", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
|
||||||
|
if (result == DialogResult.Yes)
|
||||||
|
{
|
||||||
|
browse(false);
|
||||||
|
all_cameras.Clear();
|
||||||
|
browse(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -120,6 +120,9 @@
|
|||||||
<metadata name="statusStripMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="statusStripMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>17, 17</value>
|
<value>17, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>153, 17</value>
|
||||||
|
</metadata>
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<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">
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
<value>
|
<value>
|
||||||
|
|||||||
Reference in New Issue
Block a user