Beispiel #1
0
use Manialib\Manialink\Elements\Label;
use Manialib\Manialink\Elements\Manialink;
use Manialib\Manialink\Elements\Quad;
use Manialib\Manialink\Elements\Script;
use Manialib\Manialink\Elements\Timeout;
use Manialib\XML\Fragment;
use Manialib\Manialink\Layouts\Line;
use Manialib\XML\Rendering\Renderer;
use Manialib\Manialink\Styles\Bgs1;
error_reporting(E_ALL);
$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>
use ManiaLib\Manialink\Elements\Frame;
use ManiaLib\Manialink\Elements\Label;
use ManiaLib\Manialink\Elements\Manialink;
use ManiaLib\Manialink\Elements\Quad;
use ManiaLib\Manialink\Elements\Timeout;
use ManiaLib\Manialink\Layouts\Line;
use ManiaLib\Manialink\Styles\Icons64x64_1;
use ManiaLib\Manialink\Styles\LabelStyles;
error_reporting(E_ALL);
$ml = new Manialink();
Timeout::create()->setNodeValue(0)->appendTo($ml);
$alignements = array('left', 'center', 'right');
Label::create()->setText('Line layout examples')->setAlign('center')->setStyle(LabelStyles::TextRaceMessageBig)->setPosn(0, 80)->appendTo($ml);
$contentFrame = Frame::create()->setPosn(-150, 60)->setLayout(Line::create())->appendTo($ml);
foreach ($alignements as $key => $aligmenement) {
    $testFrame = Frame::create()->setSizen(90, 35)->appendTo($contentFrame);
    Label::create()->setBothAlign('center')->setText(sprintf('%s align', ucfirst($aligmenement)))->setStyle(LabelStyles::TextTitle3)->setPosn(0, -3)->appendTo($testFrame);
    Quad::create()->setSizen(6, 6)->setRelativeValign('center')->setAlign('center', 'center')->setPosn(25, -3, 2)->setStyle(Icons64x64_1::QuitRace)->appendTo($testFrame);
    $frame = Frame::create()->setRelativeValign('center')->setPosn(25, -3)->setLayout(Line::create()->setMarginWidth(1))->appendTo($testFrame);
    for ($i = 0; $i < 3; $i++) {
        Quad::create()->setSizen(20, 20)->setAlign($aligmenement, 'center')->setBgcolor('F00')->setOpacity(0.5)->appendTo($frame);
    }
}
$testFrame = Frame::create()->setPosn(-45, 20)->setSizen(90, 35)->appendTo($ml);
Label::create()->setBothAlign('center')->setText('left and right align')->setStyle(LabelStyles::TextTitle3)->setPosn(0, -3)->appendTo($testFrame);
Quad::create()->setSizen(6, 6)->setRelativeValign('center')->setAlign('center', 'center')->setPosn(25, -3, 2)->setStyle(Icons64x64_1::QuitRace)->appendTo($testFrame);
$frame = Frame::create()->setRelativeValign('center')->setPosn(25, -3)->setLayout(Line::create()->setMarginWidth(1))->appendTo($testFrame);
for ($i = 0; $i < 3; $i++) {
    Quad::create()->setSizen(20, 20)->setHalign($i % 2 == 0 ? 'left' : 'right')->setBgcolor('F00')->setOpacity(0.5)->appendTo($frame);
}
return $ml;