From 24c6a21e37da772e361ed12a2f9b537c7860af52 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Mon, 17 Jul 2006 17:25:16 +0000 Subject: [PATCH] Monotone-Parent: 4b71e3eef15cd1ab9ca89e11d3ac734a8d821243 Monotone-Revision: 94a876e445d85c07068605284844c8c23125a590 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2006-07-17T17:25:16 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 6 +++ UI/MailerUI/UIxMailFilterPanel.m | 72 +++++++++++++++++++++++++------- 2 files changed, 63 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 71fb67c06..979f0d986 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2006-07-17 Wolfgang Sourdeau + + * UI/MailerUI/UIxMailFilterPanel.m ([UIxMailFilterPanel -setSearchCriteria:]) + ([UIxMailFilterPanel -searchCriteria]): new methods, similar to + s/Criteria/Text/ to handle the "criteria" form parameter. + 2006-07-11 Wolfgang Sourdeau * UI/WebServerResources/uix.css: enhanced the toolbar appearance diff --git a/UI/MailerUI/UIxMailFilterPanel.m b/UI/MailerUI/UIxMailFilterPanel.m index f0a76e646..8b8434347 100644 --- a/UI/MailerUI/UIxMailFilterPanel.m +++ b/UI/MailerUI/UIxMailFilterPanel.m @@ -24,6 +24,7 @@ @interface UIxMailFilterPanel : WOComponent { NSString *searchText; + NSString *searchCriteria; struct { int hideFrame:1; int reserved:31; @@ -72,41 +73,78 @@ static NSDictionary *filterToQualifier = nil; [ma release]; ma = nil; } +- (id) init +{ + if ((self = [super init])) + { + searchText = nil; + searchCriteria = nil; + mfFlags.hideFrame = 0; + mfFlags.reserved = 0; + } + + return self; +} + - (void)dealloc { + [self->searchCriteria release]; [self->searchText release]; [super dealloc]; } /* accessors */ -- (void)setHideFrame:(BOOL)_flag { +- (void)setHideFrame:(BOOL)_flag +{ self->mfFlags.hideFrame = _flag ? 1 : 0; } -- (BOOL)hideFrame { + +- (BOOL)hideFrame +{ return self->mfFlags.hideFrame ? YES : NO; } -- (void)setSearchText:(NSString *)_txt { +- (void)setSearchText: (NSString *)_txt +{ ASSIGNCOPY(self->searchText, _txt); } -- (NSString *)searchText { - if (self->searchText == nil) { - // TODO: kinda hack - self->searchText = - [[[[self context] request] formValueForKey:@"search"] copy]; - } + +- (void)setSearchCriteria: (NSString *)_txt +{ + ASSIGNCOPY(self->searchText, _txt); +} + +- (NSString *)searchText +{ + if (self->searchText == nil) + { + self->searchText = + [[[[self context] request] formValueForKey:@"search"] copy]; + } return self->searchText; } +- (NSString *)searchCriteria +{ + if (self->searchCriteria == nil) + { + self->searchCriteria = + [[[[self context] request] formValueForKey:@"criteria"] copy]; + } + return self->searchCriteria; +} + /* filters */ -- (NSArray *)filters { +- (NSArray *)filters +{ return filters; } /* qualifiers */ -- (EOQualifier *)searchTextQualifier { +- (EOQualifier *)searchTextQualifier +{ EOQualifier *q; NSString *s; @@ -121,7 +159,8 @@ static NSDictionary *filterToQualifier = nil; return q; } -- (NSString *)filterLabel { +- (NSString *)filterLabel +{ #if 1 return [[[self context] page] labelForKey:[self valueForKey:@"filter"]]; #else @@ -129,11 +168,13 @@ static NSDictionary *filterToQualifier = nil; #endif } -- (NSString *)selectedFilter { +- (NSString *)selectedFilter +{ return [[[self context] request] formValueForKey:@"filterpopup"]; } -- (EOQualifier *)filterQualifier { +- (EOQualifier *)filterQualifier +{ NSString *selectedFilter; selectedFilter = [self selectedFilter]; @@ -142,7 +183,8 @@ static NSDictionary *filterToQualifier = nil; ? [filterToQualifier objectForKey:selectedFilter] : nil; } -- (EOQualifier *)qualifier { +- (EOQualifier *) qualifier +{ EOQualifier *sq, *fq; NSArray *qa;