summaryrefslogtreecommitdiff
path: root/noncore/unsupported/mail2/mailtable.cpp
Unidiff
Diffstat (limited to 'noncore/unsupported/mail2/mailtable.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/unsupported/mail2/mailtable.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/noncore/unsupported/mail2/mailtable.cpp b/noncore/unsupported/mail2/mailtable.cpp
index fd179f0..56feab0 100644
--- a/noncore/unsupported/mail2/mailtable.cpp
+++ b/noncore/unsupported/mail2/mailtable.cpp
@@ -65,98 +65,98 @@ MailTable::MailTable(QWidget *parent, const char *name, WFlags fl)
65 QPopupMenu *markMenu = new QPopupMenu(this); 65 QPopupMenu *markMenu = new QPopupMenu(this);
66 markMenu->insertItem(tr("Seen"), MENU_MARK_READ); 66 markMenu->insertItem(tr("Seen"), MENU_MARK_READ);
67 markMenu->insertItem(tr("Unseen"), MENU_MARK_UNREAD); 67 markMenu->insertItem(tr("Unseen"), MENU_MARK_UNREAD);
68 markMenu->insertSeparator(); 68 markMenu->insertSeparator();
69 markMenu->insertItem(tr("Marked"), MENU_MARK_MARKED); 69 markMenu->insertItem(tr("Marked"), MENU_MARK_MARKED);
70 markMenu->insertItem(tr("Unmarked"), MENU_MARK_UNMARKED); 70 markMenu->insertItem(tr("Unmarked"), MENU_MARK_UNMARKED);
71 71
72 menu->insertItem(tr("Mark as..."), markMenu, MENU_MARK); 72 menu->insertItem(tr("Mark as..."), markMenu, MENU_MARK);
73 menu->insertSeparator(); 73 menu->insertSeparator();
74 menu->insertItem(tr("Delete Mail"), MENU_DELETE); 74 menu->insertItem(tr("Delete Mail"), MENU_DELETE);
75 setPopup(menu); 75 setPopup(menu);
76 76
77 connect(this, SIGNAL(clicked(QListViewItem *)), SLOT(itemClicked(QListViewItem *))); 77 connect(this, SIGNAL(clicked(QListViewItem*)), SLOT(itemClicked(QListViewItem*)));
78} 78}
79 79
80void MailTable::setFolder(Folder folder) 80void MailTable::setFolder(Folder folder)
81{ 81{
82 folder.topFolder().handler()->iSelect(folder.fullName()); 82 folder.topFolder().handler()->iSelect(folder.fullName());
83 _handler = folder.topFolder().handler(); 83 _handler = folder.topFolder().handler();
84 connect(folder.topFolder().handler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPSelect(IMAPResponse &))); 84 connect(folder.topFolder().handler(), SIGNAL(gotResponse(IMAPResponse&)), SLOT(slotIMAPSelect(IMAPResponse&)));
85} 85}
86 86
87void MailTable::setHeaders(QValueList<IMAPResponseFETCH> response) 87void MailTable::setHeaders(QValueList<IMAPResponseFETCH> response)
88{ 88{
89 clear(); 89 clear();
90 QValueList<IMAPResponseFETCH>::Iterator it; 90 QValueList<IMAPResponseFETCH>::Iterator it;
91 for (it = response.begin(); it != response.end(); it++) { 91 for (it = response.begin(); it != response.end(); it++) {
92 (void) new MailTableItem(this, *it); 92 (void) new MailTableItem(this, *it);
93 } 93 }
94} 94}
95 95
96void MailTable::slotIMAPSelect(IMAPResponse &response) 96void MailTable::slotIMAPSelect(IMAPResponse &response)
97{ 97{
98 disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), this, SLOT(slotIMAPSelect(IMAPResponse &))); 98 disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse&)), this, SLOT(slotIMAPSelect(IMAPResponse&)));
99 99
100 if (response.statusResponse().status() == IMAPResponseEnums::OK) { 100 if (response.statusResponse().status() == IMAPResponseEnums::OK) {
101 clear(); 101 clear();
102 QString mails = response.EXISTS()[0].mails(); 102 QString mails = response.EXISTS()[0].mails();
103 if (mails.toInt() == 0) { 103 if (mails.toInt() == 0) {
104 emit status(tr("Mailbox contained no mails.")); 104 emit status(tr("Mailbox contained no mails."));
105 return; 105 return;
106 } 106 }
107 int a = mails.toInt() / 5; 107 int a = mails.toInt() / 5;
108 int b = mails.toInt() % 5; 108 int b = mails.toInt() % 5;
109 109
110 _downloadSteps = a; 110 _downloadSteps = a;
111 if (b > 0) _downloadSteps++; 111 if (b > 0) _downloadSteps++;
112 _lastStep = b; 112 _lastStep = b;
113 _currentProgress = 0; 113 _currentProgress = 0;
114 114
115 emit totalSteps(_downloadSteps); 115 emit totalSteps(_downloadSteps);
116 emit progress(_currentProgress); 116 emit progress(_currentProgress);
117 emit stopEnabled(true); 117 emit stopEnabled(true);
118 118
119 response.imapHandler()->iFetch(QString("1:%1").arg((a == 0) ? b : 5), "ENVELOPE FLAGS UID"); 119 response.imapHandler()->iFetch(QString("1:%1").arg((a == 0) ? b : 5), "ENVELOPE FLAGS UID");
120 emit status(tr("Getting mail headers...")); 120 emit status(tr("Getting mail headers..."));
121 connect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPFetch(IMAPResponse &))); 121 connect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse&)), SLOT(slotIMAPFetch(IMAPResponse&)));
122 } else { 122 } else {
123 QMessageBox::warning(this, tr("Error"), tr("<p>An error occoured during the selection of the mailbox. (Server said: %1)</p>").arg(response.statusResponse().comment()), tr("Ok")); 123 QMessageBox::warning(this, tr("Error"), tr("<p>An error occoured during the selection of the mailbox. (Server said: %1)</p>").arg(response.statusResponse().comment()), tr("Ok"));
124 } 124 }
125} 125}
126 126
127void MailTable::slotIMAPFetch(IMAPResponse &response) 127void MailTable::slotIMAPFetch(IMAPResponse &response)
128{ 128{
129 disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), this, SLOT(slotIMAPFetch(IMAPResponse &))); 129 disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse&)), this, SLOT(slotIMAPFetch(IMAPResponse&)));
130 130
131 if (response.statusResponse().status() == IMAPResponseEnums::OK) { 131 if (response.statusResponse().status() == IMAPResponseEnums::OK) {
132 QValueList<IMAPResponseFETCH>::Iterator it; 132 QValueList<IMAPResponseFETCH>::Iterator it;
133 QValueList<IMAPResponseFETCH> fetch = response.FETCH(); 133 QValueList<IMAPResponseFETCH> fetch = response.FETCH();
134 for (it = fetch.begin(); it != fetch.end(); it++) { 134 for (it = fetch.begin(); it != fetch.end(); it++) {
135 (void) new MailTableItem(this, *it); 135 (void) new MailTableItem(this, *it);
136 } 136 }
137 emit progress(++_currentProgress); 137 emit progress(++_currentProgress);
138 138
139 if (_currentProgress != _downloadSteps) { 139 if (_currentProgress != _downloadSteps) {
140 if (_stopped) { 140 if (_stopped) {
141 _currentProgress = 0; 141 _currentProgress = 0;
142 _downloadSteps = 0; 142 _downloadSteps = 0;
143 _lastStep = 0; 143 _lastStep = 0;
144 _stopped = false; 144 _stopped = false;
145 emit status(tr("Stopped")); 145 emit status(tr("Stopped"));
146 emit resetProgress(); 146 emit resetProgress();
147 emit stopEnabled(false); 147 emit stopEnabled(false);
148 } else { 148 } else {
149 response.imapHandler()->iFetch(QString("%1:%2").arg(_currentProgress * 5 + 1).arg((_currentProgress + 1 == _downloadSteps) ? _currentProgress * 5 + _lastStep : _currentProgress * 5 + 5), "ENVELOPE FLAGS UID"); 149 response.imapHandler()->iFetch(QString("%1:%2").arg(_currentProgress * 5 + 1).arg((_currentProgress + 1 == _downloadSteps) ? _currentProgress * 5 + _lastStep : _currentProgress * 5 + 5), "ENVELOPE FLAGS UID");
150 connect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPFetch(IMAPResponse &))); 150 connect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse&)), SLOT(slotIMAPFetch(IMAPResponse&)));
151 } 151 }
152 } else { 152 } else {
153 _currentProgress = 0; 153 _currentProgress = 0;
154 _downloadSteps = 0; 154 _downloadSteps = 0;
155 _lastStep = 0; 155 _lastStep = 0;
156 emit status(tr("Got all mail headers.")); 156 emit status(tr("Got all mail headers."));
157 emit resetProgress(); 157 emit resetProgress();
158 emit stopEnabled(false); 158 emit stopEnabled(false);
159 } 159 }
160 } else { 160 } else {
161 emit status(tr("<font color=#ff0000>Couldn't fetch mail.")); 161 emit status(tr("<font color=#ff0000>Couldn't fetch mail."));
162 } 162 }