* New version 2.21.999
[alpine.git] / alpine / flagmaint.h
blob47c07b3fa641a3d1a45c4782fe690921f0411c1b
1 /*
2 * $Id: flagmaint.h 807 2007-11-09 01:21:33Z 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_FLAGMAINT_INCLUDED
18 #define PINE_FLAGMAINT_INCLUDED
21 #include "../pith/state.h"
25 * Structures to control flag maintenance screen
27 struct flag_table {
28 char *name; /* flag's name or keyword's nickname */
29 HelpType help; /* help text */
30 long flag; /* flag tag (i.e., F_DEL ) */
31 unsigned set:2; /* its state (set, unset, unknown) */
32 unsigned ukn:1; /* allow unknown state */
33 char *keyword; /* only for user-defined, could be same as name */
34 char *comment; /* comment about the name, keyword name if there is a nick */
38 struct flag_screen {
39 char **explanation;
40 struct flag_table **flag_table;
44 * Some defs to help keep flag setting straight...
46 #define CMD_FLAG_CLEAR FALSE
47 #define CMD_FLAG_SET TRUE
48 #define CMD_FLAG_UNKN 2
51 /* exported protoypes */
52 int flag_maintenance_screen(struct pine *, struct flag_screen *);
55 #endif /* PINE_FLAGMAINT_INCLUDED */