-
Notifications
You must be signed in to change notification settings - Fork 0
/
notebook_app.hpp
58 lines (42 loc) · 1.22 KB
/
notebook_app.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#ifndef NOTEBOOK_APP_H
#define NOTEBOOK_APP_H
#include "input_widget.hpp"
#include "output_widget.hpp"
#include "interpreter.hpp"
#include "startup_config.hpp"
#include "message_queue.hpp"
#include "settings.h"
#include <QWidget>
#include <QLayout>
#include <QDebug>
#include <QVector>
#include <QPoint>
#include <QString>
#include <string>
class NotebookApp : public QWidget {
Q_OBJECT
public:
NotebookApp(QWidget * parent = nullptr);
public slots:
void getUserText(QString inExp);
private:
// Composite objects
InputWidget * m_input_widget;
OutputWidget * m_output_widget;
// The thread-safe message queue channels for kernel I/O
//InputQueue m_queue_in;
//OutputQueue m_queue_out;
// The interpreter kernel
//Interpreter m_interp = Interpreter(&m_queue_in, &m_queue_out);
Interpreter m_interp;
// Mimick Plotscript to evaluate input
//void threadEvalLoop();
int startup(Interpreter & interp);
bool evalExpression(std::string inExp);
Settings errFormat(const std::string & message);
// Assign result to QGraphicsItem equivalent
Settings setGraphicsType(Expression exp);
signals:
void sendResult(Settings data);
};
#endif // NOTEBOOK_APP_H