Defined in comm-central/ mailnews/ base/ search/ public/ nsIMsgSearchCustomTerm.idl
/** * globally unique string to identify this search term. * recommended form: ExtensionName@example.com#TermName * Commas and quotes are not allowed, the id must not * parse to an integer, and names of standard search * attributes in SearchAttribEntryTable in nsMsgSearchTerm.cpp * are not allowed. */ readonly attribute ACString id;
/// name to display in term list. This should be localized. */ readonly attribute AString name;
/// Does this term need the message body? readonly attribute boolean needsBody;
/**
* Is this custom term enabled?
*
* @param scope search scope (nsMsgSearchScope)
* @param op search operator (nsMsgSearchOp). If null, determine
* if term is available for any operator.
*
* @return true if enabled
*/
boolean getEnabled(in nsMsgSearchScopeValue scope,
in nsMsgSearchOpValue op);
/**
* Is this custom term available?
*
* @param scope search scope (nsMsgSearchScope)
* @param op search operator (nsMsgSearchOp). If null, determine
* if term is available for any operator.
*
* @return true if available
*/
boolean getAvailable(in nsMsgSearchScopeValue scope,
in nsMsgSearchOpValue op);
/**
* List the valid operators for this term.
*
* @param scope search scope (nsMsgSearchScope)
* @param length object to hold array length
*
* @return array of operators
*/
void getAvailableOperators(in nsMsgSearchScopeValue scope,
out unsigned long length,
[retval, array, size_is(length)]
out nsMsgSearchOpValue operators);
/**
* Apply the custom search term to a message
*
* @param msgHdr header database reference representing the message
* @param searchValue user-set value to use in the search
* @param searchOp search operator (Contains, IsHigherThan, etc.)
*
* @return true if the term matches the message, else false
*/
boolean match(in nsIMsgDBHdr msgHdr,
in AUTF8String searchValue,
in nsMsgSearchOpValue searchOp);