From 3069eaf35e833ffe4a1c1c7829dd7e168ae27420 Mon Sep 17 00:00:00 2001 From: Ciro Mattia Gonano Date: Wed, 11 Sep 2013 15:56:48 +0200 Subject: Merge up to r3319 --- buildscripts/apigen/pradosoft/404.latte | 23 + buildscripts/apigen/pradosoft/@elementlist.latte | 46 + buildscripts/apigen/pradosoft/@layout.latte | 197 ++++ buildscripts/apigen/pradosoft/class.latte | 429 +++++++ buildscripts/apigen/pradosoft/combined.js.latte | 21 + buildscripts/apigen/pradosoft/config.neon | 56 + buildscripts/apigen/pradosoft/constant.latte | 66 ++ buildscripts/apigen/pradosoft/deprecated.latte | 120 ++ buildscripts/apigen/pradosoft/elementlist.js.latte | 14 + buildscripts/apigen/pradosoft/function.latte | 91 ++ .../apigen/pradosoft/js/jquery.autocomplete.js | 799 +++++++++++++ buildscripts/apigen/pradosoft/js/jquery.cookie.js | 96 ++ buildscripts/apigen/pradosoft/js/jquery.min.js | 4 + .../apigen/pradosoft/js/jquery.sortElements.js | 69 ++ buildscripts/apigen/pradosoft/js/jquery.sprintf.js | 8 + buildscripts/apigen/pradosoft/js/main.js | 282 +++++ buildscripts/apigen/pradosoft/namespace.latte | 29 + buildscripts/apigen/pradosoft/opensearch.xml.latte | 20 + buildscripts/apigen/pradosoft/overview.latte | 56 + buildscripts/apigen/pradosoft/package.latte | 29 + .../apigen/pradosoft/resources/collapsed.png | Bin 0 -> 271 bytes .../apigen/pradosoft/resources/combined.js | 1219 ++++++++++++++++++++ buildscripts/apigen/pradosoft/resources/footer.png | Bin 0 -> 8232 bytes .../apigen/pradosoft/resources/inherit.png | Bin 0 -> 152 bytes buildscripts/apigen/pradosoft/resources/resize.png | Bin 0 -> 216 bytes buildscripts/apigen/pradosoft/resources/sort.png | Bin 0 -> 171 bytes buildscripts/apigen/pradosoft/resources/style.css | 611 ++++++++++ .../apigen/pradosoft/resources/tree-cleaner.png | Bin 0 -> 126 bytes .../apigen/pradosoft/resources/tree-hasnext.png | Bin 0 -> 128 bytes .../apigen/pradosoft/resources/tree-last.png | Bin 0 -> 172 bytes .../apigen/pradosoft/resources/tree-vertical.png | Bin 0 -> 127 bytes buildscripts/apigen/pradosoft/robots.txt.latte | 13 + buildscripts/apigen/pradosoft/sitemap.xml.latte | 35 + buildscripts/apigen/pradosoft/source.latte | 18 + buildscripts/apigen/pradosoft/todo.latte | 112 ++ buildscripts/apigen/pradosoft/tree.latte | 72 ++ 36 files changed, 4535 insertions(+) create mode 100644 buildscripts/apigen/pradosoft/404.latte create mode 100644 buildscripts/apigen/pradosoft/@elementlist.latte create mode 100644 buildscripts/apigen/pradosoft/@layout.latte create mode 100644 buildscripts/apigen/pradosoft/class.latte create mode 100644 buildscripts/apigen/pradosoft/combined.js.latte create mode 100644 buildscripts/apigen/pradosoft/config.neon create mode 100644 buildscripts/apigen/pradosoft/constant.latte create mode 100644 buildscripts/apigen/pradosoft/deprecated.latte create mode 100644 buildscripts/apigen/pradosoft/elementlist.js.latte create mode 100644 buildscripts/apigen/pradosoft/function.latte create mode 100644 buildscripts/apigen/pradosoft/js/jquery.autocomplete.js create mode 100644 buildscripts/apigen/pradosoft/js/jquery.cookie.js create mode 100644 buildscripts/apigen/pradosoft/js/jquery.min.js create mode 100644 buildscripts/apigen/pradosoft/js/jquery.sortElements.js create mode 100644 buildscripts/apigen/pradosoft/js/jquery.sprintf.js create mode 100644 buildscripts/apigen/pradosoft/js/main.js create mode 100644 buildscripts/apigen/pradosoft/namespace.latte create mode 100644 buildscripts/apigen/pradosoft/opensearch.xml.latte create mode 100644 buildscripts/apigen/pradosoft/overview.latte create mode 100644 buildscripts/apigen/pradosoft/package.latte create mode 100644 buildscripts/apigen/pradosoft/resources/collapsed.png create mode 100644 buildscripts/apigen/pradosoft/resources/combined.js create mode 100644 buildscripts/apigen/pradosoft/resources/footer.png create mode 100644 buildscripts/apigen/pradosoft/resources/inherit.png create mode 100644 buildscripts/apigen/pradosoft/resources/resize.png create mode 100644 buildscripts/apigen/pradosoft/resources/sort.png create mode 100644 buildscripts/apigen/pradosoft/resources/style.css create mode 100644 buildscripts/apigen/pradosoft/resources/tree-cleaner.png create mode 100644 buildscripts/apigen/pradosoft/resources/tree-hasnext.png create mode 100644 buildscripts/apigen/pradosoft/resources/tree-last.png create mode 100644 buildscripts/apigen/pradosoft/resources/tree-vertical.png create mode 100644 buildscripts/apigen/pradosoft/robots.txt.latte create mode 100644 buildscripts/apigen/pradosoft/sitemap.xml.latte create mode 100644 buildscripts/apigen/pradosoft/source.latte create mode 100644 buildscripts/apigen/pradosoft/todo.latte create mode 100644 buildscripts/apigen/pradosoft/tree.latte (limited to 'buildscripts/apigen') diff --git a/buildscripts/apigen/pradosoft/404.latte b/buildscripts/apigen/pradosoft/404.latte new file mode 100644 index 00000000..9d91dafe --- /dev/null +++ b/buildscripts/apigen/pradosoft/404.latte @@ -0,0 +1,23 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{layout '@layout.latte'} +{var $robots = false} + +{block #title}Page not found{/block} + +{block #content} +
+

{include #title}

+

The requested page could not be found.

+

You have probably clicked on a link that is outdated and points to a page that does not exist any more or you have made an typing error in the address.

+

To continue please try to find requested page in the menu,{if $config->tree} take a look at the tree view of the whole project{/if} or use search field on the top.

+
+{/block} diff --git a/buildscripts/apigen/pradosoft/@elementlist.latte b/buildscripts/apigen/pradosoft/@elementlist.latte new file mode 100644 index 00000000..4ffdd5b6 --- /dev/null +++ b/buildscripts/apigen/pradosoft/@elementlist.latte @@ -0,0 +1,46 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{define #elements} + + {if $namespace}{$element->shortName}{else}{$element->name}{/if} + {!$element|shortDescription} + +{/define} + + + +{include #elements, elements => $classes} +
Classes summary
+ + + +{include #elements, elements => $interfaces} +
Interfaces summary
+ + + +{include #elements, elements => $traits} +
Traits summary
+ + + +{include #elements, elements => $exceptions} +
Exceptions summary
+ + + +{include #elements, elements => $constants} +
Constants summary
+ + + +{include #elements, elements => $functions} +
Functions summary
diff --git a/buildscripts/apigen/pradosoft/@layout.latte b/buildscripts/apigen/pradosoft/@layout.latte new file mode 100644 index 00000000..739b00e8 --- /dev/null +++ b/buildscripts/apigen/pradosoft/@layout.latte @@ -0,0 +1,197 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{default $robots = true} +{default $active = ''} + + + + + + + + + + + + + + + + + + {include #title}{if 'overview' !== $active && $config->title} | {$config->title}{/if} + + {var combinedJs = 'resources/combined.js'} + + {var elementListJs = 'elementlist.js'} + + {var styleCss = 'resources/style.css'} + + + + + + + + +
+ +
+ + + + + + + +
+ + + +
+ +
+ + + +
+ + + + diff --git a/buildscripts/apigen/pradosoft/class.latte b/buildscripts/apigen/pradosoft/class.latte new file mode 100644 index 00000000..36b3804c --- /dev/null +++ b/buildscripts/apigen/pradosoft/class.latte @@ -0,0 +1,429 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{layout '@layout.latte'} +{var $active = 'class'} + +{block #title}{if $class->deprecated}Deprecated {/if}{if $class->interface}Interface{elseif $class->trait}Trait{else}Class{/if} {$class->name}{/block} + +{block #content} +
+

{if $class->interface}Interface{elseif $class->trait}Trait{else}Class{/if} {$class->shortName}

+ + {if $class->valid} + +
+ {!$class|longDescription} +
+ +
+
+ Extended by + {if $item->documented} + {last}{/last}{$item->name}{last}{/last} + {else}{$item->name}{/if} + {var $itemOwnInterfaces = $item->ownInterfaces} + {if $itemOwnInterfaces} implements {foreach $itemOwnInterfaces as $interface} + {$interface->name}{sep}, {/sep} + {/foreach}{/if} + {var $itemOwnTraits = $item->ownTraits} + {if $itemOwnTraits} uses {foreach $itemOwnTraits as $trait} + {$trait->name}{sep}, {/sep} + {/foreach}{/if} +
+
+ + {define #children} + {foreach $children as $child} + {$child->name}{sep}, {/sep} + {/foreach} + {/define} + +
+

Direct known subclasses

+ {include #children, children => $directSubClasses} +
+ +
+

Indirect known subclasses

+ {include #children, children => $indirectSubClasses} +
+ +
+

Direct known implementers

+ {include #children, children => $directImplementers} +
+ +
+

Indirect known implementers

+ {include #children, children => $indirectImplementers} +
+ +
+

Direct Known Users

+ {include #children, children => $directUsers} +
+ +
+

Indirect Known Users

+ {include #children, children => $indirectUsers} +
+ +
+ {if !$class->interface && !$class->trait && ($class->abstract || $class->final)}{if $class->abstract}Abstract{else}Final{/if}
{/if} + {if $class->internal}PHP Extension: {$class->extension->name|firstUpper}
{/if} + {if $class->inNamespace()}Namespace: {!$class->namespaceName|namespaceLinks}
{/if} + {if $class->inPackage()}Package: {!$class->packageName|packageLinks}
{/if} + + {foreach $template->annotationSort($template->annotationFilter($class->annotations)) as $annotation => $values} + {foreach $values as $value} + {$annotation|annotationBeautify}{if $value}:{/if} + {!$value|annotation:$annotation:$class}
+ {/foreach} + {/foreach} + {if $class->internal}Documented at php.net{else}Located at {$class->fileName|relativePath}{/if}
+
+ + {var $ownMethods = $class->ownMethods} + {var $ownMagicMethods = $class->ownMagicMethods} + + {define #method} + + {var $annotations = $method->annotations} + + + {if !$class->interface && $method->abstract}abstract{elseif $method->final}final{/if} {if $method->protected}protected{elseif $method->private}private{else}public{/if} {if $method->static}static{/if} + {ifset $annotations['return']}{!$annotations['return'][0]|typeLinks:$method}{/ifset} + {if $method->returnsReference()}&{/if} + + + +
+ # + {block|strip} + {if $class->internal} + {$method->name}( + {else} + {$method->name}( + {/if} + {foreach $method->parameters as $parameter} + {!$parameter->typeHint|typeLinks:$method} + {if $parameter->passedByReference}& {/if}${$parameter->name}{if $parameter->defaultValueAvailable} = {!$parameter->defaultValueDefinition|highlightPHP:$class}{elseif $parameter->unlimited},…{/if}{sep}, {/sep} + {/foreach} + ){/block} + + {if $config->template['options']['elementDetailsCollapsed']} +
+ {!$method|shortDescription:true} +
+ {/if} + +
+ {!$method|longDescription} + + {if !$class->deprecated && $method->deprecated} +

Deprecated

+ {ifset $annotations['deprecated']} +
+ {foreach $annotations['deprecated'] as $description} + {if $description} + {!$description|annotation:'deprecated':$method}
+ {/if} + {/foreach} +
+ {/ifset} + {/if} + + {if $method->parameters && isset($annotations['param'])} +

Parameters

+
+ {foreach $method->parameters as $parameter} +
${$parameter->name}{if $parameter->unlimited},…{/if}
+
{ifset $annotations['param'][$parameter->position]}{!$annotations['param'][$parameter->position]|annotation:'param':$method}{/ifset}
+ {/foreach} +
+ {/if} + + {if isset($annotations['return']) && 'void' !== $annotations['return'][0]} +

Returns

+
+ {foreach $annotations['return'] as $description} + {!$description|annotation:'return':$method}
+ {/foreach} +
+ {/if} + + {ifset $annotations['throws']} +

Throws

+
+ {foreach $annotations['throws'] as $description} + {!$description|annotation:'throws':$method}
+ {/foreach} +
+ {/ifset} + + {foreach $template->annotationSort($template->annotationFilter($annotations, array('deprecated', 'param', 'return', 'throws'))) as $annotation => $descriptions} +

{$annotation|annotationBeautify}

+
+ {foreach $descriptions as $description} + {if $description} + {!$description|annotation:$annotation:$method}
+ {/if} + {/foreach} +
+ {/foreach} + + {var $overriddenMethod = $method->overriddenMethod} + {if $overriddenMethod} +

Overrides

+ + {/if} + + {var $implementedMethod = $method->implementedMethod} + {if $implementedMethod} +

Implementation of

+ + {/if} +
+
+ + {/define} + + + + {foreach $ownMethods as $method} + {include #method, method => $method} + {/foreach} +
Methods summary
+ + + + + + +
Methods inherited from {$parentName}
+ {foreach $methods as $method} + {$method->name}(){sep}, {/sep} + {/foreach} +
+ + + + + + +
Methods used from {$traitName}
+ {foreach $methods as $data} + {$data['method']->originalName}(){if $data['aliases']}(as {foreach $data['aliases'] as $alias}{$alias->name}(){sep}, {/sep}{/foreach}){/if}{sep}, {/sep} + {/foreach} +
+ + + + {foreach $ownMagicMethods as $method} + {include #method, method => $method} + {/foreach} +
Magic methods summary
+ + + + + + +
Magic methods inherited from {$parentName}
+ {foreach $methods as $method} + {$method->name}(){sep}, {/sep} + {/foreach} +
+ + + + + + +
Magic methods used from {$traitName}
+ {foreach $methods as $data} + {$data['method']->originalName}(){if $data['aliases']}(as {foreach $data['aliases'] as $alias}{$alias->name}(){sep}, {/sep}{/foreach}){/if}{sep}, {/sep} + {/foreach} +
+ + + {var $ownConstants = $class->ownConstants} + + + + + {var $annotations = $constant->annotations} + + + + + + +
Constants summary
{!$constant->typeHint|typeLinks:$constant} + {if $class->internal} + {$constant->name} + {else} + {$constant->name} + {/if} + {!$constant->valueDefinition|highlightValue:$class}
+ # + + {if $config->template['options']['elementDetailsCollapsed']} +
+ {!$constant|shortDescription:true} +
+ {/if} + +
+ {!$constant|longDescription} + + {foreach $template->annotationSort($template->annotationFilter($annotations, array('var'))) as $annotation => $descriptions} +

{$annotation|annotationBeautify}

+
+ {foreach $descriptions as $description} + {if $description} + {!$description|annotation:$annotation:$constant}
+ {/if} + {/foreach} +
+ {/foreach} +
+
+ + + + + + +
Constants inherited from {$parentName}
+ {foreach $constants as $constant} + {$constant->name}{sep}, {/sep} + {/foreach} +
+ + {define #property} + + + {if $property->protected}protected{elseif $property->private}private{else}public{/if} {if $property->static}static{/if} {if $property->readOnly}read-only{elseif $property->writeOnly}write-only{/if} + {!$property->typeHint|typeLinks:$property} + + + + {if $class->internal} + ${$property->name} + {else} + ${$property->name} + {/if} + + {!$property->defaultValueDefinition|highlightValue:$class} +
+ # + + {if $config->template['options']['elementDetailsCollapsed']} +
+ {!$property|shortDescription:true} +
+ {/if} + +
+ {!$property|longDescription} + + {foreach $template->annotationSort($template->annotationFilter($property->annotations, array('var'))) as $annotation => $descriptions} +

{$annotation|annotationBeautify}

+
+ {foreach $descriptions as $description} + {if $description} + {!$description|annotation:$annotation:$property}
+ {/if} + {/foreach} +
+ {/foreach} +
+
+ + {/define} + + {var $ownProperties = $class->ownProperties} + {var $ownMagicProperties = $class->ownMagicProperties} + + + + {foreach $ownProperties as $property} + {include #property, property => $property} + {/foreach} +
Properties summary
+ + + + + + +
Properties inherited from {$parentName}
+ {foreach $properties as $property} + ${$property->name}{sep}, {/sep} + {/foreach} +
+ + + + + + +
Properties used from {$traitName}
+ {foreach $properties as $property} + ${$property->name}{sep}, {/sep} + {/foreach} +
+ + + + {foreach $ownMagicProperties as $property} + {include #property, property => $property} + {/foreach} +
Magic properties summary
+ + + + + + +
Magic properties inherited from {$parentName}
+ {foreach $properties as $property} + ${$property->name}{sep}, {/sep} + {/foreach} +
+ + + + + + +
Magic properties used from {$traitName}
+ {foreach $properties as $property} + ${$property->name}{sep}, {/sep} + {/foreach} +
+ + {else} +
+

+ Documentation of this class could not be generated. +

+

+ Class was originally declared in {$class->fileName|relativePath} and is invalid because of: +

+
    +
  • Class was redeclared in {$reason->getSender()->getFileName()|relativePath}.
  • +
+
+ {/if} +
+{/block} diff --git a/buildscripts/apigen/pradosoft/combined.js.latte b/buildscripts/apigen/pradosoft/combined.js.latte new file mode 100644 index 00000000..73b12686 --- /dev/null +++ b/buildscripts/apigen/pradosoft/combined.js.latte @@ -0,0 +1,21 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{contentType javascript} + +var ApiGen = ApiGen || {}; +ApiGen.config = {$config->template}; + +{var $scripts = ['jquery.min.js', 'jquery.cookie.js', 'jquery.sprintf.js', 'jquery.autocomplete.js', 'jquery.sortElements.js', 'main.js']} +{var $dir = dirname($template->getFile())} + +{foreach $scripts as $script} +{!file_get_contents("$dir/js/$script")} +{/foreach} diff --git a/buildscripts/apigen/pradosoft/config.neon b/buildscripts/apigen/pradosoft/config.neon new file mode 100644 index 00000000..6ddc2f69 --- /dev/null +++ b/buildscripts/apigen/pradosoft/config.neon @@ -0,0 +1,56 @@ +require: + min: 2.8.0 + +resources: + resources: resources + +templates: + common: + overview.latte: index.html + combined.js.latte: resources/combined.js + elementlist.js.latte: elementlist.js + 404.latte: 404.html + + main: + package: + filename: package-%s.html + template: package.latte + namespace: + filename: namespace-%s.html + template: namespace.latte + class: + filename: class-%s.html + template: class.latte + constant: + filename: constant-%s.html + template: constant.latte + function: + filename: function-%s.html + template: function.latte + source: + filename: source-%s.html + template: source.latte + tree: + filename: tree.html + template: tree.latte + deprecated: + filename: deprecated.html + template: deprecated.latte + todo: + filename: todo.html + template: todo.latte + + optional: + sitemap: + filename: sitemap.xml + template: sitemap.xml.latte + opensearch: + filename: opensearch.xml + template: opensearch.xml.latte + robots: + filename: robots.txt + template: robots.txt.latte + +options: + elementDetailsCollapsed: Yes + elementsOrder: natural # alphabetical diff --git a/buildscripts/apigen/pradosoft/constant.latte b/buildscripts/apigen/pradosoft/constant.latte new file mode 100644 index 00000000..441c245d --- /dev/null +++ b/buildscripts/apigen/pradosoft/constant.latte @@ -0,0 +1,66 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{layout '@layout.latte'} +{var $active = 'constant'} + +{block #title}{if $constant->deprecated}Deprecated {/if}Constant {$constant->name}{/block} + +{block #content} +
+

Constant {$constant->shortName}

+ + {if $constant->valid} + +
+ {!$constant|longDescription} +
+ +
+ {if $constant->inNamespace()}Namespace: {!$constant->namespaceName|namespaceLinks}
{/if} + {if $constant->inPackage()}Package: {!$constant->packageName|packageLinks}
{/if} + {foreach $template->annotationSort($template->annotationFilter($constant->annotations, array('var'))) as $annotation => $values} + {foreach $values as $value} + {$annotation|annotationBeautify}{if $value}:{/if} + {!$value|annotation:$annotation:$constant}
+ {/foreach} + {/foreach} + Located at {$constant->fileName|relativePath}
+
+ + {var $annotations = $constant->annotations} + + + + + + + + +
Value summary
{!$constant->typeHint|typeLinks:$constant}{block|strip} + {var $element = $template->resolveElement($constant->valueDefinition, $constant)} + {if $element}{$constant->valueDefinition}{else}{!$constant->valueDefinition|highlightValue:$constant}{/if} + {/block}{ifset $annotations['var']}{!$annotations['var'][0]|description:$constant}{/ifset}
+ + {else} +
+

+ Documentation of this constant could not be generated. +

+

+ Constant was originally declared in {$constant->fileName|relativePath} and is invalid because of: +

+
    +
  • Constant was redeclared in {$reason->getSender()->getFileName()|relativePath}.
  • +
+
+ {/if} +
+{/block} diff --git a/buildscripts/apigen/pradosoft/deprecated.latte b/buildscripts/apigen/pradosoft/deprecated.latte new file mode 100644 index 00000000..477e8c55 --- /dev/null +++ b/buildscripts/apigen/pradosoft/deprecated.latte @@ -0,0 +1,120 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{layout '@layout.latte'} +{var $active = 'deprecated'} + +{block #title}Deprecated{/block} + +{block #content} +
+

{include #title}

+ + {define #classes} + + {$class->name} + + {foreach $class->annotations['deprecated'] as $description} + {if $description} + {!$description|annotation:'deprecated':$class}
+ {/if} + {/foreach} + + + {/define} + + + + {include #classes, items => $deprecatedClasses} +
Classes summary
+ + + + {include #classes, items => $deprecatedInterfaces} +
Interfaces summary
+ + + + {include #classes, items => $deprecatedTraits} +
Traits summary
+ + + + {include #classes, items => $deprecatedExceptions} +
Exceptions summary
+ + + + + + + + +
Methods summary
{$method->declaringClassName}{$method->name}() + {if $method->hasAnnotation('deprecated')} + {foreach $method->annotations['deprecated'] as $description} + {if $description} + {!$description|annotation:'deprecated':$method}
+ {/if} + {/foreach} + {/if} +
+ + + + + {if $constant->declaringClassName} + + + {else} + + + {/if} + + +
Constants summary
{$constant->declaringClassName}{$constant->name}{$constant->namespaceName}{$constant->shortName} + {foreach $constant->annotations['deprecated'] as $description} + {if $description} + {!$description|annotation:'deprecated':$constant}
+ {/if} + {/foreach} +
+ + + + + + + + +
Properties summary
{$property->declaringClassName}${$property->name} + {foreach $property->annotations['deprecated'] as $description} + {if $description} + {!$description|annotation:'deprecated':$property}
+ {/if} + {/foreach} +
+ + + + + + + + +
Functions summary
{$function->namespaceName}{$function->shortName} + {foreach $function->annotations['deprecated'] as $description} + {if $description} + {!$description|annotation:'deprecated':$function}
+ {/if} + {/foreach} +
+
+{/block} diff --git a/buildscripts/apigen/pradosoft/elementlist.js.latte b/buildscripts/apigen/pradosoft/elementlist.js.latte new file mode 100644 index 00000000..6272ba10 --- /dev/null +++ b/buildscripts/apigen/pradosoft/elementlist.js.latte @@ -0,0 +1,14 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{contentType javascript} + +var ApiGen = ApiGen || {}; +ApiGen.elements = {$elements}; diff --git a/buildscripts/apigen/pradosoft/function.latte b/buildscripts/apigen/pradosoft/function.latte new file mode 100644 index 00000000..6c4c3238 --- /dev/null +++ b/buildscripts/apigen/pradosoft/function.latte @@ -0,0 +1,91 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{layout '@layout.latte'} +{var $active = 'function'} + +{block #title}{if $function->deprecated}Deprecated {/if}Function {$function->name}{/block} + +{block #content} +
+

Function {$function->shortName}

+ + {if $function->valid} + +
+ {!$function|longDescription} +
+ +
+ {if $function->inNamespace()}Namespace: {!$function->namespaceName|namespaceLinks}
{/if} + {if $function->inPackage()}Package: {!$function->packageName|packageLinks}
{/if} + {foreach $template->annotationSort($template->annotationFilter($function->annotations, array('param', 'return', 'throws'))) as $annotation => $values} + {foreach $values as $value} + {$annotation|annotationBeautify}{if $value}:{/if} + {!$value|annotation:$annotation:$function}
+ {/foreach} + {/foreach} + Located at {$function->fileName|relativePath}
+
+ + {var $annotations = $function->annotations} + + + + + + + + +
Parameters summary
{!$parameter->typeHint|typeLinks:$function}{block|strip} + {if $parameter->passedByReference}& {/if}${$parameter->name}{if $parameter->defaultValueAvailable} = {!$parameter->defaultValueDefinition|highlightPHP:$function}{elseif $parameter->unlimited},…{/if} + {/block} + {ifset $annotations['param'][$parameter->position]}{!$annotations['param'][$parameter->position]|description:$parameter}{/ifset} +
+ + + + + + + +
Return value summary
+ {!$annotations['return'][0]|typeLinks:$function} + + {!$annotations['return'][0]|description:$function} +
+ + + + + + + +
Thrown exceptions summary
+ {!$throws|typeLinks:$function} + + {!$throws|description:$function} +
+ + {else} +
+

+ Documentation of this function could not be generated. +

+

+ Function was originally declared in {$function->fileName|relativePath} and is invalid because of: +

+
    +
  • Function was redeclared in {$reason->getSender()->getFileName()|relativePath}.
  • +
+
+ {/if} +
+{/block} diff --git a/buildscripts/apigen/pradosoft/js/jquery.autocomplete.js b/buildscripts/apigen/pradosoft/js/jquery.autocomplete.js new file mode 100644 index 00000000..b8bec34d --- /dev/null +++ b/buildscripts/apigen/pradosoft/js/jquery.autocomplete.js @@ -0,0 +1,799 @@ +/*! + * jQuery Autocomplete plugin 1.1 + * + * Copyright (c) 2009 Jörn Zaefferer + * + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html + * + * Revision: $Id: jquery.autocomplete.js 15 2009-08-22 10:30:27Z joern.zaefferer $ + */ + +;(function($) { + +$.fn.extend({ + autocomplete: function(urlOrData, options) { + var isUrl = typeof urlOrData == "string"; + options = $.extend({}, $.Autocompleter.defaults, { + url: isUrl ? urlOrData : null, + data: isUrl ? null : urlOrData, + delay: isUrl ? $.Autocompleter.defaults.delay : 10, + max: options && !options.scroll ? 10 : 150 + }, options); + + // if highlight is set to false, replace it with a do-nothing function + options.highlight = options.highlight || function(value) { return value; }; + + // if the formatMatch option is not specified, then use formatItem for backwards compatibility + options.formatMatch = options.formatMatch || options.formatItem; + + options.show = options.show || function(list) {}; + + return this.each(function() { + new $.Autocompleter(this, options); + }); + }, + result: function(handler) { + return this.bind("result", handler); + }, + search: function(handler) { + return this.trigger("search", [handler]); + }, + flushCache: function() { + return this.trigger("flushCache"); + }, + setOptions: function(options){ + return this.trigger("setOptions", [options]); + }, + unautocomplete: function() { + return this.trigger("unautocomplete"); + } +}); + +$.Autocompleter = function(input, options) { + + var KEY = { + UP: 38, + DOWN: 40, + DEL: 46, + TAB: 9, + RETURN: 13, + ESC: 27, + COMMA: 188, + PAGEUP: 33, + PAGEDOWN: 34, + BACKSPACE: 8 + }; + + // Create $ object for input element + var $input = $(input).attr("autocomplete", "off").addClass(options.inputClass); + + var timeout; + var previousValue = ""; + var cache = $.Autocompleter.Cache(options); + var hasFocus = 0; + var lastKeyPressCode; + var config = { + mouseDownOnSelect: false + }; + var select = $.Autocompleter.Select(options, input, selectCurrent, config); + + // only opera doesn't trigger keydown multiple times while pressed, others don't work with keypress at all + $input.bind(($.browser.opera ? "keypress" : "keydown") + ".autocomplete", function(event) { + // a keypress means the input has focus + // avoids issue where input had focus before the autocomplete was applied + hasFocus = 1; + // track last key pressed + lastKeyPressCode = event.keyCode; + switch(event.keyCode) { + + case KEY.UP: + event.preventDefault(); + if ( select.visible() ) { + select.prev(); + } else { + onChange(0, true); + } + break; + + case KEY.DOWN: + event.preventDefault(); + if ( select.visible() ) { + select.next(); + } else { + onChange(0, true); + } + break; + + case KEY.PAGEUP: + event.preventDefault(); + if ( select.visible() ) { + select.pageUp(); + } else { + onChange(0, true); + } + break; + + case KEY.PAGEDOWN: + event.preventDefault(); + if ( select.visible() ) { + select.pageDown(); + } else { + onChange(0, true); + } + break; + + // matches also semicolon + case options.multiple && $.trim(options.multipleSeparator) == "," && KEY.COMMA: + case KEY.TAB: + case KEY.RETURN: + if( selectCurrent() ) { + //event.preventDefault(); + //return false; + } + break; + + case KEY.ESC: + select.hide(); + break; + + default: + clearTimeout(timeout); + timeout = setTimeout(onChange, options.delay); + break; + } + }).focus(function(){ + // track whether the field has focus, we shouldn't process any + // results if the field no longer has focus + hasFocus++; + }).blur(function() { + hasFocus = 0; + if (!config.mouseDownOnSelect) { + hideResults(); + } + }).click(function() { + // show select when clicking in a focused field + if ( hasFocus++ > 1 && !select.visible() ) { + onChange(0, true); + } + }).bind("search", function() { + // TODO why not just specifying both arguments? + var fn = (arguments.length > 1) ? arguments[1] : null; + function findValueCallback(q, data) { + var result; + if( data && data.length ) { + for (var i=0; i < data.length; i++) { + if( data[i].result.toLowerCase() == q.toLowerCase() ) { + result = data[i]; + break; + } + } + } + if( typeof fn == "function" ) fn(result); + else $input.trigger("result", result && [result.data, result.value]); + } + $.each(trimWords($input.val()), function(i, value) { + request(value, findValueCallback, findValueCallback); + }); + }).bind("flushCache", function() { + cache.flush(); + }).bind("setOptions", function() { + $.extend(options, arguments[1]); + // if we've updated the data, repopulate + if ( "data" in arguments[1] ) + cache.populate(); + }).bind("unautocomplete", function() { + select.unbind(); + $input.unbind(); + $(input.form).unbind(".autocomplete"); + }); + + + function selectCurrent() { + var selected = select.selected(); + if( !selected ) + return false; + + var v = selected.result; + previousValue = v; + + if ( options.multiple ) { + var words = trimWords($input.val()); + if ( words.length > 1 ) { + var seperator = options.multipleSeparator.length; + var cursorAt = $(input).selection().start; + var wordAt, progress = 0; + $.each(words, function(i, word) { + progress += word.length; + if (cursorAt <= progress) { + wordAt = i; + return false; + } + progress += seperator; + }); + words[wordAt] = v; + // TODO this should set the cursor to the right position, but it gets overriden somewhere + //$.Autocompleter.Selection(input, progress + seperator, progress + seperator); + v = words.join( options.multipleSeparator ); + } + v += options.multipleSeparator; + } + + $input.val(v); + hideResultsNow(); + $input.trigger("result", [selected.data, selected.value]); + return true; + } + + function onChange(crap, skipPrevCheck) { + if( lastKeyPressCode == KEY.DEL ) { + select.hide(); + return; + } + + var currentValue = $input.val(); + + if ( !skipPrevCheck && currentValue == previousValue ) + return; + + previousValue = currentValue; + + currentValue = lastWord(currentValue); + if ( currentValue.length >= options.minChars) { + $input.addClass(options.loadingClass); + if (!options.matchCase) + currentValue = currentValue.toLowerCase(); + request(currentValue, receiveData, hideResultsNow); + } else { + stopLoading(); + select.hide(); + } + }; + + function trimWords(value) { + if (!value) + return [""]; + if (!options.multiple) + return [$.trim(value)]; + return $.map(value.split(options.multipleSeparator), function(word) { + return $.trim(value).length ? $.trim(word) : null; + }); + } + + function lastWord(value) { + if ( !options.multiple ) + return value; + var words = trimWords(value); + if (words.length == 1) + return words[0]; + var cursorAt = $(input).selection().start; + if (cursorAt == value.length) { + words = trimWords(value) + } else { + words = trimWords(value.replace(value.substring(cursorAt), "")); + } + return words[words.length - 1]; + } + + // fills in the input box w/the first match (assumed to be the best match) + // q: the term entered + // sValue: the first matching result + function autoFill(q, sValue){ + // autofill in the complete box w/the first match as long as the user hasn't entered in more data + // if the last user key pressed was backspace, don't autofill + if( options.autoFill && (lastWord($input.val()).toLowerCase() == q.toLowerCase()) && lastKeyPressCode != KEY.BACKSPACE ) { + // fill in the value (keep the case the user has typed) + $input.val($input.val() + sValue.substring(lastWord(previousValue).length)); + // select the portion of the value not typed by the user (so the next character will erase) + $(input).selection(previousValue.length, previousValue.length + sValue.length); + } + }; + + function hideResults() { + clearTimeout(timeout); + timeout = setTimeout(hideResultsNow, 200); + }; + + function hideResultsNow() { + var wasVisible = select.visible(); + select.hide(); + clearTimeout(timeout); + stopLoading(); + if (options.mustMatch) { + // call search and run callback + $input.search( + function (result){ + // if no value found, clear the input box + if( !result ) { + if (options.multiple) { + var words = trimWords($input.val()).slice(0, -1); + $input.val( words.join(options.multipleSeparator) + (words.length ? options.multipleSeparator : "") ); + } + else { + $input.val( "" ); + $input.trigger("result", null); + } + } + } + ); + } + }; + + function receiveData(q, data) { + if ( data && data.length && hasFocus ) { + stopLoading(); + select.display(data, q); + autoFill(q, data[0].value); + select.show(); + } else { + hideResultsNow(); + } + }; + + function request(term, success, failure) { + if (!options.matchCase) + term = term.toLowerCase(); + var data = cache.load(term); + // recieve the cached data + if (data && data.length) { + success(term, data); + // if an AJAX url has been supplied, try loading the data now + } else if( (typeof options.url == "string") && (options.url.length > 0) ){ + + var extraParams = { + timestamp: +new Date() + }; + $.each(options.extraParams, function(key, param) { + extraParams[key] = typeof param == "function" ? param() : param; + }); + + $.ajax({ + // try to leverage ajaxQueue plugin to abort previous requests + mode: "abort", + // limit abortion to this input + port: "autocomplete" + input.name, + dataType: options.dataType, + url: options.url, + data: $.extend({ + q: lastWord(term), + limit: options.max + }, extraParams), + success: function(data) { + var parsed = options.parse && options.parse(data) || parse(data); + cache.add(term, parsed); + success(term, parsed); + } + }); + } else { + // if we have a failure, we need to empty the list -- this prevents the the [TAB] key from selecting the last successful match + select.emptyList(); + failure(term); + } + }; + + function parse(data) { + var parsed = []; + var rows = data.split("\n"); + for (var i=0; i < rows.length; i++) { + var row = $.trim(rows[i]); + if (row) { + row = row.split("|"); + parsed[parsed.length] = { + data: row, + value: row[0], + result: options.formatResult && options.formatResult(row, row[0]) || row[0] + }; + } + } + return parsed; + }; + + function stopLoading() { + $input.removeClass(options.loadingClass); + }; + +}; + +$.Autocompleter.defaults = { + inputClass: "ac_input", + resultsClass: "ac_results", + loadingClass: "ac_loading", + minChars: 1, + delay: 400, + matchCase: false, + matchSubset: true, + matchContains: false, + cacheLength: 10, + max: 100, + mustMatch: false, + extraParams: {}, + selectFirst: true, + formatItem: function(row) { return row[0]; }, + formatMatch: null, + autoFill: false, + width: 0, + multiple: false, + multipleSeparator: ", ", + highlight: function(value, term) { + return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1") + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "$1"); + }, + scroll: true, + scrollHeight: 180 +}; + +$.Autocompleter.Cache = function(options) { + + var data = {}; + var length = 0; + + function matchSubset(s, sub) { + if (!options.matchCase) + s = s.toLowerCase(); + var i = s.indexOf(sub); + if (options.matchContains == "word"){ + i = s.toLowerCase().search("\\b" + sub.toLowerCase()); + } + if (i == -1) return false; + return i == 0 || options.matchContains; + }; + + function add(q, value) { + if (length > options.cacheLength){ + flush(); + } + if (!data[q]){ + length++; + } + data[q] = value; + } + + function populate(){ + if( !options.data ) return false; + // track the matches + var stMatchSets = {}, + nullData = 0; + + // no url was specified, we need to adjust the cache length to make sure it fits the local data store + if( !options.url ) options.cacheLength = 1; + + // track all options for minChars = 0 + stMatchSets[""] = []; + + // loop through the array and create a lookup structure + for ( var i = 0, ol = options.data.length; i < ol; i++ ) { + var rawValue = options.data[i]; + // if rawValue is a string, make an array otherwise just reference the array + rawValue = (typeof rawValue == "string") ? [rawValue] : rawValue; + + var value = options.formatMatch(rawValue, i+1, options.data.length); + if ( value === false ) + continue; + + var firstChar = value.charAt(0).toLowerCase(); + // if no lookup array for this character exists, look it up now + if( !stMatchSets[firstChar] ) + stMatchSets[firstChar] = []; + + // if the match is a string + var row = { + value: value, + data: rawValue, + result: options.formatResult && options.formatResult(rawValue) || value + }; + + // push the current match into the set list + stMatchSets[firstChar].push(row); + + // keep track of minChars zero items + if ( nullData++ < options.max ) { + stMatchSets[""].push(row); + } + }; + + // add the data items to the cache + $.each(stMatchSets, function(i, value) { + // increase the cache size + options.cacheLength++; + // add to the cache + add(i, value); + }); + } + + // populate any existing data + setTimeout(populate, 25); + + function flush(){ + data = {}; + length = 0; + } + + return { + flush: flush, + add: add, + populate: populate, + load: function(q) { + if (!options.cacheLength || !length) + return null; + /* + * if dealing w/local data and matchContains than we must make sure + * to loop through all the data collections looking for matches + */ + if( !options.url && options.matchContains ){ + // track all matches + var csub = []; + // loop through all the data grids for matches + for( var k in data ){ + // don't search through the stMatchSets[""] (minChars: 0) cache + // this prevents duplicates + if( k.length > 0 ){ + var c = data[k]; + $.each(c, function(i, x) { + // if we've got a match, add it to the array + if (matchSubset(x.value, q)) { + csub.push(x); + } + }); + } + } + return csub; + } else + // if the exact item exists, use it + if (data[q]){ + return data[q]; + } else + if (options.matchSubset) { + for (var i = q.length - 1; i >= options.minChars; i--) { + var c = data[q.substr(0, i)]; + if (c) { + var csub = []; + $.each(c, function(i, x) { + if (matchSubset(x.value, q)) { + csub[csub.length] = x; + } + }); + return csub; + } + } + } + return null; + } + }; +}; + +$.Autocompleter.Select = function (options, input, select, config) { + var CLASSES = { + ACTIVE: "ac_over" + }; + + var listItems, + active = -1, + data, + term = "", + needsInit = true, + element, + list; + + // Create results + function init() { + if (!needsInit) + return; + element = $("
") + .hide() + .addClass(options.resultsClass) + .css("position", "absolute") + .appendTo(document.body); + + list = $("
+{/block} \ No newline at end of file diff --git a/buildscripts/apigen/pradosoft/tree.latte b/buildscripts/apigen/pradosoft/tree.latte new file mode 100644 index 00000000..8a4b5fc1 --- /dev/null +++ b/buildscripts/apigen/pradosoft/tree.latte @@ -0,0 +1,72 @@ +{* +ApiGen 2.8.0 - API documentation generator for PHP 5.3+ + +Copyright (c) 2010-2011 David Grudl (http://davidgrudl.com) +Copyright (c) 2011-2012 Jaroslav Hanslík (https://github.com/kukulich) +Copyright (c) 2011-2012 Ondřej Nešpor (https://github.com/Andrewsville) + +For the full copyright and license information, please view +the file LICENSE.md that was distributed with this source code. +*} +{layout '@layout.latte'} +{var $active = 'tree'} + +{block #title}Tree{/block} + +{define #tree} +
+ '|repeat:$level - $tree->getDepth()} + {elseif -1 !== $level} + '|repeat:$level} + +
+{/define} + +{block #content} +
+

{include #title}

+ + {if $classTree->valid()} +

Classes

+ {include #tree, tree => $classTree} + {/if} + + {if $interfaceTree->valid()} +

Interfaces

+ {include #tree, tree => $interfaceTree} + {/if} + + {if $traitTree->valid()} +

Traits

+ {include #tree, tree => $traitTree} + {/if} + + {if $exceptionTree->valid()} +

Exceptions

+ {include #tree, tree => $exceptionTree} + {/if} +
+{/block} -- cgit v1.2.3