setAttribute(REQUESTOUTPUTPLOTPANEL_BACKGROUNDCOLOR, $color); } public function getBackgroundColor() { return $this->getAttribute(REQUESTOUTPUTPLOTPANEL_BACKGROUNDCOLOR); } public function getBounds() { $node = $this->getFirstChildByName(REQUESTOUTPUTPLOTPANELBOUNDS_NAME); if (!isset($node)) { $node = new RequestOutputPlotPanelBoundsNodeClass(); $this->addChild($node); } return $node; } public function getFont() { $node = $this->getFirstChildByName(REQUESTOUTPUTPLOTFONT_NODENAME); if (!isset($node)) { $node = new RequestOutputPlotFontNodeClass(); $this->addChild($node); } return $node; } public function getTitle() { $node = $this->getFirstChildByName(REQUESTOUTPUTPLOTPANEL_TITLE); if (!isset($node)) { $node = new RequestOutputPlotTitleNodeClass(); $this->addChild($node); } return $node; } public function addPlotElement($type,$noAxes = false) { switch ($type) { case RequestOutputPlotElementTypeEnum::TIMEPLOT : $node = new RequestOutputPlotElementTimeNodeClass(); break; case RequestOutputPlotElementTypeEnum::XYPLOT : $node = new RequestOutputPlotElementXYNodeClass(); break; case RequestOutputPlotElementTypeEnum::STATUSPLOT : $node = new RequestOutputPlotElementStatusNodeClass($noAxes); break; case RequestOutputPlotElementTypeEnum::TICKPLOT : $node = new RequestOutputPlotElementTickNodeClass($noAxes); break; case RequestOutputPlotElementTypeEnum::EPOCHPLOT : $node = new RequestOutputPlotElementEpochNodeClass(); break; case RequestOutputPlotElementTypeEnum::INSTANTPLOT : $node = new RequestOutputPlotElementInstantNodeClass(); break; default : return NULL; } $this->addChild($node); return $node; } public function setPreferedWidth($width) { $this->setAttribute(REQUESTOUTPUTPLOTPANEL_PREFEREDWIDTH, $width); } public function getPreferedWidth() { return $this->getAttribute(REQUESTOUTPUTPLOTPANEL_PREFEREDWIDTH); } public function setPreferedHeight($height) { $this->setAttribute(REQUESTOUTPUTPLOTPANEL_PREFEREDHEIGHT, $height); } public function getPreferedHeight() { return $this->getAttribute(REQUESTOUTPUTPLOTPANEL_PREFEREDHEIGHT); } public function setXMargin($left, $right) { $this->setAttribute(REQUESTOUTPUTPLOTPANEL_XMARGIN, "[".$left.",".$right."]"); } public function setXMargin2($margin) { $this->setAttribute(REQUESTOUTPUTPLOTPANEL_XMARGIN, $margin); } public function setId($id) { $this->setAttribute(REQUESTOUTPUTPLOTPANEL_ID, $id); } public function getId() { return $this->getAttribute(REQUESTOUTPUTPLOTPANEL_ID); } public function loadFromNode($xmlNode) { $this->setBackgroundColor($this->getXmlNodeAttribute($xmlNode, REQUESTOUTPUTPLOTPANEL_BACKGROUNDCOLOR)); $boundsXmlNode = $this->getXmlNodeChildByTagName($xmlNode, REQUESTOUTPUTPLOTPANELBOUNDS_NAME); if (isset($boundsXmlNode)) $this->getBounds()->loadFromNode($boundsXmlNode); $boundsXmlNode = $this->getXmlNodeChildByTagName($xmlNode, REQUESTOUTPUTPLOTFONT_NODENAME); if (isset($boundsXmlNode)) $this->getBounds()->loadFromNode($boundsXmlNode); $fontXmlNode = $this->getXmlNodeChildByTagName($xmlNode, REQUESTOUTPUTPLOTFONT_NODENAME); if (isset($fontXmlNode)) $this->getFont()->loadFromNode($fontXmlNode); $titleXmlNode = $this->getXmlNodeChildByTagName($xmlNode, REQUESTOUTPUTPLOTPANEL_TITLE); if (isset($titleXmlNode)) $this->getTitle()->loadFromNode($titleXmlNode); $timePlotXmlNode = $this->getXmlNodeChildByTagName($xmlNode,REQUESTOUTPUTPLOTELEMENTTIME_NAME); if (isset($timePlotXmlNode)) $this->addPlotElement(RequestOutputPlotElementTypeEnum::TIMEPLOT)->loadFromNode($timePlotXmlNode); $xyPlotXmlNode = $this->getXmlNodeChildByTagName($xmlNode,REQUESTOUTPUTPLOTELEMENTXY_NAME); if (isset($xyPlotXmlNode)) $this->addPlotElement(RequestOutputPlotElementTypeEnum::XYPLOT)->loadFromNode($xyPlotXmlNode); $statusPlotXmlNode = $this->getXmlNodeChildByTagName($xmlNode,REQUESTOUTPUTPLOTELEMENTSTATUS_NAME); if (isset($statusPlotXmlNode)) $this->addPlotElement(RequestOutputPlotElementTypeEnum::STATUSPLOT)->loadFromNode($statusPlotXmlNode); $tickPlotXmlNode = $this->getXmlNodeChildByTagName($xmlNode,REQUESTOUTPUTPLOTELEMENTTICK_NAME); if (isset($tickPlotXmlNode)) $this->addPlotElement(RequestOutputPlotElementTypeEnum::TICKPLOT)->loadFromNode($tickPlotXmlNode); $epochPlotXmlNode = $this->getXmlNodeChildByTagName($xmlNode,REQUESTOUTPUTPLOTELEMENTEPOCH_NAME); if (isset($epochPlotXmlNode)) $this->addPlotElement(RequestOutputPlotElementTypeEnum::EPOCHPLOT)->loadFromNode($epochPlotXmlNode); $instantPlotXmlNode = $this->getXmlNodeChildByTagName($xmlNode,REQUESTOUTPUTPLOTELEMENTINSTANT_NAME); if (isset($instantPlotXmlNode)) $this->addPlotElement(RequestOutputPlotElementTypeEnum::INSTANTPLOT)->loadFromNode($instantPlotXmlNode); $this->setPreferedWidth($this->getXmlNodeAttribute($xmlNode, REQUESTOUTPUTPLOTPANEL_PREFEREDWIDTH)); $this->setPreferedHeight($this->getXmlNodeAttribute($xmlNode, REQUESTOUTPUTPLOTPANEL_PREFEREDHEIGHT)); $this->setXMargin2($this->getXmlNodeAttribute($xmlNode, REQUESTOUTPUTPLOTPANEL_XMARGIN)); $this->setId($this->getXmlNodeAttribute($xmlNode, REQUESTOUTPUTPLOTPANEL_ID)); } } ?>