Beispiel #1
0
 /// <summary>
 /// Запустить компонент
 /// </summary>
 private void cameraButton_Click(object sender, EventArgs e)
 {
     if (!IsStateSaved)
     {
         //Загрузка всех параметров по-умолчанию
         _ViewSettings.Show();
     }
     else
     {
         //Настройки автоматически восстанавливаются при использовании IPersistStorage
         //методы которого вызываются контейнером
         _ViewSettings.SetSettings(this);
         if (_ViewPreview.IsDisposed || _ViewPreview == null)
         {
             _ViewPreview = new Views.Preview(this);
         }
         try
         {
             _ViewSettings_OnCheckConnection(this.ServerName, Authorization.Basic, this.Login, this.Password);
             //Без запроса камер повторное использование не работает
             _Settings_OnGetCameraRequest();
         }
         catch (Exception)
         {
             _ViewSettings.Show();
             return;
         }
         InitializePreview();    //Привязать камеру к окну просмотра и показать пользователю
     }
 }
Beispiel #2
0
        /// <summary>
        /// Создает все объекты
        /// </summary>
        public MiniEye()
        {
            ///Восстановление состояния объекта проихсодит после вызова конструктора!
            #region set visual style
            InitializeComponent();
            SetStyle(ControlStyles.SupportsTransparentBackColor, true);
            SetStyle(ControlStyles.Opaque, true);
            this.BackColor         = Color.Transparent;
            cameraButton.BackColor = Color.Transparent;
            #endregion

            #region setup default user data
            this.AuthType           = Settings.Settings.GetSettings().AuthType;
            this.Login              = Settings.Settings.GetSettings().Login;
            this.Password           = Settings.Settings.GetSettings().Password;
            this.ServerName         = Settings.Settings.GetSettings().ServerName;
            this.SelectedCameraName = "";
            this.CameraName         = "";
            #endregion

            #region video server initializaion
            //Искать части проекта в директории где лежит проект
            //TODO: добавить обработку исключений в случае если части программы не найдены
            CompositionContainer container = new CompositionContainer(new DirectoryCatalog(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location.ToString())));
            container.ComposeParts(this);
            _ModelInitialization.Init();
            #endregion

            //Создание всех представлений
            _ViewSettings = new Views.CameraSettings(this);
            _ViewPreview  = new Views.Preview(this);

            //Подключить необходимые обработчики событий для представлений
            _ViewSettings.OnCheckConnection  += _ViewSettings_OnCheckConnection;
            _ViewSettings.OnGetCameraRequest += _Settings_OnGetCameraRequest;
            _ViewSettings.OnSettingsApplyed  += _ViewSettings_OnSettingsApplyed;
            _ViewSettings.OnCameraSelected   += _ViewSettings_OnCameraSelected;
            _ViewPreview.OnSettingsChange    += _ViewPreview_OnSettingsChange;
            _ViewPreview.OnClose             += _ViewPreview_OnClose;
        }