• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepim API Reference
  • KDE Home
  • Contact Us
 

knode

  • sources
  • kde-4.12
  • kdepim
  • knode
knarticlemanager.h
Go to the documentation of this file.
1 /*
2  KNode, the KDE newsreader
3  Copyright (c) 1999-2005 the KNode authors.
4  See file AUTHORS for details
5 
6  This program is free software; you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation; either version 2 of the License, or
9  (at your option) any later version.
10  You should have received a copy of the GNU General Public License
11  along with this program; if not, write to the Free Software Foundation,
12  Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, US
13 */
14 
15 #ifndef KNARTICLEMANAGER_H
16 #define KNARTICLEMANAGER_H
17 
18 #include "knarticle.h"
19 #include "knfolder.h"
20 #include "kngroup.h"
21 #include "knjobdata.h"
22 
23 #include <QList>
24 
25 class Q3ListViewItem;
26 class KTemporaryFile;
27 class KNHeaderView;
28 class KNArticleCollection;
29 class KNArticleFilter;
30 class KNFilterManager;
31 
32 namespace KNode {
33  class SearchDialog;
34 }
35 
36 
38 class KNArticleManager : public QObject, public KNJobConsumer {
39 
40  Q_OBJECT
41 
42  public:
43  KNArticleManager();
44  virtual ~KNArticleManager();
45 
46  //content handling
47  void deleteTempFiles();
48  void saveContentToFile(KMime::Content *c, QWidget *parent);
49  void saveArticleToFile( KNArticle::Ptr a, QWidget *parent );
50  QString saveContentToTemp(KMime::Content *c);
51  void openContent(KMime::Content *c);
52 
53  //listview handling
54  void showHdrs(bool clear=true);
55  void updateViewForCollection( KNArticleCollection::Ptr c );
56  void updateListViewItems();
57  void setAllThreadsOpen(bool b=true);
58 
59  void updateStatusString();
60 
61  //filter
62  KNArticleFilter* filter() const { return f_ilter; }
63  void search();
64 
65  //collection handling
66  void setGroup( KNGroup::Ptr g );
67  void setFolder( KNFolder::Ptr f );
68  KNArticleCollection::Ptr collection();
69 
70  //article loading
74  bool loadArticle( KNArticle::Ptr a);
75  bool unloadArticle( KNArticle::Ptr a, bool force=true );
76 
77  //article storage
78  void copyIntoFolder( KNArticle::List &l, KNFolder::Ptr f );
79  void moveIntoFolder( KNLocalArticle::List &l, KNFolder ::Ptr f );
80  bool deleteArticles(KNLocalArticle::List &l, bool ask=true);
81 
82  //article handling
83  void setAllRead( bool read = true, int lastcount = -1 );
84  void setRead(KNRemoteArticle::List &l, bool r=true, bool handleXPosts=true);
86  void setAllNotNew();
87 
88  // returns false if the changes were reverted (i.e. ignored articles->neutral articles)
89  bool toggleWatched(KNRemoteArticle::List &l);
90  bool toggleIgnored(KNRemoteArticle::List &l);
91 
92  void rescoreArticles(KNRemoteArticle::List &l);
93 
97  void setView(KNHeaderView* v);
98 
99  signals:
103  void aboutToShowGroup();
107  void aboutToShowFolder();
108 
109  protected:
110  void processJob(KNJobData *j);
111  void createThread( KNRemoteArticle::Ptr a );
112  void createCompleteThread( KNRemoteArticle::Ptr a );
113 
114  KNHeaderView *v_iew;
115  KNGroup::Ptr g_roup;
116  KNFolder::Ptr f_older;
117  KNArticleFilter *f_ilter;
118  KNFilterManager *f_ilterMgr;
119  KNode::SearchDialog *s_earchDlg;
120  QList<KTemporaryFile*> mTempFiles;
121  bool d_isableExpander;
122 
123  public slots:
124  void slotFilterChanged(KNArticleFilter *f);
125  void slotSearchDialogDone();
126  void slotItemExpanded(Q3ListViewItem *p);
127 
128 };
129 
130 #endif
KNArticleManager::updateViewForCollection
void updateViewForCollection(KNArticleCollection::Ptr c)
Definition: knarticlemanager.cpp:336
KNArticleManager::unloadArticle
bool unloadArticle(KNArticle::Ptr a, bool force=true)
Definition: knarticlemanager.cpp:466
KNArticleManager::d_isableExpander
bool d_isableExpander
Definition: knarticlemanager.h:121
KNHeaderView
Header view, displays the article listing of the currently selected news group or folder...
Definition: headerview.h:130
KNFilterManager
Filter manager.
Definition: knfiltermanager.h:55
KNArticleManager::aboutToShowGroup
void aboutToShowGroup()
A newsgroup is about to be shown in the header view.
knfolder.h
KNArticleManager::loadArticle
bool loadArticle(KNArticle::Ptr a)
Loads the full content of the article a.
Definition: knarticlemanager.cpp:433
KNArticleManager::saveContentToFile
void saveContentToFile(KMime::Content *c, QWidget *parent)
Definition: knarticlemanager.cpp:82
KNArticleManager::f_ilter
KNArticleFilter * f_ilter
Definition: knarticlemanager.h:117
KNArticleManager::setAllNotNew
void setAllNotNew()
mark all articles in the current group as not new
Definition: knarticlemanager.cpp:735
KNJobData
Abstract base class for all KNode internal jobs.
Definition: knjobdata.h:101
QWidget
KNArticleManager::setRead
void setRead(KNRemoteArticle::List &l, bool r=true, bool handleXPosts=true)
Definition: knarticlemanager.cpp:650
KNArticleManager::f_older
KNFolder::Ptr f_older
Definition: knarticlemanager.h:116
KNArticleManager::createCompleteThread
void createCompleteThread(KNRemoteArticle::Ptr a)
Definition: knarticlemanager.cpp:955
KNArticleManager::deleteTempFiles
void deleteTempFiles()
Definition: knarticlemanager.cpp:73
KNArticleManager::processJob
void processJob(KNJobData *j)
The actual work is done here.
Definition: knarticlemanager.cpp:903
QObject
KNFolder::Ptr
boost::shared_ptr< KNFolder > Ptr
Shared pointer to a KNFolder.
Definition: knfolder.h:38
kngroup.h
KNArticleManager::saveArticleToFile
void saveArticleToFile(KNArticle::Ptr a, QWidget *parent)
Definition: knarticlemanager.cpp:96
KNArticleManager::aboutToShowFolder
void aboutToShowFolder()
A local folder is about to be shown in the header view.
KNArticleManager::copyIntoFolder
void copyIntoFolder(KNArticle::List &l, KNFolder::Ptr f)
Definition: knarticlemanager.cpp:497
KNArticleManager::slotFilterChanged
void slotFilterChanged(KNArticleFilter *f)
Definition: knarticlemanager.cpp:1038
KNArticleManager::setView
void setView(KNHeaderView *v)
Allow to delay the setup of UI elements, since the knode part may not be available when the config di...
Definition: knarticlemanager.cpp:1100
KNArticleManager::KNArticleManager
KNArticleManager()
Definition: knarticlemanager.cpp:55
knjobdata.h
KNArticleManager::toggleWatched
bool toggleWatched(KNRemoteArticle::List &l)
Definition: knarticlemanager.cpp:753
KNArticleManager::updateListViewItems
void updateListViewItems()
Definition: knarticlemanager.cpp:343
KNArticleManager::deleteArticles
bool deleteArticles(KNLocalArticle::List &l, bool ask=true)
Definition: knarticlemanager.cpp:570
KNArticleFilter
Article filter.
Definition: knarticlefilter.h:33
KNode::SearchDialog
Article search dialog.
Definition: knsearchdialog.h:28
KNArticleManager::saveContentToTemp
QString saveContentToTemp(KMime::Content *c)
Definition: knarticlemanager.cpp:120
KNArticleManager::moveIntoFolder
void moveIntoFolder(KNLocalArticle::List &l, KNFolder::Ptr f)
Definition: knarticlemanager.cpp:543
KNArticleManager::setFolder
void setFolder(KNFolder::Ptr f)
Definition: knarticlemanager.cpp:414
KNArticleManager::~KNArticleManager
virtual ~KNArticleManager()
Definition: knarticlemanager.cpp:67
KNArticleManager::search
void search()
Definition: knarticlemanager.cpp:388
Q3ListViewItem
KNArticleManager::collection
KNArticleCollection::Ptr collection()
Definition: knarticlemanager.cpp:422
KNJobConsumer
Base class for classes that want to create and schedule jobs.
Definition: knjobdata.h:39
KNArticleManager::updateStatusString
void updateStatusString()
Definition: knarticlemanager.cpp:1001
KNArticleManager::setAllThreadsOpen
void setAllThreadsOpen(bool b=true)
Definition: knarticlemanager.cpp:367
KNRemoteArticle::Ptr
boost::shared_ptr< KNRemoteArticle > Ptr
Shared pointer to a KNRemoteArticle. To be used instead of raw KNRemoteArticle*.
Definition: knarticle.h:107
KNArticleManager::setAllRead
void setAllRead(bool read=true, int lastcount=-1)
Definition: knarticlemanager.cpp:604
KNArticleManager
Article manager.
Definition: knarticlemanager.h:38
KNArticleManager::createThread
void createThread(KNRemoteArticle::Ptr a)
Definition: knarticlemanager.cpp:938
KNArticle::Ptr
boost::shared_ptr< KNArticle > Ptr
Shared pointer to a KNArticle. To be used instead of raw KNArticle*.
Definition: knarticle.h:39
KNArticleManager::toggleIgnored
bool toggleIgnored(KNRemoteArticle::List &l)
Definition: knarticlemanager.cpp:807
KNArticleManager::filter
KNArticleFilter * filter() const
Definition: knarticlemanager.h:62
knarticle.h
KNArticleManager::v_iew
KNHeaderView * v_iew
Definition: knarticlemanager.h:114
KNArticleCollection::Ptr
boost::shared_ptr< KNArticleCollection > Ptr
Shared pointer to a KNArticle.
Definition: knarticlecollection.h:82
KNArticleManager::openContent
void openContent(KMime::Content *c)
Definition: knarticlemanager.cpp:163
KNArticleCollection
Abstract base class for article collections, ie.
Definition: knarticlecollection.h:76
KNArticleManager::rescoreArticles
void rescoreArticles(KNRemoteArticle::List &l)
Definition: knarticlemanager.cpp:873
KNArticleManager::f_ilterMgr
KNFilterManager * f_ilterMgr
Definition: knarticlemanager.h:118
KNArticleManager::showHdrs
void showHdrs(bool clear=true)
Definition: knarticlemanager.cpp:181
KNArticleManager::s_earchDlg
KNode::SearchDialog * s_earchDlg
Definition: knarticlemanager.h:119
KNArticleManager::g_roup
KNGroup::Ptr g_roup
Definition: knarticlemanager.h:115
KNArticleManager::slotSearchDialogDone
void slotSearchDialogDone()
Definition: knarticlemanager.cpp:1045
KNArticleManager::setGroup
void setGroup(KNGroup::Ptr g)
Definition: knarticlemanager.cpp:406
KNArticleManager::slotItemExpanded
void slotItemExpanded(Q3ListViewItem *p)
Definition: knarticlemanager.cpp:1052
QList< KNArticle::Ptr >
KNArticleManager::mTempFiles
QList< KTemporaryFile * > mTempFiles
Definition: knarticlemanager.h:120
KNGroup::Ptr
boost::shared_ptr< KNGroup > Ptr
Shared pointer to a KNGroup.
Definition: kngroup.h:47
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:58:36 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

knode

Skip menu "knode"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdepim API Reference

Skip menu "kdepim API Reference"
  • akonadi_next
  • akregator
  • blogilo
  • calendarsupport
  • console
  •   kabcclient
  •   konsolekalendar
  • kaddressbook
  • kalarm
  •   lib
  • kdgantt2
  • kjots
  • kleopatra
  • kmail
  • knode
  • knotes
  • kontact
  • korgac
  • korganizer
  • ktimetracker
  • libkdepim
  • libkleo
  • libkpgp
  • mailcommon
  • messagelist
  • messageviewer

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal