// Import framework stuff
use Org\Mxchange\CoreFramework\Object\BaseFrameworkSystem;
use Org\Mxchange\CoreFramework\Registry\Registerable;
+use Org\Mxchange\CoreFramework\Template\CompileableTemplate;
/**
* A general image class
/**
* Background color in RGB
*/
- private $backgroundColor = array(
+ private $backgroundColor = [
'red' => '',
'green' => '',
'blue' => ''
- );
+ ];
/**
* Foreground color in RGB
*/
- private $foregroundColor = array(
+ private $foregroundColor = [
'red' => '',
'green' => '',
'blue' => ''
- );
+ ];
/**
* Current choosen color array
*/
private $groupable = 'single';
+ /**
+ * Template engine instance
+ */
+ private $templateInstance = NULL;
+
/**
* Protected constructor
*
* @param $colorChannel Red, green or blue channel?
* @param $colorValue Value to set
*/
- private final function setColor ($colorMode, $colorChannel, $colorValue) {
+ private final function setColor (string $colorMode, string $colorChannel, $colorValue) {
// Construct the eval() command
$eval = sprintf("\$this->%s['%s'] = \"%s\";",
$colorMode,
* @param $width Width of the image
* @return void
*/
- public final function setWidth ($width) {
+ public final function setWidth (int $width) {
$this->width = $width;
}
* @param $height Height of the image
* @return void
*/
- public final function setHeight ($height) {
+ public final function setHeight (int $height) {
$this->height = $height;
}
* @return void
* @todo Find something usefull for this method.
*/
- public function initImageString ($groupable = 'single') {
+ public function initImageString (string $groupable = 'single') {
$this->groupable = $groupable;
}
* @return void
*/
public final function setRed ($red) {
- // Get array name
- $arrayName = $this->colorMode;
-
// Set image color
- $this->setColor($arrayName, 'red', $red);
+ $this->setColor($this->colorMode, 'red', $red);
}
/**
* @return void
*/
public final function setGreen ($green) {
- // Get array name
- $arrayName = $this->colorMode;
-
// Set image color
- $this->setColor($arrayName, 'green', $green);
+ $this->setColor($this->colorMode, 'green', $green);
}
/**
* @return void
*/
public final function setBlue ($blue) {
- // Get array name
- $arrayName = $this->colorMode;
-
// Set image color
- $this->setColor($arrayName, 'blue', $blue);
+ $this->setColor($this->colorMode, 'blue', $blue);
}
/**
* @param $imageType Type to set in image
* @return void
*/
- protected final function setImageType ($imageType) {
- $this->imageType = (string) $imageType;
+ protected final function setImageType (string $imageType) {
+ $this->imageType = $imageType;
}
/**
* @param $x X coordinate
* @return void
*/
- public final function setX ($x) {
+ public final function setX (int $x) {
$this->x = $x;
}
* @param $y Y coordinate
* @return void
*/
- public final function setY ($y) {
+ public final function setY (int $y) {
$this->y = $y;
}
* @param $fontSize Font size for strings
* @return void
*/
- public final function setFontSize ($fontSize) {
+ public final function setFontSize (int $fontSize) {
$this->fontSize = $fontSize;
}
* @param $stringName String name to set
* @return void
*/
- public final function setStringName($stringName) {
+ public final function setStringName(string $stringName) {
$this->stringName = $stringName;
}
+ /**
+ * Setter for template engine instances
+ *
+ * @param $templateInstance An instance of a CompileableTemplate class
+ * @return void
+ */
+ protected final function setTemplateInstance (CompileableTemplate $templateInstance) {
+ $this->templateInstance = $templateInstance;
+ }
+
+ /**
+ * Getter for template engine instances
+ *
+ * @return $templateInstance An instance of a CompileableTemplate class
+ */
+ public final function getTemplateInstance () {
+ return $this->templateInstance;
+ }
+
/**
* Finish this image by producing it
*