After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 250511 - advanced search to be made more advanced (combined AND and OR)
advanced search to be made more advanced (combined AND and OR)
Status: RESOLVED OBSOLETE
Product: evolution
Classification: Applications
Component: Mailer
3.4.x (obsolete)
Other All
: Normal enhancement
: ---
Assigned To: evolution-mail-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2003-11-03 19:39 UTC by Michael Wolf
Modified: 2021-05-19 11:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
my rockin' mockup of my proposed ui (29.73 KB, image/png)
2003-11-06 16:43 UTC, Michael Wolf
Details

Description Michael Wolf 2003-11-03 19:39:01 UTC
It would be cool if the advanced search (for emails) could be made a little
bit more advanced.

Currently, if you're searching on more than one criteria, you can do
something analogous to:
  if (a || b || c ...)
or
  if (a && b && c ...)

It would be nice if we could go more complex than that, such as
  if ((a || b) && c ...)

I'm not sure how the UI for this would look, but would be interested in
looking at potential mockups.
Comment 1 Jeffrey Stedfast 2003-11-03 20:58:00 UTC
yea, the ui is the hard part...
Comment 2 Michael Wolf 2003-11-06 16:42:37 UTC
Here's one UI idea I've come up with.  No idea if it's any good.

In the Advanced Search Dialogue
* Number the rules starting with 1
* In the Execute actions menu, add an option "Advanced" or "Advanced 
  Boolean" or something
* If that Advanced option is chosen, add a text entry widget, where 
  the user can enter in something like ($1 || $2) && $3.  Of course,
  the expressions should be allowed to be arbitrarily complex, and 
  maybe different syntax would be better: (and (or $1 $2) $3) is
  a possibility.


I've heard that entourage has something decent too, although I have't
seen it.
Comment 3 Michael Wolf 2003-11-06 16:43:45 UTC
Created attachment 43051 [details]
my rockin' mockup of my proposed ui
Comment 4 Hans Petter Jansson 2005-01-18 08:03:23 UTC
There's a simpler solution, both UI and implemention wise; always show
two lists of conditions. The lists would have the respective headings:

"Require any of these:"
"Require all of these:"

This would allow for ((a && b) && (c || d)) rules, which should cover
most use cases (I believe it covers maw's, after talking it over with
him).

Implementation should be fairly easy too. The list GUI code can be
re-used, and you can glue the lists together using one of three
expressions.

(list-a && list-b) or (list-a) or (list-b)

(The latter ones being used if one of the lists is empty).
Comment 5 Hans Petter Jansson 2005-01-18 08:13:01 UTC
Or, for the GUI, you could maintain one list and add an extra dropdown
to each condition, with the options "Inclusive" and "Exclusive" (or
"Not Mandatory" and "Mandatory", or whatever seems more
user-friendly). It would work the same way behind the scenes, except
you'd have to separate the "Inclusive" conditions from the "Exclusive"
ones before building the  expression.
Comment 6 Michael Wolf 2005-04-18 17:25:11 UTC
You can do decent searches by entering sexps by hand.  It's not very
userfriendly - which isn't to say I don't appreciate the ability to do so,
because I do! - and it's also not documented AFAIK.  Also unfortunate is that
the text entry widget is tiny, making it very hard to edit.  
Comment 7 Michael Wolf 2005-04-18 17:26:21 UTC
Oh, and with respect to HP's suggestion above, I think "Require any of these:"
should be reworded to "Require at least one of these:"

Comment 8 André Klapper 2006-03-30 15:08:30 UTC
updating version number, still missing in 2.5.
Comment 9 Matthew Barnes 2008-03-11 00:28:56 UTC
Bumping version to a stable release.
Comment 10 André Klapper 2021-05-19 11:33:10 UTC
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. 
As part of that, we are mass-closing older open tickets in bugzilla.gnome.org
which have not seen updates for a longer time (resources are unfortunately
quite limited so not every ticket can get handled).

If you can still reproduce the situation described in this ticket in a recent
and supported software version, then please follow
  https://wiki.gnome.org/Community/GettingInTouch/BugReportingGuidelines
and create a new enhancement request ticket at
  https://gitlab.gnome.org/GNOME/evolution/-/issues/

Thank you for your understanding and your help.