Ejemplo n.º 1
0
        public virtual WordRegionBase getLastWord()
        {
            LastWordRegion wr = new LastWordRegion();

            wr.startWord = this.startWord;
            wr.endWord = this.endWord;
            wr.type = this.type;
            return wr;
        }
Ejemplo n.º 2
0
        public void GenerateSensibleArea(int startPos,int[] positions, ScintillaControl sci)
        {
            if (isMonitoring)
                DeactiveMonitorWords();

            //if (sci.CodePage == 65001 && startPos!=0)
            //{

            //    int strLen = Encoding.UTF8.GetByteCount(
            //        sci.Text.Substring(0,startPos)
            //        );
            //    startPos = strLen;
            //}

             //startPos = sci.MBSafePosition(startPos);
             WordRegionBase last=null;
               WordRegionBase wr=null;
            for (int i = 0; i < positions.Length; i+=2)
            {

                if (i == positions.Length-2)
                {
                    wr = new LastWordRegion();
                }
                else
                {
                    wr = new WordRegion();
                }

                wr.type = WordRegionBase.kind.place;

                wr.startWord = startPos + positions[i];
                wr.endWord = startPos + positions[i + 1];

                if (last != null)
                {
                    last.NextWord = wr;
                }

                last = wr;
                Words.Add(wr);
            }

            firstWord = Words[0];

            lastWord = wr;
            fileName = ASContext.Context.CurrentClass.Name;

            if (MonitorOnWordsActive != null)
                MonitorOnWordsActive(this);

            ActiveMonitorWords();

            MoveNextWord();
        }
Ejemplo n.º 3
0
        public void CreateTemporaryVar()
        {
            sciMonitor = ASContext.CurSciControl;

            if (Words.Count == 0)
            {
                LastWordRegion wb = new LastWordRegion();
                wb.startWord = wb.endWord = sciMonitor.CurrentPos;
                Words.Add(wb);
                firstWord = wb;
                numCursors = 1;
            }

                declarationWord = new WordRegion();

                sciMonitor.TextInserted += new TextInsertedHandler(insertTemporaryText);
                sciMonitor.TextDeleted += new TextDeletedHandler(deleteTemporaryText);
            // it became firstword in the list

                declarationWord.startWord = declarationWord.endWord = firstWord.startWord;
                declarationWord.NextWord = firstWord;
                firstWord = declarationWord;
        }