[Windows Mobile Software Development] meltwater:
Good good.

The file should be named Channels.opml, I am guessing if the file doesn't exist then you aren't using RSSHub and have not set it up yet (otherwise there may be a difference between versions, but I'm guessing if you create some feeds on there you'll get the file). The channels.opml contains the list of channels/rss feeds you have defined. The program will look for it in the FeedStorage location as defined by that reg key, hopefully you can point it to the real ChannelData store now.

I'm trying to switch over to allow people to use their own feeds defined by the RSSHub rather than supplying fixed examples, much better for testing and more useful to everyone. The channel list was the first stage to this.

Once the next update is finished you will be able to load the channel list (which will be your own feeds - I can provide good examples to add if you wish) and switch between the list of feeds to a list of items within each feed.

The debug Test data option won't break anything, it was just my initial test that I could populate the items before I started to try to read the xml files.

HardReset is a little bit of an overkill. All that happens is the following:

RSSUtil.exe runs and reads the file we are looking at (or for Test data option, generates test values).

Registry keys are created/updated:

RSSFeed.ItemCount n

RSSFeed.xName

RSSFeed.xStatus

RSSFeed.xTime

RSSFeed.xIcon ...etc etc...where x is 0 to n

The tab checks the RSSFeed.ItemCount and populates the list using the RSSFeed.xName etc data.

Each time you switch to load new data, the registry keys are updated and when the tab is refreshed, the new data is displayed.

As things progress further we should be using the RSSUtil "debug" screen less and interacting directly with the tab (which will make the required command calls to RSSUtil in the background). I have to keep the "debug" screen though, since when debugging via Visual Studio it runs the exe directly.

Dev Update:

Will release WIP as is for now (as it is an open project).

I've removed a bit more of the hard coded info from the feed details and removed the title for every item in the item list.

Navigation to/from channel list is working (with manual update only)

- Load up the channel list (from running RSSUtil.exe), wait for waiting icon to finish and press Update Now button to reload screen/switch tabs

- Select feed item from channel list to load data for that feed, wait for waiting icon to finish and press Update Now button

- Select header from Rss feed item list to reload the channel list, wait for waiting icon to finish and press Update Now button

Still to do:

[RSSUtil] Icons will still need resizing for the channel list to scroll smoothly - not sure if I'll implement the code to do this yet or just look for small versions in the folder first (user can manually create their own smaller icons initially).

[Sense] Finish implementation of the Page Status & Control process, to flag update of data and refresh automatically etc.

[RSSUtil] Still some hardcoded info

- (number of unread/number of items) - number of unread items not counted yet (hardcoded number)

- description - not always present in the feed data (this is a difference in the rss feed names/structure I expect).

- default media icons (i.e. no media) and feed icon is hardcoded at the moment.

[RSSUtil] Need to lookup how I should be reading the xml files correctly, my method was only for testing and I'm sure there is a much better way to extract and use the information. My method works "ish" but would need a lot more checking of the data to perform correctly for every feed.

[Sense] Need to move the components around etc to produce a better view of the items, auto adjust layout for icon/no icon.

New HELP WANTED request:

If anyone is interested in trying some coding, we will need to display the feed items themselves. At the moment, I think this is probably best handled with .net rather than Sense itself (although a sense module which could do this would be a useful addition, it is beyond my available time and skill at present). Besides, .net is probably more flexible for this.

So we will need a .net form which can display simple formatted data:

<item received="2010-08-22T22:01:36 Z">
<title>Batman: Under The Red Hood</title>
<link>http://www.netflix.com/Movie/Batman_Under_The_Red_Hood/70135479</link>
<guid isPermaLink="true">http://www.netflix.com/Movie/Batman_Under_The_Red_Hood/70135479</guid>
<description><a href="http://www.netflix.com/Movie/Batman_Under_The_Red_Hood/70135479"><img src="http://cdn-0.nflximg.com/us/boxshots/small/70135479.jpg"/></a><br>There's a mystery afoot in Gotham City when a shadowy vigilante known only as Red Hood (voiced by Jensen Ackles) sets his mind to stalking Batman (Bruce Greenwood) and his former sidekick, **** Grayson (Neil Patrick Harris) -- who now goes by the heroic name of Nightwing. But the duo can't get too distracted, lest they fall prey to three familiar nemeses: the Joker (John Di Maggio), Ra's al Ghul (Jason Isaacs) and Black Mask (Wade Williams).</description>
</item>

The data will be displayed similar to below:

Where the information should already be available in the "RSSFeed theRSSFeed" item to populate it (I might need to add some functions to be able to load up a single item for use by the display):

Netflix New Releases This Week - theRSSFeed.RSSFeedDetails.title

Batman:Under The Red Hood - theRSSFeed.RSSFeedList[n].title

etc etc...

One feature which I hope can be implemented (at some point) is option to locally cache the images (so display can look for local images first - naming format can be similar to the media naming - i.e Ch132-Encl281.avi). Will handle option to download images in a similar way to other media items.

Perhaps:

ChXXX-ImgYYY-ZZZ.jpg - XXX the feed id, YYY the item id, ZZZ the image id. These get stored either within the ChannelData directory or perhaps in a sub-directory ChannelData\Img\ maybe.

I'm putting this as a request since it is something someone can do independently (I'm looking at different areas of the code at the moment), it should be fairly straight forward and it will be very useful.