Ejemplo n.º 1
0
        public frmInputPtName()
        {
            InitializeComponent();
            int i = 0;

            colorlist.Clear(); keylist.Clear(); pluglist.Clear();
            IDictionary <string, IPointPlugin> plugins =
                PointPlugin.LoadPlugins(Application.StartupPath);

            foreach (KeyValuePair <string, IPointPlugin> kvp in plugins)
            {
                colorlist.Add(i, kvp.Value.GetIconColor);
                keylist.Add(i, kvp.Value.PluginShortType);
                pluglist.Add(i, kvp.Value);
                i++;
            }
        }
Ejemplo n.º 2
0
        public frmEntitySelector(string name, string param, PointSelector kind)
        {
            InitializeComponent();
            IDictionary <string, IPointPlugin> plugins = PointPlugin.LoadPlugins(Application.StartupPath);

            foreach (KeyValuePair <string, IPointPlugin> plugin in plugins)
            {
                using (Bitmap bmp = new Bitmap(16, 16))
                {
                    Graphics g = Graphics.FromImage(bmp);
                    Data.DrawIconImage(Graphics.FromImage(bmp),
                                       plugin.Value.GetIconColor, plugin.Value.PluginShortType);
                    ilList.Images.Add(bmp);
                }
                IconList.Add(plugin.Value.PluginCategory + plugin.Value.PluginShortType,
                             ilList.Images.Count - 1);
            }
            switch (kind)
            {
            case PointSelector.AllPoints: FillItemsForAllPoints(ilList, IconList); break;

            case PointSelector.TrendPoints: FillItemsForTrendPoints(ilList, IconList); break;

            case PointSelector.TablePoints: FillItemsForTablePoints(ilList, IconList); break;

            case PointSelector.AnalogPoints: FillItemsForAnalogPoints(ilList, IconList); break;

            case PointSelector.DigitalPoints: FillItemsForDigitalPoints(ilList, IconList); break;

            case PointSelector.KonturPoints: FillItemsForKonturPoints(ilList, IconList); break;

            case PointSelector.ValvePoints: FillItemsForValvePoints(ilList, IconList); break;
            }
            this.EntityName  = name;
            this.EntityParam = param;
            ListViewItem item = lvItems.FindItemWithText(name +
                                                         ((param.Length > 0) ? "." + param : String.Empty));

            if (item != null)
            {
                item.EnsureVisible();
                lvItems.FocusedItem = item;
                item.Selected       = true;
                btnOk.Enabled       = true;
            }
        }
Ejemplo n.º 3
0
        private void frmDataEditor_Load(object sender, EventArgs e)
        {
            Process process = RunningInstance();

            if (process != null)
            {
                Application.Exit();
                return;
            }
            Data.RestoreSQLsettings(Application.StartupPath);
            Settings.CreateDataAndFetchBases();
            baseVersion = Data.LoadBase(PointPlugin.LoadPlugins(Application.StartupPath));
            LoadUsersList();
            UpdateStatusMessage("Готово");
            SelectedFormShow(Program.argsString);
            //this.tlbStatusMessage.Text = Program.argsString;
            tmrLive.Enabled = true;
        }
Ejemplo n.º 4
0
 private void miRestoreServerDataFromFiles_Click(object sender, EventArgs e)
 {
     if (MessageBox.Show(this, "Существующие данные сервера будут заменены! Продолжить?",
                         "Восстановление данных с локального диска на сервер", MessageBoxButtons.YesNoCancel,
                         MessageBoxIcon.Warning) == DialogResult.Yes)
     {
         Cursor = Cursors.WaitCursor;
         try
         {
             string path     = Application.StartupPath + "\\backup\\";
             string filename = path + "exportbase.ini";
             if (File.Exists(filename))
             {
                 UpdateStatusMessage("Импорт базы данных...");
                 IDictionary <string, IPointPlugin> plugins =
                     PointPlugin.LoadPlugins(Application.StartupPath);
                 Data.ImportBaseFrom(plugins, filename, UpdateStatusMessage);
             }
             filename = path + "exporttrends.ini";
             if (File.Exists(filename))
             {
                 UpdateStatusMessage("Импорт групп параметров трендов...");
                 Data.ImportGroupsFrom(filename, ParamGroup.Trend);
             }
             filename = path + "exporttables.ini";
             if (File.Exists(filename))
             {
                 UpdateStatusMessage("Импорт групп параметров таблиц...");
                 Data.ImportGroupsFrom(filename, ParamGroup.Table);
             }
             UpdateStatusMessage("Импорт динамических элементов мнемосхем...");
             DrawPlugin.ImportSchemesFrom(path + "schemes\\", UpdateStatusMessage);
             UpdateStatusMessage("Импорт файлов картинок...");
             DrawPlugin.ImportImagesFrom(path + "images\\", UpdateStatusMessage);
             UpdateStatusMessage("Импорт файлов отчётов...");
             DrawPlugin.ImportReportsFrom(path + "reports\\", UpdateStatusMessage);
             UpdateStatusMessage("Готово.");
         }
         finally
         {
             Cursor = Cursors.Default;
         }
     }
 }
Ejemplo n.º 5
0
        private void miTuningLink_Click(object sender, EventArgs e)
        {
            using (frmTuning form = new frmTuning())
            {
                form.cbScreenSize.SelectedIndex = Properties.Settings.Default.ScreenSize;
                form.tbHostName.Text            = BaseServer.Settings.Host;
                form.tbPortNumber.Text          = BaseServer.Settings.Port;
                form.tbUserName.Text            = BaseServer.Settings.User;
                form.tbPassword.Text            = BaseServer.Settings.Password;
                form.tbFetchBase.Text           = BaseServer.Settings.Fetchbase;
                form.tbDatabase.Text            = BaseServer.Settings.Database;
                if (form.ShowDialog() == DialogResult.OK)
                {
                    Properties.Settings settings = Properties.Settings.Default;
                    settings.ScreenSize = form.cbScreenSize.SelectedIndex;
                    settings.Save();
                    if (BaseServer.Settings.Host != form.tbHostName.Text ||
                        BaseServer.Settings.Port != form.tbPortNumber.Text ||
                        BaseServer.Settings.User != form.tbUserName.Text ||
                        BaseServer.Settings.Password != form.tbPassword.Text ||
                        BaseServer.Settings.Fetchbase != form.tbFetchBase.Text ||
                        BaseServer.Settings.Database != form.tbDatabase.Text)
                    {
                        BaseServer.Settings.Host      = form.tbHostName.Text;
                        BaseServer.Settings.Port      = form.tbPortNumber.Text;
                        BaseServer.Settings.User      = form.tbUserName.Text;
                        BaseServer.Settings.Password  = form.tbPassword.Text;
                        BaseServer.Settings.Fetchbase = form.tbFetchBase.Text;
                        BaseServer.Settings.Database  = form.tbDatabase.Text;

                        SaveSettings();

                        Data.RestoreSQLsettings(Application.StartupPath);
                        if (Settings.CreateDataAndFetchBases())
                        {
                            try { DrawPlugin.RestoreImageCatalog(Application.StartupPath + "\\images\\"); }
                            catch (Exception ex)
                            {
                                Data.SendToSystemLog(Properties.Settings.Default.Station, "Картинки",
                                                     "Ошибка: " + ex.Message);
                            }
                            try { DrawPlugin.RestoreReportCatalog(Application.StartupPath + "\\reports\\"); }
                            catch (Exception ex)
                            {
                                Data.SendToSystemLog(Properties.Settings.Default.Station, "Отчёты",
                                                     "Ошибка: " + ex.Message);
                            }

                            Data.LoadBase(PointPlugin.LoadPlugins(Application.StartupPath));
                            MessageBox.Show(this, "Подключение к SQL-серверу успешно восстановлено.",
                                            "Настройка связи с SQL-сервером", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                        else
                        {
                            MessageBox.Show(this, "Не удалось восстановить подключение к SQL-серверу.\n" +
                                            Settings.LastError,
                                            "Настройка связи с SQL-сервером", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
            }
        }
Ejemplo n.º 6
0
        private void frmMain_Load(object sender, EventArgs e)
        {
            #region Защита от повторного запуска
            Process process = RunningInstance();
            if (process != null)
            {
                Application.Exit(); return;
            }
            #endregion
            this.Width         = 0;
            this.Height        = 1;
            MustWinLogOff      = false;
            AlarmAsked         = true;
            EntityAsked        = String.Empty;
            this.StationNumber = Properties.Settings.Default.Station;
            SplashForm         = new frmAbout();
            SplashForm.Show();
            SplashForm.Refresh();
            LoadUsersList(Application.StartupPath + "\\users.xml");
            IDictionary <string, IPointPlugin> plugins = PointPlugin.LoadPlugins(Application.StartupPath);
            DrawPlugin.LoadPlugins(Application.StartupPath);
            Data.RestoreSQLsettings(Application.StartupPath);
            Settings.CreateDataAndFetchBases();
            #region Создание кэша картинок на диске
            try { DrawPlugin.RestoreImageCatalog(Application.StartupPath + "\\images\\"); }
            catch (Exception ex)
            {
                Data.SendToSystemLog(StationNumber, "Картинки",
                                     "Ошибка: " + ex.Message);
            }
            #endregion
            baseVersion        = Data.LoadBase(plugins);
            timerClock.Enabled = true;
            timerFetch.Enabled = true;
            Data.SendToChangeLog(StationNumber, "Станция RemX", "Старт", String.Empty, "Работа",
                                 "Автономно", "Уровень доступа: " + UserLevel.ToString());
            Data.SendToSystemLog(StationNumber, "Станция RemX", "Рабочая станция загружена");
            ClientID = Data.ClientLogin(ClientID, "S", StationNumber, Properties.Settings.Default.StationName);
            LoadFetchServers();

            //if (ServerSQL.HostIsLocalhost()) startFetchServices();

            bool     winmode  = Properties.Settings.Default.WindowMode;
            Screen[] monitors = Screen.AllScreens;
            panels = new frmPanel[monitors.Length];
            for (int i = 0; i < monitors.Length; i++)
            {
                if (!winmode || winmode && monitors[i].Primary)
                {
                    panels[i] = new frmPanel(this, monitors[i].Primary, monitors[i].WorkingArea);
                    if (winmode)
                    {
                        panels[i].FormBorderStyle    = System.Windows.Forms.FormBorderStyle.Sizable;
                        panels[i].pnlCaption.Visible = false;
                        panels[i].stpStatus.Visible  = false;
                        panels[i].Size = new System.Drawing.Size(
                            Properties.Settings.Default.PanelWidth,
                            Properties.Settings.Default.PanelHeight);
                        panels[i].Location = new System.Drawing.Point(
                            Properties.Settings.Default.PanelLeft,
                            Properties.Settings.Default.PanelTop);
                    }
                    panels[i].Show(this);
                }
            }
            PeriodicalCheck();
        }
Ejemplo n.º 7
0
        private void backgroundBaseReload_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e)
        {
            string ptname = (string)e.Argument;

            Data.LoadBase(PointPlugin.LoadPlugins(Application.StartupPath), ptname);
        }