diff options
Diffstat (limited to 'static/talks/ox_yapc_na_2011/012.pl.html')
-rw-r--r-- | static/talks/ox_yapc_na_2011/012.pl.html | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/static/talks/ox_yapc_na_2011/012.pl.html b/static/talks/ox_yapc_na_2011/012.pl.html new file mode 100644 index 0000000..96cd998 --- /dev/null +++ b/static/talks/ox_yapc_na_2011/012.pl.html @@ -0,0 +1,56 @@ +<html> +<head> +<title>012.pl</title> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<script> +function navigate(e) { + var keynum = (window.event) // IE + ? e.keyCode + : e.which; + if (keynum == 8) { + window.location = "011.pl" + ".html"; + return false; + } + if (keynum == 13 || keynum == 32) { + window.location = "013" + ".html"; + return false; + } + if (keynum == 73 || keynum == 105) { + window.location = "index.html"; + return false; + } + return true; +} +</script> +</head> +<body onkeypress="return navigate(event)"> +<pre> + + package Controller; + use Moose; + + has view => (is => 'ro', isa => 'View', required => 1); + has model => (is => 'ro', isa => 'Model', required => 1); + + sub index { } + sub inc { my $self = shift; $self->model->inc } + sub dec { my $self = shift; $self->model->dec } + sub reset { my $self = shift; $self->model->reset } + sub set { my $self = shift; $self->model->set($_[1]) } + + around [qw(index inc dec set reset)] => sub { + my $orig = shift; + my $self = shift; + $self->$orig(@_); + return $self->view->render($self->model->count); + }; + + __PACKAGE__->meta->make_immutable; + 1; + + + + + +</pre> +</body> |