InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IUserDictService Class Referenceabstract
Inheritance diagram for IUserDictService:
IPMUnknownCPMUnknown< IUserDictService >CHLUserDictService

Public Types

enum  { kDefaultIID = IID_IUSERDICTSERVICE }
 
enum  WordType { kIsAWord, kNotAWord }
 
enum  UserDictType { kNone, kIsDict, kNotDict }
 
enum  CreateType { kDoNotCreate, kCreateIfNotFound, kAlwaysCreate, kCreateMemoryOnly }
 

Public Member Functions

virtual bool16 AddToUserDict (IUserDict *userDict, const UserDictWordList &constWordList, bool16 caseSensitive, bool16 addToNotList=kFalse)=0
 
virtual bool16 AddToUserDict (IUserDict *userDict, const WideString &rWord, const HyphenPoints *pPoints=nil, bool16 caseSensitive=kFalse)=0
 
virtual bool16 RemoveFromUserDict (IUserDict *userDict, const WideString &rWord)=0
 
virtual bool16 ClearUserDict (IUserDict *userDict)=0
 
virtual UserDictType GetCorrectedWord (IUserDict *userDict, const WideString &rWord, WideString *pCorrectedWord)=0
 
virtual bool16 GetHyphenatedWord (IUserDict *userDict, const WideString &rWord, WideString *pHyphenatedWord)=0
 
virtual bool16 AddUserDictToSearchPath (IUserDict *userDict, int32 index, bool16 addToVendorList=kTrue, bool16 initializing=kFalse)=0
 
virtual bool16 MoveUserDictInSearchPath (int32 oldIndex, int32 newIndex)=0
 
virtual bool16 RemoveUserDictFromSearchPath (IUserDict *userDict)=0
 
virtual bool16 ReplaceUserDictInSearchPath (IUserDict *originalUserDict, IUserDict *newUserDict)=0
 
virtual int32 QueryAllUserDictsInSearchPath (K2Vector< IUserDict * > &userDictList, bool16 bOpenFiles)=0
 
virtual int32 RemoveAllUserDictsFromSearchPath (void)=0
 
virtual IUserDictQueryNotUserDict (void)=0
 
virtual IUserDictQueryMainUserDict (void)=0
 
virtual bool16 SetMainUserDict (IUserDict *userDict)=0
 
virtual IUserDictCreateNewUserDict (const PMString &filePathName, int16 createFlags)=0
 
virtual bool16 MigrateUserDict (const IDFile &existingDictFile, const IDFile &newDictFile)=0
 
virtual bool16 InitializePaths (void)=0
 
virtual bool16 IsReadOnly (IUserDict *userDict)=0
 
virtual bool16 Flush ()=0
 
virtual void FlushUserDicts (void)=0
 
virtual const PMStringGetDefaultFilePathName (void) const =0
 
virtual const PMStringGetNotFilePathName (void) const =0
 
virtual bool16 RemoveFromMainDict (const WideString &rWord)=0
 
virtual bool16 UndoRemoveFromMainDict (const WideString &rWord)=0
 
virtual bool16 ClearRemovedFromMainDict (IUserDict *userDict)=0
 
virtual bool16 CloseNotClamFile ()=0
 
virtual bool16 IsWordInMainDict (const WideString &rWord, const HyphenPoints *pPoints=nil)=0
 
virtual bool16 Bind (IUserDict *userDict, const WideString &rChangeFrom, const WideString &rChangeTo)=0
 
virtual bool16 Unbind (IUserDict *userDict, const WideString &rChangeFrom, const WideString &rChangeTo)=0
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Member Enumeration Documentation

CreateType

See Also
CreateNewUserDict
Enumerator
kDoNotCreate 

Do not create a file.

kCreateIfNotFound 

Create file only if no file was found.

kAlwaysCreate 

Create file even if file already exists. This replace the existing file.

kCreateMemoryOnly 

Create a memory only dictionary. No file is created.

        Memory dictionaries are used for word lists like Ignored words and

        document dictionaries. They are added to the list of dictionaries that are 

        checked with this call. No other call is needed. To remove and delete the

        dictionary call RemoveUserDictFromSearchPath. If RemoveUserDictFromSearchPath

        is not called the dictionary we be release and memory deleted in this destructor.

Member Function Documentation

virtual bool16 IUserDictService::AddToUserDict (IUserDictuserDict,
const UserDictWordListconstWordList,
bool16 caseSensitive,
bool16 addToNotList = kFalse 
)
pure virtual

Adds words to user dictionary.

If words are in NotUserDict(see QueryNotUserDict) then the add also removes word from NotUserDict. If userDict is the same as QueryNotUserDict then words are added to NotUserDict and removed from main user dict.

Parameters
userDictuser dictionary to add to
constWordListwords to add
caseSensitiveif kFalse words to add are lower case which service providers should interperate as "case insensitive"
addToNotListif kTrue add words to not list. Only works for the Main and memory user dictionaries.
Returns
bool16 kTrue if words were added.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::AddToUserDict (IUserDictuserDict,
const WideStringrWord,
const HyphenPointspPoints = nil,
bool16 caseSensitive = kFalse 
)
pure virtual

Adds word to user dictionary.

If word was in NotUserDict(see QueryNotUserDict) then the add also removes word from NotUserDict. If userDict is the same as QueryNotUserDict then word is added to NotUserDict and removed from main user dict.

Parameters
userDictuser dictionary to add to
rWordword to add
pPointshyphen points to give word
caseSensitiveif kFalse word is added as lower case which service providers should interperate as "case insensitive"
Returns
bool16 kTrue if word was added.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::AddUserDictToSearchPath (IUserDictuserDict,
int32 index,
bool16 addToVendorList = kTrue,
bool16 initializing = kFalse 
)
pure virtual

Adds user dictionary to dictionaries list.

Parameters
userDictuser dictionary to be added.
indexindex in the dictionaries list where user dictionary will be inserted. -1 if add to the end of the list
addToVendorListkTrue if the user dictionary should be added to IVendorList. kFalse ONLY FOR USE INSIDE IUserDictService implementation. Calling code should always use kTrue.
initializingkTrue if in initializing code. kTrue ONLY FOR USE INSIDE IUserDictService implementation. Calling code should always use kFalse.
Returns
bool16 kTrue if the user dictionary was added successfully.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::Bind (IUserDictuserDict,
const WideStringrChangeFrom,
const WideStringrChangeTo 
)
pure virtual

UNSUPPORTED

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::ClearRemovedFromMainDict (IUserDictuserDict)
pure virtual

Clears removed words from main dictionary.

This really clear the words in NotUserDict (see QueryNotUserDict).

Returns
bool16 kTrue if words were removed.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::ClearUserDict (IUserDictuserDict)
pure virtual

Clears word from user dictionary.

Parameters
userDictuser dictionary to clear from
Returns
bool16 kTrue if words were removed.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::CloseNotClamFile ()
pure virtual

UNSUPPORTED

Implemented in CHLUserDictService.

virtual IUserDict* IUserDictService::CreateNewUserDict (const PMStringfilePathName,
int16 createFlags 
)
pure virtual

Creates a new user dictionary. Caller is responsible for IUserDict.

Parameters
filePathNameFile path of the user dictionary. Parameter is ignored if kCreateMemoryOnly.
createFlags0 = do not create, 1 = create if not found, 2 = always create 3 = create memory only dictionary. See CreateType.
Returns
IUserDict* pointer to the new user dictionary.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::Flush ()
pure virtual

Flushes data files.

Returns
bool16 kTrue if succeeded.

Implemented in CHLUserDictService.

virtual void IUserDictService::FlushUserDicts (void )
pure virtual

Flushes user dictionary list.

Implemented in CHLUserDictService.

virtual UserDictType IUserDictService::GetCorrectedWord (IUserDictuserDict,
const WideStringrWord,
WideStringpCorrectedWord 
)
pure virtual

Checks user dictionary for word.

Parameters
userDictuser dictionary to check. nil checks main user dictionary
rWordword to look for
pCorrectedWord[OUT] same as rWord unless word was added with a correction. This string is empty when kNotDict is returned.
Returns
UserDictType if and how found. kNone if not in user dictionary. kIsDict if in user dictionary as a word. kNotDict if in user dictionary as not a word.

Implemented in CHLUserDictService.

virtual const PMString& IUserDictService::GetDefaultFilePathName (void ) const
pure virtual

Returns default data file path name.

Returns
PMString& default data file path string.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::GetHyphenatedWord (IUserDictuserDict,
const WideStringrWord,
WideStringpHyphenatedWord 
)
pure virtual

UNSUPPORTED

Implemented in CHLUserDictService.

virtual const PMString& IUserDictService::GetNotFilePathName (void ) const
pure virtual

UNSUPPORTED

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::InitializePaths (void )
pure virtual

Creates a user dict object for each path saved in the vendor data.

Returns
bool16 kTrue if successfully created user dict object for each path.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::IsReadOnly (IUserDictuserDict)
pure virtual

Checks if the user dictionary is read only.

Parameters
userDictuser dictionary to check for.
Returns
bool16 kTrue if the user dictionary is read only, kFalse otherwise.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::IsWordInMainDict (const WideStringrWord,
const HyphenPointspPoints = nil 
)
pure virtual

UNSUPPORTED

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::MigrateUserDict (const IDFileexistingDictFile,
const IDFilenewDictFile 
)
pure virtual

Migrates a user dictionary in an old format.

Parameters
existingDictFileFile to convert to new format
newDictFileFile to create in new format. Can be an existing file or the same as existingDictFile in the case of an existing file _temp is added to the name as a temp file and the temp file is deleted after if _temp cannot be created MigrateUserDict fails.
Returns
bool16 true if file was migrated

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::MoveUserDictInSearchPath (int32 oldIndex,
int32 newIndex 
)
pure virtual

Move user dictionary in dictionaries list.

Parameters
oldIndexindex of user dictionary to be moved.
newIndexnew location of user dictionary. -1 if move to the end of the list
Returns
bool16 kTrue if the user dictionary was moved successfully.

Implemented in CHLUserDictService.

virtual int32 IUserDictService::QueryAllUserDictsInSearchPath (K2Vector< IUserDict * > & userDictList,
bool16 bOpenFiles 
)
pure virtual

Queries all user dictionaries in dictionaries list.

This is not really a Query. It should be named Get. It does not add ref the IUserDicts in the list so you should not call release.

Parameters
userDictList[OUT] list of all user dictionaries.
bOpenFileskTrue if need to open data files.
Returns
int32 count of user dictionaries in the returned list.

Implemented in CHLUserDictService.

virtual IUserDict* IUserDictService::QueryMainUserDict (void )
pure virtual

Return main user dictionary.

Returns
IUserDict* main user dictionary

Implemented in CHLUserDictService.

virtual IUserDict* IUserDictService::QueryNotUserDict (void )
pure virtual

returns the pointer to NotUserDict.

Returns
IUserDict* pointer to NotUserDict.

Implemented in CHLUserDictService.

virtual int32 IUserDictService::RemoveAllUserDictsFromSearchPath (void )
pure virtual

Removes all user dictionaries in dictionaries list.

Returns
int32 count of user dictionaries removed.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::RemoveFromMainDict (const WideStringrWord)
pure virtual

Removes word from main dictionary.

This really adds the word to the NotUserDict (see QueryNotUserDict). It also removes the word from the main user dictionary if it was in there.

Parameters
rWordword to remove
Returns
bool16 kTrue if word was removed.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::RemoveFromUserDict (IUserDictuserDict,
const WideStringrWord 
)
pure virtual

Removes word from user dictionary.

Parameters
userDictuser dictionary to remvoe from
rWordword to remove
Returns
bool16 kTrue if word was removed.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::RemoveUserDictFromSearchPath (IUserDictuserDict)
pure virtual

Removes user dictionary from dictionaries list.

Parameters
userDictuser dictionary to be removed.
Returns
bool16 kTrue if the user dictionary was removed successfully.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::ReplaceUserDictInSearchPath (IUserDictoriginalUserDict,
IUserDictnewUserDict 
)
pure virtual

Replaces the specified user dictionary in dictionaries list with supplied new user dictionary.

Parameters
originalUserDictuser dictionary to be replaced.
newUserDictnew user dictionary to be added.
Returns
bool16 kTrue if the original user dictionary was replaced by new one successfully.

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::SetMainUserDict (IUserDictuserDict)
pure virtual

UNSUPPORTED

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::Unbind (IUserDictuserDict,
const WideStringrChangeFrom,
const WideStringrChangeTo 
)
pure virtual

UNSUPPORTED

Implemented in CHLUserDictService.

virtual bool16 IUserDictService::UndoRemoveFromMainDict (const WideStringrWord)
pure virtual

Undo remove word from main dictionary.

This really removes the word from the NotUserDict (see QueryNotUserDict).

Parameters
rWordword to undo remove
Returns
bool16 kTrue if word was removed.

Implemented in CHLUserDictService.