author | alwin <alwin> | 2005-03-12 22:14:03 (UTC) |
---|---|---|
committer | alwin <alwin> | 2005-03-12 22:14:03 (UTC) |
commit | 3cb4c3983ee738f3221ecb4cb154ea1252d69d64 (patch) (unidiff) | |
tree | 13357c046fd618b10546ad6d21992826eab3ad01 /noncore/net/mail/opiemail.cpp | |
parent | 9dddeb81d7db5da718f3f467bb1511b7e72b9caa (diff) | |
download | opie-3cb4c3983ee738f3221ecb4cb154ea1252d69d64.zip opie-3cb4c3983ee738f3221ecb4cb154ea1252d69d64.tar.gz opie-3cb4c3983ee738f3221ecb4cb154ea1252d69d64.tar.bz2 |
rework of the structure of the main menues, them depends now on state of current selected folder/server
on small screens some "Folder" and "Server" menu will get submenus of the menu-item "Mail" cause lack of space on screen - have no other idea.
Diffstat (limited to 'noncore/net/mail/opiemail.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/mail/opiemail.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/noncore/net/mail/opiemail.cpp b/noncore/net/mail/opiemail.cpp index 7c6d314..1bc81e4 100644 --- a/noncore/net/mail/opiemail.cpp +++ b/noncore/net/mail/opiemail.cpp | |||
@@ -105,12 +105,13 @@ void ValueExplode::splitit() | |||
105 | OpieMail::OpieMail( QWidget *parent, const char *name, WFlags ) | 105 | OpieMail::OpieMail( QWidget *parent, const char *name, WFlags ) |
106 | : MainWindow( parent, name, WStyle_ContextHelp ) | 106 | : MainWindow( parent, name, WStyle_ContextHelp ) |
107 | { | 107 | { |
108 | setup_signalblocking(); | 108 | setup_signalblocking(); |
109 | settings = new Settings(); | 109 | settings = new Settings(); |
110 | folderView->populate( settings->getAccounts() ); | 110 | folderView->populate( settings->getAccounts() ); |
111 | connect(folderView,SIGNAL(refreshMenues(int)),this,SLOT(refreshMenu(int))); | ||
111 | } | 112 | } |
112 | 113 | ||
113 | OpieMail::~OpieMail() | 114 | OpieMail::~OpieMail() |
114 | { | 115 | { |
115 | if (settings) delete settings; | 116 | if (settings) delete settings; |
116 | } | 117 | } |
@@ -383,6 +384,46 @@ void OpieMail::reEditMail() | |||
383 | 384 | ||
384 | ComposeMail compose( settings, this, 0, true , WStyle_ContextHelp ); | 385 | ComposeMail compose( settings, this, 0, true , WStyle_ContextHelp ); |
385 | compose.reEditMail(((MailListViewItem*)mailView->currentItem() )->data()); | 386 | compose.reEditMail(((MailListViewItem*)mailView->currentItem() )->data()); |
386 | compose.slotAdjustColumns(); | 387 | compose.slotAdjustColumns(); |
387 | QPEApplication::execDialog( &compose ); | 388 | QPEApplication::execDialog( &compose ); |
388 | } | 389 | } |
390 | |||
391 | void OpieMail::refreshMenu(int m_isFolder) | ||
392 | { | ||
393 | if (QApplication::desktop()->width()<330) { | ||
394 | mailMenu->setItemEnabled(m_ServerMenuId,m_isFolder&1); | ||
395 | mailMenu->setItemEnabled(m_FolderMenuId,m_isFolder&2); | ||
396 | } else { | ||
397 | menuBar->setItemEnabled(m_ServerMenuId,m_isFolder&1); | ||
398 | menuBar->setItemEnabled(m_FolderMenuId,m_isFolder&2); | ||
399 | } | ||
400 | |||
401 | QMap<int,QString>::ConstIterator it; | ||
402 | QMap<int,QString> server_entries=folderView->currentServerMenu(); | ||
403 | QMap<int,QString> folder_entries=folderView->currentFolderMenu(); | ||
404 | |||
405 | int id; | ||
406 | unsigned int i; | ||
407 | for (i=0; i<folderMenu->count();++i) { | ||
408 | id = folderMenu->idAt(i); | ||
409 | folderMenu->setItemEnabled(id,false); | ||
410 | } | ||
411 | for (it=folder_entries.begin();it!=folder_entries.end();++it) { | ||
412 | folderMenu->changeItem(it.key(),it.data()); | ||
413 | folderMenu->setItemEnabled(it.key(),true); | ||
414 | } | ||
415 | for (i=0; i<serverMenu->count();++i) { | ||
416 | id = serverMenu->idAt(i); | ||
417 | serverMenu->setItemEnabled(id,false); | ||
418 | } | ||
419 | for (it=server_entries.begin();it!=server_entries.end();++it) { | ||
420 | serverMenu->changeItem(it.key(),it.data()); | ||
421 | serverMenu->setItemEnabled(it.key(),true); | ||
422 | } | ||
423 | } | ||
424 | |||
425 | void OpieMail::serverSelected(int m_isFolder) | ||
426 | { | ||
427 | mailView->clear(); | ||
428 | refreshMenu(m_isFolder); | ||
429 | } | ||