summaryrefslogtreecommitdiff
authoralwin <alwin>2003-12-14 19:36:09 (UTC)
committer alwin <alwin>2003-12-14 19:36:09 (UTC)
commitaa2c19611a347a3945d403e20bcef01977d68b6a (patch) (side-by-side diff)
tree669bf39c587f9ee22e17fe2c61ed0fec78f356d3
parent353e1da81b235d7798763bce76428fb473108fb6 (diff)
downloadopie-aa2c19611a347a3945d403e20bcef01977d68b6a.zip
opie-aa2c19611a347a3945d403e20bcef01977d68b6a.tar.gz
opie-aa2c19611a347a3945d403e20bcef01977d68b6a.tar.bz2
if a mailbox-prefix is set than it will not displayed in folderview
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/net/mail/imapwrapper.cpp4
-rw-r--r--noncore/net/mail/libmailwrapper/imapwrapper.cpp4
-rw-r--r--noncore/net/mail/libmailwrapper/mailwrapper.cpp12
-rw-r--r--noncore/net/mail/libmailwrapper/mailwrapper.h4
-rw-r--r--noncore/net/mail/mailwrapper.cpp12
-rw-r--r--noncore/net/mail/mailwrapper.h4
6 files changed, 32 insertions, 8 deletions
diff --git a/noncore/net/mail/imapwrapper.cpp b/noncore/net/mail/imapwrapper.cpp
index b253b49..0ce2c6c 100644
--- a/noncore/net/mail/imapwrapper.cpp
+++ b/noncore/net/mail/imapwrapper.cpp
@@ -195,21 +195,23 @@ QList<Folder>* IMAPwrapper::listFolders()
current = result->first;
for ( current=clist_begin(result);current!=NULL;current=clist_next(current)) {
list = (mailimap_mailbox_list *) current->data;
// it is better use the deep copy mechanism of qt itself
// instead of using strdup!
temp = list->mb_name;
if (temp.lower()=="inbox")
continue;
+ if (temp.lower()==account->getPrefix().lower())
+ continue;
if ( (bflags = list->mb_flag) ) {
selectable = !(bflags->mbf_type==MAILIMAP_MBX_LIST_FLAGS_SFLAG&&
bflags->mbf_sflag==MAILIMAP_MBX_LIST_SFLAG_NOSELECT);
}
- folders->append(new IMAPFolder(temp,selectable));
+ folders->append(new IMAPFolder(temp,selectable,account->getPrefix()));
}
} else {
qDebug("error fetching folders %s",m_imap->imap_response);
}
mailimap_list_result_free( result );
return folders;
}
diff --git a/noncore/net/mail/libmailwrapper/imapwrapper.cpp b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
index b253b49..0ce2c6c 100644
--- a/noncore/net/mail/libmailwrapper/imapwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/imapwrapper.cpp
@@ -195,21 +195,23 @@ QList<Folder>* IMAPwrapper::listFolders()
current = result->first;
for ( current=clist_begin(result);current!=NULL;current=clist_next(current)) {
list = (mailimap_mailbox_list *) current->data;
// it is better use the deep copy mechanism of qt itself
// instead of using strdup!
temp = list->mb_name;
if (temp.lower()=="inbox")
continue;
+ if (temp.lower()==account->getPrefix().lower())
+ continue;
if ( (bflags = list->mb_flag) ) {
selectable = !(bflags->mbf_type==MAILIMAP_MBX_LIST_FLAGS_SFLAG&&
bflags->mbf_sflag==MAILIMAP_MBX_LIST_SFLAG_NOSELECT);
}
- folders->append(new IMAPFolder(temp,selectable));
+ folders->append(new IMAPFolder(temp,selectable,account->getPrefix()));
}
} else {
qDebug("error fetching folders %s",m_imap->imap_response);
}
mailimap_list_result_free( result );
return folders;
}
diff --git a/noncore/net/mail/libmailwrapper/mailwrapper.cpp b/noncore/net/mail/libmailwrapper/mailwrapper.cpp
index 3ffc274..96602c2 100644
--- a/noncore/net/mail/libmailwrapper/mailwrapper.cpp
+++ b/noncore/net/mail/libmailwrapper/mailwrapper.cpp
@@ -29,20 +29,30 @@ Folder::Folder(const QString&tmp_name )
QString str64 = nameDisplay.mid( pos + 1, end - pos - 1 );
// TODO: do real base64 decoding here !
if ( str64.compare( "APw" ) == 0 ) {
nameDisplay = nameDisplay.replace( pos, end - pos + 1, "ue" );
} else if ( str64.compare( "APY" ) == 0 ) {
nameDisplay = nameDisplay.replace( pos, end - pos + 1, "oe" );
}
}
-
qDebug( "folder " + name + " - displayed as " + nameDisplay );
}
+
+IMAPFolder::IMAPFolder(const QString&name,bool select,const QString&prefix )
+ : Folder( name ),m_MaySelect(select)
+{
+ if (prefix.length()>0) {
+ if (nameDisplay.startsWith(prefix) && nameDisplay.length()>prefix.length()) {
+ nameDisplay=nameDisplay.right(nameDisplay.length()-prefix.length());
+ }
+ }
+}
+
MailWrapper::MailWrapper( Settings *s )
: QObject()
{
settings = s;
}
QString MailWrapper::mailsmtpError( int errnum )
{
diff --git a/noncore/net/mail/libmailwrapper/mailwrapper.h b/noncore/net/mail/libmailwrapper/mailwrapper.h
index 34fd5c5..6994dd8 100644
--- a/noncore/net/mail/libmailwrapper/mailwrapper.h
+++ b/noncore/net/mail/libmailwrapper/mailwrapper.h
@@ -71,25 +71,25 @@ class Folder : public QObject
Q_OBJECT
public:
Folder( const QString&init_name );
const QString&getDisplayName()const { return nameDisplay; }
const QString&getName()const { return name; }
virtual bool may_select()const{return true;};
-private:
+protected:
QString nameDisplay, name;
};
class IMAPFolder : public Folder
{
public:
- IMAPFolder( QString name,bool select=true ) : Folder( name ),m_MaySelect(select) {}
+ IMAPFolder(const QString&name,bool select=true,const QString&prefix="" );
virtual bool may_select()const{return m_MaySelect;}
private:
bool m_MaySelect;
};
class MailWrapper : public QObject
{
Q_OBJECT
diff --git a/noncore/net/mail/mailwrapper.cpp b/noncore/net/mail/mailwrapper.cpp
index 3ffc274..96602c2 100644
--- a/noncore/net/mail/mailwrapper.cpp
+++ b/noncore/net/mail/mailwrapper.cpp
@@ -29,20 +29,30 @@ Folder::Folder(const QString&tmp_name )
QString str64 = nameDisplay.mid( pos + 1, end - pos - 1 );
// TODO: do real base64 decoding here !
if ( str64.compare( "APw" ) == 0 ) {
nameDisplay = nameDisplay.replace( pos, end - pos + 1, "ue" );
} else if ( str64.compare( "APY" ) == 0 ) {
nameDisplay = nameDisplay.replace( pos, end - pos + 1, "oe" );
}
}
-
qDebug( "folder " + name + " - displayed as " + nameDisplay );
}
+
+IMAPFolder::IMAPFolder(const QString&name,bool select,const QString&prefix )
+ : Folder( name ),m_MaySelect(select)
+{
+ if (prefix.length()>0) {
+ if (nameDisplay.startsWith(prefix) && nameDisplay.length()>prefix.length()) {
+ nameDisplay=nameDisplay.right(nameDisplay.length()-prefix.length());
+ }
+ }
+}
+
MailWrapper::MailWrapper( Settings *s )
: QObject()
{
settings = s;
}
QString MailWrapper::mailsmtpError( int errnum )
{
diff --git a/noncore/net/mail/mailwrapper.h b/noncore/net/mail/mailwrapper.h
index 34fd5c5..6994dd8 100644
--- a/noncore/net/mail/mailwrapper.h
+++ b/noncore/net/mail/mailwrapper.h
@@ -71,25 +71,25 @@ class Folder : public QObject
Q_OBJECT
public:
Folder( const QString&init_name );
const QString&getDisplayName()const { return nameDisplay; }
const QString&getName()const { return name; }
virtual bool may_select()const{return true;};
-private:
+protected:
QString nameDisplay, name;
};
class IMAPFolder : public Folder
{
public:
- IMAPFolder( QString name,bool select=true ) : Folder( name ),m_MaySelect(select) {}
+ IMAPFolder(const QString&name,bool select=true,const QString&prefix="" );
virtual bool may_select()const{return m_MaySelect;}
private:
bool m_MaySelect;
};
class MailWrapper : public QObject
{
Q_OBJECT