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

List:       kmail-devel
Subject:    [PATCH] rewrite of KMMsgPartDlg and fixincludes rant
From:       Marc Mutz <Marc.Mutz () uni-bielefeld ! de>
Date:       2002-01-03 14:34:03
[Download RAW message or body]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi!

This is the first part of a rewrite of KMMsgPartDlg (now 
KMMsgPartDialog{,Compat}).

Details:
- - QDialog -> KMDialogBase
- - separated UI (KMMsgPartDialog) from functionality 
(KMMsgPartDialogCompat)
- - added Help button
- - added "Suggest automatic display", which controls the 
Content-Disposition header's value (inline|attachement).
- - added QWhatsThis all over the place
- - added "{Encrypt,Sign} this part" check boxes, add -DAEGYPTEN to see 
them.
- - added 7bit, binary encodings
- - added the possibility to select uuencode (by default it's not shown)
- - disabled the code in slotAtmProperties in kmreaderwin.cpp. I'm sorry 
but that dialog is very ill-placed there. Why not simply make a small 
table:
+--------+-----------------------------------------------------------+
|        | Name:        foobar.diff (8.5 KB)                         |
| (Icon) | Type:        Differences between files (text/x-diff)      |
|        | [Description]: This is the foorbar patch                  |
+--------+-----------------------------------------------------------+

Known bugs in new code: none
Known bugs in old code:
- - When attaching an .o file and calling up this dialog, base64 is 
selected. Selecting qp (or now binary), and hitting OK shrinks the file 
to seven byte, after a warning is printed that body is binary, but used 
as text. I don't know how this should have ever worked... Keeping 
binary data in QCStrings... I thought this bug was fixed long ago?

To do:
- - Add config option to show or not to show the dialog on attaching.
- - maybe get rid of some of the many for loops and i18n calls there by 
holding the translated encoding entries inside an static QStringList...

Please comment...

Marc

PS: I'm really annoyed by this fixinclude -e's. Whenever you clean up 
header files by removing unneeded #includes, you run the risk to break 
compiles of totally unmodified files, see the #include changes in 
kmcomposewin.cpp and kmreaderwin.cpp.
Besides, I think the fixincludes -e approach is much too simplistic.
I try to:
- - minimize includes in .h files by using forward decls as much as 
possible.
- - still include all .h files that declare classes that are explictly 
needed in .h and .cpp files, even if I end up #include'ing 
<kcombobox.h> as well as <qcombobox.h>. One of the <qcombobox.h>'s will 
be skipped anyway.
- - include more specific .h files before more general ones (so you see 
when a .h file doen't include what it itself needs).
- - try to remember to try to compile the .h file for itself to see if it 
includes all that it needs explicitly and forward decls all that it 
needs as reference or pointer and that it compiles with the strictest 
QT_NO_* options (COMPAT,ASCII_CAST,CAST_ASCII).

But the comes fixincludes -e and breaks this arrangement up. If 
fixincludes would be made so smart to implement this program, then I'm 
all for it. As for now, I'd vote to not run it on 
kdenetwork/libkdenetwork and /kmail. Any other opinions?

- -- 
"You're hackers, aren't you," the barman said, eyeing us. No one said
a thing. The darkness of the Eurotunnel rolled by. Apparently we'd
given ourselves away by talking too enthusiastically about IPv6. He
looked around conspiratorially, lowered his voice. "Can you get me
some credit card numbers?"
      -- James J. King "What's the shortest way to hack a Linux box?"
         Telepolis 2001/08/11 (#9293)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE8NGvk3oWD+L2/6DgRAi/7AJ9CcZA/yu/61VWYDx5PJBIibV99xQCg9m5O
dUBeQnU8tZ2Xf7UV4qb6sJk=
=Li7P
-----END PGP SIGNATURE-----

["kmail-rewrite-kmmsgpartdlg.diff.bz2" (application/x-bzip2)]
_______________________________________________
kmail Developers mailing list
kmail@mail.kde.org
http://mail.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