Seamly2D
Code documentation
vdatatool.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
* *
3
* Copyright (C) 2017 Seamly, LLC *
4
* *
5
* https://github.com/fashionfreedom/seamly2d *
6
* *
7
***************************************************************************
8
**
9
** Seamly2D is free software: you can redistribute it and/or modify
10
** it under the terms of the GNU General Public License as published by
11
** the Free Software Foundation, either version 3 of the License, or
12
** (at your option) any later version.
13
**
14
** Seamly2D is distributed in the hope that it will be useful,
15
** but WITHOUT ANY WARRANTY; without even the implied warranty of
16
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
** GNU General Public License for more details.
18
**
19
** You should have received a copy of the GNU General Public License
20
** along with Seamly2D. If not, see <http://www.gnu.org/licenses/>.
21
**
22
**************************************************************************
23
24
************************************************************************
25
**
26
** @file vdatatool.cpp
27
** @author Roman Telezhynskyi <dismine(at)gmail.com>
28
** @date November 15, 2013
29
**
30
** @brief
31
** @copyright
32
** This source code is part of the Valentine project, a pattern making
33
** program, whose allow create and modeling patterns of clothing.
34
** Copyright (C) 2013-2015 Seamly2D project
35
** <https://github.com/fashionfreedom/seamly2d> All Rights Reserved.
36
**
37
** Seamly2D is free software: you can redistribute it and/or modify
38
** it under the terms of the GNU General Public License as published by
39
** the Free Software Foundation, either version 3 of the License, or
40
** (at your option) any later version.
41
**
42
** Seamly2D is distributed in the hope that it will be useful,
43
** but WITHOUT ANY WARRANTY; without even the implied warranty of
44
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
45
** GNU General Public License for more details.
46
**
47
** You should have received a copy of the GNU General Public License
48
** along with Seamly2D. If not, see <http://www.gnu.org/licenses/>.
49
**
50
*************************************************************************/
51
52
#include "
vdatatool.h
"
53
54
#include "../vmisc/def.h"
55
56
Q_LOGGING_CATEGORY(vTool,
"v.tool"
)
57
58
//---------------------------------------------------------------------------------------------------------------------
59
/**
60
* @brief VDataTool constructor.
61
* @param data container with variables
62
* @param parent parent object
63
*/
64
VDataTool
::
VDataTool
(
VContainer
*data, QObject *parent)
65
: QObject(parent), data(*data), _referens(1)
66
{
67
SCASSERT
(data !=
nullptr
)
68
}
69
70
//---------------------------------------------------------------------------------------------------------------------
71
/**
72
* @brief decrementReferens decrement referens.
73
*/
74
void
VDataTool::decrementReferens
()
75
{
76
if
(
_referens
> 0)
77
{
78
--
_referens
;
79
}
80
}
VContainer
The VContainer class container of all variables.
Definition:
vcontainer.h:141
VDataTool
The VDataTool class need for getting access to data container of tool.
Definition:
vdatatool.h:71
VDataTool::decrementReferens
virtual void decrementReferens()
decrementReferens decrement referens.
Definition:
vdatatool.cpp:74
VDataTool::_referens
quint32 _referens
_referens keep count tools what use this tool. If value more than 1 you can't delete tool.
Definition:
vdatatool.h:87
SCASSERT
#define SCASSERT(cond)
Definition:
def.h:317
vdatatool.h
src
libs
vtools
tools
vdatatool.cpp
Generated by
1.9.1