on b91bd69 help sign in
unity8/src/UnityCommandLineParser.h
50 lines 1.6 kB history raw
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 */
17#ifndef UNITY_COMMAND_LINE_PARSER_H
18#define UNITY_COMMAND_LINE_PARSER_H
20#include <QCommandLineParser>
21#include <QSize>
22#include <QString>
24class UnityCommandLineParser {
25public:
26 UnityCommandLineParser(const QCoreApplication &app);
28 QSize windowGeometry() const { return m_windowGeometry; }
29 bool hasTestability() const { return m_hasTestability; }
30 bool hasFrameless() const { return m_hasFrameless; }
31 bool hasMouseToTouch() const { return m_hasMouseToTouch; }
32 bool hasFullscreen() const { return m_hasFullscreen; }
33 QString mode() const { return m_mode; }
34private:
36 int parsePixelsValue(const QString &str);
37 static float getenvFloat(const char* name, float defaultValue);
38 void resolveMode(QCommandLineParser &parser, QCommandLineOption &modeOption);
40 float m_gridUnit;
42 QSize m_windowGeometry;
43 bool m_hasTestability;
44 bool m_hasFrameless;
45 bool m_hasMouseToTouch;
46 bool m_hasFullscreen;
47 QString m_mode;
48};
50#endif // UNITY_COMMAND_LINE_PARSER_H