Visit site Delphi Haven
February 2012
2
votes
Copying and pasting a FireMonkey TBitmap – new and improved!
Delphi Haven
– Back in October, I posted code for copying and pasting a FireMonkey TBitmap to and from the system clipboard on both OS X and Windows. Recently, I got a comment noting that on a Mac, if an image file is copied using Finder and pasted using my code, the default icon for the file type is pasted ...
January 2012
6
votes
Fixing TThreadedQueue…? (Or in other words: TMonitor… again!)
Delphi Haven
– Probably out of masochism or something, I’ve been looking at TMonitor again. For anyone who doesn’t recall the earlier episodes, TMonitor is the ‘new’ (and rather low-level) threading device introduced in D2009. Alas, but it proved buggy as hell, as well as slow. Given the ...
3
votes
Two FireMonkey nasties
Delphi Haven
– As the title says, here’s two little FireMonkey nasties I’ve got round to QC’ing: TBitmap.LoadFromFile does not raise an exception when the file does not exist – instead, it just silently returns (see QC 102636). TFmxObject.Children (which is equivalent to ...
0
votes
Mac troubles redux
Delphi Haven
– Not long after I posted previously about an anonymous blogger having problems with running Delphi applications on OS X Lion – the error message was ‘You cannot open the application test01.app because the Classic environment is no longer supported’, which in itself didn’t make any sense ...
2
votes
Anyone want to help out Mr Hater…?
Delphi Haven
– Poor Mr Hater is having trouble running FireMonkey applications and/or the remote debugger (it’s unclear what) on OS X Lion. Would any XE2-user-with-a-Mac have a suggestion? The error message reported (‘You cannot open the application test01.app because the Classic environment is no ...
2
votes
Nice post on writing a custom FireMonkey control
Delphi Haven
– Just a quick post to say if you’re interested in the basic mechanics of custom control creation in the FireMonkey framework, you may want to check out this article by Mike Sutton on his MonkeyStyler blog.
1
vote
XE2 update for my image metadata reading/writing library (CCR Exif)
Delphi Haven
– I was going to get round to it eventually, though having an explicit request prompted me to actually do it: updating my open source image metadata reading/writing library (CCR Exif) to properly support XE2. The updates I’ve just posted to Google Code has it cross compiling for each of Delphi ...
4
votes
Running console applications on Lin… er, OS X
Delphi Haven
– Here’s a few small small OS X (or more generally, Unix and Unix-y) console application tips. All of them are pretty trivial, but I easily forget such things, so they’re for my own future benefit really… If a application isn’t on the system PATH, then you always need to ...
2
votes
Writing Delphi console applications that call a Cocoa API
Delphi Haven
– Just a quick tip for anyone struggling with calling a Cocoa (i.e., Objective-C) API in a Delphi console application: if you’re getting ‘class cannot be found’ errors on the simplest of calls, that’s because the relevant Cocoa framework hasn’t been loaded, and therefore, ...
0
votes
Programmatically taking a screenshot on OS X
Delphi Haven
– Browsing Embarcadero’s FireMonkey forum, I noticed an unanswered question about programmatically taking a screenshot on OS X. Having previously figured out how to paste a graphic from the OS X clipboard to a FireMonkey TBitmap (see here), I thought doing a screenshot couldn’t be any ...
December 2011
3
votes
Playing around with TVirtualMethodInterceptor
Delphi Haven
– Beyond bug fixes, one of the few things new to XE1 was TVirtualMethodInterceptor, a class for hooking virtual method calls made against an arbitrary object. Some months ago I had a quick try of it. Finding Barry Kelly’s example just a little too simple and abstract, I wrote my own – a ...
9
votes
XE2 update 3 is out
Delphi Haven
– XE2 update 3 is out, and on initial inspection seems to repeat the pattern of the previous updates: useful bugfixes for the core product, but little by way of substantive improvements for FireMonkey, at least if you want to use the Delphi compiler. Naturally, the MSI/InstallAware combo is ridiculous ...
3
votes
Thom Gerdes on WinRT
Delphi Haven
– This is just a short post to say Thom Gerdes has a piece on WinRT, the hot new Windows 8 API/‘glorious’ return of COM [delete as appropriate] you may want to check out…
4
votes
Bounded strings using ‘advanced’ records
Delphi Haven
– There was an interesting question on StackOverflow recently, asking whether it is possible to define a string type whose instances have a minimum and maximum length. More exactly, there was an interesting answer to that question, Andreas Rejbrand chipping in with a record-based solution that ...
November 2011
4
votes
Memory leaks on OS X
Delphi Haven
– Assuming you have Xcode installed, OS X comes with a handy set of developer diagnostic tools called ‘Instruments’ – find the main program under /Developer/Applications/. To use them with a Delphi application, do this: Run the application first. Don’t run it through the ...




