The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
=for comment based on iup-3.9 - http://www.tecgraf.puc-rio.br/iup/en/elem/iuplink.html

=head1 NAME

IUP::Link - [GUI element] label that displays an underlined clickable text

=head1 DESCRIPTION

Creates a label that displays an underlined clickable text. It is derived from L<IUP::Label|IUP::Label>.

=begin HTML

<p><img src="http://kmx.github.io/perl-iup/img-3.9/elem/iuplink.png"></p>

=end HTML

=head1 USAGE

=head2 CREATION - new() method

 $link = IUP::Link->new( TITLE=>"Clickable text", URL=>'http://server.com/path/file.html' );

B<Returns:> the identifier of the created element, or C<undef> if an error occurs.

NOTE: You can pass to C<new()> other C<ATTRIBUTE=E<gt>'value'> or C<CALLBACKNAME=E<gt>\&func> pairs relevant
to this element - see L<IUP::Manual::02_Elements|IUP::Manual::02_Elements/"new()">.

=head2 ATTRIBUTES

For more info about concept of attributes (setting/getting values etc.)
see L<IUP::Manual::03_Attributes|IUP::Manual::03_Attributes>. Attributes specific to this element:

Inherits all attributes of the L<IUP::Label|IUP::Label>, but redefines a few attributes.

=over

=item L<FGCOLOR|IUP::Manual::03_Attributes/FGCOLOR>

Text color. Default: the global attribute LINKFGCOLOR.

=item B<URL>

URL Address or a special values "NO" (= not clickable).

=back

=head2 CALLBACKS

For more info about concept of callbacks (setting callback handlers etc.)
see L<IUP::Manual::04_Callbacks|IUP::Manual::04_Callbacks>. Callbacks specific to this element:

Inherits all callbacks of the L<IUP::Label|IUP::Label>.

=over

=item * L<ACTION|IUP::Manual::04_Callbacks/ACTION>

Action generated when the link is activated.

B<Callback handler prototype:>

 sub action_handler {
   my ($self, $url) = @_;
   #...
 }


B<$self:> reference to the element (IUP::Link) that activated the event

B<$url:> the destination address of the link

B<Returns:> IUP_CLOSE will be processed. If returns IUP_DEFAULT or it is
not defined, the L<Help|IUP::Manual::02_Elements/"Help()"> function will be called.

=back 
  
=head1 NOTES

When the cursor is over the text, it is changed to the HAND cursor.

If the callback is not defined the L<Help|IUP::Manual::02_Elements/"Help()"> function is called with
the given URL.

The L<IUP::Label|IUP::Label> callbacks BUTTON_CB, ENTERWINDOW_CB and LEAVEWINDOW_CB
are used internally.

=head1 EXAMPLES


The element B<IUP::Link> is used in the following sample scripts:

=over

=item * L<0-basic/label.pl|https://metacpan.org/source/KMX/IUP-0.201/examples/0-basic/label.pl> - IUP::Label and IUP::Link example

=back 



=head1 SEE ALSO

L<IUP::Label|IUP::Label>

The original doc: L<iuplink.html|http://www.tecgraf.puc-rio.br/iup/en/elem/iuplink.html>
 

=cut