FougTools  0.7.0dev-046fb6a
Handy tools for C++, Qt and OpenCascade
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
calculator.h
Go to the documentation of this file.
1 /****************************************************************************
2 ** FougTools
3 ** Copyright Fougue (30 Mar. 2015)
4 ** contact@fougue.pro
5 **
6 ** This software is a computer program whose purpose is to provide utility
7 ** tools for the C++ language and the Qt toolkit.
8 **
9 ** This software is governed by the CeCILL-C license under French law and
10 ** abiding by the rules of distribution of free software. You can use,
11 ** modify and/ or redistribute the software under the terms of the CeCILL-C
12 ** license as circulated by CEA, CNRS and INRIA at the following URL
13 ** "http://www.cecill.info".
14 ****************************************************************************/
15 
16 #pragma once
17 
18 #include "script.h"
19 #include <QtScript/QScriptEngine>
20 
21 namespace qtscript {
22 
24 {
25 public:
26  Calculator();
27 
28  void evaluate(const QString& program);
29  bool hasResult() const;
30  QString lastErrorText() const;
31 
32  double lastResult() const;
33  QString lastResultText() const;
34 
35 private:
36  QScriptEngine m_scriptEngine;
37  QScriptValue m_lastResult;
38 };
39 
40 } // namespace qtscript
#define QTTOOLS_SCRIPT_EXPORT
Definition: script.h:27
Definition: calculator.cpp:18
Provides evaluation of expressions.
Definition: calculator.h:23