summaryrefslogtreecommitdiff
authoralwin <alwin>2005-03-20 00:12:11 (UTC)
committer alwin <alwin>2005-03-20 00:12:11 (UTC)
commitbde8cf28573964aeb78fa9785cf1514cb8aa35a7 (patch) (unidiff)
treee91895f42ea3f9f5ac3d77128b8715b359ab54bf
parent9b608c7c967b2a22d4c6a8d8b98a4635d3b21204 (diff)
downloadopie-bde8cf28573964aeb78fa9785cf1514cb8aa35a7.zip
opie-bde8cf28573964aeb78fa9785cf1514cb8aa35a7.tar.gz
opie-bde8cf28573964aeb78fa9785cf1514cb8aa35a7.tar.bz2
user may switch open folders/mails on single-click
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/accountview.cpp11
-rw-r--r--noncore/net/mail/accountview.h2
-rw-r--r--noncore/net/mail/defines.h2
-rw-r--r--noncore/net/mail/mainwindow.cpp7
-rw-r--r--noncore/net/mail/mainwindow.h4
-rw-r--r--noncore/net/mail/opiemail.cpp13
-rw-r--r--noncore/net/mail/opiemail.h3
-rw-r--r--noncore/net/mail/settingsdialog.cpp4
-rw-r--r--noncore/net/mail/settingsdialogui.ui30
9 files changed, 69 insertions, 7 deletions
diff --git a/noncore/net/mail/accountview.cpp b/noncore/net/mail/accountview.cpp
index 1183704..0e739e2 100644
--- a/noncore/net/mail/accountview.cpp
+++ b/noncore/net/mail/accountview.cpp
@@ -11,6 +11,7 @@
11/* OPIE */ 11/* OPIE */
12#include <opie2/odebug.h> 12#include <opie2/odebug.h>
13#include <qpe/qpeapplication.h> 13#include <qpe/qpeapplication.h>
14#include <qpe/config.h>
14 15
15/* QT */ 16/* QT */
16#include <qmessagebox.h> 17#include <qmessagebox.h>
@@ -31,6 +32,7 @@ AccountView::AccountView( QWidget *parent, const char *name, WFlags flags )
31 connect( this, SIGNAL(clicked(QListViewItem*) ),this, 32 connect( this, SIGNAL(clicked(QListViewItem*) ),this,
32 SLOT( slotMouseClicked(QListViewItem*) ) ); 33 SLOT( slotMouseClicked(QListViewItem*) ) );
33 m_currentItem = 0; 34 m_currentItem = 0;
35 readSettings();
34} 36}
35 37
36AccountView::~AccountView() 38AccountView::~AccountView()
@@ -39,6 +41,13 @@ AccountView::~AccountView()
39 mhAccounts.clear(); 41 mhAccounts.clear();
40} 42}
41 43
44void AccountView::readSettings()
45{
46 Config cfg("mail");
47 cfg.setGroup( "Settings" );
48 m_clickopens = cfg.readBoolEntry("clickOpensFolder",true);
49}
50
42void AccountView::slotSelectionChanged(QListViewItem*item) 51void AccountView::slotSelectionChanged(QListViewItem*item)
43{ 52{
44 if (!item) { 53 if (!item) {
@@ -98,7 +107,7 @@ void AccountView::slotLeftButton(int, QListViewItem *,const QPoint&,int)
98void AccountView::slotMouseClicked(QListViewItem*item) 107void AccountView::slotMouseClicked(QListViewItem*item)
99{ 108{
100 if (m_rightPressed) return; 109 if (m_rightPressed) return;
101 if (!item || m_currentItem == item) return; 110 if (!item || m_currentItem == item||!m_clickopens) return;
102 /* ### ToDo check settings if on single tab it should open */ 111 /* ### ToDo check settings if on single tab it should open */
103 m_currentItem = item; 112 m_currentItem = item;
104 refresh(m_currentItem); 113 refresh(m_currentItem);
diff --git a/noncore/net/mail/accountview.h b/noncore/net/mail/accountview.h
index 5c4b559..418f4f3 100644
--- a/noncore/net/mail/accountview.h
+++ b/noncore/net/mail/accountview.h
@@ -33,6 +33,7 @@ public slots:
33 virtual void refresh(QListViewItem *item); 33 virtual void refresh(QListViewItem *item);
34 virtual void refreshCurrent(); 34 virtual void refreshCurrent();
35 virtual void slotContextMenu(int id); 35 virtual void slotContextMenu(int id);
36 virtual void readSettings();
36 37
37 void setupFolderselect(Selectstore*sels); 38 void setupFolderselect(Selectstore*sels);
38 39
@@ -46,6 +47,7 @@ protected:
46 QValueList<IMAPviewItem*> imapAccounts; 47 QValueList<IMAPviewItem*> imapAccounts;
47 QValueList<MHviewItem*> mhAccounts; 48 QValueList<MHviewItem*> mhAccounts;
48 bool m_rightPressed:1; 49 bool m_rightPressed:1;
50 bool m_clickopens:1;
49 51
50protected slots: 52protected slots:
51 virtual void slotRightButton(int, QListViewItem *,const QPoint&,int); 53 virtual void slotRightButton(int, QListViewItem *,const QPoint&,int);
diff --git a/noncore/net/mail/defines.h b/noncore/net/mail/defines.h
index 5fcbf0f..50d63dd 100644
--- a/noncore/net/mail/defines.h
+++ b/noncore/net/mail/defines.h
@@ -17,6 +17,7 @@
17#define PIC_LOCALFOLDER "mail/localfolder" 17#define PIC_LOCALFOLDER "mail/localfolder"
18 18
19#define PIC_OFFLINE "mail/notconnected" 19#define PIC_OFFLINE "mail/notconnected"
20#define PIC_DOCUMENT "DocsIcon"
20 21
21#define ICON_COMPOSEMAIL QIconSet( Resource::loadPixmap( PIC_COMPOSEMAIL ) ) 22#define ICON_COMPOSEMAIL QIconSet( Resource::loadPixmap( PIC_COMPOSEMAIL ) )
22#define ICON_SENDQUEUED QIconSet( Resource::loadPixmap( PIC_SENDQUEUED ) ) 23#define ICON_SENDQUEUED QIconSet( Resource::loadPixmap( PIC_SENDQUEUED ) )
@@ -25,6 +26,7 @@
25#define ICON_EDITSETTINGS QIconSet( Resource::loadPixmap( PIC_EDITSETTINGS ) ) 26#define ICON_EDITSETTINGS QIconSet( Resource::loadPixmap( PIC_EDITSETTINGS ) )
26#define ICON_EDITACCOUNTS QIconSet( Resource::loadPixmap( PIC_EDITACCOUNTS ) ) 27#define ICON_EDITACCOUNTS QIconSet( Resource::loadPixmap( PIC_EDITACCOUNTS ) )
27#define ICON_SYNC QIconSet( Resource::loadPixmap( PIC_SYNC ) ) 28#define ICON_SYNC QIconSet( Resource::loadPixmap( PIC_SYNC ) )
29#define ICON_READMAIL QIconSet( Resource::loadPixmap( PIC_DOCUMENT))
28 30
29#define PIXMAP_IMAPFOLDER QPixmap( Resource::loadPixmap( PIC_IMAPFOLDER ) ) 31#define PIXMAP_IMAPFOLDER QPixmap( Resource::loadPixmap( PIC_IMAPFOLDER ) )
30#define PIXMAP_POP3FOLDER QPixmap( Resource::loadPixmap( PIC_POP3FOLDER ) ) 32#define PIXMAP_POP3FOLDER QPixmap( Resource::loadPixmap( PIC_POP3FOLDER ) )
diff --git a/noncore/net/mail/mainwindow.cpp b/noncore/net/mail/mainwindow.cpp
index 3689352..b587424 100644
--- a/noncore/net/mail/mainwindow.cpp
+++ b/noncore/net/mail/mainwindow.cpp
@@ -63,11 +63,17 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
63 spacer->setBackgroundMode( QWidget::PaletteButton ); 63 spacer->setBackgroundMode( QWidget::PaletteButton );
64 toolBar->setStretchableWidget( spacer ); 64 toolBar->setStretchableWidget( spacer );
65 65
66 readMail = new QAction(tr("Read current mail"),ICON_READMAIL,0,0,this);
67 readMail->addTo(toolBar);
68 readMail->addTo(mailMenu);
69 connect(readMail,SIGNAL(activated()),this,SLOT(displayMail()));
70
66 composeMail = new QAction( tr( "Compose new mail" ), ICON_COMPOSEMAIL, 71 composeMail = new QAction( tr( "Compose new mail" ), ICON_COMPOSEMAIL,
67 0, 0, this ); 72 0, 0, this );
68 composeMail->addTo( toolBar ); 73 composeMail->addTo( toolBar );
69 composeMail->addTo( mailMenu ); 74 composeMail->addTo( mailMenu );
70 75
76
71 sendQueued = new QAction( tr( "Send queued mails" ), ICON_SENDQUEUED, 77 sendQueued = new QAction( tr( "Send queued mails" ), ICON_SENDQUEUED,
72 0, 0, this ); 78 0, 0, this );
73 sendQueued->addTo( toolBar ); 79 sendQueued->addTo( toolBar );
@@ -122,6 +128,7 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
122 connect(folderView,SIGNAL(serverSelected(int)),this,SLOT(serverSelected(int))); 128 connect(folderView,SIGNAL(serverSelected(int)),this,SLOT(serverSelected(int)));
123 connect(serverMenu,SIGNAL(activated(int)),folderView,SLOT(slotContextMenu(int))); 129 connect(serverMenu,SIGNAL(activated(int)),folderView,SLOT(slotContextMenu(int)));
124 connect(folderMenu,SIGNAL(activated(int)),folderView,SLOT(slotContextMenu(int))); 130 connect(folderMenu,SIGNAL(activated(int)),folderView,SLOT(slotContextMenu(int)));
131 connect(this,SIGNAL(settingsChanged()),folderView,SLOT(readSettings()));
125 132
126 133
127 layout->addWidget( folderView ); 134 layout->addWidget( folderView );
diff --git a/noncore/net/mail/mainwindow.h b/noncore/net/mail/mainwindow.h
index b781d62..6449ce8 100644
--- a/noncore/net/mail/mainwindow.h
+++ b/noncore/net/mail/mainwindow.h
@@ -49,13 +49,15 @@ protected:
49 QPopupMenu *mailMenu, *settingsMenu,*serverMenu,*folderMenu; 49 QPopupMenu *mailMenu, *settingsMenu,*serverMenu,*folderMenu;
50 50
51 QAction *composeMail, *sendQueued, *showFolders, *searchMails, *deleteMails, 51 QAction *composeMail, *sendQueued, *showFolders, *searchMails, *deleteMails,
52 *editSettings, *editAccounts, *syncFolders; 52 *editSettings, *editAccounts, *syncFolders,*readMail;
53 AccountView *folderView; 53 AccountView *folderView;
54 QListView *mailView; 54 QListView *mailView;
55 QBoxLayout *layout; 55 QBoxLayout *layout;
56 int m_Rotate; 56 int m_Rotate;
57 QCopChannel* m_sysChannel; 57 QCopChannel* m_sysChannel;
58 int m_ServerMenuId,m_FolderMenuId; 58 int m_ServerMenuId,m_FolderMenuId;
59signals:
60 void settingsChanged();
59}; 61};
60 62
61#endif 63#endif
diff --git a/noncore/net/mail/opiemail.cpp b/noncore/net/mail/opiemail.cpp
index 1bc81e4..fb8877a 100644
--- a/noncore/net/mail/opiemail.cpp
+++ b/noncore/net/mail/opiemail.cpp
@@ -15,6 +15,7 @@
15#include <opie2/odebug.h> 15#include <opie2/odebug.h>
16#include <qpe/resource.h> 16#include <qpe/resource.h>
17#include <qpe/qpeapplication.h> 17#include <qpe/qpeapplication.h>
18#include <qpe/config.h>
18 19
19/* QT */ 20/* QT */
20#include <qmap.h> 21#include <qmap.h>
@@ -106,6 +107,10 @@ OpieMail::OpieMail( QWidget *parent, const char *name, WFlags )
106 : MainWindow( parent, name, WStyle_ContextHelp ) 107 : MainWindow( parent, name, WStyle_ContextHelp )
107{ 108{
108 setup_signalblocking(); 109 setup_signalblocking();
110 Config cfg("mail");
111 cfg.setGroup( "Settings" );
112 m_clickopens = cfg.readBoolEntry("clickOpensMail",true);
113
109 settings = new Settings(); 114 settings = new Settings();
110 folderView->populate( settings->getAccounts() ); 115 folderView->populate( settings->getAccounts() );
111 connect(folderView,SIGNAL(refreshMenues(int)),this,SLOT(refreshMenu(int))); 116 connect(folderView,SIGNAL(refreshMenues(int)),this,SLOT(refreshMenu(int)));
@@ -234,7 +239,12 @@ void OpieMail::slotSearchMails()
234void OpieMail::slotEditSettings() 239void OpieMail::slotEditSettings()
235{ 240{
236 SettingsDialog settingsDialog( this, 0, true, WStyle_ContextHelp ); 241 SettingsDialog settingsDialog( this, 0, true, WStyle_ContextHelp );
237 QPEApplication::execDialog( &settingsDialog ); 242 if (QPEApplication::execDialog( &settingsDialog )) {
243 Config cfg("mail");
244 cfg.setGroup( "Settings" );
245 m_clickopens = cfg.readBoolEntry("clickOpensMail",true);
246 emit settingsChanged();
247 }
238} 248}
239 249
240void OpieMail::slotEditAccounts() 250void OpieMail::slotEditAccounts()
@@ -342,6 +352,7 @@ void OpieMail::refreshMailView(const QValueList<RecMailP>&list)
342 352
343void OpieMail::mailLeftClicked(int button, QListViewItem *item,const QPoint&,int ) 353void OpieMail::mailLeftClicked(int button, QListViewItem *item,const QPoint&,int )
344{ 354{
355 if (!m_clickopens) return;
345 /* just LEFT button - or tap with stylus on pda */ 356 /* just LEFT button - or tap with stylus on pda */
346 if (button!=1) return; 357 if (button!=1) return;
347 if (!item) return; 358 if (!item) return;
diff --git a/noncore/net/mail/opiemail.h b/noncore/net/mail/opiemail.h
index 75a0b2d..327bef7 100644
--- a/noncore/net/mail/opiemail.h
+++ b/noncore/net/mail/opiemail.h
@@ -43,8 +43,11 @@ protected slots:
43protected: 43protected:
44 void setup_signalblocking(); 44 void setup_signalblocking();
45 45
46 bool m_clickopens:1;
47
46private: 48private:
47 Settings *settings; 49 Settings *settings;
50signals:
48 51
49}; 52};
50 53
diff --git a/noncore/net/mail/settingsdialog.cpp b/noncore/net/mail/settingsdialog.cpp
index 6441948..74b8b12 100644
--- a/noncore/net/mail/settingsdialog.cpp
+++ b/noncore/net/mail/settingsdialog.cpp
@@ -20,6 +20,8 @@ void SettingsDialog::readConfig() {
20 Config cfg("mail"); 20 Config cfg("mail");
21 cfg.setGroup( "Settings" ); 21 cfg.setGroup( "Settings" );
22 showHtmlButton->setChecked( cfg.readBoolEntry( "showHtml", false ) ); 22 showHtmlButton->setChecked( cfg.readBoolEntry( "showHtml", false ) );
23 clickOpenMailButton->setChecked(cfg.readBoolEntry("clickOpensMail",true));
24 clickOpenFolderButton->setChecked(cfg.readBoolEntry("clickOpensFolder",true));
23 cfg.setGroup( "Compose" ); 25 cfg.setGroup( "Compose" );
24 checkBoxLater->setChecked( cfg.readBoolEntry( "sendLater", false ) ); 26 checkBoxLater->setChecked( cfg.readBoolEntry( "sendLater", false ) );
25 cfg.setGroup( "Applet" ); 27 cfg.setGroup( "Applet" );
@@ -33,6 +35,8 @@ void SettingsDialog::readConfig() {
33void SettingsDialog::writeConfig() { 35void SettingsDialog::writeConfig() {
34 Config cfg( "mail" ); 36 Config cfg( "mail" );
35 cfg.setGroup( "Settings" ); 37 cfg.setGroup( "Settings" );
38 cfg.writeEntry("clickOpensMail",clickOpenMailButton->isChecked());
39 cfg.writeEntry("clickOpensFolder",clickOpenFolderButton->isChecked());
36 cfg.writeEntry( "showHtml", showHtmlButton->isChecked() ); 40 cfg.writeEntry( "showHtml", showHtmlButton->isChecked() );
37 cfg.setGroup( "Compose" ); 41 cfg.setGroup( "Compose" );
38 cfg.writeEntry( "sendLater", checkBoxLater->isChecked() ); 42 cfg.writeEntry( "sendLater", checkBoxLater->isChecked() );
diff --git a/noncore/net/mail/settingsdialogui.ui b/noncore/net/mail/settingsdialogui.ui
index 4acd84a..0a97da0 100644
--- a/noncore/net/mail/settingsdialogui.ui
+++ b/noncore/net/mail/settingsdialogui.ui
@@ -11,8 +11,8 @@
11 <rect> 11 <rect>
12 <x>0</x> 12 <x>0</x>
13 <y>0</y> 13 <y>0</y>
14 <width>312</width> 14 <width>304</width>
15 <height>379</height> 15 <height>378</height>
16 </rect> 16 </rect>
17 </property> 17 </property>
18 <property stdset="1"> 18 <property stdset="1">
@@ -59,11 +59,11 @@
59 <vbox> 59 <vbox>
60 <property stdset="1"> 60 <property stdset="1">
61 <name>margin</name> 61 <name>margin</name>
62 <number>3</number> 62 <number>11</number>
63 </property> 63 </property>
64 <property stdset="1"> 64 <property stdset="1">
65 <name>spacing</name> 65 <name>spacing</name>
66 <number>3</number> 66 <number>6</number>
67 </property> 67 </property>
68 <widget> 68 <widget>
69 <class>QCheckBox</class> 69 <class>QCheckBox</class>
@@ -76,6 +76,28 @@
76 <string>View mail as Html</string> 76 <string>View mail as Html</string>
77 </property> 77 </property>
78 </widget> 78 </widget>
79 <widget>
80 <class>QCheckBox</class>
81 <property stdset="1">
82 <name>name</name>
83 <cstring>clickOpenMailButton</cstring>
84 </property>
85 <property stdset="1">
86 <name>text</name>
87 <string>Click opens mail</string>
88 </property>
89 </widget>
90 <widget>
91 <class>QCheckBox</class>
92 <property stdset="1">
93 <name>name</name>
94 <cstring>clickOpenFolderButton</cstring>
95 </property>
96 <property stdset="1">
97 <name>text</name>
98 <string>Click activate server/folder</string>
99 </property>
100 </widget>
79 <spacer> 101 <spacer>
80 <property> 102 <property>
81 <name>name</name> 103 <name>name</name>