As a personal excercise in a programming language rather new to me, C#, I have started a commons category browser. It uses WikiSense to generate a commons category tree on-the-fly, and downloads the images in a selected category to be displayed as thumbnails.
Noteworthy points: * Tries to download existing image thumbnails first to increase speed/save bandwidth * Caches the thumbnail locally * Doubleclick opens the browser with the image description page
Note that not much else is working right now; it's just what I hacked together in an afternoon, in a programming language I'm still exploring. Scrolling through thumbnails doesn't work yet, some images are ignored, UTF8 category names are broken, etc.
Plans: * Fix bugs * Cache category tree locally * Load thumbnails in the background, so one can browse in the meantime * Analyze description pages in the background to mark images with troublesome templates
For those not faint of heart, with a fast internet connection and .NET 2.0 installed (Window$ only, though AFAIK the current Mono should theoretically support it):
http://magnusmanske.de/wikipedia/CommonsBrowser.zip
For the rest of you, here's a screenshot:
http://magnusmanske.de/wikipedia/Screenshot.png
Just the executable, source will be released under GPL, in anyone is interested that is ;-)
Magnus
On 6/16/06, Magnus Manske magnus.manske@web.de wrote:
For the rest of you, here's a screenshot:
And when are you going to get a real operating system, Magnus? ;-)
Erik
Erik Moeller wrote:
On 6/16/06, Magnus Manske magnus.manske@web.de wrote:
For the rest of you, here's a screenshot:
And when are you going to get a real operating system, Magnus? ;-)
ATM, I work on three different operation systems, of which two qualify as "real" ;-)
I jsut thought that when learning a M$-created programming language, I'd start with their (free as in beer) IDE. AFAIK, Mono supports Windows.Forms now, so I'll try that some day too...
Magnus
Magnus Manske wrote:
For those not faint of heart, with a fast internet connection and .NET 2.0 installed (Window$ only, though AFAIK the current Mono should theoretically support it):
Mono 1.1.15 doesn't seem too happy with it; it seems to be missing the SplitContainer control. Got source I could look at?
-- brion vibber (brion @ pobox.com)
Brion Vibber wrote:
Magnus Manske wrote:
For those not faint of heart, with a fast internet connection and .NET 2.0 installed (Window$ only, though AFAIK the current Mono should theoretically support it):
Mono 1.1.15 doesn't seem too happy with it; it seems to be missing the SplitContainer control. Got source I could look at?
Sure: http://magnusmanske.de/wikipedia/CommonsBrowserProject.zip
This version also caches the categories in local files. No built-in cache flushing yet, though.
Magnus
Magnus Manske wrote:
Brion Vibber wrote:
Mono 1.1.15 doesn't seem too happy with it; it seems to be missing the SplitContainer control. Got source I could look at?
Sure: http://magnusmanske.de/wikipedia/CommonsBrowserProject.zip
Yep, SplitContainer isn't implemented in Mono's System.Windows.Forms yet; it's a .NET 2.0-only control, and not all of the class library is updated for 2.0. If you can redo it with the older Splitter control it would likely work; or better yet abstract out the UI so a Gtk# user interface can be written on it for Linux.
(Any reason you're not putting this in SVN?)
-- brion vibber (brion @ pobox.com)
Brion Vibber wrote:
Magnus Manske wrote:
Brion Vibber wrote:
Mono 1.1.15 doesn't seem too happy with it; it seems to be missing the SplitContainer control. Got source I could look at?
Sure: http://magnusmanske.de/wikipedia/CommonsBrowserProject.zip
Yep, SplitContainer isn't implemented in Mono's System.Windows.Forms yet; it's a .NET 2.0-only control, and not all of the class library is updated for 2.0. If you can redo it with the older Splitter control it would likely work; or better yet abstract out the UI so a Gtk# user interface can be written on it for Linux.
Done (though I think I broke "paint" temporarily).
(Any reason you're not putting this in SVN?)
It's in now.
Magnus