C# 클래스 SIL.FieldWorks.XWorks.DictionaryPublicationDecorator

상속: SIL.FieldWorks.FDO.Application.DomainDataByFlidDecoratorBase
파일 보기 프로젝트 열기: sillsdev/FieldWorks 1 사용 예제들

Private Properties

프로퍼티 타입 설명
BuildExcludedObjects void
BuildFieldsToFilter void
BuildHomographInfo void
ExcludeSense void
GetSenseNumber string
GetSenseNumberTss ITsString
HasMoreThanOneSense bool
IsPublishableLexEntryRef bool
IsPublishableLexRef bool
IsPublishablePicture bool

공개 메소드들

메소드 설명
AddNotification ( IVwNotifyChange nchng ) : void

We want to intercept notifications. So instead of registering the root box with the wrapped SDA, we register ourself.

DictionaryPublicationDecorator ( SIL.FieldWorks.FDO.FdoCache cache, ISilDataAccessManaged domainDataByFlid, int mainFlid ) : System

Make one. By default we filter to the main dictionary.

DictionaryPublicationDecorator ( SIL.FieldWorks.FDO.FdoCache cache, ISilDataAccessManaged domainDataByFlid, int mainFlid, ICmPossibility publication ) : System

Create one. The SDA passed MAY be the DomainDataByFlid of the cache, but it is usually another decorator.

GetObjIndex ( int hvoOwn, int flid, int hvo ) : int
OwnerOutlineNameForWs ( ILexSense sense, int wsVern, HomographConfiguration hv ) : ITsString

Returns a TsString with the entry headword and a sense number if there are more than one senses.

PropChanged ( int hvo, int tag, int ivMin, int cvIns, int cvDel ) : void

When we get a PropChanged, it is really meant for our m_notifiee. However, it may have invalid arguments for ivMin etc, because the item(s) inserted or deleted in the real property may be in a different (or no) place in the filtered property. Rather than trying to figure out what really changed, we issue a PropChanged which is interpreted as changing the whole property.

Refresh ( ) : void

Update whatever needs it.

RemoveNotification ( IVwNotifyChange nchng ) : void
VecProp ( int hvo, int tag ) : int[]
get_BooleanProp ( int hvo, int tag ) : bool
get_IntProp ( int hvo, int tag ) : int
get_MultiStringAlt ( int hvo, int tag, int ws ) : ITsString
get_StringProp ( int hvo, int tag ) : ITsString
get_VecItem ( int hvo, int tag, int index ) : int
get_VecSize ( int hvo, int tag ) : int

비공개 메소드들

메소드 설명
BuildExcludedObjects ( ) : void

Build the set of objects we want to hide: all the ones that refer to the Publication. Perhaps strictly we should exclude the ones that refer to it in DoNotPublishIn, but those are the only properties that refer to this target.

BuildFieldsToFilter ( ) : void
BuildHomographInfo ( ) : void
ExcludeSense ( ILexSense sense ) : void
GetSenseNumber ( ILexSense sense ) : string
GetSenseNumberTss ( ILexSense sense ) : ITsString
HasMoreThanOneSense ( ILexEntry entry ) : bool
IsPublishableLexEntryRef ( int hvoSource, int hvoRef ) : bool
IsPublishableLexRef ( int hvoRef ) : bool

Enhance JohnT: there is some evidence (see LexReference.ExtractMinimalLexReferences) that LexReferences of the three sequence types should be allowed to show up if only ONE item is present. However, such a 'relation' doesn't seem very useful, and a longer one that is reduced to a single item by filtering is even less likely to be what the user wants.

IsPublishablePicture ( int hvo ) : bool

메소드 상세

AddNotification() 공개 메소드

We want to intercept notifications. So instead of registering the root box with the wrapped SDA, we register ourself.
public AddNotification ( IVwNotifyChange nchng ) : void
nchng IVwNotifyChange
리턴 void

DictionaryPublicationDecorator() 공개 메소드

Make one. By default we filter to the main dictionary.
public DictionaryPublicationDecorator ( SIL.FieldWorks.FDO.FdoCache cache, ISilDataAccessManaged domainDataByFlid, int mainFlid ) : System
cache SIL.FieldWorks.FDO.FdoCache
domainDataByFlid ISilDataAccessManaged
mainFlid int
리턴 System

DictionaryPublicationDecorator() 공개 메소드

Create one. The SDA passed MAY be the DomainDataByFlid of the cache, but it is usually another decorator.
public DictionaryPublicationDecorator ( SIL.FieldWorks.FDO.FdoCache cache, ISilDataAccessManaged domainDataByFlid, int mainFlid, ICmPossibility publication ) : System
cache SIL.FieldWorks.FDO.FdoCache
domainDataByFlid ISilDataAccessManaged
mainFlid int
publication ICmPossibility
리턴 System

GetObjIndex() 공개 메소드

public GetObjIndex ( int hvoOwn, int flid, int hvo ) : int
hvoOwn int
flid int
hvo int
리턴 int

OwnerOutlineNameForWs() 공개 메소드

Returns a TsString with the entry headword and a sense number if there are more than one senses.
public OwnerOutlineNameForWs ( ILexSense sense, int wsVern, HomographConfiguration hv ) : ITsString
sense ILexSense
wsVern int
hv SIL.FieldWorks.FDO.DomainImpl.HomographConfiguration
리턴 ITsString

PropChanged() 공개 메소드

When we get a PropChanged, it is really meant for our m_notifiee. However, it may have invalid arguments for ivMin etc, because the item(s) inserted or deleted in the real property may be in a different (or no) place in the filtered property. Rather than trying to figure out what really changed, we issue a PropChanged which is interpreted as changing the whole property.
public PropChanged ( int hvo, int tag, int ivMin, int cvIns, int cvDel ) : void
hvo int
tag int
ivMin int
cvIns int
cvDel int
리턴 void

Refresh() 공개 메소드

Update whatever needs it.
public Refresh ( ) : void
리턴 void

RemoveNotification() 공개 메소드

public RemoveNotification ( IVwNotifyChange nchng ) : void
nchng IVwNotifyChange
리턴 void

VecProp() 공개 메소드

public VecProp ( int hvo, int tag ) : int[]
hvo int
tag int
리턴 int[]

get_BooleanProp() 공개 메소드

public get_BooleanProp ( int hvo, int tag ) : bool
hvo int
tag int
리턴 bool

get_IntProp() 공개 메소드

public get_IntProp ( int hvo, int tag ) : int
hvo int
tag int
리턴 int

get_MultiStringAlt() 공개 메소드

public get_MultiStringAlt ( int hvo, int tag, int ws ) : ITsString
hvo int
tag int
ws int
리턴 ITsString

get_StringProp() 공개 메소드

public get_StringProp ( int hvo, int tag ) : ITsString
hvo int
tag int
리턴 ITsString

get_VecItem() 공개 메소드

public get_VecItem ( int hvo, int tag, int index ) : int
hvo int
tag int
index int
리턴 int

get_VecSize() 공개 메소드

public get_VecSize ( int hvo, int tag ) : int
hvo int
tag int
리턴 int