The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

MasonX::Resolver::WidgetFactory - resolve paths to HTML::Widget::Factory plugins

VERSION

Version 0.007

SYNOPSIS

    use MasonX::Resolver::WidgetFactory;

    my $res = MasonX::Resolver::WidgetFactory->new(
      factory => My::Widget::Factory->new,
      prefix => '/widget',
    );

    my $interp = HTML::Mason::Interp->new(
      resolver => $res,
      # ... other options ...
    );

DESCRIPTION

This Resolver exposes the plugins of a HTML::Widget::Factory object as virtual components under a given prefix.

For example:

  my $res = MasonX::Resolver::WidgetFactory->new(
    prefix => '/widget',
  );

  # elsewhere:
  
  <& /widget/select, name => "myselect", options => \@options &>

The component call to /widget/select is translated to $factory->select(...arguments...).

Among other things, this means that you can use component-with-content calls, which may be easier in some situations:

  <&| /widget/button &>
  This is normal mason content, including <% $various_interpolations %>
  and other <& /component/calls &>
  </&>

prefix

The component path root under which to respond.

factory

The HTML::Widget::Factory object to use. Defaults to a new HTML::Widget::Factory object.

strict

Boolean. If false (the default), the resolver will return false when asked to resolve a path that does not correspond to a widget provided by the factory. If true, it will die instead.

AUTHOR

Hans Dieter Pearcey, <hdp at pobox.com>

BUGS

Please report any bugs or feature requests to bug-masonx-resolver-widgetfactory at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=MasonX-Resolver-WidgetFactory. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc MasonX::Resolver::WidgetFactory

You can also look for information at:

COPYRIGHT & LICENSE

Copyright 2008 Hans Dieter Pearcey.

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