add way to create a new search term from JS

This commit is contained in:
alecf%netscape.com 2000-05-15 00:01:22 +00:00
Родитель 6b6c943696
Коммит 99b784ae09
2 изменённых файлов: 10 добавлений и 27 удалений

Просмотреть файл

@ -38,7 +38,6 @@ interface nsIMsgFilter : nsISupports {
readonly attribute nsIMsgFilterList filterList; // owning filter list
readonly attribute long numTerms;
void AddTerm(in nsMsgSearchAttribValue attrib,
in nsMsgSearchOpValue op,
in nsIMsgSearchValue value,
@ -54,6 +53,7 @@ interface nsIMsgFilter : nsISupports {
void appendTerm(in nsIMsgSearchTerm term);
nsIMsgSearchTerm createTerm();
// this is the actual array of search terms, and is thus modifyable
readonly attribute nsISupportsArray searchTerms;

Просмотреть файл

@ -59,23 +59,7 @@ nsMsgFilter::~nsMsgFilter()
{
}
NS_IMPL_ADDREF(nsMsgFilter)
NS_IMPL_RELEASE(nsMsgFilter)
NS_IMETHODIMP nsMsgFilter::QueryInterface(REFNSIID aIID, void** aResult)
{
if (aResult == NULL)
return NS_ERROR_NULL_POINTER;
if (aIID.Equals(NS_GET_IID(nsIMsgFilter)) ||
aIID.Equals(NS_GET_IID(nsISupports)))
{
*aResult = NS_STATIC_CAST(nsMsgFilter*, this);
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMPL_ISUPPORTS1(nsMsgFilter, nsIMsgFilter)
NS_IMETHODIMP nsMsgFilter::GetFilterType(nsMsgFilterTypeType *aResult)
{
@ -148,18 +132,17 @@ NS_IMETHODIMP nsMsgFilter::AppendTerm(nsIMsgSearchTerm * aTerm)
return m_termList->AppendElement(aTerm);
}
NS_IMETHODIMP nsMsgFilter::GetNumTerms(PRInt32 *aResult)
NS_IMETHODIMP
nsMsgFilter::CreateTerm(nsIMsgSearchTerm **aResult)
{
if (aResult == NULL)
return NS_ERROR_NULL_POINTER;
PRUint32 count;
m_termList->Count(&count);
*aResult = count;
return NS_OK;
nsMsgSearchTerm *term = new nsMsgSearchTerm;
NS_ENSURE_TRUE(term, NS_ERROR_OUT_OF_MEMORY);
*aResult = NS_STATIC_CAST(nsIMsgSearchTerm*,term);
NS_ADDREF(*aResult);
return NS_OK;
}
NS_IMETHODIMP nsMsgFilter::GetTerm(PRInt32 termIndex,
nsMsgSearchAttribValue *attrib, /* attribute for this term */
nsMsgSearchOpValue *op, /* operator e.g. opContains */