annotate main.cpp @ 9:822a2fe5bb51

move command window to separate file and other refactoring
author John W. Eaton <jwe@octave.org>
date Thu, 23 May 2019 12:36:26 -0400
parents 08df60a01bc1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
1 #include <string>
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
2
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
3 #include <readline/history.h>
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
4
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
5 #include "gui-main.h"
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
6 #include "tty-main.h"
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
7
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
8 int
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
9 main (int argc, char **argv)
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
10 {
9
822a2fe5bb51 move command window to separate file and other refactoring
John W. Eaton <jwe@octave.org>
parents: 1
diff changeset
11 bool tty_mode = false;
822a2fe5bb51 move command window to separate file and other refactoring
John W. Eaton <jwe@octave.org>
parents: 1
diff changeset
12
0
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
13 int new_argc = 0;
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
14
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
15 char **new_argv = new char* [argc + 1];
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
16
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
17 new_argv[new_argc++] = argv[0];
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
18
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
19 for (int i = 1; i < argc; i++)
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
20 {
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
21 if (argv[i] == std::string ("--tty"))
9
822a2fe5bb51 move command window to separate file and other refactoring
John W. Eaton <jwe@octave.org>
parents: 1
diff changeset
22 tty_mode = true;
0
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
23 else
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
24 new_argv[new_argc++] = argv[i];
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
25 }
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
26
9
822a2fe5bb51 move command window to separate file and other refactoring
John W. Eaton <jwe@octave.org>
parents: 1
diff changeset
27 int status = tty_mode
822a2fe5bb51 move command window to separate file and other refactoring
John W. Eaton <jwe@octave.org>
parents: 1
diff changeset
28 ? calc::tty_main (new_argc, new_argv)
822a2fe5bb51 move command window to separate file and other refactoring
John W. Eaton <jwe@octave.org>
parents: 1
diff changeset
29 : calc::gui_main (new_argc, new_argv);
0
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
30
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
31 delete [] new_argv;
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
32
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
33 return status;
dff751fb985c initial revision
John W. Eaton <jwe@octave.org>
parents:
diff changeset
34 }