📄 cleanupwizard.cpp
字号:
m_DocResultWidget, SLOT( cleanup() )); connect(m_DocResultWidget, SIGNAL(docDeleted(const QString &, int)), m_DocSummaryWidget, SLOT(docDeleted(const QString&, int))); connect(m_DocSummaryWidget->pb, SIGNAL(clicked()), m_DocResultWidget, SLOT( stopCleanup() )); connect(m_DocSummaryWidget, SIGNAL(docCleanupFinished(int)), this, SLOT(addToFinalSummary(int)));}#ifdef QTOPIA_PHONEvoid CleanupWizard::keyPressEvent(QKeyEvent* ke){ if (ke->key() == Key_Context1) { setContextBar(Default); if (wStack->visibleWidget() == m_DocCleanWidget || wStack->visibleWidget() == m_FinalCleanupWidget) { wStack->raiseWidget(m_PreselectionWidget); } else if (wStack->visibleWidget() == m_DocSummaryWidget || wStack->visibleWidget() == m_DocResultWidget) { wStack->raiseWidget(m_DocCleanWidget); } else if (wStack->visibleWidget() == m_MailCleanWidget) { if (m_PreselectionWidget->doc->isChecked()) wStack->raiseWidget(m_DocCleanWidget); else { wStack->raiseWidget(m_PreselectionWidget); } } else if ( wStack->visibleWidget() == m_DatebookCleanWidget ){ if (m_PreselectionWidget->mail->isChecked()) wStack->raiseWidget(m_MailCleanWidget); else if (m_PreselectionWidget->doc->isChecked()) wStack->raiseWidget(m_DocCleanWidget); else { wStack->raiseWidget(m_PreselectionWidget); } } else if ( wStack->visibleWidget() == m_PreselectionWidget) setContextBar(NoBack); ke->accept(); return; } if (ke->key() == Key_Back) { ke->accept(); setContextBar(Default); if (wStack->visibleWidget() == m_PreselectionWidget) { if (m_PreselectionWidget->doc->isChecked()) wStack->raiseWidget(m_DocCleanWidget) ; else if (m_PreselectionWidget->mail->isChecked()) wStack->raiseWidget(m_MailCleanWidget); else if (m_PreselectionWidget->datebook->isChecked()) wStack->raiseWidget(m_DatebookCleanWidget); else { setContextBar(NoForward); wStack->raiseWidget(m_FinalCleanupWidget); } } else if (wStack->visibleWidget() == m_DocCleanWidget){ m_DocResultWidget->setMinimalFileSize(m_DocCleanWidget->sizeBox->value()); QStringList filter; if (m_DocCleanWidget->audio->isChecked()) filter.append("audio/*"); //no tr if (m_DocCleanWidget->video->isChecked()) filter.append("video/*"); //no tr if (m_DocCleanWidget->text->isChecked()) filter.append("text/*"); //no tr if (m_DocCleanWidget->pictures->isChecked()) filter.append("image/*"); //no tr m_DocResultWidget->setFilter(filter); m_DocResultWidget->performSearch(); wStack->raiseWidget(m_DocResultWidget); } else if (wStack->visibleWidget() == m_DocResultWidget){ if (m_DocResultWidget->hasDocumentsToRemove()) { switch (QMessageBox::warning(this, tr("WARNING"), tr("<qt>Are you sure want to delete these files?</qt>"), QMessageBox::Yes, QMessageBox::No|QMessageBox::Default)) { case QMessageBox::Yes: m_DocSummaryWidget->monitorFileDeletion( m_DocResultWidget->hasDocumentsToRemove()); break; default: m_DocSummaryWidget->monitorFileDeletion(0); return; break; } wStack->raiseWidget(m_DocSummaryWidget); } else { m_DocSummaryWidget->monitorFileDeletion(0); setContextBar(Default); if (m_PreselectionWidget->mail->isChecked()) wStack->raiseWidget(m_MailCleanWidget); else if (m_PreselectionWidget->datebook->isChecked()) wStack->raiseWidget(m_DatebookCleanWidget); else { setContextBar(NoForward); wStack->raiseWidget(m_FinalCleanupWidget); } } } else if (wStack->visibleWidget() == m_DocSummaryWidget){ if (m_PreselectionWidget->mail->isChecked()) wStack->raiseWidget(m_MailCleanWidget); else if (m_PreselectionWidget->datebook->isChecked()) wStack->raiseWidget(m_DatebookCleanWidget); else { setContextBar(NoForward); wStack->raiseWidget(m_FinalCleanupWidget); } } else if (wStack->visibleWidget() == m_MailCleanWidget) { QDate date = m_MailCleanWidget->dp->date(); if (!date.isNull()) { int size = m_MailCleanWidget->sizeBox->value(); switch (QMessageBox::warning(this, tr("WARNING"), tr("<qt>Are you sure want to delete mails older than %1?</qt>") .arg(TimeString::localYMD(date, TimeString::Short)), QMessageBox::Yes, QMessageBox::No|QMessageBox::Default)) { case QMessageBox::Yes: break; default: return; break; } qDebug(QString("Deleting events older then %1").arg(date.toString())); m_FinalCleanupWidget->appendResult(tr("<li>Messages (%1)</li>") .arg(TimeString::localYMD(date, TimeString::Short))); ServiceRequest req("Email", "cleanupMessages(QDate,int)"); req << date.addDays(-1); req << size; req.send(); } if (m_PreselectionWidget->datebook->isChecked()) wStack->raiseWidget(m_DatebookCleanWidget); else { setContextBar(NoForward); wStack->raiseWidget(m_FinalCleanupWidget); } } else if (wStack->visibleWidget() == m_DatebookCleanWidget) { QDate date = m_DatebookCleanWidget->dp->date(); if (!date.isNull()) { switch (QMessageBox::warning(this, tr("WARNING"), tr("<qt>Are you sure want to delete events older than %1?</qt>") .arg(TimeString::localYMD(date, TimeString::Short)), QMessageBox::Yes, QMessageBox::No|QMessageBox::Default)) { case QMessageBox::Yes: break; default: return; break; } qDebug(QString("Deleting events older then %1").arg(date.toString())); {#ifndef QT_NO_COP QCopEnvelope env("QPE/Application/datebook", "cleanByDate(QDate)"); env << date.addDays(-1);#endif } m_FinalCleanupWidget->appendResult(tr("<li>Events (%1)</li>", "e.g. %1 = 20 Aug 2004") .arg(TimeString::localYMD(date, TimeString::Short))); } setContextBar(NoForward); wStack->raiseWidget(m_FinalCleanupWidget); } else if (wStack->visibleWidget() == m_FinalCleanupWidget) close(); return; } ke->ignore(); }#endif#ifdef QTOPIA_PHONE void CleanupWizard::setContextBar(WizardStyle style){ switch (style) { case Default: ContextBar::setLabel(this, Key_Back, ContextBar::Next); ContextBar::setLabel(this, Key_Context1, ContextBar::Previous); break; case NoBack: ContextBar::setLabel(this, Key_Back, ContextBar::Next); ContextBar::setLabel(this, Key_Context1, ContextBar::NoLabel); break; case NoForward: ContextBar::setLabel(this, Key_Back, ContextBar::Back); ContextBar::setLabel(this, Key_Context1, ContextBar::Previous); break; }}#endifvoid CleanupWizard::addToFinalSummary(int docCount){ if (!docCount) return; m_FinalCleanupWidget->appendResult(tr("<li>%1 document(s)</li>") .arg(docCount));}void CleanupWizard::showEvent(QShowEvent *se) { m_PreselectionWidget->init();#ifdef QTOPIA_PHONE wStack->raiseWidget(m_PreselectionWidget);#else showPage(m_PreselectionWidget);#endif QWidget::showEvent(se);}bool CleanupWizard::eventFilter(QObject *o, QEvent *e){ if (e->type() == QEvent::Show ) { if (o == m_PreselectionWidget) {#ifdef QTOPIA_PHONE setContextBar(NoBack);#endif m_FinalCleanupWidget->reset(); } } return FALSE;}#ifndef QTOPIA_PHONEvoid CleanupWizard::next() { if (currentPage() == m_PreselectionWidget) { if (m_PreselectionWidget->doc->isChecked()) { setAppropriate(m_DocCleanWidget, TRUE); setAppropriate(m_DocResultWidget, TRUE); setAppropriate(m_DocSummaryWidget, TRUE); } else { setAppropriate(m_DocCleanWidget, FALSE); setAppropriate(m_DocResultWidget, FALSE); setAppropriate(m_DocSummaryWidget, FALSE); } if (m_PreselectionWidget->mail->isChecked()) setAppropriate(m_MailCleanWidget, TRUE); else setAppropriate(m_MailCleanWidget, FALSE); if (m_PreselectionWidget->datebook->isChecked()) setAppropriate(m_DatebookCleanWidget, TRUE); else setAppropriate(m_DatebookCleanWidget, FALSE); } else if (currentPage() == m_DocCleanWidget){ m_DocResultWidget->setMinimalFileSize(m_DocCleanWidget->sizeBox->value()); QStringList filter; if (m_DocCleanWidget->audio->isChecked()) filter.append("audio/*"); //no tr if (m_DocCleanWidget->video->isChecked()) filter.append("video/*"); //no tr if (m_DocCleanWidget->text->isChecked()) filter.append("text/*"); //no tr if (m_DocCleanWidget->pictures->isChecked()) filter.append("image/*"); //no tr m_DocResultWidget->setFilter(filter); m_DocResultWidget->performSearch(); setAppropriate(m_DocSummaryWidget, TRUE); setAppropriate(m_DocResultWidget, TRUE); } else if (currentPage() == m_DocResultWidget){ if (m_DocResultWidget->hasDocumentsToRemove()) { switch (QMessageBox::warning(this, tr("Cleanup"), tr("<qt>Are you sure want to delete these files?</qt>"), QMessageBox::Yes, QMessageBox::No|QMessageBox::Default)) { case QMessageBox::Yes: m_DocSummaryWidget->monitorFileDeletion( m_DocResultWidget->hasDocumentsToRemove()); setAppropriate(m_DocResultWidget, FALSE); setAppropriate(m_DocSummaryWidget, TRUE); break; default: m_DocSummaryWidget->monitorFileDeletion(0); return; break; } } else { m_DocSummaryWidget->monitorFileDeletion(0); setAppropriate(m_DocSummaryWidget, FALSE); setAppropriate(m_DocResultWidget, FALSE); } } else if (currentPage() == m_DocSummaryWidget){ setAppropriate(m_DocSummaryWidget, FALSE); setAppropriate(m_DocResultWidget, FALSE); } else if (currentPage() == m_MailCleanWidget) { QDate date = m_MailCleanWidget->dp->date(); if (!date.isNull()) { int size = m_MailCleanWidget->sizeBox->value(); switch (QMessageBox::warning(this, tr("WARNING"), tr("<qt>Are you sure want to delete mails older than %1?</qt>") .arg(TimeString::localYMD(date, TimeString::Short)), QMessageBox::Yes, QMessageBox::No|QMessageBox::Default)) { case QMessageBox::Yes: break; default: return; break; } ServiceRequest req("Email", "cleanupMessages(QDate,int)"); req << date.addDays(-1); req << size; req.send(); qDebug(QString("Deleting events older then %1").arg(date.toString())); m_FinalCleanupWidget->appendResult(tr("<li>Messages (before %1)</li>") .arg(TimeString::localYMD(date, TimeString::Short))); } } else if (currentPage() == m_DatebookCleanWidget) { QDate date = m_DatebookCleanWidget->dp->date(); if (!date.isNull()) { switch (QMessageBox::warning(this, tr("WARNING"), tr("<qt>Are you sure want to delete events older than %1?</qt>") .arg(TimeString::localYMD(date, TimeString::Short)), QMessageBox::Yes, QMessageBox::No|QMessageBox::Default)) { case QMessageBox::Yes: break; default: return; break; } qDebug(QString("Deleting events older then %1").arg(date.toString())); {#ifndef QT_NO_COP QCopEnvelope env("QPE/Applications/datebook", "cleanByDate(QDate)"); env << date.addDays(-1);#endif } m_FinalCleanupWidget->appendResult(tr("<li>Events (before %1)</li>", "e.g. %1 = 20 Aug 2004") .arg(TimeString::localYMD(date, TimeString::Short))); } } QWizard::next();}void CleanupWizard::back() { if (currentPage() == m_FinalCleanupWidget || currentPage() == m_DocCleanWidget) { showPage(m_PreselectionWidget); } else if (currentPage() == m_MailCleanWidget) { if (appropriate(m_DocCleanWidget)) showPage(m_DocCleanWidget); else showPage(m_PreselectionWidget); } else if (currentPage() == m_DatebookCleanWidget) { if (appropriate(m_MailCleanWidget)) showPage(m_MailCleanWidget); else if (appropriate(m_DocCleanWidget)) showPage(m_DocCleanWidget); else showPage(m_PreselectionWidget); } else if (currentPage() == m_DocSummaryWidget) { showPage(m_DocCleanWidget); } else QWizard::back();}#endif#include "cleanupwizard.moc"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -