projectexplorersettings.h 3.01 KB
Newer Older
1 2 3 4
/**************************************************************************
**
** This file is part of Qt Creator
**
hjk's avatar
hjk committed
5
** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
6 7 8
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
con's avatar
con committed
9
** No Commercial Usage
10
**
con's avatar
con committed
11 12 13 14
** This file contains pre-release code and may not be distributed.
** You may use this file in accordance with the terms and conditions
** contained in the Technology Preview License Agreement accompanying
** this package.
15 16 17 18 19 20 21 22 23 24
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file.  Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
con's avatar
con committed
25 26 27 28 29 30
** In addition, as a special exception, Nokia gives you certain additional
** rights.  These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
31 32 33 34 35 36
**
**************************************************************************/

#ifndef PROJECTEXPLORERSETTINGS_H
#define PROJECTEXPLORERSETTINGS_H

37 38
#include <QtCore/QUuid>

39 40 41 42 43
namespace ProjectExplorer {
namespace Internal {

struct ProjectExplorerSettings
{
44 45 46
    ProjectExplorerSettings() :
        buildBeforeDeploy(true), deployBeforeRun(true),
        saveBeforeBuild(false), showCompilerOutput(false),
47 48
        showRunOutput(true), cleanOldAppOutput(false),
        wrapAppOutput(true), useJom(true),
49 50
        autorestoreLastSession(false)
    { }
51

Tobias Hunger's avatar
Tobias Hunger committed
52 53
    bool buildBeforeDeploy;
    bool deployBeforeRun;
54 55
    bool saveBeforeBuild;
    bool showCompilerOutput;
56
    bool showRunOutput;
57
    bool cleanOldAppOutput;
58
    bool wrapAppOutput;
59
    bool useJom;
60 61
    bool autorestoreLastSession; // This option is set in the Session Manager!

62 63 64 65
    // Add a UUid which is used to identify the development environment.
    // This is used to warn the user when he is trying to open a .user file that was created
    // somewhere else (which might lead to unexpected results).
    QUuid environmentId;
66 67
};

68 69
inline bool operator==(const ProjectExplorerSettings &p1, const ProjectExplorerSettings &p2)
{
Tobias Hunger's avatar
Tobias Hunger committed
70 71
    return p1.buildBeforeDeploy == p2.buildBeforeDeploy
            && p1.deployBeforeRun == p2.deployBeforeRun
72 73
            && p1.saveBeforeBuild == p2.saveBeforeBuild
            && p1.showCompilerOutput == p2.showCompilerOutput
74
            && p1.showRunOutput == p2.showRunOutput
75
            && p1.cleanOldAppOutput == p2.cleanOldAppOutput
76
            && p1.wrapAppOutput == p2.wrapAppOutput
77 78
            && p1.useJom == p2.useJom
            && p1.autorestoreLastSession == p2.autorestoreLastSession;
79 80 81
}


82 83 84 85
} // namespace ProjectExplorer
} // namespace Internal

#endif // PROJECTEXPLORERSETTINGS_H