Example #1
0
 public function appendScripts(Manialink $ml)
 {
     foreach ($this->scripts as $script) {
         \ManiaLib\Manialink\Elements\Script::create()->setNodeValue($script->getScript())->appendTo($ml);
     }
 }
Example #2
0
$ml = new Manialink();
Timeout::create()->setNodeValue(0)->appendTo($ml);
$frame = Frame::create()->setPosn(-150, 80)->appendTo($ml);
Quad::create()->setSizen(50, 10)->setPosn(2, 0, 0.1)->setStyle(Bgs1::BgWindow1)->appendTo($frame);
Label::create()->setSizen(50, 5)->setPosn(0, -15, 0.1)->setText('hello world')->appendTo($frame);
$frame2 = Frame::create()->setPosn(0, -25, 0.1)->setLayout(Line::create()->setMarginWidth(1))->appendTo($frame);
for ($i = 0; $i < 5; $i++) {
    Quad::create()->setSizen(5, 5)->setBgcolor('ccc')->appendTo($frame2);
}
$ui = LabelBox::create()->setPosn(0, -35)->setSizen(100, 10)->appendTo($frame);
$ui->getBg()->setStyle(Bgs1::BgTitle3);
$ui->getLabel()->setText('Much foobar')->setTextSize(4);
$frame2 = Frame::create()->setPosn(0, -50)->setSizen(50, 50)->setAlign('left', 'top')->appendTo($frame);
Quad::create()->setSizen(50, 50)->setBgcolor('eee')->appendTo($frame2);
Quad::create()->setSizen(10, 10)->setPosnZ(0.1)->setAlign('right', 'bottom')->setRelativeAlign('right', 'bottom')->setBgcolor('ccc')->appendTo($frame2);
Script::create()->setNodeValue('main(){ log("Hello world"); } // < &')->appendTo($ml);
Fragment::create()->setNodeValue('<label text="This label is written directly in XML" />')->appendTo($ml);
return $ml;
//This will output:
//<manialink version="1">
//	<timeout>0</timeout>
//	<frame posn="-150 80 0">
//		<quad style="Bgs1" substyle="BgWindow1" posn="2 0 0.1" sizen="50 10"/>
//		<label text="hello world" posn="0 -15 0.1" sizen="50 5"/>
//		<frame posn="0 -25 0.1">
//			<quad bgcolor="ccc" posn="0 0 0" sizen="5 5"/>
//			<quad bgcolor="ccc" posn="6 0 0" sizen="5 5"/>
//			<quad bgcolor="ccc" posn="12 0 0" sizen="5 5"/>
//			<quad bgcolor="ccc" posn="18 0 0" sizen="5 5"/>
//			<quad bgcolor="ccc" posn="24 0 0" sizen="5 5"/>
//		</frame>