LibreCAD
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
layer.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
cad/meta/metalinewidth.h
>
4
#include <
cad/meta/color.h
>
5
#include <
cad/meta/dxflinepattern.h
>
6
7
namespace
lc
{
8
class
Layer;
9
DECLARE_SHORT_SHARED_PTR
(Layer)
10
11
namespace builder {
12
class
LayerBuilder
{
13
public
:
14
LayerBuilder
();
15
16
virtual
~
LayerBuilder
();
17
18
const
std::string& name()
const
;
19
const
MetaLineWidthByValue
& lineWidth()
const
;
20
const
Color
& color()
const
;
21
DxfLinePatternByValue_CSPtr linePattern()
const
;
22
bool
isFrozen()
const
;
23
24
LayerBuilder
* setName(
const
std::string& name);
25
LayerBuilder
* setLineWidth(
const
MetaLineWidthByValue
& lineWidth);
26
LayerBuilder
* setColor(
const
Color
& color);
27
LayerBuilder
* setLinePattern(
const
DxfLinePatternByValue_CSPtr& linepattern);
28
LayerBuilder
* setIsFrozen(
bool
isFrozen);
29
30
Layer_CSPtr build();
31
32
private
:
33
bool
checkValues();
34
35
std::string
_name
;
36
MetaLineWidthByValue
_lineWidth
;
37
Color
_color
;
38
lc::DxfLinePatternByValue_CSPtr
_linePattern
;
39
bool
_isFrozen
;
40
};
41
}
42
}
metalinewidth.h
lc::MetaLineWidthByValue
Definition:
metalinewidth.h:39
lc::builder::LayerBuilder::_linePattern
lc::DxfLinePatternByValue_CSPtr _linePattern
Definition:
layer.h:38
lc::builder::LayerBuilder
Definition:
layer.h:12
lc::builder::LayerBuilder::_isFrozen
bool _isFrozen
Definition:
layer.h:39
dxflinepattern.h
lc::DECLARE_SHORT_SHARED_PTR
DECLARE_SHORT_SHARED_PTR(Document)
lc::builder::LayerBuilder::_color
Color _color
Definition:
layer.h:37
lc
Definition:
cadentity.h:12
lc::Color
Definition:
color.h:13
lc::builder::LayerBuilder::_name
std::string _name
Definition:
layer.h:35
color.h
lc::builder::LayerBuilder::_lineWidth
MetaLineWidthByValue _lineWidth
Definition:
layer.h:36
lckernel
cad
builders
layer.h
Generated on Mon Jun 18 2018 14:02:07 for LibreCAD by
1.8.8