Пример #1
0
        private void EditRow(MessagesDataSet.MessagesRow current)
        {
            var messageForm = new MessageForm()
            {
                MessageName = current.Name,
                MessageText = current.Text,
            };

            messageForm.Closing += (sender, args) => {
                if (messageForm.DialogResult != DialogResult.OK)
                {
                    return;
                }

                try
                {
                    current.Name = messageForm.MessageName;
                    current.Text = messageForm.MessageText;
                    CommitChanges();
                }
                catch (Exception e)
                {
                    MessageBox.Show(String.Format("Error {0}", e.GetType()), "Error",
                        MessageBoxButtons.OK, MessageBoxIcon.Hand,
                        MessageBoxDefaultButton.Button1);
                    args.Cancel = true;
                }
            };

            messageForm.ShowDialog();
        }
Пример #2
0
 public ResourceVerifierForm()
 {
     InitializeComponent();
     _workingDataSet = new MessagesDataSet();
     _errorsDataSet = new ErrorsDataSet();
     _languageFilesList = new List<LanguageFilesFolder>();
     _restrictedWords = new List<string>();
     _allowedSimilarWords = new List<string>();
 }
Пример #3
0
        public MessagesManager(IncomingsParser incomingParser)
        {
            this.incomingParser = incomingParser;
            incomingParser.CallMissed += new IncomingsParser.CallEventHandler(incomingParser_CallMissed);

            messagesDataSet = new MessagesDataSet();
            messagesDataSet.BeginInit();
            messagesDataSet.DataSetName = "MessagesDataSet";
            messagesDataSet.Prefix = "";
            messagesDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
            messagesDataSet.EndInit();

            numbersTableAdapter = new NumbersTableAdapter();
            numbersTableAdapter.Fill(messagesDataSet.Numbers);
            messagesTableAdapter = new MessagesTableAdapter();
            messagesTableAdapter.Fill(messagesDataSet.Messages);
        }
Пример #4
0
 public void CreateFromMessagesSet(MessagesDataSet messagesDataSet)
 {
     var messagesTable = messagesDataSet.Tables[0];
     var errorsTable = Tables[0];
     foreach (DataRow r in messagesTable.Rows)
     {
         foreach (var item in r.ItemArray)
         {
             if (item.GetType() != typeof(MessagesDataSetItem)) continue;
             var cell = (MessagesDataSetItem)item;
             if (cell.ErrorType != ErrorTypes.NoError)
             {
                 errorsTable.Rows.Add(cell.ErrorId, cell.Launguage, cell.MessageId, cell.ErrorText);
             }
         }
     }
 }
Пример #5
0
        //
        // Language menu section
        //
        private void SelectLanguage(object sender, EventArgs e)
        {
            var menuItem = (LanguageMenuItem)sender;
            var messagesFiles = menuItem.MessagesFiles;
            var resourcesFiles = menuItem.ResourcesFiles;

            var files = messagesFiles.Concat(resourcesFiles).ToList();

            var language = menuItem.Text;

            if (menuItem.Checked)
            {
                foreach (var file in files)
                {
                    if (_workingDataSet.Tables.Count == 0)
                    {
                        _workingDataSet = new MessagesDataSet();
                        _workingDataSet.LoadInitialData(file);
                        messagesGridView.DataSource = _workingDataSet;
                        messagesGridView.DataMember = "Messages";

                    }
                    else
                    {
                        var result = _workingDataSet.MegreData(file);
                        if (!result)
                        {
                            MessageBox.Show("Обнаружены одинаковые колонки!", "Слияние не удалось", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }

                    }
                    messagesGridView.AdjustColumnsWidth();
                    analyzeDataButton.Enabled = true;
                }
                if (sender == menuItem)
                {
                    if ((_languageMenu.FindIndex(o => !o.Checked)) == -1)
                        selectAllLanguagesToolStripMenuItem.Checked = true;
                }
            }
            else
            {
                foreach (DataColumn col in _workingDataSet.Tables[0].Columns)
                {
                    if (col.Caption == language)
                    {
                        _workingDataSet.Tables[0].Columns.Remove(col.Caption);
                        break;
                    }
                }

                var rowsToRemove = new List<DataRow>();
                foreach (DataRow row in _workingDataSet.Tables[0].Rows)
                {
                    var isEmpty = row.ItemArray.All(cell => cell.GetType() != typeof(MessagesDataSetItem) || cell.ToString() == string.Empty);
                    if (isEmpty)
                    {
                        rowsToRemove.Add(row);
                    }
                }
                foreach (var row in rowsToRemove)
                {
                    _workingDataSet.Tables[0].Rows.Remove(row);
                }
                selectAllLanguagesToolStripMenuItem.Checked = false;
            }
        }
Пример #6
0
 private void ResetForm(object sender, EventArgs e)
 {
     messagesGridView.DataSource = null;
     _workingDataSet = new MessagesDataSet();
     errorsGridView.DataSource = null;
     _errorsDataSet = new ErrorsDataSet();
     _workingFolder = null;
     _languageFilesList = new List<LanguageFilesFolder>();
     if (_filesFinder != null)
         _filesFinder.Reset();
     _restrictedWords = new List<string>();
     languageToolStripMenuItem.DropDownItems.Clear();
     languageToolStripMenuItem.DropDownItems.Add(loadLanguagesFromSettingsToolStripMenuItem);
     _languageMenu = null;
     selectAllLanguagesToolStripMenuItem.Checked = false;
     analyzeDataButton.Enabled = false;
 }
Пример #7
0
        private void LoadFile(object sender, EventArgs e)
        {
            var openFileDialog = new OpenFileDialog
            {
                Filter = "Messages files|*.msg|Resources files|*.rc",
                Title = "Выберите файл..."
            };

            if (openFileDialog.ShowDialog() != DialogResult.OK) return;
            if (_workingDataSet.Tables.Count == 0)
            {
                _workingDataSet = new MessagesDataSet();
                _workingDataSet.LoadInitialData(openFileDialog.FileName);
                messagesGridView.DataSource = _workingDataSet;
                messagesGridView.DataMember = "Messages";
            }
            else
            {
                var result = _workingDataSet.MegreData(openFileDialog.FileName);
                if (!result)
                {
                    MessageBox.Show("Обнаружены одинаковые колонки!", "Слияние не удалось", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            analyzeDataButton.Enabled = true;
            messagesGridView.AdjustColumnsWidth();
            var tmpLanguageFilesFolder = new LanguageFilesFolder(Path.GetDirectoryName(openFileDialog.FileName));
            tmpLanguageFilesFolder.MessagesFiles.Add(openFileDialog.FileName);
            _languageFilesList.Add(tmpLanguageFilesFolder);
            BuildLanguageMenu();
            foreach (var menuItem in _languageMenu)
            {
                if (messagesGridView.Columns.Contains(menuItem.Language))
                    menuItem.Checked = true;
            }
            if ((_languageMenu.FindIndex(o => !o.Checked)) == -1)
                selectAllLanguagesToolStripMenuItem.Checked = true;
        }