Here’s the newest version of the MXNA RSS Reader Flex application that was shown at 360Flex. It’s been updated and another Flex community component was added into the mix. And full source is published. I call it ZOMGZ!!1 RSS Reader.

The updated recipe is:

So what’s new?
I added the sticky tooltip component by Maikel Sibbald, which shows the description of the article when you hover your mouse over it. I think it looks sweet. There’s a new icon for the most popular posts of the day. There’s also an options panel (click the rightmost icon). You can configure how many posts you want to read for each category. And you can choose to use the “Smart Categories” or the regular categories that MXNA offers (not all categories have smart categories that correspond). Those options are stored in a shared object, so next time you load the app it will remember your settings. And it will automatically load the last category you were browsing. I utilized a better method for sizing the font in the TreeMap that I didn’t realize Josh had included in the component. It looks a lot better now. I had to make a small modification to the component to get it work with embedded fonts, but now the fonts looks silky smooth and they show up in the reflection. I made some performance enhancements, turns out that drawing that reflection when you’re using embedded fonts really eats up processing power.

Future development
I’ve been working on getting the source to an acceptable point to release it to the wild. I didn’t get all this code to a point I’m truly happy with, a lot of it’s uncommented, but my ADD is kicking in and I’m tired of working on it, so here it is as it is. Use it to learn, use it for inspiration, use it for whatever. The only restriction is that Josh’s TreeMap is licensed under the GPL license (AFAIK the other stuff is MIT-ish license). I dropped this into an Apollo app and it kind of makes a cool desktop RSS app, but I didn’t add anything that really makes it any better than the web version, so I’m not going to release the Apollo version. I’m not planning on working on it anymore. I’ll be working on a few other RSS visualization apps.

ZOMGZ!!1

So check out the example below. View the source here.

[Or launch it in it’s own window: here’s the link]

This movie requires Flash Player 9

20 Responses to “Updated MXNA RSS Reader Flex App - Now With Source”

  1. Daniel Wabyick says:

    This is quite nice. It seems like a perfect candidate for an Apollo app. Just put a web-browser window to the right of the tree map.

  2. Nate says:

    Yes! Doug, i showed the president of a top 30 performing S&P 500 company your component mashup. He loved it. We are going to combine it with the flex book to show some really cool stuff.

    Thanks for posting the source! I really like the bouncing “OSX” like icons that bounce until it’s loaded.

  3. David B says:

    People like you are making easy and amazing Flex learning. It looks great. Just one thing, I get the next error when I click on an icon (the cube rotates and show its content) and then click the same icon again quickly:

    TypeError: Error #1009: No se puede acceder a una propiedad o a un método de una referencia a un objeto nulo.
    at MXNAReader/::changeSelected()
    at MXNAReader/__fisheye_change()
    … etc etc

    I guess you can fix it in a couple of minutes, and my intention is just to colaborate. I am really excited with this app.

    Thanks for develop

  4. Jim Rutherford says:

    That is some freaking awesome eye candy! And it keeps getting better! Thanks for sharing.

  5. jeff says:

    Thank you for sharing. I will study your code in detail. That is really excellent sample for us to learn.

    Thanks

  6. Bjorn says:

    The smoke/flame was a nice touch

  7. Luke McLean says:

    Hi Doug I know that you are no going to iterate the RSS reader however the sticky tooltips class runs off the page. I have made the following changes to stop this behaviour… tried to get it to work with adding your little speach bubble but invalidateDisplayList() {used to trigger the updateDisplayList() to redraw the border} also removes all the html formatting… bug or feature I cannot work it out.

    To constrain the tooltip (keep it within the screen bounds)…

    1) add the following private vars to the FXCToolTip class:

    private var isInit:Boolean;
    private var relx:Number;
    private var rely:Number;

    2) modify the makeSticky() method in that same class:

    private function makeSticky():void{

    this.addEventListener(Event.ENTER_FRAME, function():void{
    if(parent != null){
    var xBounds:Boolean = (((Application.application.mouseX + parent.width - relx) < Application.application.screen.width)&&(Application.application.mouseX - relx > 0));
    var yBounds:Boolean = (((Application.application.mouseY + parent.height - rely) < Application.application.screen.height)&&(Application.application.mouseY - rely > 0));

    if (!isInit) {
    relx = Application.application.mouseX - parent.x;
    rely = Application.application.mouseY - parent.y;
    isInit = true;
    }

    if (xBounds && yBounds) {
    parent.x = Application.application.mouseX - relx;
    parent.y = Application.application.mouseY - rely;
    } else if (yBounds) {
    parent.y = Application.application.mouseY - rely;
    relx = Application.application.mouseX - parent.x;
    } else if (xBounds) {
    parent.x = Application.application.mouseX - relx;
    rely = Application.application.mouseY - parent.y;
    } else {
    relx = Application.application.mouseX - parent.x;
    rely = Application.application.mouseY - parent.y;
    }
    }
    });
    }

  8. Maikel Sibbald says:

    Great work!!! And cool seeing the sticky tooltip in use:
    I’ve added the fix of Luke McLean to the component. Just check it out here:

    http://labs.flexcoders.nl/?p=55

  9. Mike Potter says:

    Very cool! I’d love to integrate this into flex.org. Let me know if you’re interested in doing that.

    Mike

  10. Michael Ramirez says:

    Why is the Flex icon labeled as “Adobe Flex 3″ ?

  11. Elango says:

    Hi,
    Publish this as Apollo app. we can run it as a desktop app.

    Thanks

  12. All in a days work… says:

    […] Updated MXNA RSS Reader Flex App - Now With Source (tags: RSS Flex) Share and Enjoy:These icons link to social bookmarking sites where readers can share and discover new web pages. […]

  13. Gus blog online » Let’s get Flex ! says:

    […] http://dougmccune.com/flex/zomgzrss/ http://dougmccune.com/blog/2007/03/27/updated-mxna-rss-reader-flex-app-now-with-source/ […]

  14. MyoT - » Pleasant surprise says:

    […] It has been awhile I have abandoned my website and blog; too much going on in my life here. I got a chance to catchup yesterday so I put back in my Google Analytics to my new domain from my old domain myothein.net. The traffic I have on my blog really surprised me. But very pleasant one. At the same time, it gives me energy and motivation to work on the content of the site. Meanwhile, while digging through my referral, I ran into this cool rss reader which is a prime example of collaboration in opensource. […]

  15. Code Sweat Blog » Blog Archive » Some Flex 2 Related Links (pt. two) says:

    […] dougmccune.com » reader […]

  16. Sameer says:

    Hey Doug, great app this Flex RSS Reader; I was wondering, how did you make the small clock thingy appear as the mouse pointer when there’s activity?

    thanx

  17. Neal Mi says:

    Thanks for your work. Give us an amazing RSS reader.

    It seems not work very well with Flex 3 on Linux.
    1st, fisheye has many warning, and style textDecoration duplicate.
    2nd. XNAReader has one warning about data binding at line 386.
    3rd. Embed font with an error.(I know Linux don’t have font Arial, flashType has been deprecated since
    3.0)

  18. Remy says:

    Very cool! And it’s a good example for learning. Thanks for sharing!
    I’m wondering, how to add Glow effect to the selected icon?

  19. men mew hentai says:

    mew hentai zoids mew stories hentai

  20. Tom Chiverton says:

    Looks like it’s having connection problems these days, it always says ‘not on line’ for me.

Leave a Reply