internal static void ConvertHtmlToText(Form1 form) { XtraTabControl pagesTabControl = form.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); String error; if (!XmlValidator.Validate(form, false, ValidationType.Schema, null, out error)) { WindowManager.ShowAlertBox(form, error); return; } FormatManager.FormatXml(form, false, false); String text = ConstantUtil.HtmlTags.Aggregate(pageTextBox.Text, (current, keyValuePair) => current.Replace(keyValuePair.Value, keyValuePair.Value == " " ? " " : keyValuePair.Key)); //String text = pageTextBox.Text; //foreach (KeyValuePair<String, String> keyValuePair in ConstantUtil.HtmlTags) //Tags //{ // text = text.Replace(keyValuePair.Value, keyValuePair.Value == " " ? " " : keyValuePair.Key); //} //HTML head text = text.Substring(text.IndexOf("<body>") + 6); //HTML lists tags text = text.Replace("<ul>", String.Empty).Replace("</ul>", String.Empty).Replace("<li>", "- ").Replace("<ol>", "- ").Replace("</li>", String.Empty); //Other HTML tags int startIndex = text.IndexOf("<"); while (startIndex != -1) { int endIndex = text.IndexOf(">", startIndex) + 1; text = text.Remove(startIndex, endIndex - startIndex); startIndex = text.IndexOf("<"); } pageTextBox.SelectAll(); pageTextBox.SelectedText = text; pageTextBox.SelectAll(); TextManager.OutdentSelectedLines(form); TextManager.OutdentSelectedLines(form); TextManager.RefreshUndoRedoExternal(form); }
internal static void FormatXml(Form1 form, bool validationFirst = true, bool indentation = true) { XtraTabControl pagesTabControl = form.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); if (validationFirst && !XmlValidator.Validate(form, ValidationType.Schema, false)) { return; } int indentationNum = indentation ? 1 : 0; XmlDocument xd = new XmlDocument(); xd.LoadXml(pageTextBox.Text); //xd.LoadXml(EncodeHTMLTagsForXMLValidation(pageTextBox.Text)); StringBuilder builder = new StringBuilder(); using (StringWriter writer = new StringWriter(builder)) { using (XmlTextWriter xtw = new XmlTextWriter(writer)) { xtw.IndentChar = '\t'; xtw.Indentation = indentationNum; xtw.Formatting = Formatting.Indented; xd.WriteTo(xtw); } pageTextBox.SelectAll(); pageTextBox.SelectedText = builder.ToString(); //pageTextBox.SelectedText = DecodeHTMLTagsForXMLValidation(builder.ToString()); TextManager.RefreshUndoRedoExternal(form); } }
internal static void Normalize(Form1 form) { XtraTabControl pagesTabControl = form.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); pageTextBox.SelectAll(); pageTextBox.SelectedText = FormatManager.EncodeHTMLTagsForXMLValidation(pageTextBox.Text); TextManager.RefreshUndoRedoExternal(form); }
private static bool ReplaceAllInOneFile(Form1 form, bool searchInAllFiles) { CustomRichTextBox textBox = ProgramUtil.GetPageTextBox(form.pagesTabControl.SelectedTabPage); TextBox searchTextBox = form.searchPanel.searchTextBox; TextBox replaceTextBox = form.searchPanel.replaceTextBox; ToolStripStatusLabel toolStripStatusLabel = form.toolStripStatusLabel; CheckBox caseCheckBox = form.searchPanel.caseCheckBox; CheckBox useRegularExpressionsCheckBox = form.searchPanel.regularExpressionsCheckBox; if (String.IsNullOrEmpty(searchTextBox.Text)) { return(false); } FileListManager.SetNewSearchHistory(form, searchTextBox.Text); String textWhereToSearch; String textToSearch; GetTextCaseNormalization(form, out textWhereToSearch, out textToSearch); int positionSearchedText; int selectionLength; SearchReplaceUtil.FindStringPositionAndLength(textWhereToSearch, textToSearch, SearchReplaceUtil.SearchType.First, useRegularExpressionsCheckBox.Checked, textBox, out positionSearchedText, out selectionLength); if (positionSearchedText != -1) { int counter = SearchReplaceUtil.SearchCountOccurency(form, false, true); textBox.SelectAll(); if (caseCheckBox.Checked) { textBox.SelectedText = Replace(useRegularExpressionsCheckBox.Checked, textBox.Text, GetTextNewLineNormalization(searchTextBox.Text), GetTextNewLineNormalization(replaceTextBox.Text), StringComparison.Ordinal); } else { textBox.SelectedText = Replace(useRegularExpressionsCheckBox.Checked, textBox.Text, GetTextNewLineNormalization(searchTextBox.Text), GetTextNewLineNormalization(replaceTextBox.Text), StringComparison.OrdinalIgnoreCase); } TextManager.RefreshUndoRedoExternal(form); textBox.Select(0, 0); toolStripStatusLabel.Text = String.Format("{0} {1}", counter, LanguageUtil.GetCurrentLanguageString("Replaced", className, counter)); return(true); } if (!searchInAllFiles) { String notFoundMessage = LanguageUtil.GetCurrentLanguageString("NotFound", className); WindowManager.ShowInfoBox(form, notFoundMessage); toolStripStatusLabel.Text = notFoundMessage; } return(false); }
internal static void ChangeSection(Form1 form, int index, bool active) { XtraTabControl pagesTabControl = form.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); CustomPanel sectionsPanel = ProgramUtil.GetSectionsPanel(pagesTabControl.SelectedTabPage); CheckedListBox sectionsCheckedListBox = (CheckedListBox)sectionsPanel.Controls["sectionsCheckedListBox"]; String content = pageTextBox.Text; String section = sectionsCheckedListBox.Items[index].ToString(); bool flag = false; StringBuilder builder = new StringBuilder(); foreach (String str in content.Split(new[] { Convert.ToChar(ConstantUtil.newLine) })) { if (builder.Length > 0) { builder.Append(ConstantUtil.newLine); //builder.AppendLine(); } if (String.IsNullOrEmpty(str)) { continue; } if (str.StartsWith("#SECTION ", StringComparison.OrdinalIgnoreCase)) { //flag = str.EndsWith(" " + section, StringComparison.OrdinalIgnoreCase); flag = (str == ("#SECTION " + section)); builder.Append(str); } else if (flag) { if (active) { builder.Append(str.StartsWith(ConstantUtil.hostsComments) ? str.Substring(ConstantUtil.hostsComments.Length) : str); } else if (!str.StartsWith(ConstantUtil.hostsComments)) { builder.Append(ConstantUtil.hostsComments).Append(str); } else { builder.Append(str); } } else { builder.Append(str); } } pageTextBox.SelectAll(); pageTextBox.SelectedText = builder.ToString(); TextManager.RefreshUndoRedoExternal(form); pageTextBox.ScrollToCaret(); }
internal static void ConvertTextToHtml(Form1 form) { XtraTabControl pagesTabControl = form.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); String tab = "\t"; if (ConfigUtil.GetBoolParameter("SpacesInsteadTabs")) { tab = ConstantUtil.tabIntoSpaces; } String text = ConstantUtil.HtmlTags.Where(keyValuePair => keyValuePair.Value != " ").Aggregate(pageTextBox.Text, (current, keyValuePair) => current.Replace(keyValuePair.Key, keyValuePair.Value)); //foreach (KeyValuePair<String, String> keyValuePair in ConstantUtil.HtmlTags) //Tags //{ // if (keyValuePair.Value != " ") // { // text = text.Replace(keyValuePair.Key, keyValuePair.Value); // } //} text = "<p>" + text + "</p>"; text = text.Replace(" ", " "); //Spaces text = text.Replace(ConstantUtil.newLine + ConstantUtil.newLine, "</p><p>"); //Paragraphs text = text.Replace(ConstantUtil.newLine, "<br />" + ConstantUtil.newLine); //Returns text = text.Replace("</p><p>", "</p>" + ConstantUtil.newLine + "<p>"); pageTextBox.SelectAll(); pageTextBox.SelectedText = text; pageTextBox.SelectAll(); TextManager.IndentSelectedLines(form); TextManager.IndentSelectedLines(form); pageTextBox.SelectAll(); pageTextBox.SelectedText = "<html>" + ConstantUtil.newLine + tab + "<head>" + ConstantUtil.newLine + tab + tab + "<title></title>" + ConstantUtil.newLine + tab + "</head>" + ConstantUtil.newLine + tab + "<body>" + ConstantUtil.newLine + pageTextBox.Text + ConstantUtil.newLine + tab + "</body>" + ConstantUtil.newLine + "</html>"; TextManager.RefreshUndoRedoExternal(form); }
//private static void PutCsvReaderIntoDataGrid(CsvReader csv, DataGridView csvGridView) //{ // String[] csvHeaders = csv.GetFieldHeaders(); // if (csvHeaders.Length > 0) // { // foreach (String csvHeader in csvHeaders) // { // csvGridView.Columns.Add(csvHeader, csvHeader); // } // } // else // { // for (int i = 0; i < csv.FieldCount; i++) // { // csvGridView.Columns.Add(String.Format(LanguageUtil.GetCurrentLanguageString("StandardColumnLabel", className), i), String.Format(LanguageUtil.GetCurrentLanguageString("StandardColumnLabel", className), i)); // } // } // do // { // object[] csvRow = new object[csvGridView.Columns.Count]; // for (int i = 0; i < csv.FieldCount; i++) // { // csvRow[i] = csv[i]; // } // csvGridView.Rows.Add(csvRow); // } while (csv.ReadNextRecord()); //} #endregion Read Methods #region Write Methods internal static void WriteCsv(CsvEditor form, char quote, char delimiter) { Form1 form1 = (Form1)form.Owner; XtraTabControl pagesTabControl = form1.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); DataGridView csvGridView = form.csvGridView; CheckBox headerCheckBox = form.headerCheckBox; String finalText = String.Empty; String quoteStr = (quote == '\0') ? String.Empty : quote.ToString(); if (headerCheckBox.Checked) { for (int i = 0; i < csvGridView.Columns.Count; i++) { finalText += quoteStr + csvGridView.Columns[i].HeaderText + quoteStr + delimiter; } finalText = finalText.Substring(0, finalText.Length - 1) + ConstantUtil.newLine; } for (int i = 0; i < csvGridView.Rows.Count - 1; i++) { for (int j = 0; j < csvGridView.Rows[i].Cells.Count; j++) { if (csvGridView.Rows[i].Cells[j].Value == null) { finalText += quoteStr + String.Empty + quoteStr + delimiter; } else { finalText += quoteStr + csvGridView.Rows[i].Cells[j].Value + quoteStr + delimiter; } } finalText = finalText.Substring(0, finalText.Length - 1) + ConstantUtil.newLine; } finalText = finalText.Substring(0, finalText.Length - 1); pageTextBox.SelectAll(); pageTextBox.SelectedText = finalText; TextManager.RefreshUndoRedoExternal(form1); }