* Rewrite support for specific SSL encryption protocols, including
[alpine.git] / alpine / confscroll.h
blobddb14862041be70be2e675755e14355963e6d0ef
1 /*
2 * $Id: confscroll.h 812 2007-11-10 01:00:15Z hubert@u.washington.edu $
4 * ========================================================================
5 * Copyright 2006-2007 University of Washington
6 * Copyright 2013-2018 Eduardo Chappa
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * ========================================================================
17 #ifndef PINE_CONFSCROLL_INCLUDED
18 #define PINE_CONFSCROLL_INCLUDED
21 #include "conftype.h"
22 #include "../pith/conf.h"
23 #include "../pith/state.h"
26 #define BODY_LINES(X) ((X)->ttyo->screen_rows -HEADER_ROWS(X)-FOOTER_ROWS(X))
28 #define R_SELD '*'
30 #define EXIT_PMT "Commit changes (\"Yes\" replaces settings, \"No\" abandons changes)"
33 /* another in a long line of hacks in this stuff */
34 #define DSTRING "default ("
35 #define VSTRING "value from fcc-name-rule"
38 #define next_confline(p) ((p) ? (p)->next : NULL)
39 #define prev_confline(p) ((p) ? (p)->prev : NULL)
42 extern char *empty_val;
43 extern char *empty_val2;
46 extern struct variable *score_act_global_ptr,
47 *scorei_pat_global_ptr,
48 *age_pat_global_ptr,
49 *size_pat_global_ptr,
50 *cati_global_ptr,
51 *cat_cmd_global_ptr,
52 *cat_lim_global_ptr,
53 *startup_ptr,
54 *role_comment_ptr,
55 *role_forw_ptr,
56 *role_repl_ptr,
57 *role_fldr_ptr,
58 *role_afrom_ptr,
59 *role_filt_ptr,
60 *role_status1_ptr,
61 *role_status2_ptr,
62 *role_status3_ptr,
63 *role_status4_ptr,
64 *role_status5_ptr,
65 *role_status6_ptr,
66 *role_status7_ptr,
67 *role_status8_ptr,
68 *msg_state1_ptr,
69 *msg_state2_ptr,
70 *msg_state3_ptr,
71 *msg_state4_ptr;
74 extern OPT_SCREEN_S *opt_screen;
77 extern EditWhich ew;
80 /* exported protoypes */
81 int conf_scroll_screen(struct pine *, OPT_SCREEN_S *, CONF_S *, char *, char *, int, int *);
82 void standard_radio_setup(struct pine *, CONF_S **, struct variable *, CONF_S **);
83 int standard_radio_var(struct pine *, struct variable *);
84 int delete_user_vals(struct variable *);
85 int get_confline_number(CONF_S *);
86 CONF_S *set_confline_number(CONF_S *, int);
87 CONF_S *new_confline(CONF_S **);
88 void free_conflines(CONF_S **);
89 CONF_S *first_confline(CONF_S *);
90 CONF_S *first_sel_confline(CONF_S *);
91 void snip_confline(CONF_S **);
92 char *pretty_value(struct pine *, CONF_S *);
93 int feature_indent(void);
94 SAVED_CONFIG_S *save_config_vars(struct pine *, int);
95 int text_tool(struct pine *, int, CONF_S **, unsigned);
96 int checkbox_tool(struct pine *, int, CONF_S **, unsigned);
97 int radiobutton_tool(struct pine *, int, CONF_S **, unsigned);
98 int yesno_tool(struct pine *, int, CONF_S **, unsigned);
99 int text_toolit(struct pine *, int, CONF_S **, unsigned, int);
100 char *generalized_sort_pretty_value(struct pine *, CONF_S *, int);
101 int exclude_config_var(struct pine *, struct variable *, int);
102 int config_exit_cmd(unsigned);
103 int simple_exit_cmd(unsigned);
104 int screen_exit_cmd(unsigned, char *);
105 void config_add_list(struct pine *, CONF_S **, char **, char ***, int);
106 void config_del_list_item(CONF_S **, char ***);
107 void toggle_feature_bit(struct pine *, int, struct variable *, CONF_S *, int);
108 int fixed_var(struct variable *, char *, char *);
109 void exception_override_warning(struct variable *);
110 void offer_to_fix_pinerc(struct pine *);
111 void fix_side_effects(struct pine *, struct variable *, int);
112 void revert_to_saved_config(struct pine *, SAVED_CONFIG_S *, int);
113 void free_saved_config(struct pine *, SAVED_CONFIG_S **, int);
116 #endif /* PINE_CONFSCROLL_INCLUDED */