You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gnucash/lib/goffice/split/gnumeric.h

181 lines
5.8 KiB

#ifndef GNUMERIC_H
#define GNUMERIC_H
#include <glib.h>
#ifndef __attribute__
# if !defined(__GNUC__) || __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
/* OK, this compiler probably doesn't understand __attribute__ */
# define __attribute__(Spec) /* empty */
# endif
#endif
#define SHEET_MAX_ROWS (16*16*16*16) /* 0, 1, ... */
#define SHEET_MAX_COLS (4*4*4*4) /* 0, 1, ... */
/*
* Note: more than 364238 columns will introduce a column named TRUE.
*/
typedef struct _GnmApp GnmApp;
typedef struct _Workbook Workbook;
typedef struct _WorkbookView WorkbookView;
typedef struct _WorkbookControl WorkbookControl;
typedef struct _Sheet Sheet;
typedef struct _SheetView SheetView;
typedef struct _SheetControl SheetControl;
typedef struct _SheetObject SheetObject;
typedef struct _SheetObjectAnchor SheetObjectAnchor;
typedef struct _SheetObjectView SheetObjectView;
typedef struct _SheetObjectViewContainer SheetObjectViewContainer;
typedef struct _GnmDepContainer GnmDepContainer;
typedef struct _GnmDependent GnmDependent;
typedef struct _GnmCell GnmCell;
typedef struct _GnmComment GnmComment;
typedef union _GnmValue GnmValue;
typedef struct _GnmValueBool GnmValueBool;
typedef struct _GnmValueInt GnmValueInt;
typedef struct _GnmValueFloat GnmValueFloat;
typedef struct _GnmValueErr GnmValueErr;
typedef struct _GnmValueStr GnmValueStr;
typedef struct _GnmValueRange GnmValueRange;
typedef struct _GnmValueArray GnmValueArray;
typedef enum {
GNM_ERROR_NULL,
GNM_ERROR_DIV0,
GNM_ERROR_VALUE,
GNM_ERROR_REF,
GNM_ERROR_NAME,
GNM_ERROR_NUM,
GNM_ERROR_NA,
GNM_ERROR_RECALC,
GNM_ERROR_UNKNOWN
} GnmStdError;
typedef struct _RenderedValue RenderedValue;
typedef GSList GnmExprList;
typedef union _GnmExpr GnmExpr;
typedef struct _GnmExprConstant GnmExprConstant;
typedef struct _GnmExprFunction GnmExprFunction;
typedef struct _GnmExprUnary GnmExprUnary;
typedef struct _GnmExprBinary GnmExprBinary;
typedef struct _GnmExprName GnmExprName;
typedef struct _GnmExprCellRef GnmExprCellRef;
typedef struct _GnmExprArray GnmExprArray;
typedef struct _GnmExprSet GnmExprSet;
typedef struct _GnmExprRelocateInfo GnmExprRelocateInfo;
typedef struct _GnmExprRewriteInfo GnmExprRewriteInfo;
typedef struct _GnmExprConventions GnmExprConventions;
typedef struct _GnmDateConventions GnmDateConventions;
typedef struct _GnmNamedExpr GnmNamedExpr;
typedef struct _GnmNamedExprCollection GnmNamedExprCollection;
typedef struct _GnmPasteTarget GnmPasteTarget;
typedef struct _GnmCellRegion GnmCellRegion;
typedef struct _ColRowInfo ColRowInfo;
typedef struct _ColRowCollection ColRowCollection;
typedef struct _ColRowSegment ColRowSegment;
typedef GSList ColRowVisList;
typedef GSList ColRowStateGroup;
typedef GSList ColRowStateList;
typedef GList ColRowIndexList;
typedef struct _ColRowIndexSet ColRowIndexSet;
typedef struct _GnmFormat GnmFormat;
typedef struct _GnmFont GnmFont;
typedef struct _GnmColor GnmColor;
typedef struct _GnmBorder GnmBorder;
typedef struct _GnmRow GnmRow;
typedef struct _GnmStyle GnmStyle;
typedef struct _SheetStyleData SheetStyleData;
typedef struct _GnmStyleRegion GnmStyleRegion;
typedef GSList GnmStyleList;
typedef struct _FormatTemplate FormatTemplate; /* does not really belong here */
typedef struct {
int col, row;
} GnmCellPos;
typedef struct {
GnmCellPos start, end;
} GnmRange;
typedef struct {
Sheet *sheet;
GnmRange range;
} GnmSheetRange;
typedef struct _GnmCellRef GnmCellRef; /* abs/rel point with sheet */
typedef struct _GnmRangeRef GnmRangeRef; /* abs/rel range with sheet */
typedef struct _GnmEvalPos GnmEvalPos;
typedef struct _GnmParsePos GnmParsePos;
typedef struct _GnmParseError GnmParseError;
typedef struct _FunctionEvalInfo FunctionEvalInfo;
typedef struct _GnmFunc GnmFunc;
typedef struct _ErrorInfo ErrorInfo;
typedef enum {
CELL_ITER_ALL = 0,
CELL_ITER_IGNORE_NONEXISTENT = 1 << 0,
CELL_ITER_IGNORE_EMPTY = 1 << 1,
CELL_ITER_IGNORE_BLANK = (CELL_ITER_IGNORE_NONEXISTENT | CELL_ITER_IGNORE_EMPTY),
CELL_ITER_IGNORE_HIDDEN = 1 << 2, /* hidden manually */
/* contains SUBTOTAL, or hidden row in a filter */
CELL_ITER_IGNORE_SUBTOTAL = 1 << 3
} CellIterFlags;
typedef GnmValue *(*CellIterFunc) (Sheet *sheet, int col, int row,
GnmCell *cell, gpointer user_data);
typedef enum {
SPANCALC_SIMPLE = 0x0, /* Just calc spans */
SPANCALC_RESIZE = 0x1, /* Calculate sizes of all cells */
SPANCALC_RE_RENDER = 0x2, /* Render and Size all cells */
SPANCALC_RENDER = 0x4, /* Render and Size any unrendered cells */
SPANCALC_ROW_HEIGHT = 0x8 /* Resize the row height */
} SpanCalcFlags;
typedef enum {
GNM_EXPR_EVAL_SCALAR_NON_EMPTY = 0,
GNM_EXPR_EVAL_PERMIT_NON_SCALAR = 0x1,
GNM_EXPR_EVAL_PERMIT_EMPTY = 0x2
} GnmExprEvalFlags;
typedef struct _GnmMemChunk GnmMemChunk;
typedef struct _GnmString GnmString;
typedef struct _GnmCmdContext GnmCmdContext;
typedef struct _IOContext IOContext;
typedef struct _GnmFileSaver GnmFileSaver;
typedef struct _GnmFileOpener GnmFileOpener;
typedef struct _XmlParseContext XmlParseContext;
typedef struct _GnmPlugin GnmPlugin;
typedef struct _GnmPluginService GnmPluginService;
typedef struct _GnmPluginLoader GnmPluginLoader;
typedef struct _GnmSortData GnmSortData;
typedef struct _GnmSearchReplace GnmSearchReplace;
typedef struct _GnmConsolidate GnmConsolidate;
typedef struct _GnmValidation GnmValidation;
typedef struct _GnmFilter GnmFilter;
typedef struct _GnmFilterCondition GnmFilterCondition;
typedef struct _GnmHLink GnmHLink;
typedef struct _GnmInputMsg GnmInputMsg;
typedef struct _PrintInformation PrintInformation;
typedef struct _SolverParameters SolverParameters;
typedef struct _GnmRelocUndo GnmRelocUndo;
#endif /* GNUMERIC_H */