-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.cpp
79 lines (68 loc) · 2.46 KB
/
main.cpp
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QMainWindow>
#include <QtWidgets/QMenuBar>
#include <QtWidgets/QMessageBox>
#include <QtWidgets/QVBoxLayout>
#include "window.h"
#include <csignal>
int
main (int argc, char *argv[])
{
QApplication app (argc, argv);
QMainWindow *window = new QMainWindow;
QMenuBar *tool_bar = new QMenuBar (window);
tool_bar->move (100, 0);
tool_bar->update ();
Window *graph_area = new Window (window);
QAction *action;
if (graph_area->parse_command_line (argc, argv))
{
QMessageBox::warning (0, "Wrong input arguments!",
"Wrong input arguments!");
printf ("usage: ./basic_graph <a> <b>");
return -1;
}
printf ("Shortcuts: \n"
"Change function 0\n"
"Show disrep 1\n"
"Zoom in 2\n"
"Zoom out 3\n"
"Double n 4\n"
"Half n 5\n"
"Add delta 6\n"
"Subtract delta 7\n"
"Exit Ctrl+W\n"
);
action = tool_bar->addAction ("Change function", graph_area,
SLOT (change_func ()));
action->setShortcut (QString ("0"));
action =
tool_bar->addAction ("Change content", graph_area, SLOT (change_content ()));
action->setShortcut (QString ("1"));
action = tool_bar->addAction ("Zoom in", graph_area, SLOT (zoom_in ()));
action->setShortcut (QString ("2"));
action = tool_bar->addAction ("Zoom out", graph_area, SLOT (zoom_out ()));
action->setShortcut (QString ("3"));
action = tool_bar->addAction ("Double n", graph_area, SLOT (double_n ()));
action->setShortcut (QString ("4"));
action = tool_bar->addAction ("Half n", graph_area, SLOT (half_n ()));
action->setShortcut (QString ("5"));
action = tool_bar->addAction ("Add delta", graph_area, SLOT (add_delta ()));
action->setShortcut (QString ("6"));
action = tool_bar->addAction ("Subtract delta", graph_area, SLOT (subtract_delta ()));
action->setShortcut (QString ("7"));
action = tool_bar->addAction ("Set big n", graph_area, SLOT (set_big_n ()));
action = tool_bar->addAction ("Exit", window, SLOT (close ()));
action->setShortcut (QString ("Ctrl+W"));
tool_bar->setMaximumHeight (30);
window->setMenuBar (tool_bar);
window->setCentralWidget (graph_area);
window->setWindowTitle ("Graph");
window->show ();
app.exec ();
delete graph_area;
delete tool_bar;
delete window;
return 0;
}