public void ProcessMessage(CamViewerController controller, string subject, params object[] body) { switch (subject) { case "OpenCameraByReference": ConnectToCamera(controller, body); break; } }
public void DisconnectFromCamera(CamViewerController controller) { if (controller.Model.MJPEGStream != null) { controller.Model.MJPEGStream.NewFrame -= controller.Model.OnNewFrame; controller.Model.MJPEGStream.Stop(); controller.Model.MJPEGStream = null; } }
public void Init(CamViewerController controller) { _controller = controller; foreach (var cameraCnn in _controller.Model.Settings.Connections) { AddCameraToUi(cameraCnn); } _controller.Model.NewFrame += OnFrameReceived; }
public override void Dispose() { if (_controller != null) { _mainView.TearDown(); _mainView = null; _controller.Dispose(); _controller = null; TabControl.TabPages.Remove(_tabPage); _tabPage = null; base.Dispose(); } }
private void ConnectToCamera(CamViewerController controller, params object[] args) { var camRef = (string)args[0]; var targetCam = controller.Model.Settings.Connections.FirstOrDefault(cnn => cnn.Reference == camRef); if (targetCam == null) { controller.ShowError("Camera with reference {0} is missing.", camRef); } else { controller.ConnectToCamera(targetCam); } }
public CameraConnection AddCamera(CamViewerController controller) { var form = controller.CreateView <IAddCameraForm>(); CameraConnection connection = null; if (form.Process()) { connection = form.Connection; controller.Model.Settings.Connections.Add(connection); controller.SaveSettings(); } return(connection); }
public CameraConnection EditCameraSettings(CamViewerController controller, CameraConnection cameraSettings) { var form = controller.CreateView <IAddCameraForm>(); CameraConnection connection = null; form.Connection = cameraSettings; if (form.Process()) { connection = form.Connection; controller.Model.Settings.Connections.Remove(cameraSettings); controller.Model.Settings.Connections.Add(connection); controller.SaveSettings(); } return(connection); }
public void ConnectToCamera(CamViewerController controller, CameraConnection connection) { controller.DisconnectFromCamera(); controller.Log.Info("Connecting to {0}", connection.Title); controller.Model.MJPEGStream = new MJPEGStream { Source = connection.Uri, Login = connection.User, Password = connection.Password, }; controller.Model.MJPEGStream.NewFrame += controller.Model.OnNewFrame; controller.Model.MJPEGStream.Start(); controller.Tool.ApplyChange(ViewChanges.SelectCamera, connection); }
public override void Activate() { base.Activate(); if (_controller == null) { _controller = new CamViewerController(Log, this, new CamViewerModel()); _controller.LoadSettings(); _tabPage = new TabPage(ToolName); _mainView = new CamViewToolView { Dock = DockStyle.Fill }; _mainView.Init(_controller); _tabPage.Controls.Add(_mainView); TabControl.TabPages.Add(_tabPage); TabControl.SelectTab(_tabPage); } else // Select tab page. { TabControl.SelectTab(_tabPage); } }
public void SaveSettings(CamViewerController controller) { CamViewerSettingsHelper.Save(controller.Log, controller.Model.Settings); }
public void DeleteCamera(CamViewerController controller, CameraConnection connection) { controller.Model.Settings.Connections.Remove(connection); controller.SaveSettings(); }
public void SetContext(CamViewerController context) { _controller = context; }
public void LoadSettings(CamViewerController controller) { controller.Model.Settings = CamViewerSettingsHelper.Load(controller.Log); }