Hobby-hacking Eric

2006-01-22

Layout bugs in Record.lhs fixed!

Aha! Found out what was causing the layout to go all funky. It turns out that for some reason (maybe a bug, maybe a feature) scrolled windows have to go into their own panels, otherwise they interact badly with their neighbouring widgets. So got Record.lhs fixed. Turns out that SelectChanges.lhs was also suffering from the same layout bug. Noted that whoever wrote the original gui code (i'm too lazy to trawl the repo to find out) did a pretty good job. Some nice, clean elegant ideas that integrate well with the rest of the darcs code. For example, implementing SelectChanges as an optional GUI was cool because then you can use the same code for lots of commands without lifting a finger, Pull, Apply, Send, etc. Now that this bug is done for, I guess I shall turn my attention to building a simple standalone interface.

The standalone interface won't do very much. It'll just let you select a repodir and then some operations. Maybe it'll provide the patch view and changes view in tabbed windows or something. I don't aim for fancy or even complete. Just operational and standalone. Enough to get people to understand that this code may actually be worth maintaining and that they should dive right in!

Oh, Juliusz suggests that I put up some screenshots and link them from the wiki. Whatsnew, I already showed last week. So here are Record and Pull. If you like what you see, please remember that this is *NOT* my doing. Somebody else (David?) wrote this code, and the only thing I did was tweak it so that it worked as s/he intended:





Also, a special shout-out to Johnathan Mah and Tom Counsell. In the event that you folks ever stumble upon this blog, I hope that you'll be inspired to go learn HOC and port your work to Haskell so that you get better integration with Darcs AND all the cool OS X features. This wxWidgets interface is like Mozilla Firefox, whereas your Patchworks are more like Camino. The former is cool because it runs everywhere and lets us have a common platform. The latter is also cool because of its integration with OS X, something we probably won't achieve with universal code.


No comments:

Blog Archive