mirror of
https://github.com/YunoHost-Apps/webtrees_ynh.git
synced 2024-09-03 18:26:37 +02:00
158 lines
4.1 KiB
PHP
158 lines
4.1 KiB
PHP
<?php
|
||
/**
|
||
* webtrees: online genealogy
|
||
* Copyright (C) 2016 webtrees development team
|
||
* This program is free software: you can redistribute it and/or modify
|
||
* it under the terms of the GNU General Public License as published by
|
||
* the Free Software Foundation, either version 3 of the License, or
|
||
* (at your option) any later version.
|
||
* This program is distributed in the hope that it will be useful,
|
||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
* GNU General Public License for more details.
|
||
* You should have received a copy of the GNU General Public License
|
||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||
*/
|
||
namespace Fisharebest\Webtrees\Report;
|
||
|
||
/**
|
||
* Class ReportBaseTextbox
|
||
*/
|
||
class ReportBaseTextbox extends ReportBaseElement {
|
||
/**
|
||
* Array of elements in the TextBox
|
||
*
|
||
* @var array
|
||
*/
|
||
public $elements = array();
|
||
|
||
/**
|
||
* Background color in HTML code
|
||
*
|
||
* @var string
|
||
*/
|
||
public $bgcolor;
|
||
/**
|
||
* Whether or not paint the background
|
||
*
|
||
* @var bool
|
||
*/
|
||
public $fill;
|
||
|
||
/**
|
||
* Position the left corner of this box on the page(expressed in points). The default is the current position.
|
||
*
|
||
* @var mixed
|
||
*/
|
||
public $left;
|
||
/**
|
||
* Position the top corner of this box on the page(expressed in points). the default is the current position
|
||
*
|
||
* @var mixed
|
||
*/
|
||
public $top;
|
||
/**
|
||
* After this box is finished rendering, should the next section of text start immediately after the this box or should it start on a new line under this box. 0 = no new line, 1 = force new line. Default is 0
|
||
*
|
||
* @var bool
|
||
*/
|
||
public $newline;
|
||
|
||
/** @var bool Unused? */
|
||
public $pagecheck;
|
||
|
||
/** @var bool Whether to print a border */
|
||
public $border;
|
||
|
||
/**
|
||
* Style of rendering
|
||
*
|
||
* <ul>
|
||
* <li>D or empty string: Draw (default).</li>
|
||
* <li>F: Fill.</li>
|
||
* <li>DF or FD: Draw and fill.</li>
|
||
* <li>CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).</li>
|
||
*<li>CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).</li>
|
||
* </ul>
|
||
*
|
||
* @var string
|
||
*/
|
||
public $style;
|
||
|
||
/**
|
||
* @var array Border style of rectangle. Array with keys among the following:
|
||
* <ul>
|
||
* <li>all: Line style of all borders. Array like for {@link SetLineStyle SetLineStyle}.</li>
|
||
* <li>L, T, R, B or combinations: Line style of left, top, right or bottom border. Array like for {@link SetLineStyle SetLineStyle}.</li>
|
||
* </ul>
|
||
* Not yet in use
|
||
* var $borderstyle;
|
||
*/
|
||
|
||
/**
|
||
* The starting height of this cell. If the text wraps the height will automatically be adjusted
|
||
*
|
||
* @var float
|
||
*/
|
||
public $height;
|
||
/**
|
||
* Setting the width to 0 will make it the width from the current location to the right margin
|
||
*
|
||
* @var float
|
||
*/
|
||
public $width;
|
||
/**
|
||
* Use cell padding or not
|
||
*
|
||
* @var bool
|
||
*/
|
||
public $padding;
|
||
/**
|
||
* Resets this box last height after it’s done
|
||
*/
|
||
public $reseth;
|
||
|
||
/**
|
||
* TextBox - Element - Base
|
||
*
|
||
* @param float $width Text box width
|
||
* @param float $height Text box height
|
||
* @param bool $border
|
||
* @param string $bgcolor Background color code in HTML
|
||
* @param bool $newline
|
||
* @param mixed $left
|
||
* @param mixed $top
|
||
* @param bool $pagecheck
|
||
* @param string $style
|
||
* @param bool $fill
|
||
* @param bool $padding
|
||
* @param bool $reseth
|
||
*/
|
||
public function __construct(
|
||
$width, $height, $border, $bgcolor, $newline, $left, $top, $pagecheck, $style, $fill, $padding, $reseth
|
||
) {
|
||
$this->border = $border;
|
||
$this->bgcolor = $bgcolor;
|
||
$this->fill = $fill;
|
||
$this->height = $height;
|
||
$this->left = $left;
|
||
$this->newline = $newline;
|
||
$this->pagecheck = $pagecheck;
|
||
$this->style = $style;
|
||
$this->top = $top;
|
||
$this->width = $width;
|
||
$this->padding = $padding;
|
||
$this->reseth = $reseth;
|
||
|
||
return 0;
|
||
}
|
||
|
||
/**
|
||
* Add an element to the TextBox
|
||
*
|
||
* @param object|string $element
|
||
*/
|
||
public function addElement($element) {
|
||
$this->elements[] = $element;
|
||
}
|
||
}
|