站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > NetBeans API Javadoc (Current Development Version)

FinderFactory.VisColPosFwdFinder (Editor Library) - NetBeans API Javadoc (Current Development Version)

org.netbeans.modules.editor.lib/1 1.14.0 3

org.netbeans.editor
Class FinderFactory.VisColPosFwdFinder

java.lang.Object
  extended by org.netbeans.editor.FinderFactory.AbstractFinder
      extended by org.netbeans.editor.FinderFactory.VisColPosFwdFinder
All Implemented Interfaces:
Finder
Enclosing class:
FinderFactory

public static final class FinderFactory.VisColPosFwdFinder
extends FinderFactory.AbstractFinder

Finder for getting position from visual column knowledge. It is kind of reverse finder for PosVisColFwdFinder. The starting position for find should be the start of particular line. The found position will be that position in document that corresponds to the column position. This method can be used only in case the font is superfixed i.e. all the characters of all font styles have the same width.


Field Summary
 
Fields inherited from class org.netbeans.editor.FinderFactory.AbstractFinder
found
 
Constructor Summary
FinderFactory.VisColPosFwdFinder()
           
 
Method Summary
 int find(int bufferStartPos, char[] buffer, int offset1, int offset2, int reqPos, int limitPos)
          finds BOL on current line
 void reset()
          Mark that first call will follow
 void setTabSize(int tabSize)
           
 void setVisCol(int visCol)
          Set visual column that this finder will try to reach
 
Methods inherited from class org.netbeans.editor.FinderFactory.AbstractFinder
isFound
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FinderFactory.VisColPosFwdFinder

public FinderFactory.VisColPosFwdFinder()
Method Detail

setVisCol

public void setVisCol(int visCol)
Set visual column that this finder will try to reach


setTabSize

public void setTabSize(int tabSize)

reset

public void reset()
Mark that first call will follow

Specified by:
reset in interface Finder
Overrides:
reset in class FinderFactory.AbstractFinder

find

public int find(int bufferStartPos,
                char[] buffer,
                int offset1,
                int offset2,
                int reqPos,
                int limitPos)
finds BOL on current line

Parameters:
bufferStartPos - begining position of the buffer (not search area).
buffer - buffer with chars to be searched
offset1 - offset of begining of searchable area in buffer. No searching below this offset can be performed.
offset2 - offset of end of searchable area in buffer. No searching beyond this offset can be performed.
reqPos - required position. Initially it is the begining search position requested by caller. In subsequent calls it is the same value as returned from previous call to find() method.
limitPos - is filled with position beyond which search cannot go. (i.e. forward: pos < limitPos and backward: pos >= limitPos) Some finders i.e. finder that tries to find some word with whole-words-only flag turned on can benefit from this information. If the searched word is at the very end of the document the finder wouldn't normally find it as it would request the next buffer even when the whole word was matched because the finder needs to find white space to know the word ended there. However this would be beyond the search area so EOT exception would be raised. To correctly manage this situation finder must care for limitPos. When it sees the word and knows this is the last text in document it signals that it found the word.
Returns:
in case the string was found, find() method returns the position (not offset) where the string starts (and must also set some flag resulting to that isFound() method will return true). If the string was not yet found, the function should return position (not offset) where the next search should continue. If this position is greater or equal than limit position (lower than limit position for backward search), searching will stop resulting in -1 as returned position. The position returned will be passed as reqPos in next call to find() method.

org.netbeans.modules.editor.lib/1 1.14.0 3

Built on May 28 2007.  |  Portions Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.