Pencil2D Animation
Download
Community
News
Docs
Contribute
Overview
Articles
Code
Class List
Class Index
Class Hierarchy
Class Members
File List
Loading...
Searching...
No Matches
core_lib
src
managers
preferencemanager.h
1
/*
2
3
Pencil2D - Traditional Animation Software
4
Copyright (C) 2005-2007 Patrick Corrieri & Pascal Naidon
5
Copyright (C) 2012-2020 Matthew Chiawen Chang
6
7
This program is free software; you can redistribute it and/or
8
modify it under the terms of the GNU General Public License
9
as published by the Free Software Foundation; version 2 of the License.
10
11
This program is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
*/
17
18
#ifndef PREFERENCEMANAGER_H
19
#define PREFERENCEMANAGER_H
20
21
#include <bitset>
22
#include <QHash>
23
#include "basemanager.h"
24
#include "pencildef.h"
25
#include "preferencesdef.h"
26
27
class
PreferenceManager
:
public
BaseManager
28
{
29
Q_OBJECT
30
31
public
:
32
explicit
PreferenceManager
(
Editor
* editor);
33
~PreferenceManager
()
override
;
34
35
virtual
bool
init()
override
;
36
Status
load(
Object
*)
override
;
37
Status
save(
Object
*)
override
;
38
39
void
loadPrefs();
40
void
set(SETTING option,
QString
value);
41
void
set(SETTING option,
int
value);
42
void
set(SETTING option,
bool
value);
43
void
set(SETTING option,
float
value);
44
45
void
turnOn(SETTING option);
46
void
turnOff(SETTING option);
47
bool
isOn(SETTING option);
48
49
QString
getString(SETTING option);
50
int
getInt(SETTING option);
51
float
getFloat(SETTING option);
52
53
signals:
54
void
optionChanged(SETTING e);
55
56
private
:
57
QHash<int, QString>
mStringSet;
58
QHash<int, int>
mIntegerSet;
59
QHash<int, bool>
mBooleanSet;
60
QHash<int, float>
mFloatingPointSet;
61
};
62
63
#endif
// PREFERENCEMANAGER_H
BaseManager
Definition:
basemanager.h:29
Editor
Definition:
editor.h:70
Object
Definition:
object.h:42
PreferenceManager
Definition:
preferencemanager.h:28
Status
Definition:
pencilerror.h:40
QHash
QObject::Q_OBJECT
Q_OBJECTQ_OBJECT
QString