summaryrefslogtreecommitdiff
path: root/src/plugins/python/pythonsettings.h
diff options
context:
space:
mode:
authorDavid Schulz <david.schulz@qt.io>2019-07-05 09:40:31 +0200
committerDavid Schulz <david.schulz@qt.io>2019-07-30 07:41:30 +0000
commita99e5af1da276ddca391fb56a1a9a5334794f298 (patch)
tree4bf3480ff509838fd739a844a64df9b639adb2ab /src/plugins/python/pythonsettings.h
parent1fb41647ebfef47e5d83e047e46f9caec16026a6 (diff)
downloadqt-creator-a99e5af1da276ddca391fb56a1a9a5334794f298.tar.gz
Python: make interpreter configurable
Add settings page to setup python interpreter and use a combo box in the run configuration to switch between those configured interpreter. Change-Id: I51014b785ea822ee138d39c788149f1d22901e55 Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: David Schulz <david.schulz@qt.io>
Diffstat (limited to 'src/plugins/python/pythonsettings.h')
-rw-r--r--src/plugins/python/pythonsettings.h62
1 files changed, 62 insertions, 0 deletions
diff --git a/src/plugins/python/pythonsettings.h b/src/plugins/python/pythonsettings.h
new file mode 100644
index 0000000000..583d4fb212
--- /dev/null
+++ b/src/plugins/python/pythonsettings.h
@@ -0,0 +1,62 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 as published by the Free Software
+** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+****************************************************************************/
+
+#pragma once
+
+#include <utils/fileutils.h>
+
+#include <QUuid>
+
+namespace Python {
+namespace Internal {
+
+class Interpreter
+{
+public:
+ QString id;
+ QString name;
+ Utils::FilePath command;
+};
+
+class PythonSettings : public QObject
+{
+ Q_OBJECT
+public:
+ static void init();
+
+ static QList<Interpreter> interpreters();
+ static Interpreter defaultInterpreter();
+ static void setInterpreter(const QList<Interpreter> &interpreters, const QString &defaultId);
+ static PythonSettings *instance();
+
+signals:
+ void interpretersChanged(const QList<Interpreter> &interpreters, const QString &defaultId);
+
+private:
+ PythonSettings();
+};
+
+} // namespace Internal
+} // namespace PythonEditor