Overview

Namespaces

  • Charcoal
    • Ui
      • Dashboard
      • Form
      • FormGroup
      • FormInput
      • Layout
      • Menu
      • MenuItem
      • ServiceProvider

Classes

  • Charcoal\Ui\AbstractUiItem
  • Charcoal\Ui\Dashboard\AbstractDashboard
  • Charcoal\Ui\Dashboard\DashboardBuilder
  • Charcoal\Ui\Dashboard\DashboardConfig
  • Charcoal\Ui\Dashboard\FormInputConfig
  • Charcoal\Ui\Dashboard\GenericDashboard
  • Charcoal\Ui\Form\AbstractForm
  • Charcoal\Ui\Form\FormBuilder
  • Charcoal\Ui\Form\FormConfig
  • Charcoal\Ui\Form\GenericForm
  • Charcoal\Ui\FormGroup\AbstractFormGroup
  • Charcoal\Ui\FormGroup\FormGroupConfig
  • Charcoal\Ui\FormGroup\GenericFormGroup
  • Charcoal\Ui\FormInput\AbstractFormInput
  • Charcoal\Ui\FormInput\FormInputBuilder
  • Charcoal\Ui\FormInput\GenericFormInput
  • Charcoal\Ui\Layout\AbstractLayout
  • Charcoal\Ui\Layout\GenericLayout
  • Charcoal\Ui\Layout\LayoutBuilder
  • Charcoal\Ui\Layout\LayoutConfig
  • Charcoal\Ui\Layout\LayoutFactory
  • Charcoal\Ui\Menu\AbstractMenu
  • Charcoal\Ui\Menu\GenericMenu
  • Charcoal\Ui\Menu\MenuBuilder
  • Charcoal\Ui\Menu\MenuConfig
  • Charcoal\Ui\Menu\MenuFactory
  • Charcoal\Ui\MenuItem\AbstractMenuItem
  • Charcoal\Ui\MenuItem\GenericMenuItem
  • Charcoal\Ui\MenuItem\MenuItemBuilder
  • Charcoal\Ui\MenuItem\MenuItemConfig
  • Charcoal\Ui\MenuItem\MenuItemFactory
  • Charcoal\Ui\ServiceProvider\DashboardServiceProvider
  • Charcoal\Ui\ServiceProvider\FormServiceProvider
  • Charcoal\Ui\ServiceProvider\LayoutServiceProvider
  • Charcoal\Ui\ServiceProvider\MenuServiceProvider
  • Charcoal\Ui\ServiceProvider\UiServiceProvider
  • Charcoal\Ui\UiItemConfig

Interfaces

  • Charcoal\Ui\Dashboard\DashboardInterface
  • Charcoal\Ui\Form\FormInterface
  • Charcoal\Ui\FormGroup\FormGroupInterface
  • Charcoal\Ui\FormInput\FormInputInterface
  • Charcoal\Ui\Layout\LayoutAwareInterface
  • Charcoal\Ui\Layout\LayoutInterface
  • Charcoal\Ui\Menu\MenuInterface
  • Charcoal\Ui\MenuItem\MenuItemInterface
  • Charcoal\Ui\UiGroupingInterface
  • Charcoal\Ui\UiItemInterface

Traits

  • Charcoal\Ui\Dashboard\DashboardTrait
  • Charcoal\Ui\Form\FormTrait
  • Charcoal\Ui\FormGroup\FormGroupTrait
  • Charcoal\Ui\Layout\LayoutAwareTrait
  • Charcoal\Ui\Layout\LayoutTrait
  • Charcoal\Ui\UiGroupingTrait
  • Charcoal\Ui\UiItemTrait
  • Overview
  • Namespace
  • Class
 1: <?php
 2: 
 3: namespace Charcoal\Ui\ServiceProvider;
 4: 
 5: use \Pimple\Container;
 6: use \Pimple\ServiceProviderInterface;
 7: 
 8: use \Charcoal\Ui\Menu\MenuBuilder;
 9: use \Charcoal\Ui\Menu\MenuFactory;
10: use \Charcoal\Ui\MenuItem\MenuItemBuilder;
11: use \Charcoal\Ui\MenuItem\MenuItemFactory;
12: 
13: /**
14:  *
15:  */
16: class MenuServiceProvider implements ServiceProviderInterface
17: {
18:     /**
19:      * @param Container $container A Pimple DI container.
20:      * @return void
21:      */
22:     public function register(Container $container)
23:     {
24:         $this->registerMenuServices($container);
25:         $this->registerMenuItemServices($container);
26:     }
27: 
28:     /**
29:      * @param Container $container A Pimple DI container.
30:      * @return void
31:      */
32:     public function registerMenuServices(Container $container)
33:     {
34:         /**
35:          * @param Container $container A Pimple DI container.
36:          * @return MenuFactory
37:          */
38:         $container['menu/factory'] = function(Container $container) {
39:             $menuFactory = new MenuFactory();
40:             $menuFactory->setArguments([
41:                 'menu_item_builder' => $container['menu/item/builder']
42:             ]);
43:             return $menuFactory;
44:         };
45: 
46:         /**
47:          * @param Container $container A Pimple DI container.
48:          * @return MenuBuilder
49:          */
50:         $container['menu/builder'] = function(Container $container) {
51:             $menuFactory = $container['menu/factory'];
52:             $menuBuilder = new MenuBuilder($menuFactory, $container);
53:             return $menuBuilder;
54:         };
55:     }
56: 
57:     /**
58:      * @param Container $container A Pimple DI container.
59:      * @return void
60:      */
61:     public function registerMenuItemServices(Container $container)
62:     {
63:         /**
64:          * @param Container $container A Pimple DI container.
65:          * @return MenuFactory
66:          */
67:         $container['menu/item/factory'] = function(Container $container) {
68:             $menuItemFactory = new MenuItemFactory();
69:             return $menuItemFactory;
70:         };
71: 
72:         /**
73:          * @param Container $container A Pimple DI container.
74:          * @return MenuBuilder
75:          */
76:         $container['menu/item/builder'] = function(Container $container) {
77:             $menuItemFactory = $container['menu/item/factory'];
78:             $menuItemBuilder = new MenuItemBuilder($menuItemFactory, $container);
79:             return $menuItemBuilder;
80:         };
81:     }
82: }
83: 
API documentation generated by ApiGen