ManaPlus
src
gui
models
fontsizechoicelistmodel.h
Go to the documentation of this file.
1
/*
2
* The ManaPlus Client
3
* Copyright (C) 2011-2019 The ManaPlus Developers
4
* Copyright (C) 2019-2021 Andrei Karas
5
*
6
* This file is part of The ManaPlus Client.
7
*
8
* This program is free software; you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation; either version 2 of the License, or
11
* any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
*/
21
22
#ifndef GUI_MODELS_FONTSIZECHOICELISTMODEL_H
23
#define GUI_MODELS_FONTSIZECHOICELISTMODEL_H
24
25
#include "
gui/models/listmodel.h
"
26
27
#include "
utils/gettext.h
"
28
29
#include "
localconsts.h
"
30
31
const
int
maxFontSizes
= 16;
32
33
const
char
*
SIZE_NAME
[
maxFontSizes
] =
34
{
35
// TRANSLATORS: font size
36
N_
(
"Very small (8)"
),
37
// TRANSLATORS: font size
38
N_
(
"Very small (9)"
),
39
// TRANSLATORS: font size
40
N_
(
"Tiny (10)"
),
41
// TRANSLATORS: font size
42
N_
(
"Small (11)"
),
43
// TRANSLATORS: font size
44
N_
(
"Medium (12)"
),
45
// TRANSLATORS: font size
46
N_
(
"Normal (13)"
),
47
// TRANSLATORS: font size
48
N_
(
"Large (14)"
),
49
// TRANSLATORS: font size
50
N_
(
"Large (15)"
),
51
// TRANSLATORS: font size
52
N_
(
"Large (16)"
),
53
// TRANSLATORS: font size
54
N_
(
"Big (17)"
),
55
// TRANSLATORS: font size
56
N_
(
"Big (18)"
),
57
// TRANSLATORS: font size
58
N_
(
"Big (19)"
),
59
// TRANSLATORS: font size
60
N_
(
"Very big (20)"
),
61
// TRANSLATORS: font size
62
N_
(
"Very big (21)"
),
63
// TRANSLATORS: font size
64
N_
(
"Very big (22)"
),
65
// TRANSLATORS: font size
66
N_
(
"Huge (23)"
)
67
};
68
69
class
FontSizeChoiceListModel
final
:
public
ListModel
70
{
71
public
:
72
FontSizeChoiceListModel
() :
73
ListModel
()
74
{ }
75
76
A_DELETE_COPY
(
FontSizeChoiceListModel
)
77
78
int
getNumberOfElements
()
override
final
A_WARN_UNUSED
79
{
return
maxFontSizes
; }
80
81
std::string
getElementAt
(
int
i)
override
final
A_WARN_UNUSED
82
{
83
if
(i >=
getNumberOfElements
() || i < 0)
84
return
"???"
;
85
86
return
gettext(
SIZE_NAME
[i]);
87
}
88
};
89
90
#endif
// GUI_MODELS_FONTSIZECHOICELISTMODEL_H
FontSizeChoiceListModel
Definition:
fontsizechoicelistmodel.h:70
FontSizeChoiceListModel::getNumberOfElements
int getNumberOfElements()
Definition:
fontsizechoicelistmodel.h:78
FontSizeChoiceListModel::getElementAt
std::string getElementAt(int i)
Definition:
fontsizechoicelistmodel.h:81
FontSizeChoiceListModel::FontSizeChoiceListModel
FontSizeChoiceListModel()
Definition:
fontsizechoicelistmodel.h:72
ListModel
Definition:
listmodel.h:80
SIZE_NAME
const char * SIZE_NAME[maxFontSizes]
Definition:
fontsizechoicelistmodel.h:33
maxFontSizes
const int maxFontSizes
Definition:
fontsizechoicelistmodel.h:31
gettext.h
N_
#define N_(s)
Definition:
gettext.h:36
listmodel.h
localconsts.h
override
#define override
Definition:
localconsts.h:47
A_WARN_UNUSED
#define A_WARN_UNUSED
Definition:
localconsts.h:161
final
#define final
Definition:
localconsts.h:46
A_DELETE_COPY
#define A_DELETE_COPY(func)
Definition:
localconsts.h:53
Generated on Wed Mar 17 2021 19:19:06 for ManaPlus by
1.9.1