Example #1
0
        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();
                }
            }
        }
Example #2
0
        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);
        }
Example #3
0
        //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);
        }
Example #4
0
        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);
        }
Example #5
0
        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();
        }
Example #6
0
        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);
        }
Example #7
0
        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);
        }
Example #8
0
        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--;
        }
Example #9
0
        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);
        }
Example #10
0
        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);
        }
Example #11
0
        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);
        }
Example #13
0
        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);
        }