aboutsummaryrefslogtreecommitdiff
path: root/add-patch.h
diff options
context:
space:
mode:
Diffstat (limited to 'add-patch.h')
-rw-r--r--add-patch.h38
1 files changed, 35 insertions, 3 deletions
diff --git a/add-patch.h b/add-patch.h
index 88b00ca788..e6868c60a2 100644
--- a/add-patch.h
+++ b/add-patch.h
@@ -1,16 +1,48 @@
#ifndef ADD_PATCH_H
#define ADD_PATCH_H
+#include "color.h"
+
struct pathspec;
struct repository;
-struct add_p_opt {
+struct interactive_options {
int context;
int interhunkcontext;
int auto_advance;
};
-#define ADD_P_OPT_INIT { .context = -1, .interhunkcontext = -1, .auto_advance = 1 }
+#define INTERACTIVE_OPTIONS_INIT { \
+ .context = -1, \
+ .interhunkcontext = -1, \
+ .auto_advance = 1, \
+}
+
+struct interactive_config {
+ enum git_colorbool use_color_interactive;
+ enum git_colorbool use_color_diff;
+ char header_color[COLOR_MAXLEN];
+ char help_color[COLOR_MAXLEN];
+ char prompt_color[COLOR_MAXLEN];
+ char error_color[COLOR_MAXLEN];
+ char reset_color_interactive[COLOR_MAXLEN];
+
+ char fraginfo_color[COLOR_MAXLEN];
+ char context_color[COLOR_MAXLEN];
+ char file_old_color[COLOR_MAXLEN];
+ char file_new_color[COLOR_MAXLEN];
+ char reset_color_diff[COLOR_MAXLEN];
+
+ int use_single_key;
+ char *interactive_diff_filter, *interactive_diff_algorithm;
+ int context, interhunkcontext;
+ int auto_advance;
+};
+
+void interactive_config_init(struct interactive_config *cfg,
+ struct repository *r,
+ struct interactive_options *opts);
+void interactive_config_clear(struct interactive_config *cfg);
enum add_p_mode {
ADD_P_ADD,
@@ -21,7 +53,7 @@ enum add_p_mode {
};
int run_add_p(struct repository *r, enum add_p_mode mode,
- struct add_p_opt *o, const char *revision,
+ struct interactive_options *opts, const char *revision,
const struct pathspec *ps);
#endif