Javapolis

I went to javapolis, I have to say, I’m glad I went. I saw a lot of old friends there. Nice to catch up what they had been doing the last couple of years. Someone even called me ‘The enemy’ because I also did dotnet. But hey I like programming and don’t want to be bound to 1 language, why constrain yourself. We as developers are so openminded, why not about the language we do it in then???

I saw some demos of flex2. Well, Adobe / Macromedia have built a nice tool, I really have to admit. I’ll be given it a test drive. I’ll also give openlaslo a go, but according to one of their ‘sales/consultants’. It is not as far yet as flex2. And I’m pro opensource, but I’m not anti closed source. There’s a big difference and if the product is worth it, I’ll pay for it. In the future I will pay for a copy of Visual Studio if I’m the express edition doesn’t furfill my needs. If you do dotnet development on windows I’ve tried sharpdevelop (on linux monodevelop) and for oss development its ok, but If I’m doing work for a client I calculate the hours it takes. Well If I can buy a product that makes me work faster why not?? For doing java development I use eclipse because thats somewhat the standard and I can work very fast in it! So there’s no problem! But for dotnet windows client development the situation is different!

Topreader Desktop Development (2)

This weekend and this evening I did some more TopReader development. I got stuck on the right mouse click popup (context menu) for creating folders,adding feeds, … I asked #gnome and Murray pointed me to the UIManager class. I have to say this is a nifty thing!!

For those out there who (like me) didn’t know about this Factory, it reads an xml file like the following

<ui>
  <popup name="channelpopupmenu" action="channelpopup">
    <menuitem name="MarkRead" action="MarkRead"/>
  </popup>
  <popup name="folderpopupmenu" action="folderpopupmenu">	
    <menuitem name="CreateFolder" action="CreateFolder"/>	
    <menuitem name="AddFeed" action="AddFeed"/>
  </popup>
</ui>

In your code you just do this for initializing it

uim = new UIManager ();
uim.AddUiFromResource("FeedMenu.xml");

And if you want to show a context menu, you intercept the right mouse click event on your widget and do this little piece of code

Menu w = (Menu)uim.GetWidget("ui/channelpopupmenu");
w.Popup();

The widget is retrieved by the tagname or its actual name
As easy as that!!!

Now we take it a step further. During initalisation we do this

uim = new UIManager ();
uim.InsertActionGroup (group, 0);
uim.AddUiFromResource("FeedMenu.xml");

Where the action group represents a group of Action objects (Duh)

ActionEntry[] entries = new ActionEntry[] {
    			new ActionEntry ("MarkRead", Stock.Cut, "MarkRead", null,
                     "MarkRead",
                     new EventHandler (OnMarkRead)),
                new ActionEntry ("CreateFolder", Stock.Cut, "CreateFolder", null,
                     "CreateFolder",
                     new EventHandler (OnCreateFolder)),
                new ActionEntry ("AddFeed", Stock.Cut, "AddFeed", null,
                     "AddFeed",
                     new EventHandler (OnAddFeed))
                   };

I haven’t configured them as you can see, all are the Cut Stock item.
So we linked the selection of the context menu item with the designed EventHandler.

One word: SWEET

What can I do so far with my app, well I can create folders, add feeds, read feeds, mark a whole feed as read. In the backend the feeds get updated automatically. As I mentioned everything is stored in a small sqlite3 database, for 318 items it’s 600 k, not tho much if you ask me. I wonder how much feeds I can archive before I reach the limit of sqlite (thought that was 2 gigs,but not sure)

I’ll keep you posted (offcourse it’s gonna be opensourced, LGPL probably as I like it more than the GPL)

Silence is a good thing (this time)

I haven’t posted in a long time, reason is actually very very simple. As a startup I’m getting really a lot of work, maybe even to much work. But you don’t hear me complaining, I’m really glad that I’ve got this much work.

One of the first investments I did was the purchase of a 24″ TFT screen. I have to say, It really improvese my coding speed. In a couple of months I’ll buy a second one for xinerama!! I’ll take a picture when I’ve build the setup, but it really is true that you work faster if you have a larger image to work with!

Next week I’ll be attending javapolis, one of the biggest (if not the biggest) java event in Europe. I’ll be going the thursday and friday as I don’t find the wednesday interesting enough, give me a shout if you’re also going! I’m always interested in talking with other ‘geeks’.

Hope I can get some free time during the christmas period to work some further on my mono topreader project as I really want that getting into a usable state.