summaryrefslogtreecommitdiff
path: root/sched.c
blob: d5f110e411cd3ee2887d3f124bbd817012c2b04b (plain)
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
#include <stdio.h>
#include <ncurses.h>
#include <time.h>

/* report of working on a task, records start time in time_t, and elapsed time
 * also in time_t. % of work done in float. 
 */
struct report {
	time_t start; //start date
	time_t interval; //interval of work
	float completed; // percent of task completed
};
/* Task to be scheduled
 */
struct task {
	const char * name; //name of task
	int lvl;
	time_t start; //Date at which you can work on this task
	time_t end; //due date
	time_t workable; //workable interval
	time_t deJureCost;// De Jure estimate of total cost
	float completed; // percent of the task completed
	float cost; // time per percent completed, current bayesian analysis
	float saturation; //saturation
	struct report * reports; //list of reports
	time_t lastupdated; // last date the task was edited/created, for syncing
};
/*global array of all tasks*/
struct task * tasks;

int main (int argc,char * argv[]) {
	initscr();
	raw(); //Characters immediately available
	noecho(); //Typed Characters not printed
	keypad(stdscr, true); // enables Keyoad and Function keys
	mvprintw(LINES/2, COLS/2, "%s\n", argv[0]);
	refresh(); //refreshes the screen
	getch(); //Stalls the thread
	endwin();
	return 0;
}
/* creates a tab transversable menu list of input boxes 
 * Arguments: names of the inputs and the defaults in the text field
 * if def
 */
int inputmenu(char * names[], char * in) {

}