private static void SaveFile(XtraTabControl pagesTabControl, CloudStorage cloudStorage, ICloudDirectoryEntry dir, String fileName, String content) { Stream data = null; Encoding fileEncoding = EncodingUtil.GetDefaultEncoding(); if (pagesTabControl != null) { fileEncoding = TabUtil.GetTabTextEncoding(pagesTabControl.SelectedTabPage); } byte[] contentBytes = fileEncoding.GetBytes(content); //Convert actual encoding to UTF8 (Dropbox standard) if (fileEncoding != Encoding.UTF8) { contentBytes = Encoding.Convert(fileEncoding, Encoding.UTF8, fileEncoding.GetBytes(content)); } try { data = new MemoryStream(contentBytes); cloudStorage.UploadFile(data, fileName, dir); } finally { if (data != null) { data.Close(); } } }
internal static bool SaveAllFiles(Form1 form, bool saveNewRecentFile = true) { CustomXtraTabControl pagesTabControl = form.pagesTabControl; XtraTabPage startTabPage = pagesTabControl.SelectedTabPage; bool fullSuccess = true; try { pagesTabControl.BeginUpdate(); foreach (XtraTabPage tabPage in pagesTabControl.TabPages) { if (!TabUtil.IsTabPageModified(tabPage)) { continue; } pagesTabControl.SelectedTabPage = tabPage; if (!SaveFile(saveNewRecentFile, form, false, false, true)) { fullSuccess = false; } } } finally { pagesTabControl.SelectedTabPage = startTabPage; pagesTabControl.EndUpdate(); } return(fullSuccess); }
//private static Time END_TIME_OF_ST = new Time(11, 0); #endregion #region Constructors /// <summary> /// Initializes a new instance of the <see cref="FormTimetables"/> class. /// </summary> /// <param name="generationAlgorithm">The generation algorithm.</param> public FormTimetables(IGenerationAlgorithm generationAlgorithm) { InitializeComponent(); // initialize generation algorithm this.CurrentGenerationAlgorithm = generationAlgorithm; tabUtil = new TabUtil(tabControlGeneratingTimetables); }
internal void InitializeForm() { InitializeComponent(); LanguageUtil.SetCurrentLanguage(this); Form1 form = (Form1)Owner; XtraTabControl pagesTabControl = form.pagesTabControl; Encoding encoding = TabUtil.GetTabTextEncoding(pagesTabControl.SelectedTabPage); changeIntoComboBox.SelectedIndex = EncodingUtil.GetEncodingIndexFromType(encoding); }
internal static void ReadCsv(CsvEditor form, bool withHeader, char delimiter, char quote) { Form1 form1 = (Form1)form.Owner; XtraTabControl pagesTabControl = form1.pagesTabControl; DataGridView csvGridView = form.csvGridView; //ContextMenuStrip contentContextMenuStrip = form.contentContextMenuStrip; Encoding textEncoding = EncodingUtil.GetDefaultEncoding(); String text = String.Empty; if (pagesTabControl != null) { textEncoding = TabUtil.GetTabTextEncoding(pagesTabControl.SelectedTabPage); text = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage).Text; } byte[] byteArray = textEncoding.GetBytes(text); using (MemoryStream stream = new MemoryStream(byteArray)) { try { using (CachedCsvReader csv = new CachedCsvReader(new StreamReader(stream), withHeader, delimiter, quote, '\\', '#', ValueTrimmingOptions.UnquotedOnly)) { csv.DefaultParseErrorAction = ParseErrorAction.AdvanceToNextLine; csv.SkipEmptyLines = true; if (String.IsNullOrEmpty(csv[0, 0])) { WindowManager.ShowAlertBox(form, LanguageUtil.GetCurrentLanguageString("NoResults", className)); } //PutCsvReaderIntoDataGrid(csv, csvGridView); csvGridView.Columns.Clear(); csvGridView.DataSource = ConvertCsvReaderToDataTable(csv); } //for (int i = 0; i < csvGridView.Rows.Count; i++) //{ // for (int j = 0; j < csvGridView.Rows[i].Cells.Count; j++) // { // csvGridView.Rows[i].Cells[j].ContextMenuStrip = contentContextMenuStrip; // } //} } catch (Exception exception) { WindowManager.ShowErrorBox(form, LanguageUtil.GetCurrentLanguageString("ContentError", className), exception); } } csvGridView.Refresh(); }
internal static bool Validate(Form1 form, bool showMessages, ValidationType type, Encoding encoding, out String error) { XtraTabControl pagesTabControl = form.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); error = String.Empty; Encoding fileEncoding = encoding ?? TabUtil.GetTabTextEncoding(pagesTabControl.SelectedTabPage); String text = pageTextBox.Text; //FormatManager.EncodeHTMLTagsForXMLValidation(pageTextBox.Text); byte[] byteArray = fileEncoding.GetBytes(text); MemoryStream contentStream = new MemoryStream(byteArray); XmlReaderSettings settings = new XmlReaderSettings { ValidationType = type, IgnoreComments = true, DtdProcessing = DtdProcessing.Parse //ProhibitDtd = false }; String filename = ProgramUtil.GetFilenameTabPage(form.pagesTabControl.SelectedTabPage); XmlReader reader = !String.IsNullOrEmpty(filename) ? XmlReader.Create(contentStream, settings, filename) : XmlReader.Create(contentStream, settings); try { while (reader.Read()) { } } catch (Exception exception) { error = String.Format(LanguageUtil.GetCurrentLanguageString("Error", className), exception.Message); if (showMessages) { WindowManager.ShowAlertBox(form, error); } return(false); } finally { contentStream.Dispose(); reader.Close(); } if (showMessages) { WindowManager.ShowInfoBox(form, LanguageUtil.GetCurrentLanguageString("Success", className)); } return(true); }
public MainWindow(string[] files = null) { InitializeComponent(); Logger.Info("Starting program"); _openFilesOnStartup = files; _tabUtil = new TabUtil(FileTabs, this); _tabUtil.ShowStartTab(); _tabUtil.SelectedTabChanged += UpdateMenuItems; _tabUtil.SelectedTabChanged += UpdateWindowName; _tabUtil.SavedVersionChanged += UpdateMenuItems; _tabUtil.FileSaved += UpdateMenuItems; UpdateMenuItems(null, null); LoadMostRecentDirectory(); TextUtil.Instance.ErrorEventHandler += (sender, s) => MessageBox.Show(s, Resources.Error, MessageBoxButtons.OK); }
internal void InitializeForm() { InitializeComponent(); SetLanguage(); Form1 form = (Form1)Owner; XtraTabControl pagesTabControl = form.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); //Encoding encoding = String.IsNullOrEmpty(pageTextBox.CustomEncoding) ? EncodingUtil.GetDefaultEncoding() : TabUtil.GetTabTextEncoding(pagesTabControl.SelectedTabPage); Encoding encoding = TabUtil.GetTabTextEncoding(pagesTabControl.SelectedTabPage); byte[] byteArray = encoding.GetBytes(pageTextBox.Text); byteArray = Encoding.Convert(encoding, Encoding.Default, byteArray); hexBox.ByteProvider = new DynamicByteProvider(byteArray); hexBox.Font = pageTextBox.Font; hexBox.ForeColor = pageTextBox.ForeColor; hexBox.BackColor = pageTextBox.BackColor; Width--; }
internal static void TabTextChange(Form1 form) { XtraTabControl pagesTabControl = form.pagesTabControl; CustomRichTextBox pageTextBox = ProgramUtil.GetPageTextBox(pagesTabControl.SelectedTabPage); if (pageTextBox.Text.GetHashCode().ToString() != pageTextBox.CustomOriginal && !TabUtil.IsTabPageModified(pagesTabControl.SelectedTabPage)) { pagesTabControl.SelectedTabPage.ImageIndex = pagesTabControl.SelectedTabPage.ImageIndex + 1; pagesTabControl.SelectedTabPage.Text = String.Format("*{0}", pagesTabControl.SelectedTabPage.Text); pageTextBox.CustomModified = true; } else if ((pageTextBox.Text.GetHashCode().ToString() == pageTextBox.CustomOriginal && TabUtil.IsTabPageModified(pagesTabControl.SelectedTabPage)) || String.IsNullOrEmpty(pageTextBox.Text) && String.IsNullOrEmpty(pageTextBox.CustomOriginal)) { switch (pagesTabControl.SelectedTabPage.ImageIndex) { case 1: pagesTabControl.SelectedTabPage.ImageIndex = 0; break; case 3: pagesTabControl.SelectedTabPage.ImageIndex = 2; break; } pagesTabControl.SelectedTabPage.Text = String.Format("{0}", pagesTabControl.SelectedTabPage.Text.Substring(1)); pageTextBox.CustomModified = false; } form.Text = String.Format("DtPad - {0}", pagesTabControl.SelectedTabPage.Text); }
private static bool ClosePage(Form1 form, bool showMessages, bool moreTabs, out bool closeAll) { XtraTabControl pagesTabControl = form.pagesTabControl; closeAll = false; if (showMessages && TabUtil.IsTabPageModified(pagesTabControl.SelectedTabPage)) { if (moreTabs) { DialogResult dialogResult = WindowManager.ShowQuestionCancelNoAllBox(form, LanguageUtil.GetCurrentLanguageString("SaveUntitled", className)); if ((dialogResult == DialogResult.Cancel) || (dialogResult == DialogResult.Yes && !FileManager.SaveFile(form, false))) { return(false); } if (dialogResult == DialogResult.Retry) { closeAll = true; } } else { DialogResult dialogResult = WindowManager.ShowQuestionCancelBox(form, LanguageUtil.GetCurrentLanguageString("SaveUntitled", className)); if ((dialogResult == DialogResult.Cancel) || (dialogResult == DialogResult.Yes && !FileManager.SaveFile(form, false))) { return(false); } } } else if (!showMessages) { closeAll = true; } CustomPanel sectionsPanel = ProgramUtil.GetSectionsPanel(pagesTabControl.SelectedTabPage); CustomPanel annotationPanel = ProgramUtil.GetAnnotationPanel(pagesTabControl.SelectedTabPage); if (sectionsPanel != null) { pagesTabControl.SelectedTabPage.Controls.Remove(sectionsPanel); } if (annotationPanel != null) { pagesTabControl.SelectedTabPage.Controls.Remove(annotationPanel); } if (pagesTabControl.TabPages.Count > 1) { String selectedTabName = pagesTabControl.SelectedTabPage.Name; int selectedTabIndex = pagesTabControl.SelectedTabPageIndex; pagesTabControl.TabPages.Remove(pagesTabControl.SelectedTabPage); ExplorerManager.RemoveNodeToTabExplorer(form, selectedTabName); pagesTabControl.SelectedTabPage = selectedTabIndex < pagesTabControl.TabPages.Count ? pagesTabControl.TabPages[selectedTabIndex] : pagesTabControl.TabPages[pagesTabControl.TabPages.Count - 1]; if (String.IsNullOrEmpty(ProgramUtil.GetFilenameTabPage(pagesTabControl.SelectedTabPage))) { ToggleTabFileTools(form, false); } OtherManager.FocusOnEditor(form); } else { ResetTab(form); } return(true); }
internal static bool SaveFileCoreWithEncoding(Form1 form, String fileName, String text, bool savingAll = false) { XtraTabControl pagesTabControl = form.pagesTabControl; bool success = true; FileStream fileStream = null; StreamWriter textFile = null; try { Encoding fileEncoding = EncodingUtil.GetDefaultEncoding(); if (pagesTabControl != null) { fileEncoding = TabUtil.GetTabTextEncoding(pagesTabControl.SelectedTabPage); } if (fileName.EndsWith(".xml")) { try { byte[] byteArray = fileEncoding.GetBytes(text); Encoding xmlEncoding; using (MemoryStream stream = new MemoryStream(byteArray)) { using (XmlTextReader xmlreader = new XmlTextReader(stream)) { xmlreader.MoveToContent(); xmlEncoding = xmlreader.Encoding; } } if (fileEncoding.GetType() != xmlEncoding.GetType()) { TabsUpdate(pagesTabControl, savingAll, UpdatePhase.End); //Useful to save all execution WindowManager.ShowInfoBox(form, LanguageUtil.GetCurrentLanguageString("EncodingXmlToSave", className)); TabsUpdate(pagesTabControl, savingAll, UpdatePhase.Begin); //Useful to save all execution fileEncoding = xmlEncoding; } if (!XmlValidator.Validate(form, ValidationType.DTD, false, fileEncoding)) { throw new FakeException(); } } catch (Exception) { TabsUpdate(pagesTabControl, savingAll, UpdatePhase.End); //Useful to save all execution DialogResult questionResult = WindowManager.ShowQuestionBox(form, LanguageUtil.GetCurrentLanguageString("InvalidXmlToSave", className)); TabsUpdate(pagesTabControl, savingAll, UpdatePhase.Begin); //Useful to save all execution if (questionResult == DialogResult.No) { throw; } } //if (!XmlValidator.Validate(form, ValidationType.DTD, false)) //{ // if (WindowManager.ShowQuestionBox(form, LanguageUtil.GetCurrentLanguageString("InvalidXmlToSave", className)) == DialogResult.No) // { // throw new FakeException(); // } //} //else //{ // byte[] byteArray = fileEncoding.GetBytes(text); // Encoding xmlEncoding; // using (var stream = new MemoryStream(byteArray)) // { // using (var xmlreader = new XmlTextReader(stream)) // { // xmlreader.MoveToContent(); // xmlEncoding = xmlreader.Encoding; // } // } // if (fileEncoding.GetType() != xmlEncoding.GetType()) // { // WindowManager.ShowInfoBox(form, LanguageUtil.GetCurrentLanguageString("EncodingXmlToSave", className)); // fileEncoding = xmlEncoding; // } //} } fileStream = File.Create(fileName); textFile = new StreamWriter(fileStream, fileEncoding); textFile.Write(text.Replace(ConstantUtil.newLine, Environment.NewLine)); TabUtil.SetTabTextEncoding(pagesTabControl.SelectedTabPage, fileEncoding); } catch (UnauthorizedAccessException) { Form form1 = null; if (pagesTabControl != null) { form1 = pagesTabControl.FindForm(); } WindowManager.ShowAlertBox(form1, LanguageUtil.GetCurrentLanguageString("UnauthorizedAccess", className)); success = false; } catch (FakeException) { success = false; } finally { if (textFile != null) { textFile.Close(); } if (fileStream != null) { fileStream.Close(); } } return(success); }
/// <summary> /// Initializes a new instance of the <see cref="FormRPproject"/> class. /// </summary> public FormMain() { InitializeComponent(); tabUtil = new TabUtil(tabControlTG); }
internal static bool SaveSession(Form1 form, bool forcedSaveAs) { ToolStrip sessionToolStrip = form.sessionToolStrip; ToolStripButton sessionToolStripButton = form.sessionToolStripButton; ToolStripDropDownButton sessionImageToolStripButton = form.sessionImageToolStripButton; ToolStripMenuItem closeToolStripMenuItem3 = form.closeToolStripMenuItem3; ToolStripMenuItem saveToolStripMenuItem2 = form.saveToolStripMenuItem2; ToolStripMenuItem exportAsZipToolStripMenuItem = form.exportAsZipToolStripMenuItem; ToolStripStatusLabel toolStripStatusLabel = form.toolStripStatusLabel; SaveFileDialog saveFileDialog = form.saveFileDialog; ToolStripProgressBar toolStripProgressBar = form.toolStripProgressBar; //SplitContainer verticalSplitContainer = form.verticalSplitContainer; ToolStripMenuItem renameSessionToolStripMenuItem = form.renameSessionToolStripMenuItem; ToolStripMenuItem favouriteSessionToolStripMenuItem = form.favouriteSessionToolStripMenuItem; ToolStripMenuItem listFilesToolStripMenuItem = form.listFilesToolStripMenuItem; ToolStripMenuItem aspectToolStripMenuItem = form.aspectToolStripMenuItem; ToolStripMenuItem useDefaultToolStripMenuItem = form.useDefaultToolStripMenuItem; ToolStripMenuItem closeButtonToolStripMenuItem = form.closeButtonToolStripMenuItem; ToolStripMenuItem tabPositionToolStripMenuItem = form.tabPositionToolStripMenuItem; ToolStripMenuItem tabOrientationToolStripMenuItem = form.tabOrientationToolStripMenuItem; ToolStripMenuItem sessionPropertiesToolStripMenuItem = form.sessionPropertiesToolStripMenuItem; int tabsFillWithText = 0; foreach (XtraTabPage tabPage in form.pagesTabControl.TabPages) { if (TabUtil.IsTabPageModified(tabPage) && !String.IsNullOrEmpty(ProgramUtil.GetPageTextBox(tabPage).Text)) { tabsFillWithText++; if (WindowManager.ShowQuestionBox(form, LanguageUtil.GetCurrentLanguageString("SaveAllFiles", className)) != DialogResult.Yes) { return(false); } if (!FileManager.SaveAllFiles(form, false)) { WindowManager.ShowAlertBox(form, LanguageUtil.GetCurrentLanguageString("SaveAllFilesFailed", className)); return(false); } if (forcedSaveAs) { WindowManager.ShowInfoBox(form, LanguageUtil.GetCurrentLanguageString("SaveSession", className)); } break; } if (!String.IsNullOrEmpty(ProgramUtil.GetPageTextBox(tabPage).Text)) { tabsFillWithText++; } } if (tabsFillWithText == 0) { WindowManager.ShowInfoBox(form, LanguageUtil.GetCurrentLanguageString("NoContent", className)); return(false); } saveFileDialog.InitialDirectory = FileUtil.GetInitialFolder(form); saveFileDialog.Filter = LanguageUtil.GetCurrentLanguageString("FileDialog", className); saveFileDialog.FilterIndex = 0; saveFileDialog.FileName = "*.dps"; try { String fileName; if (!forcedSaveAs) { fileName = sessionImageToolStripButton.DropDownItems[0].Text; } else { if (saveFileDialog.ShowDialog() != DialogResult.OK) { return(false); } fileName = saveFileDialog.FileName; if (!fileName.EndsWith(".dps")) { fileName += ".dps"; } } String sessionName = WriteSessionXML(form, fileName); toolStripProgressBar.Visible = false; sessionToolStrip.Visible = true; sessionToolStripButton.Text = sessionName; closeToolStripMenuItem3.Enabled = true; saveToolStripMenuItem2.Enabled = true; exportAsZipToolStripMenuItem.Enabled = true; renameSessionToolStripMenuItem.Enabled = true; favouriteSessionToolStripMenuItem.Enabled = true; listFilesToolStripMenuItem.Enabled = true; aspectToolStripMenuItem.Enabled = true; useDefaultToolStripMenuItem.Enabled = true; sessionPropertiesToolStripMenuItem.Enabled = true; if (!useDefaultToolStripMenuItem.Checked) { closeButtonToolStripMenuItem.Enabled = true; tabPositionToolStripMenuItem.Enabled = true; tabOrientationToolStripMenuItem.Enabled = true; } else { closeButtonToolStripMenuItem.Enabled = false; tabPositionToolStripMenuItem.Enabled = false; tabOrientationToolStripMenuItem.Enabled = false; } ConfigUtil.UpdateParameter("LastUserFolder", Path.GetDirectoryName(fileName)); FileListManager.SetNewRecentSession(form, fileName); //verticalSplitContainer.Panel1.Padding = new Padding(0); toolStripStatusLabel.Text = String.Format(LanguageUtil.GetCurrentLanguageString("Saved", className), sessionToolStripButton.Text); } catch (Exception exception) { WindowManager.ShowErrorBox(form, exception.Message, exception); return(false); } return(true); }