1// This file is part of SmallBASIC
2//
3// Copyright(C) 2001-2019 Chris Warren-Smith.
4//
5// This program is distributed under the terms of the GPL v2.0 or later
6// Download the GNU Public License (GPL) from www.gnu.org
7//
8
9#ifndef FLTK_RUNTIME_H
10#define FLTK_RUNTIME_H
11
12#include "ui/ansiwidget.h"
13#include "ui/system.h"
14
15struct Runtime : public System {
16 Runtime(int w, int h, int fontSize);
17 virtual ~Runtime();
18
19 void addShortcut(const char *) {}
20 void alert(const char *title, const char *message);
21 int ask(const char *title, const char *prompt, bool cancel=true);
22 void browseFile(const char *url);
23 char *getClipboardText();
24 int getFontSize() { return _output->getFontSize(); }
25 void enableCursor(bool enabled);
26 int handle(int event);
27 void optionsBox(StringList *items);
28 void onRunCompleted() {}
29 void saveWindowRect() {}
30 MAEvent processEvents(int waitFlag);
31 bool run(const char *bas) { return execute(bas); }
32 void runSamples();
33 void resize(int w, int h);
34 void setClipboardText(const char *text);
35 void setFontSize(int size);
36 void setLoadBreak(const char *url) {}
37 void setLoadPath(const char *url) {}
38 void setWindowSize(int width, int height);
39 void setWindowTitle(const char *title);
40 void share(const char *path) {}
41 void showCursor(CursorType cursorType);
42};
43
44#endif
45