1: <?php
2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
12:
13: namespace ManiaLib\Gui\Cards;
14:
15: use ManiaLib\Gui\Elements\Label;
16: use ManiaLib\Gui\Elements\Bgs1;
17: use ManiaLib\Gui\Elements\Bgs1InRace;
18: use ManiaLib\Gui\Elements\Quad;
19:
20: class Panel extends Quad
21: {
22:
23: 24: 25:
26: public $title;
27:
28: 29: 30: 31:
32: public $titleBg;
33:
34: 35: 36: 37:
38: protected $panelBg;
39:
40: function __construct($sx=187.5, $sy=200)
41: {
42: parent::__construct($sx, $sy);
43:
44: $this->setStyle(Quad::Bgs1);
45: $this->setSubStyle(Bgs1::BgWindow2);
46:
47: $this->cardElementsHalign = 'center';
48:
49: $this->titleBg = new Quad(0, 16.25);
50: $this->titleBg->setHalign('center');
51: $this->titleBg->setStyle(Quad::Bgs1InRace);
52: $this->titleBg->setSubStyle(Bgs1InRace::BgTitle3_1);
53: $this->addCardElement($this->titleBg);
54:
55: $this->title = new Label();
56: $this->title->setAlign('center', 'center2');
57: $this->title->setPositionY(-8.25);
58: $this->title->setStyle(Label::TextTitle3);
59: $this->addCardElement($this->title);
60:
61: $this->panelBg = new Quad();
62: $this->panelBg->setHalign('center');
63: $this->addCardElement($this->panelBg);
64: }
65:
66: function preFilter()
67: {
68: $this->panelBg->setStyle($this->getStyle());
69: $this->panelBg->setSubStyle($this->getSubStyle());
70: $this->setStyle(null);
71: $this->setSubStyle(null);
72:
73: $this->titleBg->setSizeX($this->sizeX);
74: $this->title->setSizeX($this->sizeX - 6);
75: $this->panelBg->setSize($this->sizeX - 4,
76: $this->sizeY - $this->titleBg->getSizeY() - 4.5);
77: $this->panelBg->setPosY(-$this->titleBg->getSizeY() - 4.5);
78: }
79:
80: }
81:
82: ?>