]>
Commit | Line | Data |
---|---|---|
1 | #ifndef STATUS_H | |
2 | #define STATUS_H | |
3 | ||
4 | #include <stdio.h> | |
5 | #include "string-list.h" | |
6 | #include "color.h" | |
7 | ||
8 | enum color_wt_status { | |
9 | WT_STATUS_HEADER = 0, | |
10 | WT_STATUS_UPDATED, | |
11 | WT_STATUS_CHANGED, | |
12 | WT_STATUS_UNTRACKED, | |
13 | WT_STATUS_NOBRANCH, | |
14 | WT_STATUS_UNMERGED, | |
15 | }; | |
16 | ||
17 | enum untracked_status_type { | |
18 | SHOW_NO_UNTRACKED_FILES, | |
19 | SHOW_NORMAL_UNTRACKED_FILES, | |
20 | SHOW_ALL_UNTRACKED_FILES | |
21 | }; | |
22 | ||
23 | struct wt_status_change_data { | |
24 | int worktree_status; | |
25 | int index_status; | |
26 | int stagemask; | |
27 | char *head_path; | |
28 | }; | |
29 | ||
30 | struct wt_status { | |
31 | int is_initial; | |
32 | char *branch; | |
33 | const char *reference; | |
34 | const char **pathspec; | |
35 | int verbose; | |
36 | int amend; | |
37 | int in_merge; | |
38 | int nowarn; | |
39 | int use_color; | |
40 | int relative_paths; | |
41 | int submodule_summary; | |
42 | enum untracked_status_type show_untracked_files; | |
43 | char color_palette[WT_STATUS_UNMERGED+1][COLOR_MAXLEN]; | |
44 | ||
45 | /* These are computed during processing of the individual sections */ | |
46 | int commitable; | |
47 | int workdir_dirty; | |
48 | int workdir_untracked; | |
49 | const char *index_file; | |
50 | FILE *fp; | |
51 | const char *prefix; | |
52 | struct string_list change; | |
53 | struct string_list untracked; | |
54 | }; | |
55 | ||
56 | void wt_status_prepare(struct wt_status *s); | |
57 | void wt_status_print(struct wt_status *s); | |
58 | void wt_status_collect(struct wt_status *s); | |
59 | ||
60 | void wt_shortstatus_print(struct wt_status *s, int null_termination); | |
61 | void wt_porcelain_print(struct wt_status *s, int null_termination); | |
62 | ||
63 | #endif /* STATUS_H */ |