Expando Node for an Expando. More...
#include "config.h"
#include <ctype.h>
#include <limits.h>
#include <stdio.h>
#include "mutt/lib.h"
#include "node_expando.h"
#include "color/lib.h"
#include "definition.h"
#include "format.h"
#include "helpers.h"
#include "mutt_thread.h"
#include "node.h"
#include "parse.h"
#include "render.h"
Go to the source code of this file.
Functions | |
struct NodeExpandoPrivate * | node_expando_private_new (void) |
Create new Expando private data. | |
void | node_expando_private_free (void **ptr) |
Free Expando private data - Implements ExpandoNode::ndata_free() | |
struct ExpandoNode * | node_expando_new (const char *start, const char *end, struct ExpandoFormat *fmt, int did, int uid) |
Create a new Expando ExpandoNode. | |
void | node_expando_set_color (const struct ExpandoNode *node, int cid) |
Set the colour for an Expando. | |
void | node_expando_set_has_tree (const struct ExpandoNode *node, bool has_tree) |
Set the has_tree flag for an Expando. | |
struct ExpandoFormat * | parse_format (const char *start, const char *end, struct ExpandoParseError *error) |
Parse a format string. | |
struct ExpandoNode * | node_expando_parse (const char *str, const char **parsed_until, const struct ExpandoDefinition *defs, ExpandoParserFlags flags, struct ExpandoParseError *error) |
Parse an Expando format string. | |
struct ExpandoNode * | node_expando_parse_enclosure (const char *str, const char **parsed_until, int did, int uid, char terminator, struct ExpandoParseError *error) |
Parse an enclosed Expando. | |
void | add_color (struct Buffer *buf, enum ColorId cid) |
Add a colour code to a buffer. | |
int | node_expando_render (const struct ExpandoNode *node, const struct ExpandoRenderData *rdata, struct Buffer *buf, int max_cols, void *data, MuttFormatFlags flags) |
Render an Expando Node - Implements ExpandoNode::render() -. | |
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Definition in file node_expando.c.
struct NodeExpandoPrivate * node_expando_private_new | ( | void | ) |
Create new Expando private data.
ptr | New Expando private data |
Definition at line 49 of file node_expando.c.
void node_expando_private_free | ( | void ** | ptr | ) |
Free Expando private data - Implements ExpandoNode::ndata_free()
ptr | Data to free |
Definition at line 63 of file node_expando.c.
struct ExpandoNode * node_expando_new | ( | const char * | start, |
const char * | end, | ||
struct ExpandoFormat * | fmt, | ||
int | did, | ||
int | uid | ||
) |
Create a new Expando ExpandoNode.
start | Start of Expando string |
end | End of Expando string |
fmt | Formatting data |
did | Domain ID |
uid | Unique ID |
ptr | New Expando ExpandoNode |
Definition at line 80 of file node_expando.c.
void node_expando_set_color | ( | const struct ExpandoNode * | node, |
int | cid | ||
) |
Set the colour for an Expando.
node | Node to alter |
cid | Colour |
Definition at line 106 of file node_expando.c.
void node_expando_set_has_tree | ( | const struct ExpandoNode * | node, |
bool | has_tree | ||
) |
Set the has_tree flag for an Expando.
node | Node to alter |
has_tree | Flag to set |
Definition at line 121 of file node_expando.c.
struct ExpandoFormat * parse_format | ( | const char * | start, |
const char * | end, | ||
struct ExpandoParseError * | error | ||
) |
Parse a format string.
start | Start of string |
end | End of string |
error | Buffer for errors |
ptr | New ExpandoFormat object |
Parse a printf()-style format, e.g. '-15.20x'
Definition at line 140 of file node_expando.c.
struct ExpandoNode * node_expando_parse | ( | const char * | str, |
const char ** | parsed_until, | ||
const struct ExpandoDefinition * | defs, | ||
ExpandoParserFlags | flags, | ||
struct ExpandoParseError * | error | ||
) |
Parse an Expando format string.
[in] | str | String to parse |
[out] | parsed_until | First character after parsed string |
[in] | defs | Expando definitions |
[in] | flags | Flag for conditional expandos |
[out] | error | Buffer for errors |
ptr | New ExpandoNode |
Definition at line 237 of file node_expando.c.
struct ExpandoNode * node_expando_parse_enclosure | ( | const char * | str, |
const char ** | parsed_until, | ||
int | did, | ||
int | uid, | ||
char | terminator, | ||
struct ExpandoParseError * | error | ||
) |
Parse an enclosed Expando.
str | String to parse |
parsed_until | First character after the parsed string |
did | Domain ID |
uid | Unique ID |
terminator | Terminating character |
error | Buffer for errors |
ptr | New ExpandoNode |
Definition at line 296 of file node_expando.c.
Add a colour code to a buffer.
buf | Buffer for colour code |
cid | Colour |
Definition at line 333 of file node_expando.c.