[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kmail-devel
Subject:    Re: grmph... (was: [PATCH] filter changes).
From:       Marc Mutz <Marc.Mutz () uni-bielefeld ! de>
Date:       2001-04-29 11:04:54
[Download RAW message or body]

Michael Häckel wrote:
> 
<snip>
> - When resizing the dialog, only the width of the right edit fields grow. It
>   is also possible to define a strech value for several coulumns in a layout.
>   Then they grow all in a defined ratio.
<snip>

Which additional column should grow horizontally? I don't see a use in
growing the combo boxes, but the filter listbox could use some, I think?

> - The renaming of rules is now handled very well, however what is the purpose
>   of the Clear button in the rename dialog? If I click Clear and then Ok it
>   has the same effect like when clicking Cancel. If it would revert to the
>   automatic generated name, it would at least be useful. Since the text is
>   highlight it is anyway deleted by default, when typing.

The rename dialog is a standard KdeUI LineEditDialog. It has the clear
button in by default. I will make a check for isEmpty() on the result
QString and revert to automatic naming again. Good idea.

> - Is there a reason, why there are always at least two filter criteria
>   displayed and not only one by default like for the actions?
> 

With only one rule as minimum, the operator radiobuttons have no
meaning. Also, you often want to have more than one pattern rule,
whereas the vast majority of users will only use filters to sort
incoming mail into different folders, such that they will have but one
action "move to folder".

But the real reason is the first one: That an operator doesn't make much
sense when there's only one rule.

> The execute rule still seems to work.
> 

Yeah, KMFilterActionExec is supposed to work, but
KMFilterActionFilterApp doesn't. The only doubt I have about
KMFilterActionExec (apart form it not using KShellProcess) is that the
algorithm that is supposed to substitute %n for the n'th message part,
will fail for e.g.

appname --part2=%2 --part1=%1

This is because the algorithm searches for the first occurence of '%' in
the parameter string, determines the digit which follows, extracts the
corresponding message part and uses QString::arg( that message part's
tmpfile name ) to substitute the %n. But QString::arg() will substitute
%m, where m = min(all x  such that '%x' is found). So in the above
example, given temp files p1 and p2 for the msgparts 1 and 2, resp., the
resulting command line would be

appname --part2=p1 --part2=p2

Looking closer, I also see that the following command line would provoke
an infinite loop in KMFilterActionExec::process():

appname %%



> I think when the bugs you mentiond and above things, as far as they are bugs
> are fixed, then the patch is ready for CVS and you can work on additional
> features in a new patch.

:-)

Marc

-- 
Marc Mutz <Marc@Mutz.com>     http://EncryptionHOWTO.sourceforge.net/
University of Bielefeld, Dep. of Mathematics / Dep. of Physics

PGP-keyID's:   0xd46ce9ab (RSA), 0x7ae55b9e (DSS/DH)


_______________________________________________
Kmail Developers mailing list
Kmail@master.kde.org
http://master.kde.org/mailman/listinfo/kmail

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic