Those of you who have been using mojoPortal on Mono will be excited to hear of an important milestone reached in the Mono project. Recently in Mono's svn repository (r100264 or newer) has landed support for ASP.NET CSS Control Adapters.
Thanks to the great work of Dean Brettle for implementing this in Mono! Dean has been involved with mojoPortal from the beginning and is also the author of 2 great projects, NeatUpload and NeatHtml, both of which are used in mojoPortal.
The need for Css Control Adapters arises from the fact that the original ASP.NET implementation of some important .NET controls like Menu and Treeview was less than ideal when first released by Microsoft. The problem was that these controls rendered as nested html tables instead of the more semantically correct nesting of ul and li elements. To solve this problem, Microsoft subesquently released the CSS Control Adapters. Since the Mono implementation of Menu and Treeview mirrored the original Microsoft implementation it also rendered as nested tables. Some plumbing was needed in Mono to support the control adapters and Dean stepped up and took on the task.
Because the mojoPortal css was designed to style nested ul and li elements and not html tables, up until now the menu in mojoPortal did not render or style correctly when running on Mono as shown in this screen shot of mojoPortal running on the current Mono 1.9 release:
and now with the latest Mono built from svn:
So I think the next release of Mono will be very exciting for anyone using mojoPortal on Mono.
Again, huge thanks to Dean Brettle, Marek Habersack, and anyone else who may have had a hand in getting this done!
Update 2008-04-10 1:46PM EST - Dean mentioned that: "Owen Brady (aka Ocean) deserves a lot of the credit. I used his code to parse and process the *.browser files."