File tree Expand file tree Collapse file tree 1 file changed +28
-1
lines changed Expand file tree Collapse file tree 1 file changed +28
-1
lines changed Original file line number Diff line number Diff line change @@ -25,6 +25,9 @@ abstract class Control extends Component implements IRenderable
25
25
/** @var ITemplateFactory */
26
26
private $ templateFactory ;
27
27
28
+ /** @var string|null */
29
+ private $ templateFile = null ;
30
+
28
31
/** @var ITemplate */
29
32
private $ template ;
30
33
@@ -42,6 +45,24 @@ final public function setTemplateFactory(ITemplateFactory $templateFactory)
42
45
}
43
46
44
47
48
+ final public function setTemplateFile (string $ templateFile = null )
49
+ {
50
+ $ this ->templateFile = $ templateFile ;
51
+
52
+ if ($ this ->template !== null ) {
53
+ $ this ->template ->setFile ($ templateFile );
54
+ }
55
+
56
+ return $ this ;
57
+ }
58
+
59
+
60
+ final public function getTemplateFile (): ?string
61
+ {
62
+ return $ this ->templateFile ;
63
+ }
64
+
65
+
45
66
final public function getTemplate (): ITemplate
46
67
{
47
68
if ($ this ->template === null ) {
@@ -54,7 +75,13 @@ final public function getTemplate(): ITemplate
54
75
protected function createTemplate (): ITemplate
55
76
{
56
77
$ templateFactory = $ this ->templateFactory ?: $ this ->getPresenter ()->getTemplateFactory ();
57
- return $ templateFactory ->createTemplate ($ this );
78
+ $ template = $ templateFactory ->createTemplate ($ this );
79
+
80
+ if ($ this ->templateFile !== null ) {
81
+ $ template ->setFile ($ this ->templateFile );
82
+ }
83
+
84
+ return $ template ;
58
85
}
59
86
60
87
You can’t perform that action at this time.
0 commit comments