Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
// This file is part of Moodle - http://moodle.org/
3
//
4
// Moodle is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8
//
9
// Moodle is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
// GNU General Public License for more details.
13
//
14
// You should have received a copy of the GNU General Public License
15
// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
16
 
17
/**
18
 * This file contains the annotation class for the assignfeedback_editpdf plugin
19
 *
20
 * @package   assignfeedback_editpdf
21
 * @copyright 2012 Davo Smith
22
 * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23
 */
24
 
25
namespace assignfeedback_editpdf;
26
 
27
/**
28
 * This class adds and removes annotations from a page of a response.
29
 *
30
 * @package   assignfeedback_editpdf
31
 * @copyright 2012 Davo Smith
32
 * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
33
 */
34
class annotation {
35
 
36
    /** @var int unique id for this annotation */
37
    public $id = 0;
38
 
39
    /** @var int gradeid for this annotation */
40
    public $gradeid = 0;
41
 
42
    /** @var int page number for this annotation */
43
    public $pageno = 0;
44
 
45
    /** @var int starting location in pixels. Image resolution is 100 pixels per inch */
46
    public $x = 0;
47
 
48
    /** @var int ending location in pixels. Image resolution is 100 pixels per inch */
49
    public $endx = 0;
50
 
51
    /** @var int starting location in pixels. Image resolution is 100 pixels per inch */
52
    public $y = 0;
53
 
54
    /** @var int ending location in pixels. Image resolution is 100 pixels per inch */
55
    public $endy = 0;
56
 
57
    /** @var string path information for drawing the annotation. */
58
    public $path = '';
59
 
60
    /** @var string colour - One of red, yellow, green, blue, white */
61
    public $colour = 'yellow';
62
 
63
    /** @var string type - One of line, oval, rect, etc */
64
    public $type = 'line';
65
 
66
    /** @var int draft status, default 1 = true */
67
    public $draft = 1;
68
 
69
    /**
70
     * Convert a compatible stdClass into an instance of this class.
71
     * @param \stdClass $record
72
     */
73
    public function __construct(\stdClass $record = null) {
74
        if ($record) {
75
            $intcols = array('endx', 'endy', 'x', 'y');
76
            foreach ($this as $key => $value) {
77
                if (isset($record->$key)) {
78
                    if (in_array($key, $intcols)) {
79
                        $this->$key = intval($record->$key);
80
                    } else {
81
                        $this->$key = $record->$key;
82
                    }
83
                }
84
            }
85
        }
86
    }
87
}