Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / desktop / WinForms

RssToolbar - Desktop RSS Ticker

3.78/5 (7 votes)
29 Jun 2009CPL2 min read 85.1K   2.4K  
Streams RSS headlines to the desktop
news-ticker

Introduction

RssToolbar is a tiny utility that docks itself to the top of the screen and scrolls RSS News Feeds in a stock style ticker to the desktop.

Background

Several years ago, I developed this product to distribute to customer workstations, pre-configured to connect to our organization's RSS Feed as a simple and impressive way to keep clients informed of our latest news and alerts. Ultimately the product was pulled because most customers were using it to stream local weather, sports, and news to their desktops instead of the feeds we intended them to consume!

RssToolbar was originally developed in .NET v1.1 in Visual Basic. It was later hastily converted to C# but never peer reviewed or certified. I came across this old product a few days ago and decided to port it to .NET v2.0.

Using the Toolbar

The RssToolbar uses an INI file (settings.ini) for configuration (yea, I told you this thing was OLD!). If you're using Vista, then you'll probably have to use Wordpad to open the settings.ini file since Vista doesn't seem to let you open *.ini files in Notepad. Below you can see the configuration:

settings.ini

[Feeds]
1=http://www.codeproject.com/webservices/articlerss.aspx?cat=1
2=http://rss.slashdot.org/Slashdot/slashdot
3=http://feeds.digg.com/digg/container/technology/popular.rss
4=http://feeds.gawker.com/lifehacker/full
5=http://feeds.gawker.com/kotaku/full

[Preferences]
speed=25
maxstories=10
maxheadlines=50
fontface=Arial
fontsize=14

Configuration Section - Feeds

The feeds section allows users to specify the feeds they want to stream in the ticker. At present, a maximum of 5 feeds are allowed and as long as the RSS Feed provider uses RSS Compliant XML documents, the ticker will be able to handle them.

Configuration Section - Preferences

  • speed - The speed the ticker ticks. Lower is faster and higher is slower
  • maxstories - The maximum headlines from a feed to stream
  • maxheadlines - The maximum headlines of all feeds to stream
  • fontface - The font-face of the ticker
  • fontsize - The font size of the ticker

Early versions of the .NET Framework had a 2,000 or so character limit on label controls so the maxstories/maxheadlines settings allowed you to get a nice variety of different feeds into the ticker before hitting the limit.

Runtime Options

By right clicking in the ticker, you can expose a few options:

rssticker02.jpg

  • Refresh - Fetches all the feeds and rebuilds the ticker stream
  • Launch - Exports the feeds and links from the ticker and posts them into an HTM file
  • Exit - Exits the ticker control

Below you can see the web page generated when you click the Launch option:

rssticker03.jpg

Source Code

This is extremely simple stuff, probably not even worth mentioning really.

To fetch and parse the RSS feeds, I'm using a slightly modified version of RSS.NET.

To read the INI configuration file, I'm using a primitive IniDataReader class I wrote which uses Regular Expressions. The ticker itself is a basic panel, textbox, and label control wired to a timer. The timer's _Tick event is what actually creates the ticking sensation.

History

  • 06/29/2009 - Submitted article

License

This article, along with any associated source code and files, is licensed under The Common Public License Version 1.0 (CPL)