Componette

Componette

download-cloud-line composer require venne/widgets

Venne:Widgets Build Status

Installation

The best way to install Venne/Widgets is using Composer:

composer require venne/widgets:@dev

Automatic usage

Register widgets

Use tag venne.widget:

services:
	myControlFactory:
		class: App\MyControlFactory
		tags: [venne.widget: 'myWidget']

Use widgets in presenters/controls as global component

class ExamplePresenter extends Nette\Application\UI\Presenter
{
	use Venne\Widgets\WidgetsControlTrait;
}

Template:

...
{control myWidget}
...

Manual usage

Register some widgets

$widgetManager = new Venne\Widgets\WidgetManager($systemContainer);
$widgetManager->addWidget('widget1', function() {
	return new MyComponent;
});
$widgetManager->addWidget('widget2', new MyFormFactory);
$widgetManager->addWidget('widget3', 'app.myFormFactory'); // service in system container

Create instance and use it

if ($widgetManager->hasWidget('widget1')) {
	$widget = $widgetManager->getWidget('widget1');
	$widget->render();
}

No release at this moment. Try to create first one.

price-tag-2-line

Badges

guide-fill

Dependencies

php (>=5.5.0)
Componette Componette felix@nette.org