akregator/src

Akregator::View Class Reference

This is the main widget of the view, containing tree view, article list, viewer etc. More...

#include <akregator_view.h>

Inherits QWidget.

List of all members.


Public Types

enum  ViewMode { NormalView = 0, WidescreenView, CombinedView }

Public Slots

void slotOnShutdown ()
void slotNodeSelected (TreeNode *node)
void slotArticleSelected (const Article &)
void slotFeedTreeContextMenu (KListView *, TreeNode *, const TQPoint &)
void slotSetTotalUnread ()
void slotMouseButtonPressed (int button, const Article &article, const TQPoint &pos, int c)
void slotOpenArticleExternal (const Article &article, const TQPoint &, int)
void slotOpenCurrentArticleExternal ()
void slotOpenCurrentArticleBackgroundTab ()
void slotOpenCurrentArticle ()
void slotCopyLinkAddress ()
void slotOpenNewTab (const KURL &url, bool background=false)
void slotFrameChanged (Frame *f)
void slotCaptionChanged (const TQString &)
void slotFeedURLDropped (KURL::List &urls, TreeNode *after, Folder *parent)
void slotMouseOverInfo (const KFileItem *kifi)
void slotStatusText (const TQString &)
void slotStarted ()
void slotCanceled (const TQString &)
void slotCompleted ()
void slotLoadingProgress (int)
void slotFetchingStarted ()
void slotFetchingStopped ()
void slotFeedFetched (Feed *)
void slotFeedAdd ()
void slotFeedAddGroup ()
void slotFeedRemove ()
void slotFeedModify ()
void slotFetchCurrentFeed ()
void slotFetchAllFeeds ()
void slotMarkAllRead ()
void slotMarkAllFeedsRead ()
void slotOpenHomepage ()
void slotArticleToggleKeepFlag (bool enabled)
void slotArticleDelete ()
void slotSetSelectedArticleRead ()
void slotSetSelectedArticleUnread ()
void slotSetSelectedArticleNew ()
void slotSetCurrentArticleReadDelayed ()
void slotTextToSpeechRequest ()
void slotAssignTag (const Tag &tag, bool assign)
void slotNewTag ()
void slotTagCreated (const Tag &tag)
void slotTagRemoved (const Tag &tag)
void slotNormalView ()
void slotWidescreenView ()
void slotCombinedView ()
void slotToggleShowQuickFilter ()
void slotPrevUnreadArticle ()
void slotNextUnreadArticle ()
void slotMoveCurrentNodeUp ()
void slotMoveCurrentNodeDown ()
void slotMoveCurrentNodeLeft ()
void slotMoveCurrentNodeRight ()

Signals

void signalUnreadCountChanged (int)
void setWindowCaption (const TQString &)
void setStatusBarText (const TQString &)
void setProgress (int)
void signalStarted (KIO::Job *)
void signalCompleted ()
void signalCanceled (const TQString &)

Public Member Functions

 View (Akregator::Part *part, TQWidget *parent, ActionManagerImpl *actionManager, const char *name)
 ~View ()
void saveSettings ()
void slotSettingsChanged ()
bool importFeeds (const TQDomDocument &doc)
bool loadFeeds (const TQDomDocument &doc, Folder *parent=0)
TQDomDocument feedListToOPML ()
void addFeedToGroup (const TQString &url, const TQString &group)
virtual void readProperties (KConfig *config)
virtual void saveProperties (KConfig *config)
Frame * currentFrame () const

Public Attributes

FeedListm_feedList
TagNodeList * m_tagNodeList
NodeListView * m_feedListView
NodeListView * m_tagNodeListView
ArticleListView * m_articleList
ArticleViewerm_articleViewer
TabWidget * m_tabs
TQWidget * m_mainTab
Frame * m_mainFrame
Frame * m_currentFrame
SearchBar * m_searchBar
TQSplitter * m_articleSplitter
TQSplitter * m_horizontalSplitter
ListTabWidgetm_listTabWidget
Akregator::Partm_part
ViewMode m_viewMode
TQTimer * m_fetchTimer
TQTimer * m_expiryTimer
TQTimer * m_markReadTimer
bool m_shuttingDown
bool m_displayingAboutPage
ActionManagerImplm_actionManager
TQPixmap m_keepFlagIcon
EditNodePropertiesVisitor * m_editNodePropertiesVisitor
DeleteNodeVisitor * m_deleteNodeVisitor

Protected Slots

void connectFrame (Frame *)
void setTabIcon (const TQPixmap &)
void slotDoIntervalFetches ()
void slotDeleteExpiredArticles ()
void slotOpenURLReply (const KURL &url, Akregator::Viewer *currentViewer, Akregator::BrowserRun::OpeningMode mode)
void slotUrlClickedInViewer (const KURL &url, Viewer *viewer, bool newTab, bool background)
void slotOpenURL (const KURL &url, Akregator::Viewer *currentViewer, Akregator::BrowserRun::OpeningMode mode)

Protected Member Functions

void addFeed (const TQString &url, TreeNode *after, Folder *parent, bool autoExec=true)
void connectToFeedList (FeedList *feedList)
void disconnectFromFeedList (FeedList *feedList)
void updateTagActions ()

Friends

class EditNodePropertiesVisitor
class DeleteNodeVisitor

Detailed Description

This is the main widget of the view, containing tree view, article list, viewer etc.

Definition at line 80 of file akregator_view.h.


Constructor & Destructor Documentation

Akregator::View::View ( Akregator::Part part,
TQWidget *  parent,
ActionManagerImpl actionManager,
const char *  name 
)

constructor

Parameters:
part the Akregator::Part which contains this widget
parent parent widget
Actionmanager for this view
name the name of the widget (TQWidget )

Definition at line 213 of file akregator_view.cpp.

Akregator::View::~View (  ) 

destructor.

Note that cleanups should be done in slotOnShutdown(), so we don't risk accessing self-deleting objects after deletion.

Definition at line 200 of file akregator_view.cpp.


Member Function Documentation

void Akregator::View::saveSettings (  ) 

saves settings.

Make sure that the Settings singleton is not destroyed yet when saveSettings is called

Definition at line 411 of file akregator_view.cpp.

bool Akregator::View::importFeeds ( const TQDomDocument &  doc  ) 

Adds the feeds in doc to the "Imported Folder".

Parameters:
doc the DOM tree (OPML) of the feeds to import

Definition at line 504 of file akregator_view.cpp.

bool Akregator::View::loadFeeds ( const TQDomDocument &  doc,
Folder parent = 0 
)

Parse OPML presentation of feeds and read in articles archive, if present.

If parent is NULL, the current feed list is replaced by the parsed one

Parameters:
doc TQDomDocument generated from OPML
parent The parent group the new nodes

Definition at line 536 of file akregator_view.cpp.

TQDomDocument Akregator::View::feedListToOPML (  ) 

Returns:
the displayed Feed List in OPML format

Definition at line 597 of file akregator_view.cpp.

void Akregator::View::addFeedToGroup ( const TQString &  url,
const TQString &  group 
)

Add a feed to a group.

Parameters:
url The URL of the feed to add.
group The name of the folder into which the feed is added. If the group does not exist, it is created. The feed is added as the last member of the group.

Definition at line 602 of file akregator_view.cpp.

void Akregator::View::readProperties ( KConfig *  config  )  [virtual]

session management

Definition at line 1448 of file akregator_view.cpp.

void Akregator::View::signalUnreadCountChanged ( int   )  [signal]

emitted when the unread count of "All Feeds" was changed

void Akregator::View::slotNodeSelected ( TreeNode node  )  [slot]

selected tree node has changed

Definition at line 784 of file akregator_view.cpp.

void Akregator::View::slotArticleSelected ( const Article article  )  [slot]

the article selection has changed

Definition at line 1166 of file akregator_view.cpp.

void Akregator::View::slotFeedTreeContextMenu ( KListView *  ,
TreeNode ,
const TQPoint &   
) [slot]

Shows requested popup menu for feed tree.

Definition at line 717 of file akregator_view.cpp.

void Akregator::View::slotSetTotalUnread (  )  [slot]

emits signalUnreadCountChanged(int)

Definition at line 1047 of file akregator_view.cpp.

void Akregator::View::slotMouseButtonPressed ( int  button,
const Article article,
const TQPoint &  pos,
int  c 
) [slot]

special behaviour in article list view (TODO: move code there?)

Definition at line 1101 of file akregator_view.cpp.

void Akregator::View::slotOpenArticleExternal ( const Article article,
const TQPoint &  ,
int   
) [slot]

opens article of item in external browser

Definition at line 1203 of file akregator_view.cpp.

void Akregator::View::slotOpenCurrentArticleExternal (  )  [slot]

opens the current article (currentItem) in external browser TODO: use selected instead of current?

Definition at line 1229 of file akregator_view.cpp.

void Akregator::View::slotOpenCurrentArticleBackgroundTab (  )  [slot]

opens the current article (currentItem) in background tab TODO: use selected instead of current?

Definition at line 1234 of file akregator_view.cpp.

void Akregator::View::slotOpenCurrentArticle (  )  [slot]

opens current article in new tab, background/foreground depends on settings TODO: use selected instead of current?

Definition at line 1210 of file akregator_view.cpp.

void Akregator::View::slotCopyLinkAddress (  )  [slot]

copies the link of current article to clipboard

Definition at line 1254 of file akregator_view.cpp.

void Akregator::View::slotOpenNewTab ( const KURL &  url,
bool  background = false 
) [slot]

opens a page viewer in a new tab and loads an URL

Parameters:
url the url to load
background whether the tab should be opened in the background or in the foreground (activated after creation)

Definition at line 423 of file akregator_view.cpp.

void Akregator::View::slotFrameChanged ( Frame *  f  )  [slot]

called when another part/frame is activated.

Updates progress bar, caption etc. accordingly

Parameters:
f the activated frame

Definition at line 684 of file akregator_view.cpp.

void Akregator::View::slotCaptionChanged ( const TQString &  c  )  [slot]

sets the window caption after a frame change

Definition at line 474 of file akregator_view.cpp.

void Akregator::View::slotFeedURLDropped ( KURL::List &  urls,
TreeNode after,
Folder parent 
) [slot]

called when URLs are dropped into the tree view

Definition at line 1275 of file akregator_view.cpp.

void Akregator::View::slotMouseOverInfo ( const KFileItem *  kifi  )  [slot]

displays a URL in the status bar when the user moves the mouse over a link

Definition at line 1435 of file akregator_view.cpp.

void Akregator::View::slotStatusText ( const TQString &  c  )  [slot]

sets the status bar text to a given string

Definition at line 468 of file akregator_view.cpp.

void Akregator::View::slotFeedFetched ( Feed feed  )  [slot]

Feed has been fetched, populate article view if needed and update counters.

Definition at line 1083 of file akregator_view.cpp.

void Akregator::View::slotFeedAdd (  )  [slot]

adds a new feed to the feed tree

Definition at line 872 of file akregator_view.cpp.

void Akregator::View::slotFeedAddGroup (  )  [slot]

adds a feed group to the feed tree

Definition at line 937 of file akregator_view.cpp.

void Akregator::View::slotFeedRemove (  )  [slot]

removes the currently selected feed (ask for confirmation)

Definition at line 971 of file akregator_view.cpp.

void Akregator::View::slotFeedModify (  )  [slot]

calls the properties dialog for feeds, starts renaming for feed groups

Definition at line 982 of file akregator_view.cpp.

void Akregator::View::slotFetchCurrentFeed (  )  [slot]

fetches the currently selected feed

Definition at line 1057 of file akregator_view.cpp.

void Akregator::View::slotFetchAllFeeds (  )  [slot]

starts fetching of all feeds in the tree

Definition at line 1064 of file akregator_view.cpp.

void Akregator::View::slotMarkAllRead (  )  [slot]

marks all articles in the currently selected feed as read

Definition at line 1019 of file akregator_view.cpp.

void Akregator::View::slotMarkAllFeedsRead (  )  [slot]

marks all articles in all feeds in the tree as read

Definition at line 1014 of file akregator_view.cpp.

void Akregator::View::slotOpenHomepage (  )  [slot]

opens the homepage of the currently selected feed

Definition at line 1025 of file akregator_view.cpp.

void Akregator::View::slotArticleToggleKeepFlag ( bool  enabled  )  [slot]

toggles the keep flag of the currently selected article

Definition at line 1349 of file akregator_view.cpp.

void Akregator::View::slotArticleDelete (  )  [slot]

deletes the currently selected article

Definition at line 1301 of file akregator_view.cpp.

void Akregator::View::slotSetSelectedArticleRead (  )  [slot]

marks the currently selected article as read

Definition at line 1365 of file akregator_view.cpp.

void Akregator::View::slotSetSelectedArticleUnread (  )  [slot]

marks the currently selected article as unread

Definition at line 1403 of file akregator_view.cpp.

void Akregator::View::slotSetSelectedArticleNew (  )  [slot]

marks the currently selected article as new

Definition at line 1414 of file akregator_view.cpp.

void Akregator::View::slotSetCurrentArticleReadDelayed (  )  [slot]

marks the currenctly selected article as read after a user-set delay

Definition at line 1425 of file akregator_view.cpp.

void Akregator::View::slotTextToSpeechRequest (  )  [slot]

reads the currently selected articles using KTTSD

Definition at line 1376 of file akregator_view.cpp.

void Akregator::View::slotNormalView (  )  [slot]

switches view mode to normal view

Definition at line 623 of file akregator_view.cpp.

void Akregator::View::slotWidescreenView (  )  [slot]

switches view mode to widescreen view

Definition at line 647 of file akregator_view.cpp.

void Akregator::View::slotCombinedView (  )  [slot]

switches view mode to combined view

Definition at line 671 of file akregator_view.cpp.

void Akregator::View::slotToggleShowQuickFilter (  )  [slot]

toggles the visibility of the filter bar

Definition at line 1284 of file akregator_view.cpp.

void Akregator::View::slotPrevUnreadArticle (  )  [slot]

selects the previous unread article in the article list

Definition at line 1002 of file akregator_view.cpp.

void Akregator::View::slotNextUnreadArticle (  )  [slot]

selects the next unread article in the article list

Definition at line 990 of file akregator_view.cpp.

void Akregator::View::slotOpenURLReply ( const KURL &  url,
Akregator::Viewer *  currentViewer,
Akregator::BrowserRun::OpeningMode  mode 
) [protected, slot]

HACK: receives signal from browserrun when the browserrun detects an HTML mimetype and actually loads the page TODO: Remove for KDE 4.0.

Definition at line 855 of file akregator_view.cpp.

void Akregator::View::slotUrlClickedInViewer ( const KURL &  url,
Viewer *  viewer,
bool  newTab,
bool  background 
) [protected, slot]

HACK: part of the url opening hack for 3.5.

called when a viewer emits urlClicked(). TODO: Remove for KDE4

Definition at line 841 of file akregator_view.cpp.


The documentation for this class was generated from the following files: