Template::Declare::TagSet::XUL(3)

NAME
Template::Declare::TagSet::XUL - Template::Declare tag set for XUL

SYNOPSIS
    # normal use on the user side:
    use base 'Template::Declare';
    use Template::Declare::Tags 'XUL';

    template main => sub {
        xml_decl { 'xml', version => '1.0' };
        groupbox {
            caption { attr { label => 'Colors' } }
        }
    };

    # in Template::Declare::Tags:
    use Template::Declare::TagSet::XUL;
    my $tagset = Template::Declare::TagSet::XUL->new({
        package   => 'MyXUL',
        namespace => 'xul',
    });
    my $list = $tagset->get_tag_list();
    print $_, $/ for @{ $list };

    if ( $altern = $tagset->get_alternate_spelling('template') ) {
        print $altern;
    }

    if ( $tagset->can_combine_empty_tags('button') ) {
        print q{<button label="OK" />};
    }

DESCRIPTION
Template::Declare::TagSet::XUL defines a full set of XUL tags for use in Template::Declare templates. You generally won't use this module directly, but will load it via:

    use Template::Declare::Tags 'XUL';

METHODS

  new( PARAMS )
    my $html_tag_set = Template::Declare::TagSet->new({
        package   => 'MyXUL',
        namespace => 'xul',
    });

Constructor inherited from Template::Declare::TagSet.

  get_tag_list
    my $list = $tag_set->get_tag_list();

Returns an array ref of all the RDF tags defined by Template::Declare::TagSet::RDF. Here is the complete list, extracted from <http://www.xulplanet.com/references/elemref/refall_elemref.xml> (only "<element name='...'>" were recognized):

"action"
"arrowscrollbox"
"bbox"
"binding"
"bindings"
"body"
"box"
"broadcaster"
"broadcasterset"
"browser"
"button"
"caption"
"checkbox"
"children"
"colorpicker"
"column"
"columns"
"command"
"commandset"
"conditions"
"constructor"
"content"
"deck"
"description"
"destructor"
"dialog"
"dialogheader"
"editor"
"field"
"getter"
"grid"
"grippy"
"groupbox"
"handler"
"handlers"
"hbox"
"iframe"
"image"
"implementation"
"key"
"keyset"
"label"
"listbox"
"listcell"
"listcol"
"listcols"
"listhead"
"listheader"
"listitem"
"member"
"menu"
"menubar"
"menuitem"
"menulist"
"menupopup"
"menuseparator"
"method"
"observes"
"overlay"
"page"
"parameter"
"popup"
"popupset"
"progressmeter"
"property"
"radio"
"radiogroup"
"rdf"
"resizer"
"resources"
"richlistbox"
"row"
"rows"
"rule"
"script"
"scrollbar"
"scrollbox"
"separator"
"setter"
"spacer"
"splitter"
"stack"
"statusbar"
"statusbarpanel"
"stringbundle"
"stringbundleset"
"stylesheet"
"tab"
"tabbox"
"tabbrowser"
"tabpanel"
"tabpanels"
"tabs"
"template"
"textbox"
"textnode"
"titlebar"
"toolbar"
"toolbarbutton"
"toolbargrippy"
"toolbaritem"
"toolbarpalette"
"toolbarseparator"
"toolbarset"
"toolbarspacer"
"toolbarspring"
"toolbox"
"tooltip"
"tree"
"treecell"
"treechildren"
"treecol"
"treecols"
"treeitem"
"treerow"
"treeseparator"
"triple"
"vbox"
"window"
"wizard"
"wizardpage"

  get_alternate_spelling( TAG )
    $bool = $obj->get_alternate_spelling($tag);

Returns the alternative spelling for a given tag if any or undef otherwise. Currently, "template" is mapped to "xul_template" to avoid conflict with the "template" function exported by Template::Declare::Tags.

AUTHOR
Agent Zhang <agentzh@yahoo.cn>

SEE ALSO
Template::Declare::TagSet, Template::Declare::TagSet::HTML, Template::Declare::Tags, Template::Declare.