summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/korganizer/germantranslation.txt5
-rw-r--r--kmicromail/editaccounts.cpp12
-rw-r--r--kmicromail/libmailwrapper/smtpwrapper.cpp21
-rw-r--r--korganizer/kolistview.cpp41
-rw-r--r--korganizer/kolistview.h2
5 files changed, 66 insertions, 15 deletions
diff --git a/bin/kdepim/korganizer/germantranslation.txt b/bin/kdepim/korganizer/germantranslation.txt
index 246ab3d..2084d0d 100644
--- a/bin/kdepim/korganizer/germantranslation.txt
+++ b/bin/kdepim/korganizer/germantranslation.txt
@@ -1295,12 +1295,15 @@
{ "Week Number","Wochennummer" },
{ "Import","Importiere" },
{ "Export","Exportiere" },
{ "Beam","Beame" },
+{ "Export selected","Exportiere Selektierte" },
+{ "As iCal (ics) file...","Als iCal (ics) Datei..." },
+{ "As vCal (vcs) file...","Als vCal (vcs) Datei..." },
+{ "Journal/Details...","Journale/Details..." },
{ "","" },
{ "","" },
{ "","" },
{ "","" },
{ "","" },
{ "","" },
{ "","" },
-
diff --git a/kmicromail/editaccounts.cpp b/kmicromail/editaccounts.cpp
index 49049f6..2c0f2d8 100644
--- a/kmicromail/editaccounts.cpp
+++ b/kmicromail/editaccounts.cpp
@@ -346,8 +346,9 @@ void IMAPconfig::slotConnectionToggle( int index )
{
if ( index == 2 )
{
portLine->setText( IMAP_SSL_PORT );
+ CommandEdit->hide();
}
else if ( index == 3 )
{
portLine->setText( IMAP_PORT );
@@ -355,8 +356,9 @@ void IMAPconfig::slotConnectionToggle( int index )
}
else
{
portLine->setText( IMAP_PORT );
+ CommandEdit->hide();
}
}
void IMAPconfig::fillValues()
@@ -427,8 +429,9 @@ void POP3config::slotConnectionToggle( int index )
// 2 is ssl connection
if ( index == 2 )
{
portLine->setText( POP3_SSL_PORT );
+ CommandEdit->hide();
}
else if ( index == 3 )
{
portLine->setText( POP3_PORT );
@@ -436,8 +439,9 @@ void POP3config::slotConnectionToggle( int index )
}
else
{
portLine->setText( POP3_PORT );
+ CommandEdit->hide();
}
}
void POP3config::fillValues()
@@ -519,21 +523,23 @@ void SMTPconfig::chooseSig()
}
}
void SMTPconfig::slotConnectionToggle( int index )
{
- // 2 is ssl connection
- if ( index == 2 )
+ // 3 is ssl connection
+ if ( index == 3 )
{
portLine->setText( SMTP_SSL_PORT );
+ CommandEdit->hide();
}
- else if ( index == 3 )
+ else if ( index == 4 )
{
portLine->setText( SMTP_PORT );
CommandEdit->show();
}
else
{
portLine->setText( SMTP_PORT );
+ CommandEdit->hide();
}
}
void SMTPconfig::fillValues()
diff --git a/kmicromail/libmailwrapper/smtpwrapper.cpp b/kmicromail/libmailwrapper/smtpwrapper.cpp
index 872a460..845c71c 100644
--- a/kmicromail/libmailwrapper/smtpwrapper.cpp
+++ b/kmicromail/libmailwrapper/smtpwrapper.cpp
@@ -243,16 +243,18 @@ void SMTPwrapper::connect_server()
qDebug("Error init SMTP connection ");
failuretext = i18n("Error init SMTP connection:\n%1").arg(mailsmtpError(err));
}
}
- if (try_tls) {
+ if (result && try_tls) {
qDebug("Smpt: Try tls ");
err = start_smtp_tls();
if (err != MAILSMTP_NO_ERROR) {
try_tls = false;
qDebug("no tls ");
} else {
err = mailesmtp_ehlo(m_smtp);
+ if ( err != MAILSMTP_NO_ERROR )
+ result = 0;
}
}
//qDebug("mailesmtp_ehlo %d ",err );
if (!try_tls && force_tls) {
@@ -289,8 +291,12 @@ void SMTPwrapper::connect_server()
result = 0;
}
}
}
+ if ( result == 0 ) {
+ mailsmtp_free(m_smtp);
+ m_smtp = 0;
+ }
}
void SMTPwrapper::disc_server()
{
@@ -345,9 +351,13 @@ bool SMTPwrapper::sendMail(const Opie::Core::OSmartPointer<Mail>&mail,bool later
; // odebug << "Clean up done" << oendl;
sendProgress->hide();
delete sendProgress;
sendProgress = 0;
- mailmime_free( mimeMail );
+ mailmime_free( mimeMail );
+ if ( m_smtp ) {
+ mailsmtp_free(m_smtp);
+ m_smtp = 0;
+ }
}
return result;
}
@@ -457,8 +467,9 @@ bool SMTPwrapper::flushOutbox() {
if (reset_user_value) {
m_SmtpAccount->setUser(oldUser);
m_SmtpAccount->setPassword(oldPw);
}
+
KConfig cfg( locateLocal("config", "kopiemailrc" ) );
cfg.setGroup( "Status" );
m_queuedMail = mailsToSend.count();
cfg.writeEntry( "outgoing", m_queuedMail );
@@ -466,7 +477,11 @@ bool SMTPwrapper::flushOutbox() {
sendProgress->hide();
delete sendProgress;
sendProgress = 0;
wrap->deleteMails(mbox,mailsToRemove);
- delete wrap;
+ delete wrap;
+ if ( m_smtp ) {
+ mailsmtp_free(m_smtp);
+ m_smtp = 0;
+ }
return returnValue;
}
diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp
index 710a9f9..f235705 100644
--- a/korganizer/kolistview.cpp
+++ b/korganizer/kolistview.cpp
@@ -264,14 +264,16 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent,
mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
i18n("Delete all selected"),this,
SLOT(deleteAll()),true);
mPopupMenu->insertSeparator();
- mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
- i18n("Save selected to file..."),this,
- SLOT(saveToFile()),true);
- mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
- i18n("Save Journal/Description..."),this,
- SLOT(saveDescriptionToFile()),true);
+ QPopupMenu * exportPO = new QPopupMenu ( this );
+ mPopupMenu->insertItem( i18n("Export selected"), exportPO );
+ exportPO->insertItem( i18n("As iCal (ics) file..."),this,
+ SLOT(saveToFile()));
+ exportPO->insertItem( i18n("As vCal (vcs) file..."),this,
+ SLOT(saveToFileVCS()));
+ exportPO->insertItem( i18n("Journal/Details..."),this,
+ SLOT(saveDescriptionToFile()));
// mPopupMenu->insertSeparator();
mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
i18n("Add Categ. to selected..."),this,
SLOT(addCat()),true);
@@ -605,10 +607,18 @@ void KOListView::saveDescriptionToFile()
topLevelWidget()->setCaption(mes);
}
}
}
+void KOListView::saveToFileVCS()
+{
+ writeToFile( false );
+}
void KOListView::saveToFile()
{
+ writeToFile( true );
+}
+void KOListView::writeToFile( bool iCal )
+{
int icount = 0;
QPtrList<Incidence> delSel ;
QListViewItem *item = mListView->firstChild ();
@@ -621,8 +631,18 @@ void KOListView::saveToFile()
item = item->nextSibling();
}
if ( icount ) {
QString fn = KOPrefs::instance()->mLastSaveFile;
+ QString extension;
+ if ( iCal ) {
+ if ( fn.right( 4 ).lower() == ".vcs" ) {
+ fn = fn.left( fn.length() -3) + "ics";
+ }
+ } else {
+ if ( fn.right( 4 ).lower() == ".ics" ) {
+ fn = fn.left( fn.length() -3) + "vcs";
+ }
+ }
fn = KFileDialog::getSaveFileName( fn, i18n("Save filename"), this );
if ( fn == "" )
return;
@@ -646,10 +666,15 @@ void KOListView::saveToFile()
while ( incidence ) {
cal.addIncidence( incidence->clone() );
incidence = delSel.next();
}
- ICalFormat format;
- format.save( &cal, fn );
+ if ( iCal ) {
+ ICalFormat format;
+ format.save( &cal, fn );
+ } else {
+ VCalFormat format;
+ format.save( &cal, fn );
+ }
mes = i18n("KO/Pi:Saved %1").arg(fn );
KOPrefs::instance()->mLastSaveFile = fn;
topLevelWidget()->setCaption(mes);
}
diff --git a/korganizer/kolistview.h b/korganizer/kolistview.h
index c86449d..0d9c525 100644
--- a/korganizer/kolistview.h
+++ b/korganizer/kolistview.h
@@ -271,8 +271,9 @@ class KOListView : public KOEventView
void showDates();
void hideDates();
void deleteAll();
void saveToFile();
+ void saveToFileVCS();
void saveDescriptionToFile();
void beamSelected();
void updateConfig();
void addCat();
@@ -287,8 +288,9 @@ class KOListView : public KOEventView
protected slots:
void processSelectionChange(QListViewItem *);
protected:
+ void writeToFile( bool iCal );
void addEvents(QPtrList<Event> eventList);
void addIncidence(Incidence *);
KOListViewItem *getItemForEvent(Event *event);