NAME
Tk::Role::HasWidgets - keep track of your tk widgets
VERSION
version 1.112380
SYNOPSIS
package Your::Tk::Window::Class;
use Moose;
with 'Tk::Role::HasWidgets';
# store a button
$self->_set_w( my_button => $button );
# later on, in one of the methods
$self->_w( 'my_button' )->configure( ... );
# when no longer needed:
$self->_del_w( 'my_button' );
DESCRIPTION
When programming Tk, it's almost always a good idea to keep a reference to the widgets that you created in the interface. Most of the time, a simple hash is enough; but it is usually wrapped up in methods to make the hash private to the window object. And of course, those methods are duplicated in all modules, under a form or another.
Since duplication is bad, this module implements a Moose role implementing those methods once and forever. This implies that your class is using Moose in order to consume the role.
About the method names
The methods featured in this role begin with _
, that is, they are following Perl convention of private methods. This is on purpose: remember that this method is a role, consumed by your class. And you don't want those methods to be available outside of the window class, do you?
METHODS
_set_w
$object->_set_w( $name, $widget );
Store a reference to $widget
and associate it to $name
.
_w
my $widget = $object->_w( $name );
Get back the $widget
reference associated to $name
.
_del_w
$object->_del_w( $name );
Delete the $name
reference to a widget.
_clear_w
Empty the widget references.
SEE ALSO
You can look for information on this module at:
Search CPAN
See open / report bugs
Git repository
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
AUTHOR
Jerome Quelin
COPYRIGHT AND LICENSE
This software is copyright (c) 2010 by Jerome Quelin.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.