Sha256: 931de131807557de509167e5679b572b8e6575778123eb43c6fd711ac7ec6655

Contents?: true

Size: 1.54 KB

Versions: 10

Compression:

Stored size: 1.54 KB

Contents

/*
 * libxlsxwriter
 *
 * Copyright 2014-2017, John McNamara, jmcnamara@cpan.org. See LICENSE.txt.
 *
 * app - A libxlsxwriter library for creating Excel XLSX app files.
 *
 */
#ifndef __LXW_APP_H__
#define __LXW_APP_H__

#include <stdint.h>
#include <string.h>
#include "workbook.h"
#include "common.h"

/* Define the queue.h TAILQ structs for the App structs. */
STAILQ_HEAD(lxw_heading_pairs, lxw_heading_pair);
STAILQ_HEAD(lxw_part_names, lxw_part_name);

typedef struct lxw_heading_pair {

    char *key;
    char *value;

    STAILQ_ENTRY (lxw_heading_pair) list_pointers;

} lxw_heading_pair;

typedef struct lxw_part_name {

    char *name;

    STAILQ_ENTRY (lxw_part_name) list_pointers;

} lxw_part_name;

/* Struct to represent an App object. */
typedef struct lxw_app {

    FILE *file;

    struct lxw_heading_pairs *heading_pairs;
    struct lxw_part_names *part_names;
    lxw_doc_properties *properties;

    uint32_t num_heading_pairs;
    uint32_t num_part_names;

} lxw_app;


/* *INDENT-OFF* */
#ifdef __cplusplus
extern "C" {
#endif
/* *INDENT-ON* */

lxw_app *lxw_app_new();
void lxw_app_free(lxw_app *app);
void lxw_app_assemble_xml_file(lxw_app *self);
void lxw_app_add_part_name(lxw_app *self, const char *name);
void lxw_app_add_heading_pair(lxw_app *self, const char *key,
                              const char *value);

/* Declarations required for unit testing. */
#ifdef TESTING

STATIC void _app_xml_declaration(lxw_app *self);

#endif /* TESTING */

/* *INDENT-OFF* */
#ifdef __cplusplus
}
#endif
/* *INDENT-ON* */

#endif /* __LXW_APP_H__ */

Version data entries

10 entries across 10 versions & 3 rubygems

Version Path
fast_excel-0.2.3 libxlsxwriter/include/xlsxwriter/app.h
xlsxwriter-0.0.4 ext/xlsxwriter/libxlsxwriter/include/xlsxwriter/app.h
xlsxwriter-0.0.4.pre.2 ext/xlsxwriter/libxlsxwriter/include/xlsxwriter/app.h
fast_excel-0.2.2 libxlsxwriter/include/xlsxwriter/app.h
kmadej_fast_excel_fork-0.2.2 libxlsxwriter/include/xlsxwriter/app.h
fast_excel-0.2.1 libxlsxwriter/include/xlsxwriter/app.h
fast_excel-0.2.0 libxlsxwriter/include/xlsxwriter/app.h
fast_excel-0.1.7 libxlsxwriter/include/xlsxwriter/app.h
fast_excel-0.1.6 libxlsxwriter/include/xlsxwriter/app.h
fast_excel-0.1.5 libxlsxwriter/include/xlsxwriter/app.h