<?php
require_once 'cli.php';
//standard cli samples
gCli()->showCursor(false);
gCli()->setbgColor('black');
gCli()->setColor('white');
gCli()->clearScrean();
gCli()->gotoXY(5,1);
echo 'Hello';
gCli()->gotoXY(5,2);
echo gCli()->textParser('%red%Red text%rst%');
gCli()->thickBorder(20, 2, 20, 10, 'Hello window');
gCli()->gotoXY(5,3);
echo 'Press any key';
gCli()->gotoXY(5,4);
echo 'to continue';
while (true) {
gCli()->gotoXY(5,5);
echo gCli()->textParser('%spinner% [%knightrider%]');
$c = gCli()->isKeypressed();
if ($c) {
break;
}
}
//Windowing system
gCli()->clearScrean();
gCli()->gotoXY(1, 1);
$infoWindow = new gWindow(1, 1, 80, 14, 'G-Lex\'s CLI magics');
$infoWindow->draw();
$statusWindow = new gWindow(81, 1, 50, 14, 'System status');
$statusWindow->draw();
$infoWindow->addLine('Version: %green;bold% 1.0' );
$infoWindow->addLine(' ');
$infoWindow->addLine('You can hold a lot of texts within this area');
$infoWindow->addLine('%green%Press%rst% %red%x%rst% to exit');
$statusSystem = $statusWindow->addStatusSignal('%white;bold%System%rst%');
$statusDriver = $statusWindow->addStatusSignal('Camera driver');
$statusCamera = $statusWindow->addStatusSignal('Camera status', '%red;faint%offline%rst%');
$statusConnection = $statusWindow->addStatusSignal('Camera connection');
$statusCameraWarming = $statusWindow->addStatusSignal('Camera warming');
$statusAlarm = $statusWindow->addStatusSignal('Alarm');
$statusMotion = $statusWindow->addStatusSignal('Motion');
$statusKeyframes = $statusWindow->addStatusSignal('Keyframes');
$statusAutopan = $statusWindow->addStatusSignal('AutoPan');
$statusPanPos = $statusWindow->addStatusSignal('PanPosition');
$statusSystem->setSignal('%yellow;bold%init%rst%', true);
$statusDriver->setSignal(true, true);
$statusConnection->setSignal(true, true);
$statusCamera->setSignal('%yellow;bold%online%rst%', true);
$statusPanPos->setSignal('0x0', true);
$statusCamera->setSignal('%yellow;bold%ready%rst%', true);
$statusCamera->setSignal('%yellow;bold%centering%rst%', true);
$statusCameraWarming->setSignal('%knightrider%');
$warmupEnd = time() + 5;
while ($warmupEnd > time()) {
$statusCameraWarming->setSignal('%knightrider%');
usleep(10000);
}
$statusCameraWarming->setSignal('%green;bold%ready%rst%');
$statusCamera->setSignal('%green;bold%online%rst%', true);
$statusSystem->setSignal('%green;bold%ARMED%rst%', true);
$statusAlarm->setSignal('%green;bold%no%rst%', true);
$statusMotion->setSignal('%green;bold%no%rst%', true);
while (true) {
$c = gCli()->isKeypressed();
if ($c) {
$infoWindow->addLine(dateStamp().'KeyCode: '.ord($c).' | '. dechex(ord($c)));
}
if ($c == 'x') {
break;
}
}
gCli()->clearScrean();
gCli()->gotoXY(1, 1);
gCli()->showCursor(true);
|