A bug report came in recently that made me dig into the Win32 window manager a fair amount. You can play along too! Make a new project, and set the width and height of the default window to be something larger than your screen resolution. My screen runs at 1600x1200, so I made the window 2000x2000. If you run the application, you'll notice that the window is roughly the exact size of the screen. If you run Spy++, you'll see that the window's dimensions were reduced. Now, go back and set the window's frame type to be plain box and
February 2007 Archives
Every once in a while you'll find that you need to lock the screen so that updates don't happen to it. For instance, let's say you're adding a whole bunch of data to the screen in one go, but you don't want to trigger a redraw each time you add an item. Instead, you want to redraw once all of the items are done being added. Well, in the past I've advocated the use of LockWindowUpdate for this situation. However, I've recently learned the error of my ways -- this is not an appropriate use for that Win32 API. That
I suspect maybe that travel just hates me. I woke up at 6:30am on Saturday so that I could be ready and awake enough to be at the airport by 8 to make my 9:30 flight. The plan was to go from Austin to Chicago, then from there to Minneapolis. Finally, I was going to catch a commuter flight to St Cloud. Easy, right? Well, my flight out of Austin was delayed for two reasons: Dallas was entirely shut down for the day due to wind storms, and mechanical problems. About two hours later than expected, I'm in the air,
I woke up yesterday about 8am, and went to the St Cloud airport at about 9am. Three flights and 11 hours later, I safely arrived in Austin, TX. Phew, what a long day of travelling! And, since it was mardi gras and my hotel was downtown, I was awoken several times to the blissful sound of idiots drunkenly (and loudly) fighting. Yee frickin haw. So now that my brain is mush, I'm in the office until Friday. I fly back to MN on Saturday. Don't be too shocked if you get nothing useful out of me for the next few
These are just some little tricks that I've picked up over the years. They don't do anything terribly useful. Instead, it's just handy "best practice" information. It's also stuff I've seen come up several times in recent memory. 1) Don't use Window.MenuBarVisible for anything. While it may sound neat and relevant, it's really only useful for kiosk applications and most people aren't making those. You see, it's a holdover from Mac Classic and its name sucks. It hides the menu bar (duh), but also hides all of the system UI such as a the dock and global floating windows. On
The basement is coming along really quickly now. I got the painting done last week, which meant that I could finally start doing the trim work. That's when the unfinished basement starts looking like a finished one. I got all the window jambs and casings done (so they're totally finished off) earlier this week, and it started looking really nice. But last night and this morning (before work, which is so early that I don't want to contemplate it anymore) I installed doors with the help of my neighbor. He has a trick for hanging them which makes things go
So here's a fun little trick you can do quite easily with REALbasic. Let's say you're on Windows (because all good people run Windows, remember. ;-)) and you want to send a file to another machine (Windows or not). Well, it's trivial to write some REALbasic code which opens up the file, starts sending it out, and so forth. However, in order to make that file transfer quickly, you still have to remember some things. For instance, don't read the entire file in at once since that could chew up RAM for very large files. What if you don't want
So I found this link while cruising Fark today, and I decided I would correct their silly little mistakes. While I agree that some of those people should be on that list, here's my top twelve (in no particular order) ugliest musicians: Tom Petty Michael Jackson Iggy Pop David Bowie Marilyn Manson Steven Tyler Meatloaf Courtney Love Weird Al Keith Richards Sid Vicious K D Lang It's also pretty tough to chose, so I left in some honorable mentions for people who could very well make the cut. Rob Zombie Tiny Tim Both of the Indigo Girls George Clinton
Previously, I was complaining about how WS_FTP wasn't working on Vista for me, and expressing my annoyance at Ipswitch for "forcing" upgrades. Well, I must have overstepped my bounds by a new record as Ipswitch emailed me this morning to help me out with the issue. They were gracious enough to give me access to a version which does work on Vista and doesn't require me to pay to upgrade. I must admit that this wasn't my intention when I went on my tirade, but I'm extremely happy with their customer support on the issue. Seeing as how I didn't
Since some people seem to be unaware of this (especially since the documentation fails to point it out), there are some neat new datatypes that REALbasic supports (and has for a while now): Currency -- this is a 64-bit number, expressed in mils. In essence, you have an integer part, and four decimal parts to the number, and it's used to express currencies in a very accurate manner. Ptr -- this is a 32-pointer datatype. You use it whenever you want to work with on-the-metal pointers. But use it with caution as you are welcome to shoot yourself in the
So I don't need to use WS_FTP terribly often, but when I need it, I need it. So I bought a copy of it a while ago (about two years ago), and it's always worked great. However, today I needed it on Vista. So I found my license key and I downloaded my version and I installed it. However, when I went to run it, I was nicely prompted with a message dialog telling me that their security check wasn't able to run, and so the application terminated. Let me repeat this. Their security check wasn't able to run, so
It's been a really busy last few days, but what's strange is that I really can't recall why. lol. Life has just sorta been whizzing by. I've done some more work shoring up the last debugger feature I plan to do for this release. It involved structured exception handling and signal processing, so it was a rather interesting project. I think it'll be well received in some circles. :-) It was also mostly just a technology experiment to see how well the framework can handle hardware exceptions. Since it seems to handle them well enough, it paves the way for
So Bill and I are in the process of moving RBLibrary over from 3shost to our new babbage-tech server, and I realized today that we are totally justified in moving our hosting. 3shost used to have top-notch customer service. Oh how the might have fallen. I don't usually post personal correspondences since I find that to be rude and childish. However, I am making an exception in this case just to illustrate a point. I initiated this exchange by asking their helpdesk a seemingly simple question: I'm looking for a way to change my DNS settings as I am moving
So REAL Software is shutting down the mailing lists and moving everyone over to the forums. It sounds like the lists are going to be turned off on next Monday, in fact. I had no idea this was going to happen, but boy am I happy about it! It will consolidate the knowledge in the community, for one thing. But the other thing I'm most happy about is that the forums are generally a very civilized place whereas the mailing lists have always been annoyingly off-topic. I'm excited to have a bunch of new people posting in the forums, and
So I had a nice long post all typed out about a pet peeve of mine: people assuming that because something doesn't work the way they want, that it's a bug. Then I decided it was too harsh to post. So I'm just going to point out some common misconceptions and hope that people read it and understand it (but I have very little hope, honestly -- this stuff has been pointed out before). 1) REALbasic uses cooperative threads. That means they're not preemptive. This is by design because cooperative threads are just plain easier for most people to use.
When I woke up this morning, it was 1 outside. We've reached our high for the day -- 6. This isn't including the wind chill, I might add. Tomorrow's high (HIGH) is slated to be between -4 and -10. That's the high. H. I. G. H. I love being a Minnesotan! It's strange, but I really do enjoy the cold. Mind you, I won't be out playing in it this weekend. But I don't mind walking in it from the mailbox and back to the house. ;-) In terms of what I will be doing this weekend... fun stuff! Tomorrow
It's been a long time since I've had this much fun working on something for REALbasic. Don't get me wrong, I've always enjoyed my job. But you know how it goes -- some tasks are simply more fun than others. The last time I truly had a blast with a feature set was a number of years ago when I was working on the networking functionality. It started out as a challenge since I didn't know much of anything about it. So my first task was to learn everything I could about networking and see how I could apply it