-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDESIGN.txt
More file actions
26 lines (21 loc) · 1.78 KB
/
DESIGN.txt
File metadata and controls
26 lines (21 loc) · 1.78 KB
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
Project Title: Node
Kevin Li, Peter Lee
Our program is a tool for Computer Science students that allows them to quickly test sample code as they take notes for a given topic, so that they can see how the code being presented to them works during the lesson.
The user interface is divided into 3 main sections (or displays):
- There is an “open”, “create new”, and “save” button at the top.
- The user interface is divided into 3 main sections (or displays.) The upper left box is where the user can enter code, the upper right is where they take regular notes, and the bottom section displays the output of the code.
- After writing a proper c program in the code section, the user will be able to hit a “Compile & Run” button to see the program’s output in the “Output” pane.
- When they are done with that day’s notes and code, they can press a “save” button that puts all the files into a specified directory
Technical Design:
- Allocating memory for saving different block of texts to char arrays.
- Working with files as we will have to save each pane as a text file so everything can be reloaded.
- Redirecting for saving the output of the program into a file that the program will read and show in the “output” pane
- Forking off and execvp to compile/run/redirect the program output.
Responsibility Breakdown:
- Kevin: Figuring out code compiling
- Peter: GUI with gtk library
Timeline:
1/1/18 - Creating a general user interface with notes and code panes (editable and save to files)
1/6/18 - Creating the output pane and the compile & run button.
1/10/18 - Compiling the C program written in the code pane, running it, redirecting the output to an “output” file when the button is hit.
1/13/18 - Reading and writing the output file to the “output” pane.