wxWidgets time control
April 22, 2004 on 7:34 am | In General | Add a commentThis is a report of the wxWidgets time control that I wrote in 2003. It is free.
UPDATE
Thanks to Nicolas Clemeur who fixed a bug under wxGTK (see inline comments) and sent this screenshot.
Related Posts:
JPOX
April 20, 2004 on 11:07 pm | In Java | Add a comment“JPOX”:http://jpox.sf.net has a revamped website, much more appealing than the old one. The addition of hierarchical menus and class/ER diagrams helps the user understand the features of JPOX better. It follows the same layout style as many other Java open-source project websites. I am considering discussing with “Stephane”:http://www.ile-maurice.com to offer some free web hosting.
Related Posts:
- Using JPOX in NetBeans IDE
- How to Use JPOX in NetBeans 4.0
- HOWTO: Improved JPOX integration with NetBeans 4.0
- Referencing a superclass from a subclass in JPOX
Dream coding a Composition
April 14, 2004 on 9:21 pm | In General | 3 commentsYou know you have been coding too much when you start dreaming about it. Not exactly about someone (yourself or anyone else) coding, but about code itself. I remember that when I was preparing for the CPE (Certificate of Primary Education) exams, I used to have numbers and math operations flying around in my head; I would lie down in bed at night and do mental calculations till I fall asleep.
What happened to me this morning as I came out of sleep was very similar, except that I was manipulating the code I am currently working on. What still amazes me is the fact that I actually uncovered an anti-pattern in a piece of code that I had not touched for weeks. Although it may be funny that the word “Eureka!” flashed through my mind at the same time, it is wonderful that such a thing could happen. The anti-pattern in question is as follows.
I have a business class called User that is a composite of another class called ContactInfo, itself a composite of the Address class. What currently happens in my code at the time a user needs to be added is:
1. Instantiate an Address object.
2. Instantiate a ContactInfo object passing the Address object to the constructor.
3. Instantiate a User object passing the ContactInfo object to the constructor.
What my dream told me to do (which I am going to tonight) is:
1. Instantiate a User object.
2. Within its constructor, instantiate a ContactInfo object.
3. Within that object’s constructor, instantiate an Address object.
Of course, this is the correct way to proceed according to the composition rule, which says that a composite object should be responsible for the creation and lifetime of its components.
I am not very sure whether such dreams are healthy, or whether they are a precurse of dementia. But, I more than welcome such inspiration.
Related Posts:
- How to Parse Dates from Strings
- How to Format Dates for SQL in Java
- Tip: How to find a browser user-agent string
- How to identify and fix an anemic domain model
Linux vs Mac OS X: Mac OS X wins
April 12, 2004 on 1:15 pm | In General | 4 commentsI removed my post about installing Linux on the iBook because I am currently back with Mac OS X.
Although “Gentoo Linux”:http://www.gentoo.org is the distribution of choice thanks to the ease of resolving dependencies when installing applications in a FreeBSD-like manner, there were certain things that I needed but could not get to work. The most important one is the ability to connect the iPod to Linux. “gtkpod”:http://gtk.sf.net compiled successfully, but I did not manage to get Firewire working.
Half-way through a cycle of changing the configuration of and re-compiling the kernel, I realised that the reason I bought the iBook, and later upgraded to Panther, was that I wanted to not have to fiddle with things and just get everything working right from the start. So, I got rid of Linux and put back Mac OS X.
Related Posts:
- Ubuntu Linux on iBook G3 laptop
- iBook down!
- How to switch off a screen laptop under Linux
- Three weeks with a MacBook Pro laptop
Reading files in Visual Basic, GW-Basic style
April 6, 2004 on 3:26 pm | In General | 2 commentsRecently, someone asked me how to quickly read a file with Visual Basic code without dealing with streams.
Of course, once you learn doing this in GW-Basic, Basica, and friends, it sticks in your mind. Those who forgot, shame on you!
Dim iFileNumber As Integer
Dim sLine As String
iFileNumber = FreeFile
Open "C:stats.log" For Input As iFileNumber
Do While Not EOF(iFileNumber)
Input #iFileNumber, sLine
MsgBox sLine
Loop
Related Posts:
- Validating a Date Field with RIFE
- How to Format Dates for SQL in Java
- Rapid web development
- Copy/paste command-line utilities
Gnome 2.6
April 2, 2004 on 8:51 am | In General | 2 commentsI usually keep a tab on all things Gnome, but I seem to have missed the release of “Gnome 2.6″:http://www.gnome.org. I could not find any release date. So, maybe it only happened today or yesterday. If yesterday, it could be an April’s Fool gag that they have not yet removed from the website.
UPDATE
Going through the release notes, it seems too intricate to be an April’s Fool gag.
Related Posts:
- Mac OS X 10.2.8
- How to Format Dates for SQL in Java
- Gnome’s bounty hunt
- Linux vs Mac OS X: Mac OS X wins
Powered by blog.mu with Pool theme design by Borja Fernandez.


