1: <?php
2: /**
3: * PHP version 5
4: * @package generalDriver
5: * @author Christian Schiffler <c.schiffler@cyberspectrum.de>
6: * @author Stefan Heimes <stefan_heimes@hotmail.com>
7: * @author Tristan Lins <tristan.lins@bit3.de>
8: * @copyright The MetaModels team.
9: * @license LGPL.
10: * @filesource
11: */
12:
13: namespace DcGeneral\Contao\View\Contao2BackendView\Event;
14:
15: /**
16: * Class GetPasteButtonEvent.
17: *
18: * This event gets emitted when a paste button is generated.
19: *
20: * @package DcGeneral\Contao\View\Contao2BackendView\Event
21: */
22: class GetPasteButtonEvent
23: extends BaseButtonEvent
24: {
25: const NAME = 'dc-general.view.contao2backend.get-paste-button';
26:
27: /**
28: * Determinator if there is a circular reference from an item in the clipboard to the current model.
29: *
30: * @var bool
31: */
32: protected $blnCircularReference;
33:
34: /**
35: * The href information to use for the paste after button.
36: *
37: * @var string
38: */
39: protected $hrefAfter;
40:
41: /**
42: * The href information to use for the paste into button.
43: *
44: * @var string
45: */
46: protected $hrefInto;
47:
48: /**
49: * The Html code to use for the "paste after" button.
50: *
51: * @var string
52: */
53: protected $htmlPasteAfter;
54:
55: /**
56: * The Html code to use for the "paste into" button.
57: *
58: * @var string
59: */
60: protected $htmlPasteInto;
61:
62: /**
63: * The model to which the command shall be applied to.
64: *
65: * @var \DcGeneral\Data\ModelInterface
66: */
67: protected $model;
68:
69: /**
70: * The next model in the list.
71: *
72: * @var \DcGeneral\Data\ModelInterface
73: */
74: protected $next;
75:
76: /**
77: * The previous model in the list.
78: *
79: * @var \DcGeneral\Data\ModelInterface
80: */
81: protected $previous;
82:
83: /**
84: * Determinator if the paste into button shall be disabled.
85: *
86: * @var bool
87: */
88: protected $pasteIntoDisabled;
89:
90: /**
91: * Determinator if the paste after button shall be disabled.
92: *
93: * @var bool
94: */
95: protected $pasteAfterDisabled;
96:
97: /**
98: * Set determinator if there exists a circular reference.
99: *
100: * This flag determines if there exists a circular reference between the item currently in the clipboard and the
101: * current model. A circular reference is of relevance when performing a cut and paste operation for example.
102: *
103: * @param boolean $blnCircularReference The flag.
104: *
105: * @return $this
106: */
107: public function setCircularReference($blnCircularReference)
108: {
109: $this->blnCircularReference = $blnCircularReference;
110:
111: return $this;
112: }
113:
114: /**
115: * Get determinator if there exists a circular reference.
116: *
117: * This flag determines if there exists a circular reference between the item currently in the clipboard and the
118: * current model. A circular reference is of relevance when performing a cut and paste operation for example.
119: *
120: * @return boolean
121: */
122: public function getCircularReference()
123: {
124: return $this->blnCircularReference;
125: }
126:
127: /**
128: * Set the href for the paste after button.
129: *
130: * @param string $hrefAfter The href.
131: *
132: * @return $this
133: */
134: public function setHrefAfter($hrefAfter)
135: {
136: $this->hrefAfter = $hrefAfter;
137:
138: return $this;
139: }
140: /**
141: * Get the href for the paste after button.
142: *
143: * @return string
144: */
145: public function getHrefAfter()
146: {
147: return $this->hrefAfter;
148: }
149:
150: /**
151: * Set the href for the paste into button.
152: *
153: * @param string $hrefInto The href.
154: *
155: * @return $this
156: */
157: public function setHrefInto($hrefInto)
158: {
159: $this->hrefInto = $hrefInto;
160:
161: return $this;
162: }
163:
164: /**
165: * Get the href for the paste into button.
166: *
167: * @return string
168: */
169: public function getHrefInto()
170: {
171: return $this->hrefInto;
172: }
173:
174: /**
175: * Set the html code for the paste after button.
176: *
177: * @param string $html The HTML code.
178: *
179: * @return $this
180: */
181: public function setHtmlPasteAfter($html)
182: {
183: $this->htmlPasteAfter = $html;
184:
185: return $this;
186: }
187:
188: /**
189: * Get the html code for the paste after button.
190: *
191: * @return string
192: */
193: public function getHtmlPasteAfter()
194: {
195: return $this->htmlPasteAfter;
196: }
197:
198: /**
199: * Set the html code for the paste into button.
200: *
201: * @param string $html The HTML code.
202: *
203: * @return $this
204: */
205: public function setHtmlPasteInto($html)
206: {
207: $this->htmlPasteInto = $html;
208:
209: return $this;
210: }
211:
212: /**
213: * Get the html code for the paste after button.
214: *
215: * @return string
216: */
217: public function getHtmlPasteInto()
218: {
219: return $this->htmlPasteInto;
220: }
221:
222: /**
223: * Set the model currently in scope.
224: *
225: * @param \DcGeneral\Data\ModelInterface $model The model currently in scope.
226: *
227: * @return $this
228: */
229: public function setModel($model)
230: {
231: $this->model = $model;
232:
233: return $this;
234: }
235:
236: /**
237: * Get the model currently in scope.
238: *
239: * @return \DcGeneral\Data\ModelInterface
240: */
241: public function getModel()
242: {
243: return $this->model;
244: }
245:
246: /**
247: * Set the next model.
248: *
249: * @param \DcGeneral\Data\ModelInterface $next The next model.
250: *
251: * @return $this
252: */
253: public function setNext($next)
254: {
255: $this->next = $next;
256:
257: return $this;
258: }
259:
260: /**
261: * Get the next model.
262: *
263: * @return \DcGeneral\Data\ModelInterface
264: */
265: public function getNext()
266: {
267: return $this->next;
268: }
269:
270: /**
271: * Set the previous model.
272: *
273: * @param \DcGeneral\Data\ModelInterface $previous The previous model.
274: *
275: * @return $this
276: */
277: public function setPrevious($previous)
278: {
279: $this->previous = $previous;
280:
281: return $this;
282: }
283:
284: /**
285: * Get the previous model.
286: *
287: * @return \DcGeneral\Data\ModelInterface
288: */
289: public function getPrevious()
290: {
291: return $this->previous;
292: }
293:
294: /**
295: * Set the determinator if the paste after button shall be disabled.
296: *
297: * @param boolean $pasteAfterDisabled Determinator flag for the disabling state.
298: *
299: * @return $this
300: */
301: public function setPasteAfterDisabled($pasteAfterDisabled)
302: {
303: $this->pasteAfterDisabled = $pasteAfterDisabled;
304:
305: return $this;
306: }
307:
308: /**
309: * Check if the paste after button shall be disabled.
310: *
311: * @return boolean
312: */
313: public function isPasteAfterDisabled()
314: {
315: return $this->pasteAfterDisabled;
316: }
317:
318: /**
319: * Set the determinator if the paste into button shall be disabled.
320: *
321: * @param boolean $pasteIntoDisabled Determinator flag for the disabling state.
322: *
323: * @return $this
324: */
325: public function setPasteIntoDisabled($pasteIntoDisabled)
326: {
327: $this->pasteIntoDisabled = $pasteIntoDisabled;
328:
329: return $this;
330: }
331:
332: /**
333: * Check if the paste into button shall be disabled.
334: *
335: * @return boolean
336: */
337: public function isPasteIntoDisabled()
338: {
339: return $this->pasteIntoDisabled;
340: }
341: }
342: