|I took great delight in implementing LgiGetOs and LgiGetOsName this morning. Given the 2 variables for version and revision are ints I went with ver = "10" and revision = "48" to represent Mac OS X 10.4.8, it seems that the OS is limiting itself somewhat in the way it returns the version numbers. If it ever goes beyond 10.4.9 then I'll be in trouble. I wonder what Apple would do given that the version number is reserving just 4 bits for the 2nd and 3rd number. I guess they'll use 0x104a for 10.4.10. Maybe I should just add a third parameter, or make it an array.
I also implemented key up events. There is no direct corralation between key down's and key up's because the system converts the raw key down's into unicode via various input methods, and that is what I give to the application. The key up is just a massaged virtual keycode. But seems to work really well, except that I can't tab between controls. I must've broken the default handler for that. I'll probably just implement my own handler so I can get an initial release out the door.
So now all thats left to acheive an i.Ftp beta is menus, threading, timers and the socket layer. How hard can that be? ;)