author | alwin <alwin> | 2005-03-07 23:12:51 (UTC) |
---|---|---|
committer | alwin <alwin> | 2005-03-07 23:12:51 (UTC) |
commit | 2ba21de3fce9ca9fe9a70474a1927f0106d1d7ce (patch) (side-by-side diff) | |
tree | d0ff8c035e34a83fbc935c8f3f6ab926ed432559 /noncore/net/mail/opiemail.cpp | |
parent | a1fab1e1abd009a6a64c7ea3957bdb5587f4be81 (diff) | |
download | opie-2ba21de3fce9ca9fe9a70474a1927f0106d1d7ce.zip opie-2ba21de3fce9ca9fe9a70474a1927f0106d1d7ce.tar.gz opie-2ba21de3fce9ca9fe9a70474a1927f0106d1d7ce.tar.bz2 |
beauty
hopefull some speedups
obsolete stuff removed
fixed a crasher
Diffstat (limited to 'noncore/net/mail/opiemail.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/mail/opiemail.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/noncore/net/mail/opiemail.cpp b/noncore/net/mail/opiemail.cpp index 2bbc8f1..9eba23e 100644 --- a/noncore/net/mail/opiemail.cpp +++ b/noncore/net/mail/opiemail.cpp @@ -62,104 +62,97 @@ public: ValueExplode::~ValueExplode() { } ValueExplode::ValueExplode(const QString&aCommand,const char aDelemiter,const char a2Delemiter) :m_LastParsed(),m_Command(aCommand) { mDelemiter = aDelemiter; m2Delemiter = a2Delemiter; splitit(); } void ValueExplode::splitit() { QString iLine; m_LastParsed.clear(); if (mDelemiter.isEmpty()||m2Delemiter.isEmpty()) { m_LastParsed.append(tkeyvalues(m_Command,"")); return; } int pos,pos2,startpos; startpos = 0; iLine = m_Command; while ( (pos = iLine.find(mDelemiter,startpos))!=-1) { pos2 = iLine.find(m2Delemiter,startpos); if (pos2==-1||pos2>pos) { m_LastParsed.append(tkeyvalues(iLine.mid(startpos,pos-startpos),"")); } else { m_LastParsed.append(tkeyvalues(iLine.mid(startpos,pos2-startpos),iLine.mid(pos2+1,pos-pos2-1))); } startpos = pos+1; } if (startpos<iLine.length()) { pos2 = iLine.find(m2Delemiter,startpos); if (pos2==-1) { m_LastParsed.append(tkeyvalues(iLine.mid(startpos),"")); } else { m_LastParsed.append(tkeyvalues(iLine.mid(startpos,pos2-startpos),iLine.mid(pos2+1))); } } } OpieMail::OpieMail( QWidget *parent, const char *name, WFlags ) : MainWindow( parent, name, WStyle_ContextHelp ) { setup_signalblocking(); settings = new Settings(); - folderView->populate( settings->getAccounts() ); -#if 0 - tvaluelist s = ValueExplode("a=1&b=holladiewaldfee&c=3&d=&e=3450"); - for (int i = 0; i < s.count();++i) { - odebug<<"Key: " << s[i].key << " Value: " << s[i].data << oendl; - } -#endif } OpieMail::~OpieMail() { if (settings) delete settings; } void OpieMail::setup_signalblocking() { /* for networking we must block SIGPIPE and Co. */ struct sigaction blocking_action,temp_action; blocking_action.sa_handler = SIG_IGN; sigemptyset(&(blocking_action.sa_mask)); blocking_action.sa_flags = 0; sigaction(SIGPIPE,&blocking_action,&temp_action); } void OpieMail::appMessage(const QCString &msg, const QByteArray &data) { // copied from old mail2 if (msg == "writeMail(QString,QString)") { QDataStream stream(data,IO_ReadOnly); QString name, email; stream >> name >> email; // removing the whitespaces at beginning and end is needed! slotwriteMail(name.stripWhiteSpace(),email.stripWhiteSpace()); } else if (msg == "newMail()") { slotComposeMail(); } } /** * Konqueror calls us with the mailto:name@address */ void OpieMail::setDocument(const QString& mail) { /* * It looks like a mailto address, lets try it */ if( mail.startsWith(QString::fromLatin1("mailto:")) ) slotwriteMail(QString::null, mail.mid(7)); } void OpieMail::slotwriteMail(const QString&name,const QString&email) { @@ -203,100 +196,101 @@ void OpieMail::slotSendQueued() } } if (smtpList.count()==0) { QMessageBox::information(0,tr("Info"),tr("Define a smtp account first")); return; } if (smtpList.count()==1) { smtp = smtpList.at(0); } else { smtp = 0; selectsmtp selsmtp; selsmtp.setSelectionlist(&smtpList); if ( QPEApplication::execDialog( &selsmtp ) == QDialog::Accepted ) { smtp = selsmtp.selected_smtp(); } } if (smtp) { SMTPwrapper * wrap = new SMTPwrapper(smtp); if ( wrap->flushOutbox() ) { QMessageBox::information(0,tr("Info"),tr("Mail queue flushed")); } delete wrap; } } void OpieMail::slotSearchMails() { odebug << "Search Mails" << oendl; } void OpieMail::slotEditSettings() { SettingsDialog settingsDialog( this, 0, true, WStyle_ContextHelp ); QPEApplication::execDialog( &settingsDialog ); } void OpieMail::slotEditAccounts() { odebug << "Edit Accounts" << oendl; EditAccounts eaDialog( settings, this, 0, true, WStyle_ContextHelp ); eaDialog.slotAdjustColumns(); - QPEApplication::execDialog( &eaDialog ); + if (QPEApplication::execDialog( &eaDialog )==QDialog::Rejected);// return; + if ( settings ) delete settings; settings = new Settings(); - + mailView->clear(); folderView->populate( settings->getAccounts() ); } void OpieMail::displayMail() { QListViewItem*item = mailView->currentItem(); if (!item) return; RecMailP mail = ((MailListViewItem*)item)->data(); RecBodyP body = folderView->fetchBody(mail); ViewMail readMail( this,"", Qt::WType_Modal | WStyle_ContextHelp ); readMail.setBody( body ); readMail.setMail( mail ); readMail.showMaximized(); readMail.exec(); if ( readMail.deleted ) { folderView->refreshCurrent(); } else { ( (MailListViewItem*)item )->setPixmap( 0, Resource::loadPixmap( "" ) ); } } void OpieMail::slotDeleteMail() { if (!mailView->currentItem()) return; RecMailP mail = ((MailListViewItem*)mailView->currentItem() )->data(); if ( QMessageBox::warning(this, tr("Delete Mail"), QString( tr("<p>Do you really want to delete this mail? <br><br>" ) + mail->getFrom() + " - " + mail->getSubject() ) , QMessageBox::Yes, QMessageBox::No ) == QMessageBox::Yes ) { mail->Wrapper()->deleteMail( mail ); folderView->refreshCurrent(); } } void OpieMail::mailHold(int button, QListViewItem *item,const QPoint&,int ) { if (!mailView->currentItem()) return; MAILLIB::ATYPE mailtype = ((MailListViewItem*)mailView->currentItem() )->wrapperType(); /* just the RIGHT button - or hold on pda */ if (button!=2) {return;} odebug << "Event right/hold" << oendl; if (!item) return; QPopupMenu *m = new QPopupMenu(0); if (m) { if (mailtype==MAILLIB::A_NNTP) { |