While investigating the start vs. ShellExecute issue I stumbled on this:
http://sourceforge.net/mailarchive/message.php?msg_id=245600

Looks like I was beaten to it by about 3-4 years! OK, it doesn't do the fancy dynamic underlining, but otherwise almost identical, down to the Win32::API dependencies. I'll steal the idea of adding an AddHyperLink method to the Win32::GUI::Window namespace though.

Rob.

Glenn Linderman wrote:

On approximately 2/16/2005 3:00 AM, came the following characters from the keyboard of [EMAIL PROTECTED]:

Quoting Robert May <[EMAIL PROTECTED]>:

Hi Rob,

Nice work - thanks for contributing.


I have been thinking about this wrapper idea for
some time, as there are a number of useful 'widgets' that I would keep
reusing, and think they could be packaged up for others to use. Initially I was thinking of GUI framework items: examples are splash screens, about boxes and the like, that virtually every UI wants in order to look professional, but is the almost the same over and over again. If nothing
else these could serve as great examples of what can be done.



I think we’d all agree on this:) It comes down to who is going to do the work and get the ball rolling. Ideally the sourceforge site would be best place to have a repository of these kind of objects, and if someone has the time to spare then I'm sure Aldo would give the required permissions to play with the website.


Whilst I don't have anything to contribute in
this vein right now, I though this might be a good moment to introduce
HyperLink.pm - a sub-classing of Win32::GUI::Label that acts as a
clickable hyperlink:



This is a great start - a nice object. Although I had a problem with the constants (I'm on5.6) and got the following error:

D:\Development>perl HyperLinkDemo.pl
Constant name 'HASH(0x1a4306c)' has invalid characters at HyperLink.pm line 88
BEGIN failed--compilation aborted at HyperLink.pm line 91.
Compilation failed in require at HyperLinkDemo.pl line 15.
BEGIN failed--compilation aborted at HyperLinkDemo.pl line 15.

Once fixed, it worked great.

As a suggestion, it would be a good idea to get rid of the dependency on Win32::API - SetCapture and ReleaseCapture are already in Win32::GUI. If you are keen on this idea, I'll add GetCapture, LoadCursor into GUI.xs. The issue would then be ShellExecute - perhaps that should be added too?


Would it not be possible to just use

   system qq{start whatever_command};

instead of ShellExecute?  What is the advantage of ShellExecute?


Reply via email to