summaryrefslogtreecommitdiffabout
path: root/kmicromail
Unidiff
Diffstat (limited to 'kmicromail') (more/less context) (ignore whitespace changes)
-rw-r--r--kmicromail/koprefs.cpp5
-rw-r--r--kmicromail/koprefs.h1
-rw-r--r--kmicromail/koprefsdialog.cpp19
-rw-r--r--kmicromail/mainwindow.cpp64
-rw-r--r--kmicromail/opiemail.cpp3
5 files changed, 68 insertions, 24 deletions
diff --git a/kmicromail/koprefs.cpp b/kmicromail/koprefs.cpp
index 2bae5f6..7b1e169 100644
--- a/kmicromail/koprefs.cpp
+++ b/kmicromail/koprefs.cpp
@@ -44,49 +44,52 @@
44 44
45#include "koprefs.h" 45#include "koprefs.h"
46#include "mainwindow.h" 46#include "mainwindow.h"
47 47
48 48
49KOPrefs *KOPrefs::mInstance = 0; 49KOPrefs *KOPrefs::mInstance = 0;
50static KStaticDeleter<KOPrefs> insd; 50static KStaticDeleter<KOPrefs> insd;
51 51
52KOPrefs::KOPrefs() : 52KOPrefs::KOPrefs() :
53 KPimPrefs("kopiemailrc") 53 KPimPrefs("kopiemailrc")
54{ 54{
55 mAppFont = QFont("helvetica",12); 55 mAppFont = QFont("helvetica",12);
56 mComposeFont = QFont("helvetica",12); 56 mComposeFont = QFont("helvetica",12);
57 mReadFont = QFont("helvetica",12); 57 mReadFont = QFont("helvetica",12);
58 58
59 KPrefs::setCurrentGroup("General"); 59 KPrefs::setCurrentGroup("General");
60 addItemString("SendCodec",&mSendCodec,i18n ("userdefined") ); 60 addItemString("SendCodec",&mSendCodec,i18n ("userdefined") );
61 addItemString("SenderName",&mName,i18n ("Please set at") ); 61 addItemString("SenderName",&mName,i18n ("Please set at") );
62 addItemString("SenderEmail",&mEmail,i18n ("Settings@General TAB") ); 62 addItemString("SenderEmail",&mEmail,i18n ("Settings@General TAB") );
63 addItemBool("ViewMailAsHtml",&mViewAsHtml,false); 63 addItemBool("ViewMailAsHtml",&mViewAsHtml,false);
64 addItemBool("SendMailLater",&mSendLater,true); 64 addItemBool("SendMailLater",&mSendLater,true);
65 addItemBool("ShowToField",&mShowToField,false); 65 addItemBool("ShowToField",&mShowToField,false);
66 addItemBool("UseKapi",&mUseKapi,false); 66 addItemBool("UseKapi",&mUseKapi,false);
67 addItemInt("CurrentCodec",&mCurrentCodec,0); 67 addItemInt("CurrentCodec",&mCurrentCodec,0);
68 68 addItemBool("ShowInfoSub",&mShowInfoSub,true);
69 addItemBool("ShowInfoFrom",&mShowInfoFrom,true);
70 addItemBool("ShowInfoTo",&mShowInfoTo,true);
71 addItemBool("ShowInfoStart",&mShowInfoStart,true);
69 KPrefs::setCurrentGroup("Fonts"); 72 KPrefs::setCurrentGroup("Fonts");
70 addItemFont("Application Font",&mAppFont); 73 addItemFont("Application Font",&mAppFont);
71 addItemFont("Compose Font",&mComposeFont); 74 addItemFont("Compose Font",&mComposeFont);
72 addItemFont("Read Font",&mReadFont); 75 addItemFont("Read Font",&mReadFont);
73 fillMailDefaults(); 76 fillMailDefaults();
74 isDirty = false; 77 isDirty = false;
75} 78}
76 79
77 80
78KOPrefs::~KOPrefs() 81KOPrefs::~KOPrefs()
79{ 82{
80 if ( isDirty ) 83 if ( isDirty )
81 writeConfig(); 84 writeConfig();
82 if (mInstance == this) 85 if (mInstance == this)
83 mInstance = insd.setObject(0); 86 mInstance = insd.setObject(0);
84 87
85} 88}
86 89
87 90
88KOPrefs *KOPrefs::instance() 91KOPrefs *KOPrefs::instance()
89{ 92{
90 if (!mInstance) { 93 if (!mInstance) {
91 mInstance = insd.setObject(new KOPrefs()); 94 mInstance = insd.setObject(new KOPrefs());
92 mInstance->readConfig(); 95 mInstance->readConfig();
diff --git a/kmicromail/koprefs.h b/kmicromail/koprefs.h
index f2c4fbb..f2501e3 100644
--- a/kmicromail/koprefs.h
+++ b/kmicromail/koprefs.h
@@ -52,29 +52,30 @@ class KOPrefs : public KPimPrefs
52 52
53 protected: 53 protected:
54 54
55 /** Fill empty mail fields with default values. */ 55 /** Fill empty mail fields with default values. */
56 void fillMailDefaults(); 56 void fillMailDefaults();
57 57
58 private: 58 private:
59 /** Constructor disabled for public. Use instance() to create a KOPrefs 59 /** Constructor disabled for public. Use instance() to create a KOPrefs
60 object. */ 60 object. */
61 KOPrefs(); 61 KOPrefs();
62 62
63 static KOPrefs *mInstance; 63 static KOPrefs *mInstance;
64 public: 64 public:
65 // preferences data 65 // preferences data
66 KConfig* getConfig(); 66 KConfig* getConfig();
67 QFont mAppFont; 67 QFont mAppFont;
68 QFont mComposeFont; 68 QFont mComposeFont;
69 QFont mReadFont; 69 QFont mReadFont;
70 QString mName; 70 QString mName;
71 QString mSendCodec; 71 QString mSendCodec;
72 QString mEmail; 72 QString mEmail;
73 QString mCurrentCodeName; 73 QString mCurrentCodeName;
74 int mCurrentCodec; 74 int mCurrentCodec;
75 bool mSendLater, mViewAsHtml, mUseKapi, isDirty, mShowToField; 75 bool mSendLater, mViewAsHtml, mUseKapi, isDirty, mShowToField;
76 bool mShowInfoSub, mShowInfoFrom, mShowInfoTo, mShowInfoStart;
76 private: 77 private:
77 78
78}; 79};
79 80
80#endif 81#endif
diff --git a/kmicromail/koprefsdialog.cpp b/kmicromail/koprefsdialog.cpp
index 5c8a5a9..4af4a8c 100644
--- a/kmicromail/koprefsdialog.cpp
+++ b/kmicromail/koprefsdialog.cpp
@@ -129,48 +129,67 @@ void KOPrefsDialog::setupMainTab()
129 KPrefsDialogWidBool* ttt = addWidBool(i18n("Ignore above settings and\nuse KA/Pi \"Who am I\" instead!"), 129 KPrefsDialogWidBool* ttt = addWidBool(i18n("Ignore above settings and\nuse KA/Pi \"Who am I\" instead!"),
130 &(KOPrefs::instance()->mUseKapi),topFrame); 130 &(KOPrefs::instance()->mUseKapi),topFrame);
131 topLayout->addMultiCellWidget(ttt->checkBox(),3,3,0,1); 131 topLayout->addMultiCellWidget(ttt->checkBox(),3,3,0,1);
132} 132}
133 133
134void KOPrefsDialog::setupMailTab() 134void KOPrefsDialog::setupMailTab()
135{ 135{
136 QFrame *topFrame = addPage(i18n("Mail"),0,0); 136 QFrame *topFrame = addPage(i18n("Mail"),0,0);
137 137
138 QGridLayout *topLayout = new QGridLayout(topFrame,4,2); 138 QGridLayout *topLayout = new QGridLayout(topFrame,4,2);
139 topLayout->setSpacing(spacingHint()); 139 topLayout->setSpacing(spacingHint());
140 topLayout->setMargin(marginHint()); 140 topLayout->setMargin(marginHint());
141 141
142 KPrefsDialogWidBool* ttt = addWidBool(i18n("View mail as html"), 142 KPrefsDialogWidBool* ttt = addWidBool(i18n("View mail as html"),
143 &(KOPrefs::instance()->mViewAsHtml),topFrame); 143 &(KOPrefs::instance()->mViewAsHtml),topFrame);
144 topLayout->addMultiCellWidget(ttt->checkBox(),0,0,0,1); 144 topLayout->addMultiCellWidget(ttt->checkBox(),0,0,0,1);
145 145
146 146
147 ttt = addWidBool(i18n("Send mails later"), 147 ttt = addWidBool(i18n("Send mails later"),
148 &(KOPrefs::instance()->mSendLater),topFrame); 148 &(KOPrefs::instance()->mSendLater),topFrame);
149 topLayout->addMultiCellWidget(ttt->checkBox(),1,1,0,1); 149 topLayout->addMultiCellWidget(ttt->checkBox(),1,1,0,1);
150 ttt = addWidBool(i18n("Show \"To\" field in list view"), 150 ttt = addWidBool(i18n("Show \"To\" field in list view"),
151 &(KOPrefs::instance()->mShowToField),topFrame); 151 &(KOPrefs::instance()->mShowToField),topFrame);
152 topLayout->addMultiCellWidget(ttt->checkBox(),2,2,0,1); 152 topLayout->addMultiCellWidget(ttt->checkBox(),2,2,0,1);
153
154 int iii =3;
155 ttt = addWidBool(i18n("Show info fields at startup"),
156 &(KOPrefs::instance()->mShowInfoStart),topFrame);
157 topLayout->addMultiCellWidget(ttt->checkBox(),iii,iii,0,1);
158 ++iii;
159 ttt = addWidBool(i18n("Show \"Subject\" info field"),
160 &(KOPrefs::instance()->mShowInfoSub),topFrame);
161 topLayout->addMultiCellWidget(ttt->checkBox(),iii,iii,0,1);
162 ++iii;
163 ttt = addWidBool(i18n("Show \"From\" info field"),
164 &(KOPrefs::instance()->mShowInfoFrom),topFrame);
165 topLayout->addMultiCellWidget(ttt->checkBox(),iii,iii,0,1);
166 ++iii;
167 ttt = addWidBool(i18n("Show \"To\" info field"),
168 &(KOPrefs::instance()->mShowInfoTo),topFrame);
169 topLayout->addMultiCellWidget(ttt->checkBox(),iii,iii,0,1);
170 ++iii;
171
153 /* 172 /*
154 mCodecEdit = new QLineEdit(topFrame); 173 mCodecEdit = new QLineEdit(topFrame);
155 topLayout->addMultiCellWidget( new QLabel(mCodecEdit, i18n("User defined codec for new mails:"), topFrame),2,2,0,1); 174 topLayout->addMultiCellWidget( new QLabel(mCodecEdit, i18n("User defined codec for new mails:"), topFrame),2,2,0,1);
156 topLayout->addMultiCellWidget(mCodecEdit,3,3,0,1); 175 topLayout->addMultiCellWidget(mCodecEdit,3,3,0,1);
157 topLayout->addMultiCellWidget( new QLabel(0, i18n("Example: iso-8859-15"), topFrame),4,4,0,1); 176 topLayout->addMultiCellWidget( new QLabel(0, i18n("Example: iso-8859-15"), topFrame),4,4,0,1);
158 */ 177 */
159} 178}
160void KOPrefsDialog::setupFontsTab() 179void KOPrefsDialog::setupFontsTab()
161{ 180{
162 181
163 QFrame *topFrame = addPage(i18n("Fonts"),0,0); 182 QFrame *topFrame = addPage(i18n("Fonts"),0,0);
164 // DesktopIcon("fonts",KIcon::SizeMedium)); 183 // DesktopIcon("fonts",KIcon::SizeMedium));
165 184
166 QGridLayout *topLayout = new QGridLayout(topFrame,7,3); 185 QGridLayout *topLayout = new QGridLayout(topFrame,7,3);
167 topLayout->setSpacing(1); 186 topLayout->setSpacing(1);
168 topLayout->setMargin(3); 187 topLayout->setMargin(3);
169 KPrefsDialogWidFont * tVFont; 188 KPrefsDialogWidFont * tVFont;
170 int i = 0; 189 int i = 0;
171 KPrefsDialogWidFont *timeLabelsFont = 190 KPrefsDialogWidFont *timeLabelsFont =
172 addWidFont(i18n("OK"),i18n("Application(nr)"), 191 addWidFont(i18n("OK"),i18n("Application(nr)"),
173 &(KOPrefs::instance()->mAppFont),topFrame); 192 &(KOPrefs::instance()->mAppFont),topFrame);
174 topLayout->addWidget(timeLabelsFont->label(),i,0); 193 topLayout->addWidget(timeLabelsFont->label(),i,0);
175 topLayout->addWidget(timeLabelsFont->preview(),i,1); 194 topLayout->addWidget(timeLabelsFont->preview(),i,1);
176 topLayout->addWidget(timeLabelsFont->button(),i,2); 195 topLayout->addWidget(timeLabelsFont->button(),i,2);
diff --git a/kmicromail/mainwindow.cpp b/kmicromail/mainwindow.cpp
index 250d114..0794e00 100644
--- a/kmicromail/mainwindow.cpp
+++ b/kmicromail/mainwindow.cpp
@@ -1,45 +1,46 @@
1 1
2// CHANGED 2004-08-06 Lutz Rogowski 2// CHANGED 2004-08-06 Lutz Rogowski
3#include <qlabel.h> 3#include <qlabel.h>
4#include <qvbox.h> 4#include <qvbox.h>
5#include <qheader.h> 5#include <qheader.h>
6#include <qtimer.h> 6#include <qtimer.h>
7#include <qlayout.h> 7#include <qlayout.h>
8//#include <kdialog.h> 8//#include <kdialog.h>
9#include <kiconloader.h> 9#include <kiconloader.h>
10#include <kapplication.h> 10#include <kapplication.h>
11 11
12#ifdef DESKTOP_VERSION 12#ifdef DESKTOP_VERSION
13#include <qapplication.h> 13#include <qapplication.h>
14#include <qstatusbar.h> 14#include <qstatusbar.h>
15#include <kabc/stdaddressbook.h> 15#include <kabc/stdaddressbook.h>
16extern QStatusBar* globalSstatusBarMainWindow; 16extern QStatusBar* globalSstatusBarMainWindow;
17#else 17#else
18#include <qpe/qpeapplication.h> 18#include <qpe/qpeapplication.h>
19#include <klocale.h> 19#include <klocale.h>
20#endif 20#endif
21#include "defines.h" 21#include "defines.h"
22#include "koprefs.h"
22#include "mainwindow.h" 23#include "mainwindow.h"
23#include "mailistviewitem.h" 24#include "mailistviewitem.h"
24#include <KDGanttMinimizeSplitter.h> 25#include <KDGanttMinimizeSplitter.h>
25 26
26#include "koprefs.h" 27#include "koprefs.h"
27 28
28MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags ) 29MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
29 : QMainWindow( parent, name ) //, flags ) 30 : QMainWindow( parent, name ) //, flags )
30{ 31{
31#ifdef DESKTOP_VERSION 32#ifdef DESKTOP_VERSION
32 globalSstatusBarMainWindow = statusBar(); 33 globalSstatusBarMainWindow = statusBar();
33#endif 34#endif
34 setCaption( i18n( "KOpieMail/Pi" ) ); 35 setCaption( i18n( "KOpieMail/Pi" ) );
35 setToolBarsMovable( false ); 36 setToolBarsMovable( false );
36 //KABC::StdAddressBook::self(); 37 //KABC::StdAddressBook::self();
37 toolBar = new QToolBar( this ); 38 toolBar = new QToolBar( this );
38 menuBar = new QPEMenuBar( toolBar ); 39 menuBar = new QPEMenuBar( toolBar );
39 mailMenu = new QPopupMenu( menuBar ); 40 mailMenu = new QPopupMenu( menuBar );
40 menuBar->insertItem( i18n( "Mail" ), mailMenu ); 41 menuBar->insertItem( i18n( "Mail" ), mailMenu );
41 settingsMenu = new QPopupMenu( menuBar ); 42 settingsMenu = new QPopupMenu( menuBar );
42 menuBar->insertItem( i18n( "Settings" ), settingsMenu ); 43 menuBar->insertItem( i18n( "Settings" ), settingsMenu );
43 44
44 addToolBar( toolBar ); 45 addToolBar( toolBar );
45 toolBar->setHorizontalStretchable( true ); 46 toolBar->setHorizontalStretchable( true );
@@ -63,127 +64,146 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
63 64
64 sendQueued = new QAction( i18n( "Send queued mails" ), SmallIcon("sendqueued") , 65 sendQueued = new QAction( i18n( "Send queued mails" ), SmallIcon("sendqueued") ,
65 0, 0, this ); 66 0, 0, this );
66 sendQueued->addTo( toolBar ); 67 sendQueued->addTo( toolBar );
67 sendQueued->addTo( mailMenu ); 68 sendQueued->addTo( mailMenu );
68 69
69 /* 70 /*
70 syncFolders = new QAction( i18n( "Sync mailfolders" ), ICON_SYNC, 71 syncFolders = new QAction( i18n( "Sync mailfolders" ), ICON_SYNC,
71 0, 0, this ); 72 0, 0, this );
72 syncFolders->addTo( toolBar ); 73 syncFolders->addTo( toolBar );
73 syncFolders->addTo( mailMenu ); 74 syncFolders->addTo( mailMenu );
74 */ 75 */
75 76
76 showFolders = new QAction( i18n( "Show/Hide folders" ), SmallIcon("showfolders") , 77 showFolders = new QAction( i18n( "Show/Hide folders" ), SmallIcon("showfolders") ,
77 0, 0, this, 0, true ); 78 0, 0, this, 0, true );
78 showFolders->addTo( toolBar ); 79 showFolders->addTo( toolBar );
79 showFolders->addTo( mailMenu ); 80 showFolders->addTo( mailMenu );
80 showFolders->setOn( true ); 81 showFolders->setOn( true );
81 connect(showFolders, SIGNAL( toggled(bool) ), 82 connect(showFolders, SIGNAL( toggled(bool) ),
82 SLOT( slotShowFolders(bool) ) ); 83 SLOT( slotShowFolders(bool) ) );
83 84
84 /* 85 /*
85 searchMails = new QAction( i18n( "Search mails" ), SmallIcon("find") ), 86 searchMails = new QAction( i18n( "Search mails" ), SmallIcon("find") ),
86 0, 0, this ); 87 0, 0, this );
87 searchMails->addTo( toolBar ); 88 searchMails->kopddTo( toolBar );
88 searchMails->addTo( mailMenu ); 89 searchMails->addTo( mailMenu );
89 */ 90 */
90 91
91 deleteMails = new QAction(i18n("Delete Mail"), SmallIcon("trash"), 0, 0, this); 92 deleteMails = new QAction(i18n("Delete Mail"), SmallIcon("trash"), 0, 0, this);
92 deleteMails->addTo( toolBar ); 93 deleteMails->addTo( toolBar );
93 deleteMails->addTo( mailMenu ); 94 deleteMails->addTo( mailMenu );
94 connect( deleteMails, SIGNAL( activated() ), 95 connect( deleteMails, SIGNAL( activated() ),
95 SLOT( slotDeleteAllMail() ) ); 96 SLOT( slotDeleteAllMail() ) );
96 97
97 editSettings = new QAction( i18n( "Edit settings" ), SmallIcon("SettingsIcon") , 98 editSettings = new QAction( i18n( "Edit settings" ), SmallIcon("SettingsIcon") ,
98 0, 0, this ); 99 0, 0, this );
99 editSettings->addTo( settingsMenu ); 100 editSettings->addTo( settingsMenu );
100 connect( editSettings, SIGNAL( activated() ), 101 connect( editSettings, SIGNAL( activated() ),
101 SLOT( slotEditSettings() ) ); 102 SLOT( slotEditSettings() ) );
102 editAccounts = new QAction( i18n( "Configure accounts" ), SmallIcon("editaccounts") , 103 editAccounts = new QAction( i18n( "Configure accounts" ), SmallIcon("editaccounts") ,
103 0, 0, this ); 104 0, 0, this );
104 editAccounts->addTo( settingsMenu ); 105 editAccounts->addTo( settingsMenu );
105 codecMenu = new QPopupMenu( menuBar ); 106 codecMenu = new QPopupMenu( menuBar );
106 codecMenu->insertItem( "Western (iso-8859-1)",0,0); 107 codecMenu->insertItem( "Western (iso-8859-1)",0,0);
107 codecMenu->insertItem( "Cyrillic (iso-8859-5)",1,1); 108 codecMenu->insertItem( "Cyrillic (iso-8859-5)",1,1);
108 codecMenu->insertItem( "Western (iso-8859-15)",2,2); 109 codecMenu->insertItem( "Western (iso-8859-15)",2,2);
109 codecMenu->insertItem( "Chinese (big-5)",3,3); 110 codecMenu->insertItem( "Chinese (big-5)",3,3);
110 codecMenu->insertItem( "Unicode (utf-8)",4,4); 111 codecMenu->insertItem( "Unicode (utf-8)",4,4);
111 codecMenu->insertItem( "Userdefined ("+KOPrefs::instance()->mSendCodec+")",5,5); 112 codecMenu->insertItem( "Userdefined ("+KOPrefs::instance()->mSendCodec+")",5,5);
112 //disabled 113 //disabled
113 //settingsMenu->insertItem( i18n("Codec for new mails"), codecMenu); 114 //settingsMenu->insertItem( i18n("Codec for new mails"), codecMenu);
114 //setCentralWidget( view ); 115 //setCentralWidget( view );
115 116
116 QVBox* wrapperBox = new QVBox( this ); 117 QVBox* wrapperBox = new QVBox( this );
117 setCentralWidget( wrapperBox ); 118 setCentralWidget( wrapperBox );
118 119
119 // QWidget *view = new QWidget( wrapperBox ); 120 // QWidget *view = new QWidget( wrapperBox );
120 KDGanttMinimizeSplitter* splithor = new KDGanttMinimizeSplitter( Qt::Vertical, wrapperBox); 121 KDGanttMinimizeSplitter* splithor = new KDGanttMinimizeSplitter( Qt::Vertical, wrapperBox);
121 splithor->setMinimizeDirection( KDGanttMinimizeSplitter::Down); 122 splithor->setMinimizeDirection( KDGanttMinimizeSplitter::Down);
122 KDGanttMinimizeSplitter* split = new KDGanttMinimizeSplitter( Qt::Horizontal, splithor); 123 KDGanttMinimizeSplitter* split = new KDGanttMinimizeSplitter( Qt::Horizontal, splithor);
123 split->setMinimizeDirection( KDGanttMinimizeSplitter::Left); 124 split->setMinimizeDirection( KDGanttMinimizeSplitter::Left);
124 //layout = new QBoxLayout ( split, QBoxLayout::LeftToRight ); 125 //layout = new QBoxLayout ( split, QBoxLayout::LeftToRight );
125 QWidget* infoBox = new QWidget( splithor ); 126 subLE = 0;
126 QGridLayout *griLay = new QGridLayout( infoBox, 2,2); 127 fromLE = 0;
127 griLay->addWidget( new QLabel ( i18n("Su:"), infoBox ),0,0 ); 128 toLE = 0;
128 griLay->addWidget( new QLabel ( i18n("Fr:"), infoBox ),1,0 ); 129 if ( KOPrefs::instance()->mShowInfoSub || KOPrefs::instance()->mShowInfoFrom || KOPrefs::instance()->mShowInfoTo ) {
129 griLay->addWidget( new QLabel ( i18n("To:"), infoBox ),2,0 ); 130 QWidget* infoBox = new QWidget( splithor );
130 griLay->addWidget( subLE = new QLineEdit( infoBox ),0,1) ; 131 QGridLayout *griLay = new QGridLayout( infoBox, 2,2);
131 griLay->addWidget( fromLE = new QLineEdit( infoBox ),1,1) ; 132 if ( KOPrefs::instance()->mShowInfoSub ) {
132 griLay->addWidget( toLE = new QLineEdit( infoBox ),2,1) ; 133 griLay->addWidget( new QLabel ( i18n("Su:"), infoBox ),0,0 );
133 infoBox->setMaximumHeight( infoBox->sizeHint().height() ); 134 griLay->addWidget( subLE = new QLineEdit( infoBox ),0,1) ;
135 }
136 if ( KOPrefs::instance()->mShowInfoFrom ) {
137 griLay->addWidget( new QLabel ( i18n("Fr:"), infoBox ),1,0 );
138 griLay->addWidget( fromLE = new QLineEdit( infoBox ),1,1) ;
139 }
140 if ( KOPrefs::instance()->mShowInfoTo ) {
141 griLay->addWidget( new QLabel ( i18n("To:"), infoBox ),2,0 );
142 griLay->addWidget( toLE = new QLineEdit( infoBox ),2,1) ;
143 }
144 infoBox->setMaximumHeight( infoBox->sizeHint().height() );
145 if ( !KOPrefs::instance()->mShowInfoStart ) {
146 QTimer::singleShot( 1,splithor, SLOT ( toggle() ) );
147 }
148 }
149
150
134 folderView = new AccountView( split ); 151 folderView = new AccountView( split );
135 folderView->header()->hide(); 152 folderView->header()->hide();
136 folderView->setRootIsDecorated( false ); 153 folderView->setRootIsDecorated( false );
137 folderView->addColumn( i18n( "Mailbox" ) ); 154 folderView->addColumn( i18n( "Mailbox" ) );
138 155
139 //layout->addWidget( folderView ); 156 //layout->addWidget( folderView );
140 157
141 mailView = new QListView( split ); 158 mailView = new QListView( split );
142 mailView->addColumn( i18n( " " ) ); 159 mailView->addColumn( i18n( " " ) );
143 mailView->addColumn( i18n( "Subject" ),QListView::Manual ); 160 mailView->addColumn( i18n( "Subject" ),QListView::Manual );
144 mailView->addColumn( i18n( "Sender" ),QListView::Manual ); 161 mailView->addColumn( i18n( "Sender" ),QListView::Manual );
145 mailView->addColumn( i18n( "Size" ),QListView::Manual); 162 mailView->addColumn( i18n( "Size" ),QListView::Manual);
146 mailView->addColumn( i18n( "Date" ),QListView::Manual); 163 mailView->addColumn( i18n( "Date" ),QListView::Manual);
147 if ( KOPrefs::instance()->mShowToField ) 164 if ( KOPrefs::instance()->mShowToField )
148 mailView->addColumn( i18n( "To" ),QListView::Manual); 165 mailView->addColumn( i18n( "To" ),QListView::Manual);
149 mailView->setAllColumnsShowFocus(true); 166 mailView->setAllColumnsShowFocus(true);
150 //mailView->setSorting(-1); 167 //mailView->setSorting(-1);
151 mailView->setRootIsDecorated( false ); 168 mailView->setRootIsDecorated( false );
152 statusWidget = new StatusWidget( wrapperBox ); 169 statusWidget = new StatusWidget( wrapperBox );
153 statusWidget->hide(); 170 statusWidget->hide();
154 171
155 //layout->addWidget( mailView ); 172 //layout->addWidget( mailView );
156 //layout->setStretchFactor( folderView, 1 ); 173 //layout->setStretchFactor( folderView, 1 );
157 //layout->setStretchFactor( mailView, 2 ); 174 //layout->setStretchFactor( mailView, 2 );
158 175
159 slotAdjustLayout(); 176 slotAdjustLayout();
160#ifndef DESKTOP_VERSION 177#ifndef DESKTOP_VERSION
161 QPEApplication::setStylusOperation( mailView->viewport(),QPEApplication::RightOnHold); 178 QPEApplication::setStylusOperation( mailView->viewport(),QPEApplication::RightOnHold);
162 QPEApplication::setStylusOperation( folderView->viewport(),QPEApplication::RightOnHold); 179 QPEApplication::setStylusOperation( folderView->viewport(),QPEApplication::RightOnHold);
163 QPEApplication::setStylusOperation( subLE ,QPEApplication::RightOnHold); 180 if ( subLE )
164 QPEApplication::setStylusOperation( fromLE ,QPEApplication::RightOnHold); 181 QPEApplication::setStylusOperation( subLE ,QPEApplication::RightOnHold);
165 QPEApplication::setStylusOperation( toLE ,QPEApplication::RightOnHold); 182 if ( fromLE )
183 QPEApplication::setStylusOperation( fromLE ,QPEApplication::RightOnHold);
184 if ( toLE )
185 QPEApplication::setStylusOperation( toLE ,QPEApplication::RightOnHold);
166#endif 186#endif
167 connect( mailView, SIGNAL( doubleClicked (QListViewItem* )),this, 187 connect( mailView, SIGNAL( doubleClicked (QListViewItem* )),this,
168 SLOT( mailLeftClicked(QListViewItem*) ) ); 188 SLOT( mailLeftClicked(QListViewItem*) ) );
169 connect( mailView, SIGNAL( returnPressed (QListViewItem* )),this, 189 connect( mailView, SIGNAL( returnPressed (QListViewItem* )),this,
170 SLOT( mailLeftClicked(QListViewItem*) ) ); 190 SLOT( mailLeftClicked(QListViewItem*) ) );
171 connect( mailView, SIGNAL( mouseButtonPressed(int,QListViewItem*,const QPoint&,int) ),this, 191 connect( mailView, SIGNAL( mouseButtonPressed(int,QListViewItem*,const QPoint&,int) ),this,
172 SLOT( mailHold(int,QListViewItem*,const QPoint&,int) ) ); 192 SLOT( mailHold(int,QListViewItem*,const QPoint&,int) ) );
173 connect(folderView, SIGNAL(refreshMailview(const QValueList<RecMailP>&)), 193 connect(folderView, SIGNAL(refreshMailview(const QValueList<RecMailP>&)),
174 this,SLOT(refreshMailView(const QValueList<RecMailP>&))); 194 this,SLOT(refreshMailView(const QValueList<RecMailP>&)));
175 195
176 connect( mailView, SIGNAL( currentChanged (QListViewItem* )),this, 196 connect( mailView, SIGNAL( currentChanged (QListViewItem* )),this,
177 SLOT( setInfoFields(QListViewItem*) ) ); 197 SLOT( setInfoFields(QListViewItem*) ) );
178 198
179 connect( composeMail, SIGNAL( activated() ), SLOT( slotComposeMail() ) ); 199 connect( composeMail, SIGNAL( activated() ), SLOT( slotComposeMail() ) );
180 connect( sendQueued, SIGNAL( activated() ), SLOT( slotSendQueued() ) ); 200 connect( sendQueued, SIGNAL( activated() ), SLOT( slotSendQueued() ) );
181// connect( searchMails, SIGNAL( activated() ), SLOT( slotSearchMails() ) ); 201// connect( searchMails, SIGNAL( activated() ), SLOT( slotSearchMails() ) );
182 connect( editAccounts, SIGNAL( activated() ), SLOT( slotEditAccounts() ) ); 202 connect( editAccounts, SIGNAL( activated() ), SLOT( slotEditAccounts() ) );
183 //mailView->setMultiSelection ( true ); 203 //mailView->setMultiSelection ( true );
184 mailView->setSelectionMode( QListView::Extended ); 204 mailView->setSelectionMode( QListView::Extended );
185 QValueList<int> list; 205 QValueList<int> list;
186 int fw = 100; 206 int fw = 100;
187 if ( QApplication::desktop()->width() > 320 ) 207 if ( QApplication::desktop()->width() > 320 )
188 fw = 50; 208 fw = 50;
189 list.append( fw ); 209 list.append( fw );
@@ -206,60 +226,60 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
206 menuBar->insertItem( i18n( "Help" ), helpMenu ); 226 menuBar->insertItem( i18n( "Help" ), helpMenu );
207 QAction* li = new QAction(i18n("About"), QPixmap(), 0, 0, this); 227 QAction* li = new QAction(i18n("About"), QPixmap(), 0, 0, this);
208 connect( li, SIGNAL( activated() ), SLOT( showAbout()) ); 228 connect( li, SIGNAL( activated() ), SLOT( showAbout()) );
209 li->addTo(helpMenu); 229 li->addTo(helpMenu);
210 li = new QAction(i18n("Licence"),QPixmap(), 0, 0, this); 230 li = new QAction(i18n("Licence"),QPixmap(), 0, 0, this);
211 connect( li, SIGNAL( activated() ), SLOT( showLicence()) ); 231 connect( li, SIGNAL( activated() ), SLOT( showLicence()) );
212 li->addTo(helpMenu); 232 li->addTo(helpMenu);
213 li = new QAction(i18n("LibEtPan Licence"), QPixmap(), 0, 0, this); 233 li = new QAction(i18n("LibEtPan Licence"), QPixmap(), 0, 0, this);
214 connect( li, SIGNAL( activated() ), SLOT( showEtpanLicence()) ); 234 connect( li, SIGNAL( activated() ), SLOT( showEtpanLicence()) );
215 li->addTo(helpMenu); 235 li->addTo(helpMenu);
216 connect( codecMenu, SIGNAL( activated(int) ), this, SLOT( slotSetCodec( int )) ); 236 connect( codecMenu, SIGNAL( activated(int) ), this, SLOT( slotSetCodec( int )) );
217 slotSetCodec( KOPrefs::instance()->mCurrentCodec ); 237 slotSetCodec( KOPrefs::instance()->mCurrentCodec );
218#ifdef DESKTOP_VERSION 238#ifdef DESKTOP_VERSION
219 resize ( 640, 480 ); 239 resize ( 640, 480 );
220#endif 240#endif
221} 241}
222 242
223MainWindow::~MainWindow() 243MainWindow::~MainWindow()
224{ 244{
225} 245}
226 246
227void MainWindow::setInfoFields(QListViewItem* item ) 247void MainWindow::setInfoFields(QListViewItem* item )
228{ 248{
229 if ( item == 0) { 249 if ( item == 0) {
230 subLE->setText(""); 250 if ( subLE ) subLE->setText("");
231 fromLE->setText(""); 251 if ( fromLE ) fromLE->setText("");
232 toLE->setText(""); 252 if ( toLE ) toLE->setText("");
233 return; 253 return;
234 } 254 }
235 RecMailP mail = ((MailListViewItem*)item)->data(); 255 RecMailP mail = ((MailListViewItem*)item)->data();
236 subLE->setText(mail->getSubject()); 256 if ( subLE ) subLE->setText(mail->getSubject());
237 fromLE->setText(mail->getFrom()); 257 if ( fromLE ) fromLE->setText(mail->getFrom());
238 toLE->setText(mail->To().join(";" )); 258 if ( toLE ) toLE->setText(mail->To().join(";" ));
239 subLE->setCursorPosition(0); 259 if ( subLE ) subLE->setCursorPosition(0);
240 fromLE->setCursorPosition(0); 260 if ( fromLE ) fromLE->setCursorPosition(0);
241 toLE->setCursorPosition(0); 261 if ( toLE ) toLE->setCursorPosition(0);
242 262
243} 263}
244void MainWindow::slotSetCodec( int codec ) 264void MainWindow::slotSetCodec( int codec )
245{ 265{
246 codecMenu->setItemChecked(KOPrefs::instance()->mCurrentCodec, false ); 266 codecMenu->setItemChecked(KOPrefs::instance()->mCurrentCodec, false );
247 //qDebug("codec %d ", codec); 267 //qDebug("codec %d ", codec);
248 KOPrefs::instance()->mCurrentCodec = codec; 268 KOPrefs::instance()->mCurrentCodec = codec;
249 KOPrefs::instance()->isDirty = true; 269 KOPrefs::instance()->isDirty = true;
250 QString name; 270 QString name;
251 switch ( codec ) { 271 switch ( codec ) {
252 case 0: 272 case 0:
253 name = "iso-8859-1"; 273 name = "iso-8859-1";
254 break; 274 break;
255 case 1: 275 case 1:
256 name = "iso-8859-5"; 276 name = "iso-8859-5";
257 break; 277 break;
258 case 2: 278 case 2:
259 name = "iso-8859-15"; 279 name = "iso-8859-15";
260 break; 280 break;
261 case 3: 281 case 3:
262 name = "big-5"; 282 name = "big-5";
263 break; 283 break;
264 case 4: 284 case 4:
265 name = "utf-8"; 285 name = "utf-8";
diff --git a/kmicromail/opiemail.cpp b/kmicromail/opiemail.cpp
index 68f0eb3..f56711d 100644
--- a/kmicromail/opiemail.cpp
+++ b/kmicromail/opiemail.cpp
@@ -474,55 +474,56 @@ void OpieMail::clearSelection()
474 474
475} 475}
476 476
477void OpieMail::mailHold(int button, QListViewItem *item,const QPoint&,int ) 477void OpieMail::mailHold(int button, QListViewItem *item,const QPoint&,int )
478{ 478{
479 if (!mailView->currentItem()) return; 479 if (!mailView->currentItem()) return;
480 MAILLIB::ATYPE mailtype = ((MailListViewItem*)mailView->currentItem() )->wrapperType(); 480 MAILLIB::ATYPE mailtype = ((MailListViewItem*)mailView->currentItem() )->wrapperType();
481 /* just the RIGHT button - or hold on pda */ 481 /* just the RIGHT button - or hold on pda */
482 if (button!=2) {return;} 482 if (button!=2) {return;}
483 if (!item) return; 483 if (!item) return;
484 QPopupMenu *m = new QPopupMenu(0); 484 QPopupMenu *m = new QPopupMenu(0);
485 if (m) 485 if (m)
486 { 486 {
487 if (mailtype==MAILLIB::A_NNTP) { 487 if (mailtype==MAILLIB::A_NNTP) {
488 m->insertItem(i18n("Read this posting"),this,SLOT(displayMail())); 488 m->insertItem(i18n("Read this posting"),this,SLOT(displayMail()));
489 m->insertItem(i18n("Copy this posting"),this,SLOT(slotMoveCopyMail())); 489 m->insertItem(i18n("Copy this posting"),this,SLOT(slotMoveCopyMail()));
490 m->insertSeparator(); 490 m->insertSeparator();
491 m->insertItem(i18n("Copy all selected postings"),this,SLOT(slotMoveCopyAllMail())); 491 m->insertItem(i18n("Copy all selected postings"),this,SLOT(slotMoveCopyAllMail()));
492 m->insertItem(i18n("Clear selection"),this,SLOT(clearSelection())); 492 m->insertItem(i18n("Clear selection"),this,SLOT(clearSelection()));
493 } else { 493 } else {
494 if (folderView->currentisDraft()) { 494 if (folderView->currentisDraft()) {
495 m->insertItem(i18n("Edit this mail"),this,SLOT(reEditMail())); 495 m->insertItem(i18n("Edit this mail"),this,SLOT(reEditMail()));
496 } 496 }
497 m->insertItem(i18n("Reply to this mail"),this,SLOT(replyMail())); 497 m->insertItem(i18n("Reply to this mail"),this,SLOT(replyMail()));
498 m->insertSeparator();
499 m->insertItem(i18n("Read this mail"),this,SLOT(displayMail())); 498 m->insertItem(i18n("Read this mail"),this,SLOT(displayMail()));
499 m->insertSeparator();
500 m->insertItem(i18n("Move/Copy this mail"),this,SLOT(slotMoveCopyMail())); 500 m->insertItem(i18n("Move/Copy this mail"),this,SLOT(slotMoveCopyMail()));
501 m->insertItem(i18n("Delete this mail"),this,SLOT(slotDeleteMail())); 501 m->insertItem(i18n("Delete this mail"),this,SLOT(slotDeleteMail()));
502 m->insertSeparator(); 502 m->insertSeparator();
503 m->insertItem(i18n("Move/Copy all selected mail"),this,SLOT(slotMoveCopyAllMail())); 503 m->insertItem(i18n("Move/Copy all selected mail"),this,SLOT(slotMoveCopyAllMail()));
504 m->insertItem(i18n("Delete all selected mails"),this,SLOT(slotDeleteAllMail())); 504 m->insertItem(i18n("Delete all selected mails"),this,SLOT(slotDeleteAllMail()));
505 m->insertSeparator();
505 m->insertItem(i18n("Clear selection"),this,SLOT(clearSelection())); 506 m->insertItem(i18n("Clear selection"),this,SLOT(clearSelection()));
506 } 507 }
507 m->setFocus(); 508 m->setFocus();
508 m->exec( QPoint( QCursor::pos().x(), QCursor::pos().y()) ); 509 m->exec( QPoint( QCursor::pos().x(), QCursor::pos().y()) );
509 delete m; 510 delete m;
510 } 511 }
511} 512}
512 513
513void OpieMail::slotShowFolders( bool show ) 514void OpieMail::slotShowFolders( bool show )
514{ 515{
515 if ( show && folderView->isHidden() ) 516 if ( show && folderView->isHidden() )
516 { 517 {
517 folderView->show(); 518 folderView->show();
518 } 519 }
519 else if ( !show && !folderView->isHidden() ) 520 else if ( !show && !folderView->isHidden() )
520 { 521 {
521 folderView->hide(); 522 folderView->hide();
522 } 523 }
523} 524}
524 525
525void OpieMail::refreshMailView(const QValueList<RecMailP>&list) 526void OpieMail::refreshMailView(const QValueList<RecMailP>&list)
526{ 527{
527 MailListViewItem*item = 0; 528 MailListViewItem*item = 0;
528 mailView->clear(); 529 mailView->clear();