malena
Why malena
Quick start
Tutorials
API docs
GitHub
GitHub
Tutorials
Loading...
Searching...
No Matches
Traits
Settings
ToolbarSettings.h
Go to the documentation of this file.
1
// ToolbarSettings.h
2
#ifndef MALENA_TOOLBARSETTINGS_H
3
#define MALENA_TOOLBARSETTINGS_H
4
#pragma once
5
#include <
Malena/Core/malena_export.h
>
6
#include <
Malena/Traits/Settings/ControlSettings.h
>
7
#include <
SFML/System/Vector2.hpp
>
8
9
namespace
ml
10
{
11
struct
ToolbarSettings
:
ControlSettings
12
{
13
enum class
Orientation
{
HORIZONTAL
,
VERTICAL
};
14
enum class
Overflow
{
CLIP
,
SCROLL
};
15
16
Orientation
orientation
=
Orientation::HORIZONTAL
;
17
Overflow
overflow
=
Overflow::CLIP
;
18
sf::Vector2f
itemSize
= {36.f, 36.f};
19
float
itemSpacing
= 2.f;
20
float
barPadding
= 4.f;
21
22
ToolbarSettings
&
operator=
(
const
ControlSettings
& c)
23
{
static_cast<
ControlSettings
&
>
(*this) = c;
return
*
this
; }
24
ToolbarSettings
&
operator=
(
const
GraphicSettings
& g)
25
{
static_cast<
ControlSettings
&
>
(*this) = g;
return
*
this
; }
26
27
void
setOrientation
(
Orientation
o) {
orientation
= o; }
28
void
setOverflow
(
Overflow
o) {
overflow
= o; }
29
void
setItemSize
(
sf::Vector2f
s) {
itemSize
= s; }
30
void
setItemSpacing
(
float
s) {
itemSpacing
= s; }
31
void
setBarPadding
(
float
p) {
barPadding
= p; }
32
};
33
}
// namespace ml
34
#endif
ControlSettings.h
Vector2.hpp
malena_export.h
ml
Definition
Component.h:22
sf::Vector2f
Vector2< float > Vector2f
ml::ControlSettings
Settings trait for interactive UI controls — layout only.
Definition
ControlSettings.h:24
ml::GraphicSettings
Base settings trait for all visual components — geometry only.
Definition
GraphicSettings.h:35
ml::ToolbarSettings
Definition
ToolbarSettings.h:12
ml::ToolbarSettings::itemSpacing
float itemSpacing
Definition
ToolbarSettings.h:19
ml::ToolbarSettings::setBarPadding
void setBarPadding(float p)
Definition
ToolbarSettings.h:31
ml::ToolbarSettings::overflow
Overflow overflow
Definition
ToolbarSettings.h:17
ml::ToolbarSettings::operator=
ToolbarSettings & operator=(const GraphicSettings &g)
Definition
ToolbarSettings.h:24
ml::ToolbarSettings::setItemSize
void setItemSize(sf::Vector2f s)
Definition
ToolbarSettings.h:29
ml::ToolbarSettings::barPadding
float barPadding
Definition
ToolbarSettings.h:20
ml::ToolbarSettings::setOrientation
void setOrientation(Orientation o)
Definition
ToolbarSettings.h:27
ml::ToolbarSettings::operator=
ToolbarSettings & operator=(const ControlSettings &c)
Definition
ToolbarSettings.h:22
ml::ToolbarSettings::Orientation
Orientation
Definition
ToolbarSettings.h:13
ml::ToolbarSettings::Orientation::VERTICAL
@ VERTICAL
Definition
ToolbarSettings.h:13
ml::ToolbarSettings::Orientation::HORIZONTAL
@ HORIZONTAL
Definition
ToolbarSettings.h:13
ml::ToolbarSettings::setOverflow
void setOverflow(Overflow o)
Definition
ToolbarSettings.h:28
ml::ToolbarSettings::setItemSpacing
void setItemSpacing(float s)
Definition
ToolbarSettings.h:30
ml::ToolbarSettings::itemSize
sf::Vector2f itemSize
default size for created buttons
Definition
ToolbarSettings.h:18
ml::ToolbarSettings::orientation
Orientation orientation
Definition
ToolbarSettings.h:16
ml::ToolbarSettings::Overflow
Overflow
Definition
ToolbarSettings.h:14
ml::ToolbarSettings::Overflow::SCROLL
@ SCROLL
Definition
ToolbarSettings.h:14
ml::ToolbarSettings::Overflow::CLIP
@ CLIP
Definition
ToolbarSettings.h:14