Summary: | unable to delete articles | ||
---|---|---|---|
Product: | [Applications] akregator | Reporter: | sharon63 |
Component: | general | Assignee: | kdepim bugs <kdepim-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | wishlist | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
sharon63
2004-07-20 23:54:18 UTC
CVS commit by osterfeld: added possibility to delete articles FEATURE: 85590 M +3 -0 akregator_part.cpp 1.110 M +3 -1 akregator_part.rc 1.32 M +24 -0 akregator_view.cpp 1.176 M +3 -0 akregator_view.h 1.72 M +1 -1 feed.cpp 1.61 M +6 -6 myarticle.cpp 1.26 --- kdenonbeta/akregator/src/akregator_part.cpp #1.109:1.110 @@ -122,4 +122,7 @@ void aKregatorPart::setupActions() tkf->setChecked(false); + new KAction(i18n("&Delete Article"), QString::null, "Delete", m_view, SLOT(slotArticleDelete()), actionCollection(), "article_delete"); + + KActionMenu* statusMenu = new KActionMenu ( i18n( "&Mark Article" ), actionCollection(), "article_set_status" ); --- kdenonbeta/akregator/src/akregator_part.rc #1.31:1.32 @@ -1,4 +1,4 @@ <!DOCTYPE kpartgui SYSTEM "kpartgui.dtd"> -<kpartgui name="akregator_part" version="38"> +<kpartgui name="akregator_part" version="39"> <MenuBar> <Menu name="file"> @@ -31,4 +31,5 @@ <Action name="article_set_status"/> <Action name="article_toggle_keep"/> + <Action name="article_delete"/> </Menu> @@ -117,4 +118,5 @@ <Action name="article_set_status"/> <Action name="article_toggle_keep"/> + <Action name="article_delete"/> </Menu> --- kdenonbeta/akregator/src/akregator_view.cpp #1.175:1.176 @@ -65,4 +65,5 @@ #include <qmultilineedit.h> #include <qpopupmenu.h> +#include <qstylesheet.h> #include <qtextstream.h> #include <qtimer.h> @@ -1493,4 +1494,27 @@ void aKregatorView::slotToggleShowQuickF } +void aKregatorView::slotArticleDelete() +{ + + if ( m_viewMode == CombinedView ) + return; + + ArticleListItem* ali = static_cast<ArticleListItem*>(m_articles->selectedItem()); + + if (!ali) + return; + + QString msg = QString(i18n("<qt>Are you sure you want to delete article <b>%1</b>?</qt>")).arg(QStyleSheet::escape(ali->article().title())); + + if (KMessageBox::warningContinueCancel(0, msg, i18n("Delete Article"), KGuiItem(i18n("&Delete"), "articledelete")) == KMessageBox::Continue) + { + ali->article().setDeleted(); + m_articles->slotUpdate(); + m_articleViewer->slotClear(); + Archive::save(ali->article().feed()); + } +} + + void aKregatorView::slotArticleToggleKeepFlag() { --- kdenonbeta/akregator/src/akregator_view.h #1.71:1.72 @@ -131,4 +131,7 @@ namespace Akregator void slotArticleToggleKeepFlag(); + /** deletes the currently selected article */ + void slotArticleDelete(); + void slotSetSelectedArticleUnread(); void slotSetSelectedArticleNew(); --- kdenonbeta/akregator/src/feed.cpp #1.60:1.61 @@ -290,5 +290,5 @@ void Feed::appendArticle(const MyArticle { - if ( a.keep() || (!(usesExpiryByAge() && isExpired(a))) ) // if not expired + if ( a.keep() || ( !usesExpiryByAge() || !isExpired(a) ) ) // if not expired { if (a.status() != MyArticle::Read) --- kdenonbeta/akregator/src/myarticle.cpp #1.25:1.26 @@ -201,10 +201,4 @@ void MyArticle::dumpXmlData( QDomElement } - QDomElement metanode = doc.createElement( "metaInfo:meta" ); - metanode.setAttribute("type","status"); - QDomText stat=doc.createTextNode(QString::number(d->status)); - metanode.appendChild(stat); - parent.appendChild(metanode); - if ( isDeleted() ) { @@ -257,4 +251,10 @@ void MyArticle::dumpXmlData( QDomElement } + QDomElement metanode = doc.createElement( "metaInfo:meta" ); + metanode.setAttribute("type","status"); + QDomText stat=doc.createTextNode(QString::number(d->status)); + metanode.appendChild(stat); + parent.appendChild(metanode); + if ( d->keep ) { |