aboutsummaryrefslogtreecommitdiffstats
path: root/build/4coder_byp/custom/4coder_prj_v1.h
blob: f93b9aeabc481000cc249624582b716302d22a95 (plain) (blame)
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
/*
4coder_prj_v1.h - type header paired with 4coder_prj_v1.cpp
*/

// TOP

#ifndef FCODER_PRJ_V1_H
#define FCODER_PRJ_V1_H

///////////////////////////////
// NOTE(allen): Project v0-v1 Structure

struct Prj_V1_File_Load_Path{
 String8 path;
 b32 recursive;
 b32 relative;
 };

 struct Prj_V1_File_Load_Path_Array{
 Prj_V1_File_Load_Path *paths;
 i32 count;
 };

 struct Prj_V1_Command{
 String8 name;
 String8 cmd;
 String8 out;
 b32 footer_panel;
 b32 save_dirty_files;
 b32 cursor_at_end;
 };

 struct Prj_V1_Command_Array{
 Prj_V1_Command *commands;
 i32 count;
 };

 struct Prj_V1{
 b32 loaded;

 String8 dir;
 String8 name;

 Prj_Pattern_List pattern_list;
 Prj_Pattern_List blacklist_pattern_list;
 Prj_V1_File_Load_Path_Array load_path_array;
 Prj_V1_Command_Array command_array;

 i32 fkey_commands[16];
 };

 enum Prj_V1_OS_Match_Level{
 PrjV1OSMatchLevel_NoMatch = 0,
 PrjV1OSMatchLevel_PassiveMatch = 1,
 PrjV1OSMatchLevel_ActiveMatch = 2,
};


////////////////////////////////
// NOTE(allen): Project v0-v1 -> v2 Function

function Variable_Handle prj_v1_to_v2(Application_Links *app, String8 dir, Config *parsed);


#endif //4CODER_PRJ_V1_H

// BOTTOM