Unity 8
UnityCommandLineParser.h
1
/*
2
* Copyright (C) 2015 Canonical, Ltd.
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation; version 3.
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*/
16
17
#ifndef UNITY_COMMAND_LINE_PARSER_H
18
#define UNITY_COMMAND_LINE_PARSER_H
19
20
#include <QCommandLineParser>
21
#include <QSize>
22
#include <QString>
23
24
class
UnityCommandLineParser {
25
public
:
26
UnityCommandLineParser(
const
QCoreApplication &app);
27
28
QSize windowGeometry()
const
{
return
m_windowGeometry; }
29
bool
hasTestability()
const
{
return
m_hasTestability; }
30
bool
hasFrameless()
const
{
return
m_hasFrameless; }
31
32
#ifdef UNITY8_ENABLE_TOUCH_EMULATION
33
bool
hasMouseToTouch()
const
{
return
m_hasMouseToTouch; }
34
#endif
35
36
bool
hasFullscreen()
const
{
return
m_hasFullscreen; }
37
QString deviceName()
const
{
return
m_deviceName; }
38
QString mode()
const
{
return
m_mode; }
39
private
:
40
41
int
parsePixelsValue(
const
QString &str);
42
static
float
getenvFloat(
const
char
* name,
float
defaultValue);
43
void
resolveMode(QCommandLineParser &parser, QCommandLineOption &modeOption);
44
45
float
m_gridUnit;
46
47
QSize m_windowGeometry;
48
bool
m_hasTestability;
49
bool
m_hasFrameless;
50
51
#ifdef UNITY8_ENABLE_TOUCH_EMULATION
52
bool
m_hasMouseToTouch;
53
#endif
54
55
bool
m_hasFullscreen;
56
QString m_deviceName;
57
QString m_mode;
58
};
59
60
#endif // UNITY_COMMAND_LINE_PARSER_H
src
UnityCommandLineParser.h
Generated on Thu Dec 15 2016 16:17:29 for Unity 8 by
1.8.12