Beispiel #1
0
        public void OpenFile(string filename)
        {
            BeginUpdate();
            bool _succes = false;

            FileReadResult readResult;

            CodeSnippetCollection _collection = ReadCollection(filename, out readResult);

            switch (readResult)
            {
            case FileReadResult.ErrorUnknownIdentifier:
            case FileReadResult.ErrorVersionToOld:
            case FileReadResult.ErrorReadingFile:
                FileHelperLegacy.OpenFileLegacy(this, filename, _passwordHelper, _mainform, TreeHelper, out _succes);
                EndUpdate();
                return;

            case FileReadResult.FileNotFound:
            case FileReadResult.OpenCanceled:
                if (CodeLib.Instance.CodeSnippets.Count == 0)
                {
                    NewDoc(true);
                }
                EndUpdate();
                return;
            }

            CodeLib.Instance.Load(_collection);

            if (!CodeLib.Instance.CodeSnippets.ContainsKey(Constants.TRASHCAN))
            {
                CodeLib.Instance.CodeSnippets.Add(CodeSnippet.TrashcanSnippet());
            }

            if (!CodeLib.Instance.CodeSnippets.ContainsKey(Constants.CLIPBOARDMONITOR))
            {
                CodeLib.Instance.CodeSnippets.Add(CodeSnippet.ClipboardMonitorSnippet());
            }

            CodeCollectionToForm(string.Empty);

            EndUpdate();

            TreeHelper.FindNodeByPath(_collection.LastSelected);

            Config.LastOpenedFile = filename;
            FileInfo fi = new FileInfo(filename);

            Config.LastOpenedDir = fi.Directory.FullName;

            CurrentFile = filename;
            CodeLib.Instance.Changed = false;
            _lastOpenedDate          = DateTime.Now;
            SetTitle();
        }
Beispiel #2
0
        public static void OpenFileLegacy(FileHelper fileHelper, string filename, PasswordHelper passwordHelper, FormCodeLibrary mainform, TreeviewHelper TreeHelper, out bool _succes)
        {
            // Legacy
            CodeSnippetCollectionOld _collectionOld = ReadCollectionLegacy2(filename, passwordHelper.Password, passwordHelper, mainform, out _succes);

            if (_succes == false)
            {
                // Double Legacy
                _collectionOld = ReadCollectionLegacy1(filename, passwordHelper.Password, out _succes);
            }

            if (_succes == false)
            {
                MessageBox.Show($"Could not open the file '{filename}'", "Error opening file", MessageBoxButtons.OK, MessageBoxIcon.Error);
                fileHelper.NewDoc();
                fileHelper.EndUpdate();
                return;
            }



            CodeLib.Instance.LoadLegacy(_collectionOld);

            if (!CodeLib.Instance.CodeSnippets.ContainsKey(Constants.TRASHCAN))
            {
                CodeLib.Instance.CodeSnippets.Add(CodeSnippet.TrashcanSnippet());
            }

            if (!CodeLib.Instance.CodeSnippets.ContainsKey(Constants.CLIPBOARDMONITOR))
            {
                CodeLib.Instance.CodeSnippets.Add(CodeSnippet.ClipboardMonitorSnippet());
            }

            fileHelper.CodeCollectionToForm(string.Empty);

            fileHelper.EndUpdate();

            TreeHelper.FindNodeByPath(_collectionOld.LastSelected);

            Config.LastOpenedFile = filename;
            FileInfo fi = new FileInfo(filename);

            Config.LastOpenedDir = fi.Directory.FullName;

            fileHelper.CurrentFile     = filename;
            CodeLib.Instance.Changed   = false;
            fileHelper._lastOpenedDate = DateTime.Now;
            fileHelper.SetTitle();
            _succes = true;
        }