C# 클래스 SIL.FieldWorks.FwCoreDlgs.FindCollectorEnv

Handles finding text
The current implementation doesn't work for different styles, tags, and WSs that are applied by the VC.
상속: FindReplaceCollectorEnvBase
파일 보기 프로젝트 열기: sillsdev/FieldWorks 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
m_LimitLocation LocationInfo
m_LocationFound LocationInfo
m_StartLocation LocationInfo
m_fHaveWrapped bool
m_fHitLimit bool

공개 메소드들

메소드 설명
AddString ( ITsString tss ) : void

Adds the string. Overridden to check for strings that were added inside of an open property.

AddStringAltMember ( int tag, int ws, IVwViewConstructor _vwvc ) : void

Member AddStringAltMember

AddStringProp ( int tag, IVwViewConstructor _vwvc ) : void

Member AddStringProp

FindCollectorEnv ( IVwViewConstructor vc, ISilDataAccess sda, int hvoRoot, int frag, IVwPattern vwPattern, IVwSearchKiller searchKiller ) : System

Initializes a new instance of the T:FindCollectorEnv class.

If the base environment is not null, it is used for various things, such as obtaining 'outer object' information.

FindNext ( LocationInfo startLocation ) : LocationInfo

Finds the next occurence.

보호된 메소드들

메소드 설명
CheckForNonPropInfo ( ) : void

Override to check whether the start location or the limit location is in a literal string or some other added property.

CheckForStartLocationAndLimit ( int tag ) : void

Checks to see if the current location is the starting location. It will also check to see if the current location is the limit (or passed the limit). NOTE: This method doesn't check any character position as it should only be used for properties that won't be searched (i.e. that the find will skip over)

CurrentLocationIsStartLocation ( int tag ) : bool

Returns whether or not the property at the current location is the starting location. NOTE: This method will return false if there is no start location

CurrentStackIsSameAsLocationInfo ( LocationInfo info, int tag ) : bool

Determines if the current stack loacation and the specified tag match the location specified in the given LocationInfo

DisplayThisObject ( int hvoItem, int tag ) : bool

Determines whether to search this object based on whether we've reached our start location yet.

DoFind ( ITsString tss, int tag ) : void

Does the find.

PassedLimit ( int tag, int testIch ) : bool

Check to see whether we have passed the limit so we can stop searching and not just go on and on endlessly in an infinite loop forever and ever until the user gets fed up and throws the computer out the window.

메소드 상세

AddString() 공개 메소드

Adds the string. Overridden to check for strings that were added inside of an open property.
public AddString ( ITsString tss ) : void
tss ITsString The TSS.
리턴 void

AddStringAltMember() 공개 메소드

Member AddStringAltMember
public AddStringAltMember ( int tag, int ws, IVwViewConstructor _vwvc ) : void
tag int tag
ws int ws
_vwvc IVwViewConstructor _vwvc
리턴 void

AddStringProp() 공개 메소드

Member AddStringProp
public AddStringProp ( int tag, IVwViewConstructor _vwvc ) : void
tag int tag
_vwvc IVwViewConstructor _vwvc
리턴 void

CheckForNonPropInfo() 보호된 메소드

Override to check whether the start location or the limit location is in a literal string or some other added property.
protected CheckForNonPropInfo ( ) : void
리턴 void

CheckForStartLocationAndLimit() 보호된 메소드

Checks to see if the current location is the starting location. It will also check to see if the current location is the limit (or passed the limit). NOTE: This method doesn't check any character position as it should only be used for properties that won't be searched (i.e. that the find will skip over)
protected CheckForStartLocationAndLimit ( int tag ) : void
tag int The tag of the current object.
리턴 void

CurrentLocationIsStartLocation() 보호된 메소드

Returns whether or not the property at the current location is the starting location. NOTE: This method will return false if there is no start location
protected CurrentLocationIsStartLocation ( int tag ) : bool
tag int The tag of the property.
리턴 bool

CurrentStackIsSameAsLocationInfo() 보호된 메소드

Determines if the current stack loacation and the specified tag match the location specified in the given LocationInfo
protected CurrentStackIsSameAsLocationInfo ( LocationInfo info, int tag ) : bool
info LocationInfo The LocationInfo to check.
tag int The tag of the current property.
리턴 bool

DisplayThisObject() 보호된 메소드

Determines whether to search this object based on whether we've reached our start location yet.
protected DisplayThisObject ( int hvoItem, int tag ) : bool
hvoItem int The hvo item.
tag int The tag.
리턴 bool

DoFind() 보호된 메소드

Does the find.
protected DoFind ( ITsString tss, int tag ) : void
tss ITsString The original string.
tag int Tag
리턴 void

FindCollectorEnv() 공개 메소드

Initializes a new instance of the T:FindCollectorEnv class.
If the base environment is not null, it is used for various things, such as obtaining 'outer object' information.
public FindCollectorEnv ( IVwViewConstructor vc, ISilDataAccess sda, int hvoRoot, int frag, IVwPattern vwPattern, IVwSearchKiller searchKiller ) : System
vc IVwViewConstructor The view constructor.
sda ISilDataAccess Date access to get prop values etc.
hvoRoot int The root object to display.
frag int The fragment.
vwPattern IVwPattern The find/replace pattern.
searchKiller IVwSearchKiller Used to interrupt a find/replace
리턴 System

FindNext() 공개 메소드

Finds the next occurence.
public FindNext ( LocationInfo startLocation ) : LocationInfo
startLocation LocationInfo The selection level information, property tag and /// character offset that represent the location where the search should start.
리턴 LocationInfo

PassedLimit() 보호된 메소드

Check to see whether we have passed the limit so we can stop searching and not just go on and on endlessly in an infinite loop forever and ever until the user gets fed up and throws the computer out the window.
protected PassedLimit ( int tag, int testIch ) : bool
tag int The tag of the property whose string is being searched
testIch int The character offset position being tested. May be -1 if /// no match was found in this string, in which case we treat it as being beyond the /// limit if this string is the string that contains the limit.
리턴 bool

프로퍼티 상세

m_LimitLocation 보호되어 있는 프로퍼티

Location where find next should stop because it has wrapped around
protected LocationInfo m_LimitLocation
리턴 LocationInfo

m_LocationFound 보호되어 있는 프로퍼티

Found match location
protected LocationInfo m_LocationFound
리턴 LocationInfo

m_StartLocation 보호되어 있는 프로퍼티

Location to start current find next
protected LocationInfo m_StartLocation
리턴 LocationInfo

m_fHaveWrapped 보호되어 있는 프로퍼티

True if the find has already wrapped, false otherwise
protected bool m_fHaveWrapped
리턴 bool

m_fHitLimit 보호되어 있는 프로퍼티

True if we have passed the limit, false otherwise
protected bool m_fHitLimit
리턴 bool