Esempio n. 1
0
        private void Query()
        {
            Contract.Requires(Results != null);
            Contract.Ensures(Results.Any(ftr => ftr == null) == false);

            Results.Clear();
            if (ScriptText == null || string.IsNullOrEmpty(SearchText))
            {
                FIRE();
                return;
            }

            int res   = -1;
            int index = 0;

            while ((res = ScriptText.IndexOf(SearchText, res + 1, StringComparison.CurrentCultureIgnoreCase)) >= 0)
            {
                Results.Add(new FoundTextResult(index++)
                {
                    StartOffset = res, EndOffset = res + SearchText.Length
                });
            }

            _activeResultIndex = 0;
            FIRE();
        }
Esempio n. 2
0
        private void SetParametersInScript()
        {
            System.Text.StringBuilder sb;
            int first, last;

            first = ScriptText.IndexOf(ParameterDefinitionRegionStart);
            if (first < 0)
            {
                throw new ApplicationException("The script text seems to no longer contain a parameter definition start region");
            }
            first += ParameterDefinitionRegionStart.Length;
            last   = ScriptText.IndexOf(ParameterDefinitionRegionEnd);
            if (last < 0)
            {
                throw new ApplicationException("The script text seems to no longer contain a parameter definition end region");
            }
            sb = new System.Text.StringBuilder();
            sb.Append(ScriptText.Substring(0, first));
            sb.Append(ParameterDefinitionRegionCore);
            sb.Append(DefinitionRegionIndentation);
            sb.Append(ScriptText.Substring(last));
            ScriptText = sb.ToString();

            first = ScriptText.IndexOf(ParameterAssignmentRegionStart);
            if (first < 0)
            {
                throw new ApplicationException("The script text seems to no longer contain a parameter assignment start region");
            }
            first += ParameterAssignmentRegionStart.Length;
            last   = ScriptText.IndexOf(ParameterAssignmentRegionEnd);
            if (last < 0)
            {
                throw new ApplicationException("The script text seems to no longer contain a parameter assignment end region");
            }
            sb = new System.Text.StringBuilder();
            sb.Append(ScriptText.Substring(0, first));
            sb.Append(ParameterAssignmentRegionCore);
            sb.Append(AssignmentRegionIndentation);
            sb.Append(ScriptText.Substring(last));
            ScriptText = sb.ToString();
        }