package Gapp::Meta::Widget::Native::Role::CanDefault; { $Gapp::Meta::Widget::Native::Role::CanDefault::VERSION = '0.494'; } use Moose::Role; use MooseX::SemiAffordanceAccessor; has 'default' => ( is => 'rw', isa => 'Bool', default => 0, ); after _build_gobject => sub { my ( $self ) = @_; if ( $self->toplevel && $self->toplevel->isa('Gapp::Window') ) { $self->gobject->set_can_default( 1 ); $self->toplevel->gobject->set_default( $self->gobject ); } }; 1; __END__ =pod =head1 NAME Gapp::Meta::Widget::Native::Role::CanDefault - Role for widgets that can be the default =head1 SYNOPSIS Gapp::Button->new( label => 'Exit', default => 1 ); =head1 PROVIDED ATTRIBUTES =over 4 =item B =over 4 =item is rw =item isa Bool =item default 0 =back If true the button will set istelf as the default widget for the window. =back =head1 AUTHORS Jeffrey Ray Hallock Ejeffrey.hallock at gmail dot comE =head1 COPYRIGHT & LICENSE Copyright (c) 2011-2012 Jeffrey Ray Hallock. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut