summaryrefslogtreecommitdiffabout
path: root/kmicromail/accountitem.cpp
Unidiff
Diffstat (limited to 'kmicromail/accountitem.cpp') (more/less context) (show whitespace changes)
-rw-r--r--kmicromail/accountitem.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/kmicromail/accountitem.cpp b/kmicromail/accountitem.cpp
index d0321ef..1698b40 100644
--- a/kmicromail/accountitem.cpp
+++ b/kmicromail/accountitem.cpp
@@ -83,24 +83,25 @@ RECBODYP POP3viewItem::fetchBody( const RecMailP &mail )
83 return wrapper->fetchBody( mail ); 83 return wrapper->fetchBody( mail );
84} 84}
85 85
86QPopupMenu * POP3viewItem::getContextMenu() 86QPopupMenu * POP3viewItem::getContextMenu()
87{ 87{
88 QPopupMenu *m = new QPopupMenu(0); 88 QPopupMenu *m = new QPopupMenu(0);
89 if (m) 89 if (m)
90 { 90 {
91 if (!account->getOffline()) 91 if (!account->getOffline())
92 { 92 {
93 m->insertItem(QObject::tr("Disconnect",contextName),0); 93 m->insertItem(QObject::tr("Disconnect",contextName),0);
94 m->insertItem(QObject::tr("Set offline",contextName),1); 94 m->insertItem(QObject::tr("Set offline",contextName),1);
95 m->insertItem(QObject::tr("Download messages",contextName),2);
95 } 96 }
96 else 97 else
97 { 98 {
98 m->insertItem(QObject::tr("Set online",contextName),1); 99 m->insertItem(QObject::tr("Set online",contextName),1);
99 } 100 }
100 } 101 }
101 return m; 102 return m;
102} 103}
103 104
104void POP3viewItem::disconnect() 105void POP3viewItem::disconnect()
105{ 106{
106 QListViewItem *child = firstChild(); 107 QListViewItem *child = firstChild();
@@ -126,24 +127,33 @@ void POP3viewItem::setOnOffline()
126} 127}
127 128
128void POP3viewItem::contextMenuSelected(int which) 129void POP3viewItem::contextMenuSelected(int which)
129{ 130{
130 switch (which) 131 switch (which)
131 { 132 {
132 case 0: 133 case 0:
133 disconnect(); 134 disconnect();
134 break; 135 break;
135 case 1: 136 case 1:
136 setOnOffline(); 137 setOnOffline();
137 break; 138 break;
139 case 2: // daunlood
140 AccountView*bl = accountView();
141 if (!bl) return;
142 AccountViewItem* in = findSubItem( "inbox" , 0);
143 if ( ! in )
144 return;
145 bl->downloadMailsInbox(in->getFolder() ,getWrapper());
146 setOnOffline();
147 break;
138 } 148 }
139} 149}
140 150
141POP3folderItem::~POP3folderItem() 151POP3folderItem::~POP3folderItem()
142{} 152{}
143 153
144POP3folderItem::POP3folderItem( const FolderP&folderInit, POP3viewItem *parent , QListViewItem*after ) 154POP3folderItem::POP3folderItem( const FolderP&folderInit, POP3viewItem *parent , QListViewItem*after )
145 : AccountViewItem(folderInit,parent,after ) 155 : AccountViewItem(folderInit,parent,after )
146{ 156{
147 pop3 = parent; 157 pop3 = parent;
148 if (folder->getDisplayName().lower()!="inbox") 158 if (folder->getDisplayName().lower()!="inbox")
149 { 159 {
@@ -1096,25 +1106,25 @@ void AccountViewItem::removeChilds()
1096 QListViewItem *child = firstChild(); 1106 QListViewItem *child = firstChild();
1097 while ( child ) 1107 while ( child )
1098 { 1108 {
1099 QListViewItem *tmp = child; 1109 QListViewItem *tmp = child;
1100 child = child->nextSibling(); 1110 child = child->nextSibling();
1101 delete tmp; 1111 delete tmp;
1102 } 1112 }
1103} 1113}
1104 1114
1105bool AccountViewItem::matchName(const QString&name)const 1115bool AccountViewItem::matchName(const QString&name)const
1106{ 1116{
1107 if (!folder) return false; 1117 if (!folder) return false;
1108 return folder->getDisplayName()==name; 1118 return folder->getDisplayName().lower()==name.lower();
1109} 1119}
1110 1120
1111 1121
1112AccountViewItem*AccountViewItem::findSubItem(const QString&path,AccountViewItem*start) 1122AccountViewItem*AccountViewItem::findSubItem(const QString&path,AccountViewItem*start)
1113{ 1123{
1114 AccountViewItem*pitem,*sitem; 1124 AccountViewItem*pitem,*sitem;
1115 if (!start) pitem = (AccountViewItem*)firstChild(); 1125 if (!start) pitem = (AccountViewItem*)firstChild();
1116 else pitem = (AccountViewItem*)start->firstChild(); 1126 else pitem = (AccountViewItem*)start->firstChild();
1117 while (pitem) 1127 while (pitem)
1118 { 1128 {
1119 if (pitem->matchName(path)) 1129 if (pitem->matchName(path))
1120 { 1130 {