i6engine
1.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
api/components/MovableTextComponent.h
Go to the documentation of this file.
1
/*
2
* i6engine
3
* Copyright (2016) Daniel Bonrath, Michael Baer, All rights reserved.
4
*
5
* This file is part of i6engine; i6engine is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU Lesser General Public
7
* License as published by the Free Software Foundation; either
8
* version 2.1 of the License, or (at your option) any later version.
9
*
10
* This library is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* Lesser General Public License for more details.
14
*
15
* You should have received a copy of the GNU Lesser General Public
16
* License along with this library; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
*/
19
25
#ifndef __I6ENGINE_API_MOVABLETEXTCOMPONENT_H__
26
#define __I6ENGINE_API_MOVABLETEXTCOMPONENT_H__
27
28
#include "
i6engine/math/i6eQuaternion.h
"
29
#include "
i6engine/math/i6eVector.h
"
30
31
#include "
i6engine/api/components/Component.h
"
32
33
namespace
i6e
{
34
namespace
api {
35
47
class
ISIXE_MODULES_API
MovableTextComponent
:
public
Component
{
48
public
:
52
MovableTextComponent
(
const
int64_t
id
,
const
attributeMap
& params);
53
57
~
MovableTextComponent
();
58
62
attributeMap
synchronize()
const override
;
63
64
std::string
getTemplateName
()
const override
{
65
return
"MovableText"
;
66
}
67
68
std::vector<componentOptions> getComponentOptions()
override
;
69
73
void
setText(
const
std::string & text);
74
75
void
setAutoScaleCallback(
const
std::function<
double
(
const
Vec3
&,
const
Vec3
&)> & callback);
76
77
private
:
78
std::string _font;
79
std::string _text;
80
double
_size;
81
Vec3
_colour;
82
std::function<double(const Vec3 &, const Vec3 &)> _autoScaleCallback;
83
84
void
Init()
override
;
85
86
void
Finalize()
override
;
87
88
std::pair<AddStrategy, int64_t> howToAdd(
const
ComPtr
& comp)
const override
;
89
};
90
91
}
/* namespace api */
92
}
/* namespace i6e */
93
94
#endif
/* __I6ENGINE_API_MOVABLETEXTCOMPONENT_H__ */
95
ISIXE_MODULES_API
#define ISIXE_MODULES_API
Definition:
i6eSystemParameters.h:118
i6e::api::components::MovableTextComponent
Definition:
ComponentConfig.h:75
i6eQuaternion.h
Component.h
i6e::api::attributeMap
std::map< std::string, std::string > attributeMap
Definition:
attributeMap.h:42
i6e::api::MovableTextComponent
shows a text above a mesh For creating a MovableTextComponent, these keys are possible: Name Required...
Definition:
api/components/MovableTextComponent.h:47
i6e::math::i6eVector
Implements 3-dimensional vectors.
Definition:
i6eVector.h:48
i6e::utils::sharedPtr
A shared pointer counting references and adds objects being not referenced any more to an internal li...
Definition:
sharedPtr.h:50
i6eVector.h
i6e::api::MovableTextComponent::getTemplateName
std::string getTemplateName() const override
returns the name this template was registered with
Definition:
api/components/MovableTextComponent.h:64
i6e
Definition:
AutoUpdater.h:34
i6e::api::Component
Component Base Class. All Components must derive from Component.
Definition:
Component.h:97
Projekte
i6engine
libs
i6engine-modules
include
i6engine
api
components
MovableTextComponent.h
Generated on Mon May 30 2016 17:33:31 for i6engine by
1.8.9.1