I'll do some fiddling with the API call although I admit I'm not the most
comfortable with making the directed calls to the API, but if it works, it
will be nice :)
While I have your ear regarding fancy features... Do you know of the method
to display those little Tooltip messages that windows uses?
Yeah, if you add -tip when you create the control, the tip will display
automatically:
$newwindow->AddButton (
-name => 'Name',
-pos => [333, 1],
-size => [20, 20],
-tip => 'This button.....',
);
This program isn't designed to emulate them so much as the MSN/Aim/Etc
notification popups (once I have it working properly I'll even modularize
them like I have done for identical (e.g. property windows))
I had a play with AnimateWindow earlier and this is definitely what you want
(I played with it in XS, not via the API - but the API way should have no
problems). I think this is what MSN/yahoo/Skype use to get the notifications
showing on the desktop. I did notice issues with using a richtext control in
the window that rolls up and down, but you should be able to use a
combination of other controls to achieve the same effect. Using
AnimateWindow doesn't give the window focus either:)
I know the this one is a stretch, and I suppose I could do the research
myself if I had spare time recently, but what property/style/method is
needed for me to graphics laden my program to the likes of
Trillian/AdAware/etc?
From a quick look of Trillian it looks like it is using a generic 3rd party
widget control set. Some of these control sets are open source and simply
need to be 'called'. A lot of the are ActiveX based, so quite a bit of glue
would be needed.
If you are happy with XP-styles, then that is easy enough to do - simply
save the manifest file below in your Perl bin folder (for me it's
C:\Perl\bin) - the file must be called "perl.exe.manifest" (or
wperl.exe.manifest if you are using the consoleless version of perl). Every
time you run perl, all your controls will now be using XP styles.
Cheers,
jez.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
processorArchitecture="x86"
version="5.1.0.0"
type="win32"
name="Your application"
/>
<description>Win32::GUI Application</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccf1df"
language="*"
processorArchitecture="x86"
/>
</dependentAssembly>
</dependency>
</assembly>