NAME

Gapp::Moose - Gapp widgets for your Moose classes

SYNOPSIS

 package Foo::Bar;

 use Gapp::Moose;

 widget 'label' => (

   is => 'ro',

   traits => [qw( GappLabel )],

   construct => sub {

       text => 'Hello World!'

   },

   lazy => 1,

 );

 widget 'window' => (

   is => 'ro',

   traits => [qw( GappWindow GappDefault )],

   construct => sub {

       my $self = shift;

       title => 'Gapp Application',

       content => [ $self->label ],

       signal_connect => [

           [ 'delete-event' => sub { Gtk2->main_quit } ]

       ],

   },

 );

package main;

Foo::Bar->new->show_all;

Gapp->main;

DESCRIPTION

Gapp::Moose provides sugar for adding Gapp widgets to your Moose classes.

SUGAR

widget

Internally, this calls &Moose::has to create a new attribute with the GappWidget trait applied.

Alternatively, you could apply the GappWidget trait yourself

has 'widget' => (

   traits => [qw( GappWidget )],

);

construct

The GappWidget trait adds the construct property added to the attribute. This property accepts a CodeRef or a 1. The CodeRef must return a list of parameters that will be passed to the Gapp::Widget during construction. $self is passed in as the first parameter to the CodeRef. If construct is set to one, the widget will be constructed in its default state.

AUTHORS

Jeffrey Ray Hallock, <jeffrey dot hallock at gmail dot com>

COPYRIGHT & LICENSE

Copyright 2011-2012 Jeffrey Ray Hallock, All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.