1: <?php
2:
3: namespace Mapbender\CoreBundle\Element\Type;
4:
5: use Symfony\Component\Form\AbstractType;
6: use Symfony\Component\Form\FormBuilderInterface;
7: use Mapbender\CoreBundle\Form\Type\PositionType;
8: use Symfony\Component\OptionsResolver\OptionsResolverInterface;
9:
10: 11: 12:
13: class ZoomBarAdminType extends AbstractType
14: {
15:
16: 17: 18:
19: public function getName()
20: {
21: return 'zoombar';
22: }
23:
24: 25: 26:
27: public function setDefaultOptions(OptionsResolverInterface $resolver)
28: {
29: $resolver->setDefaults(array(
30: 'application' => null
31: ));
32: }
33:
34: 35: 36:
37: public function buildForm(FormBuilderInterface $builder, array $options)
38: {
39:
40: $builder->add('tooltip', 'text', array('required' => false))
41: ->add('components', 'choice',
42: array(
43: 'required' => true,
44: 'multiple' => true,
45: 'choices' => array(
46: "pan" => "pan",
47: "history" => "history",
48: "zoom_box" => "zoom box",
49: "zoom_max" => "zoom to max extent",
50: "zoom_slider" => "zoom slider")))
51: ->add('target_map', 'target_element',
52: array(
53: 'element_class' => 'Mapbender\\CoreBundle\\Element\\Map',
54: 'application' => $options['application'],
55: 'property_path' => '[target]',
56: 'required' => false))
57: ->add('stepSize', 'text', array('required' => false))
58: ->add('stepByPixel', 'choice',
59: array(
60: 'choices' => array('true' => 'true', 'false' => 'false')))
61: ->add('anchor', "choice",
62: array(
63: 'required' => true,
64: "choices" => array(
65: 'inline' => 'inline',
66: 'left-top' => 'left-top',
67: 'left-bottom' => 'left-bottom',
68: 'right-top' => 'right-top',
69: 'right-bottom' => 'right-bottom')))
70: ->add('draggable', 'checkbox', array('required' => false));
71: }
72:
73: }