示例#1
0
        static public int ClosestNonEmptyLineTo(this ScintillaGateway document, int line)
        {
            if (document.GetLine(line).HasText())
            {
                return(line);
            }

            int lineCount = document.GetLineCount();

            for (int i = 1; i < lineCount; i++)
            {
                if (line - i >= 0)
                {
                    if (document.GetLine(line - i).HasText())
                    {
                        return(line - i);
                    }
                }

                if (line + i < lineCount)
                {
                    if (document.GetLine(line + i).HasText())
                    {
                        return(line + i);
                    }
                }
            }

            return(-1);
        }
示例#2
0
        public Position SelectFirstWordOfLine(ScintillaGateway scintilla)
        {
            int lineNumber = scintilla.GetCurrentLineNumber();

            var lineContent = scintilla.GetLine(lineNumber);

            if (lineContent.StartsWith("#"))
            {
                return(null);
            }

            int endOfFirstWordOnLine = lineContent.IndexOf(' ');

            if (endOfFirstWordOnLine == -1)
            {
                return(null);
            }

            var positionOfLine          = scintilla.PositionFromLine(lineNumber);
            var cursorpos               = scintilla.GetCurrentPos() - positionOfLine;
            var cursorIsWithinFirstWord = cursorpos.Value <= endOfFirstWordOnLine;

            if (!cursorIsWithinFirstWord)
            {
                return(null);
            }

            var newPosition = new Position(positionOfLine.Value + endOfFirstWordOnLine);

            scintilla.SetAnchor(newPosition);
            scintilla.SetCurrentPos(positionOfLine);

            return(newPosition);
        }
示例#3
0
        /// <summary>
        /// Find and capitalize all Markdown Titles in the document.
        /// </summary>
        internal static void CapitalizeMDTitles()
        {
            // Get scintilla gateway.
            IntPtr           currentScint     = PluginBase.GetCurrentScintilla();
            ScintillaGateway scintillaGateway = new ScintillaGateway(currentScint);

            string line;

            // Get the number of lines in the document.
            int numLines = scintillaGateway.GetLineCount();

            // Traverse through each line.
            for (int i = 0; i < numLines; i++)
            {
                // Set line to the current line.
                line = scintillaGateway.GetLine(i);

                // Check each character in the line to see if it begins
                // with a '#'.
                for (int j = 0; j < line.Length; j++)
                {
                    if (line[j] == '#')
                    {
                        // If it begins with '#', select the line and call
                        // the CapitalizeTitle method with these parameters.
                        scintillaGateway.GotoLine(i);
                        scintillaGateway.SetSel(scintillaGateway.PositionFromLine(i), scintillaGateway.GetLineEndPosition(i));
                        CapitalizeTitle();
                        break;
                    }
                    // Support for Setext headers.
                    else if ((line[j] == '-' || line[j] == '=') && !IsAlphaNumeric(line))
                    {
                        // If it begins with '-' or '=', select the previous line and call
                        // the CapitalizeTitle method with these parameters.
                        scintillaGateway.GotoLine(i - 1);
                        scintillaGateway.SetSel(scintillaGateway.PositionFromLine(i - 1), scintillaGateway.GetLineEndPosition(i - 1));
                        CapitalizeTitle();
                        break;
                    }
                }
            }
        }
示例#4
0
        private static bool SearchNextSectionOrPerform(string sectionName, int offset)
        {
            var editor = new ScintillaGateway(PluginBase.GetCurrentScintilla());

            using (TextToFind textToFind = new TextToFind(offset, editor.GetTextLength() - 1, sectionName))
            {
                Position sectionPosition = editor.FindText(0, textToFind);
                if (sectionPosition.Value >= 0)
                {
                    if (editor.GetLine(editor.LineFromPosition(sectionPosition)).StartsWith("*"))
                    {
                        CurrentSearchOffset = sectionPosition.Value + sectionName.Length;
                        return(SearchNextSectionOrPerform(sectionName, CurrentSearchOffset));
                    }
                    ScrollToLine(editor.LineFromPosition(sectionPosition));
                    CurrentSearchOffset = sectionPosition.Value + sectionName.Length;
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }
示例#5
0
 public static string GetCurrentLine(this ScintillaGateway document)
 {
     return(document.GetLine(document.LineFromPosition(document.GetCurrentPos())));
 }
示例#6
0
        internal static void Process(bool isScript, string script = null, Action <object> setResult = null, bool forceErrorInOutput = false)
        {
            Init();

            if (!Config.Instance.KeepVariablesBetweenEvaluations)
            {
                LastVariables = new Dictionary <string, object>();
            }
            else if (LastVariables != null)
            {
                LastVariables
                .ToList()
                .FindAll(kvp => kvp.Value is StronglyTypedVariable)
                .ForEach(kvp => LastVariables.Remove(kvp.Key));
            }

            evaluator.Variables = LastVariables;

            evaluator.OptionForceIntegerNumbersEvaluationsAsDoubleByDefault = Config.Instance.OptionForceIntegerNumbersEvaluationsAsDoubleByDefault;
            evaluator.OptionCaseSensitiveEvaluationActive = Config.Instance.CaseSensitive;
            evaluator.OptionsSyntaxRules.MandatoryLastStatementTerminalPunctuator      = false;
            evaluator.OptionsSyntaxRules.IsNewKeywordForAnonymousExpandoObjectOptional = true;
            evaluator.OptionsSyntaxRules.AllowSimplifiedCollectionSyntax     = true;
            evaluator.OptionsSyntaxRules.SimplifiedCollectionMode            = SimplifiedCollectionMode.List;
            evaluator.OptionsSyntaxRules.InitializerPropertyValueSeparators  = new[] { "=", ":" };
            evaluator.OptionsSyntaxRules.InitializerAllowStringForProperties = true;

            try
            {
                if (BNpp.SelectionLength <= 0)
                {
                    IScintillaGateway
                        scintilla = new ScintillaGateway(PluginBase.GetCurrentScintilla());
                    int line      = scintilla.GetCurrentLineNumber();
                    int end       = scintilla.GetLineEndPosition(line);
                    int start     = 0;

                    if (isScript)
                    {
                        // TODO special start script tag
                    }
                    else
                    {
                        int i;
                        for (i = line; i > 0 && scintilla.GetLine(line).TrimStart().StartsWith("."); i--)
                        {
                            ;
                        }

                        start = scintilla.PositionFromLine(i);

                        for (i = line; i < scintilla.GetLineCount() && scintilla.GetLine(line).TrimStart().StartsWith("."); i++)
                        {
                            ;
                        }

                        end = scintilla.GetLineEndPosition(i);
                    }

                    if (setResult == null)
                    {
                        scintilla.SetSel(new Position(start), new Position(end));
                    }
                }

                setResult ??= Config.Instance.CurrentResultOut.SetResult;

                script ??= BNpp.SelectedText;

                Config.Instance.LastScripts.Insert(0, script);
                while (Config.Instance.LastScripts.Count > Config.Instance.NbrOfLastScriptToKeep)
                {
                    Config.Instance.LastScripts.RemoveAt(Config.Instance.LastScripts.Count - 1);
                }

                Config.Instance.LastScripts = Config.Instance.LastScripts.Distinct().ToList();

                object result = isScript ? evaluator.ScriptEvaluate(evaluator.RemoveComments(script)) : evaluator.Evaluate(evaluator.RemoveComments(script.TrimEnd(';')));

                setResult(result);
            }
            catch (Exception exception)
            {
                if (Config.Instance.ShowExceptionInMessageBox && !forceErrorInOutput)
                {
                    MessageBox.Show(exception.Message);
                }

                if (Config.Instance.ShowExceptionInOutput || forceErrorInOutput)
                {
                    setResult(exception);
                }

                if (!string.IsNullOrEmpty(CustomEvaluations.Print))
                {
                    setResult(CustomEvaluations.Print);
                }
            }
            finally
            {
                LastVariables = evaluator.Variables;
                Config.Instance.Save();
            }
        }
示例#7
0
        /// <summary>Trennt die Punkte aus dem Aktuellem Text</summary>
        /// <param name="settings"></param>
        public void getMeasuresFromCurrentCADdy(Settings settings)
        {
            IScintillaGateway editor = new ScintillaGateway(PluginBase.GetCurrentScintilla());

            standpunkte.Clear();
            if (editor != null)
            {
                Int32 countLines = editor.GetLineCount();
                ClassCADdyStandpunkt cuStandpunkt = null;
                for (Int32 lc = 0; lc < countLines; lc++)
                {
                    String cuLine = editor.GetLine(lc);
                    // Auch Excel Splitbar machen ;-)
                    cuLine = cuLine.Replace('\t', ' ');                         // Tab durch Leerzeichen ersetzten
                    cuLine = cuLine.Replace(',', settings.Decimalseperator[0]); // , durch . ersetzten
                    String[] split = ClassStringTools.GetFieldsManyDelimiters(cuLine, ' ', true);
                    if (split != null)
                    {
                        if ((4 >= split.Length) && (split.Length >= 3)) // Standpunkt
                        {
                            if (split[0].StartsWith("-"))
                            {
                                if (cuStandpunkt != null)
                                {
                                    standpunkte.Add(cuStandpunkt);
                                }
                                cuStandpunkt             = new ClassCADdyStandpunkt();
                                cuStandpunkt.LineNumber  = lc;
                                cuStandpunkt.Punktnummer = ClassStringTools.trimToEmpty(split[settings.PointName_Column - 1]);
                                if (settings.PointName_ToUpper)
                                {
                                    cuStandpunkt.Punktnummer = cuStandpunkt.Punktnummer.ToUpper();
                                }
                                Double temp = Double.NaN;
                                if (ClassConverters.StringToDouble(split[settings.Messd_I_Column - 1], out temp))
                                {
                                    cuStandpunkt.I = temp;
                                    // code
                                    cuStandpunkt.Code = ClassStringTools.trimToEmpty(split[settings.Messd_STPKCode_Column - 1]);
                                    if (split.Length == 4)
                                    {   // code
                                        cuStandpunkt.Bemerkung = ClassStringTools.trimToEmpty(split[settings.Messd_STPKDescript_Column - 1]);
                                    }
                                }
                            }
                        }
                        if (split.Length >= 5) // = Zielpunkt
                        {
                            if (cuStandpunkt != null)
                            {
                                ClassCADdyZielung zielung = new ClassCADdyZielung();
                                {
                                    zielung.Zielpunkt = ClassStringTools.trimToEmpty(split[settings.PointName_Column - 1]);
                                    if (settings.PointName_ToUpper)
                                    {
                                        zielung.Zielpunkt = zielung.Zielpunkt.ToUpper();
                                    }
                                    if (!ClassStringTools.IsNullOrWhiteSpace(zielung.Zielpunkt))
                                    {
                                        Double temp = Double.NaN;
                                        if (ClassConverters.StringToDouble(split[settings.Messd_Hz_Column - 1], out temp))
                                        {
                                            zielung.Hz = temp;
                                            if (ClassConverters.StringToDouble(split[settings.Messd_S_Column - 1], out temp))
                                            {
                                                zielung.S = temp;
                                                if (ClassConverters.StringToDouble(split[settings.Messd_V_Column - 1], out temp))
                                                {
                                                    zielung.V = temp;
                                                    if (ClassConverters.StringToDouble(split[settings.Messd_D_Column - 1], out temp))
                                                    {
                                                        zielung.D = temp;
                                                        if (split.Length >= 6)
                                                        {   // code
                                                            zielung.Code = ClassStringTools.trimToEmpty(split[settings.Messd_Code_Column - 1]);
                                                            if (split.Length >= 7)
                                                            {   // Beschreibung
                                                                zielung.Bemerkung = ClassStringTools.trimToEmpty(split[settings.Messd_Descript_Column - 1]);
                                                            }
                                                        }
                                                    }
                                                    zielung.LineNumber = lc;
                                                    cuStandpunkt.Zielungen.Add(zielung);
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                // den letzten nicht vergessen
                if (cuStandpunkt != null)
                {
                    standpunkte.Add(cuStandpunkt);
                }
            }
            hasMessdaten = standpunkte.Count > 0;
        }
示例#8
0
        internal static void C7GSPFunction()
        {
            //Preparing some variables
            var scintilla = new ScintillaGateway(PluginBase.GetCurrentScintilla());

            //Starting Undo "recording". Next steps can be undo with one undo command
            scintilla.BeginUndoAction();

            //Is there any text selected
            if (scintilla.GetSelText() != "")
            {
                //Calculating selections first line begin
                Position selStartPos  = scintilla.GetSelectionStart();
                int      startLineNum = scintilla.LineFromPosition(selStartPos);
                Position startLinePos = scintilla.PositionFromLine(startLineNum);

                //Calculating selections last line end
                Position selEndPos  = scintilla.GetSelectionEnd();
                int      endLineNum = scintilla.LineFromPosition(selEndPos);
                Position endLinePos = scintilla.GetLineEndPosition(endLineNum);

                //Setting the selection as needed
                scintilla.SetSel(startLinePos, endLinePos);

                //Preparing needed variables
                int ignoreMe = 0;

                //Gathered information
                string line = "";
                int    lineFeedLen = 0;
                int    tt = 0, np = 0, na = 0, gtrc = 0;
                string ns        = "";
                string modifiers = "";

                //Loopping through the selected lines
                int i = startLineNum;
                while (i <= endLineNum)
                {
                    //Line to the memory
                    line = scintilla.GetLine(i);

                    if (line.Length > 2)
                    {
                        //Checking did we get a fresh GT line (three first chars are int (TT))
                        if (int.TryParse(line.Substring(0, 3), out ignoreMe))
                        {
                            //Gathering the basic GT information
                            tt   = int.Parse(line.Substring(0, 3));
                            np   = int.Parse(line.Substring(5, 2));
                            na   = int.Parse(line.Substring(9, 3));
                            ns   = line.Substring(14, 16).Replace(" ", string.Empty);
                            gtrc = na = int.Parse(line.Substring(56, 3));

                            //Move carret to the begin of the line
                            scintilla.SetCurrentPos(scintilla.PositionFromLine(i));
                            //Delete all from the line
                            scintilla.DelLineRight();
                            //Add text
                            scintilla.InsertText(scintilla.PositionFromLine(i), "C7GSI:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",GTRC=" + gtrc + ";");

                            //Checking next line if it it's not empty
                            if (scintilla.GetLine(i + 1).Length >= 9)
                            {
                                //And the line will contain header which begins with MTT
                                if (scintilla.GetLine(i + 1).Substring(9, 3) == "MTT")
                                {
                                    //If yes then take the line under it to the variable
                                    modifiers = scintilla.GetLine(i + 2);

                                    //If linefeed is CRLF, then two extra characters in the end of line
                                    if (scintilla.GetEOLMode() == 0)
                                    {
                                        lineFeedLen = 2;
                                    }
                                    else
                                    {
                                        lineFeedLen = 1;
                                    }

                                    //Removing lines which not needed anymore
                                    scintilla.SetCurrentPos(scintilla.PositionFromLine(i + 1));
                                    scintilla.LineDelete();
                                    scintilla.LineDelete();

                                    endLineNum = endLineNum - 2;

                                    //Determining which variables the modifiers line will contain
                                    if (modifiers.Length == (12 + lineFeedLen))
                                    {
                                        //Insert command to the line
                                        scintilla.InsertText(scintilla.PositionFromLine(i + 1), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MTT=" + modifiers.Substring(9, 3).Replace(" ", string.Empty) + ";");
                                    }
                                    else if (modifiers.Length == (17 + lineFeedLen))
                                    {
                                        if (!string.IsNullOrWhiteSpace(modifiers.Substring(9, 3)))
                                        {
                                            //Insert command to the line
                                            scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MTT=" + modifiers.Substring(9, 3).Replace(" ", string.Empty) + ";");
                                            //Go to end of the current line
                                            scintilla.GotoPos(scintilla.GetLineEndPosition(scintilla.LineFromPosition(scintilla.GetCurrentPos())));
                                            //Adding new line
                                            scintilla.NewLine();
                                            endLineNum++;
                                        }
                                        scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MNP=" + modifiers.Substring(14, 3).Replace(" ", string.Empty) + ";");
                                    }
                                    else if (modifiers.Length == (22 + lineFeedLen))
                                    {
                                        if (!string.IsNullOrWhiteSpace(modifiers.Substring(9, 3)))
                                        {
                                            scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MTT=" + modifiers.Substring(9, 3).Replace(" ", string.Empty) + ";");
                                            scintilla.GotoPos(scintilla.GetLineEndPosition(scintilla.LineFromPosition(scintilla.GetCurrentPos())));
                                            scintilla.NewLine();
                                            endLineNum++;
                                        }
                                        if (!string.IsNullOrWhiteSpace(modifiers.Substring(14, 3)))
                                        {
                                            scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MNP=" + modifiers.Substring(14, 3).Replace(" ", string.Empty) + ";");
                                            scintilla.GotoPos(scintilla.GetLineEndPosition(scintilla.LineFromPosition(scintilla.GetCurrentPos())));
                                            scintilla.NewLine();
                                            endLineNum++;
                                        }
                                        scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MNA=" + modifiers.Substring(19, 3).Replace(" ", string.Empty) + ";");
                                    }
                                    else
                                    {
                                        if (!string.IsNullOrWhiteSpace(modifiers.Substring(9, 3)))
                                        {
                                            scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MTT=" + modifiers.Substring(9, 3).Replace(" ", string.Empty) + ";");
                                            scintilla.GotoPos(scintilla.GetLineEndPosition(scintilla.LineFromPosition(scintilla.GetCurrentPos())));
                                            scintilla.NewLine();
                                            endLineNum++;
                                        }
                                        if (!string.IsNullOrWhiteSpace(modifiers.Substring(14, 3)))
                                        {
                                            scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MNP=" + modifiers.Substring(14, 3).Replace(" ", string.Empty) + ";");
                                            scintilla.GotoPos(scintilla.GetLineEndPosition(scintilla.LineFromPosition(scintilla.GetCurrentPos())));
                                            scintilla.NewLine();
                                            endLineNum++;
                                        }
                                        if (!string.IsNullOrWhiteSpace(modifiers.Substring(19, 3)))
                                        {
                                            scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MNA=" + modifiers.Substring(19, 3).Replace(" ", string.Empty) + ";");
                                            scintilla.GotoPos(scintilla.GetLineEndPosition(scintilla.LineFromPosition(scintilla.GetCurrentPos())));
                                            scintilla.NewLine();
                                            endLineNum++;
                                        }
                                        scintilla.InsertText(scintilla.GetCurrentPos(), "C7GSC:TT=" + tt + ",NP=" + np + ",NA=" + ",NS=" + ns + ",MNS=" + modifiers.Substring(24, (modifiers.Length - 24 - lineFeedLen)).Replace(" ", string.Empty) + ";");
                                    }
                                }
                            }
                        }
                    }

                    i++;
                }
            }
            scintilla.EndUndoAction();
        }
示例#9
0
        /// <summary>Testet, um welche Datenstruktut es sich handeln könnte</summary>
        /// <param name="settings"></param>
        /// <returns></returns>
        public static enWhatIAm check(Settings settings)
        {
            enWhatIAm         result = enWhatIAm.iDontKnown;
            IScintillaGateway editor = new ScintillaGateway(PluginBase.GetCurrentScintilla());

            if (editor.GetLineCount() > 0)
            {
                String cuLine = editor.GetLine(0);
                cuLine = cuLine.Replace('\t', ' ');                         // Tab durch Leerzeichen ersetzten
                cuLine = cuLine.Replace(',', settings.Decimalseperator[0]); // , durch . ersetzten
                String[] split = ClassStringTools.GetFieldsManyDelimiters(cuLine, ' ', true);
                if (split != null)
                {
                    switch (split.Length)
                    {
                    case 3:
                        if (split[settings.PointName_Column - 1].StartsWith("-"))
                        {
                            result = enWhatIAm.CADdyMeasure;
                        }
                        break;

                    case 4:
                        if (split[settings.PointName_Column - 1].StartsWith("-"))
                        {
                            result = enWhatIAm.CADdyMeasure;
                        }
                        else if (split[settings.Koord_RW_E_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Koord_RW_E_Column - 1]))
                        {
                            if (split[settings.Koord_HW_N_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Koord_HW_N_Column - 1]))
                            {
                                if (split[settings.Koord_Elev_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Koord_Elev_Column - 1]))
                                {
                                    // Koordinaten ohne Code
                                    result = enWhatIAm.CADdyCoord;
                                }
                            }
                        }
                        break;

                    case 5:
                        if (split[settings.Koord_RW_E_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Koord_RW_E_Column - 1]))
                        {
                            if (split[settings.Koord_HW_N_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Koord_HW_N_Column - 1]))
                            {
                                if (split[settings.Koord_Elev_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Koord_Elev_Column - 1]))
                                {
                                    if (!split[settings.Koord_Code_Column - 1].Contains(settings.Decimalseperator))
                                    {
                                        result = enWhatIAm.CADdyCoord;
                                    }
                                }
                            }
                        }
                        if (result == enWhatIAm.iDontKnown)
                        {
                            if (split[settings.Messd_Hz_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_Hz_Column - 1]))
                            {
                                if (split[settings.Messd_V_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_V_Column - 1]))
                                {
                                    if (split[settings.Messd_S_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_S_Column - 1]))
                                    {
                                        if (split[settings.Messd_D_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_D_Column]))
                                        {
                                            result = enWhatIAm.CADdyMeasure;
                                        }
                                    }
                                }
                            }
                        }
                        break;

                    case 6:
                        if (split[settings.Koord_RW_E_Column - 1].Contains(settings.Decimalseperator))
                        {
                            if (split[settings.Koord_HW_N_Column - 1].Contains(settings.Decimalseperator))
                            {
                                if (split[settings.Koord_Elev_Column - 1].Contains(settings.Decimalseperator))
                                {
                                    if (!split[settings.Koord_Code_Column - 1].Contains(settings.Decimalseperator))
                                    {
                                        result = enWhatIAm.CADdyCoord;
                                    }
                                }
                            }
                        }
                        if (result == enWhatIAm.iDontKnown)
                        {
                            if (split[settings.Messd_Hz_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_Hz_Column - 1]))
                            {
                                if (split[settings.Messd_V_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_V_Column - 1]))
                                {
                                    if (split[settings.Messd_S_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_S_Column - 1]))
                                    {
                                        if (split[settings.Messd_D_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_D_Column - 1]))
                                        {
                                            if (!split[settings.Messd_Code_Column - 1].Contains(settings.Decimalseperator))
                                            {
                                                result = enWhatIAm.CADdyMeasure;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        break;

                    case 7:
                        if (split[settings.Messd_Hz_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_Hz_Column - 1]))
                        {
                            if (split[settings.Messd_V_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_V_Column - 1]))
                            {
                                if (split[settings.Messd_S_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_S_Column - 1]))
                                {
                                    if (split[settings.Messd_D_Column - 1].Contains(settings.Decimalseperator) || ClassStringTools.IsNumeric(split[settings.Messd_D_Column - 1]))
                                    {
                                        if (!split[settings.Messd_Code_Column - 1].Contains(settings.Decimalseperator))
                                        {
                                            result = enWhatIAm.CADdyMeasure;
                                        }
                                    }
                                }
                            }
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
            return(result);
        }