Skip to main content

Module model

Module model 

Source
Expand description

The GridCraft document model: workbooks, sheets, a copy-on-write cell store, interned styles, defined names, tables, conditional formats, validation, comments, charts and print settings. Pure data; calculation lives in gridcraft-calc.

Re-exports§

pub use cell::Cell;
pub use cell::CellPicture;
pub use cell::Formula;
pub use password::PasswordHash;
pub use preserved::Preserved;
pub use preserved::PreservedPart;
pub use preserved::PreservedRel;
pub use preserved::PreservedSheet;
pub use preserved::PreservedXml;
pub use python::PyCode;
pub use python::PyOutput;
pub use sheet::DEFAULT_COL_WIDTH;
pub use sheet::DEFAULT_ROW_HEIGHT;
pub use sheet::LineIndex;
pub use sheet::Sheet;
pub use sheet::SheetUid;
pub use sheet::SheetViewMode;
pub use sheet::Visibility;
pub use sheet::points_to_chars;
pub use store::CellStore;
pub use style::Alignment;
pub use style::BorderLine;
pub use style::BorderStyle;
pub use style::Borders;
pub use style::Color;
pub use style::Fill;
pub use style::Font;
pub use style::HAlign;
pub use style::NumFmt;
pub use style::PatternType;
pub use style::Style;
pub use style::StyleId;
pub use style::StyleTable;
pub use style::Theme;
pub use style::Underline;
pub use style::VAlign;
pub use style::VertAlign;
pub use workbook::CalcMode;
pub use workbook::CalcSettings;
pub use workbook::DefinedName;
pub use workbook::DocProps;
pub use workbook::EQUATION_BUDGET_MESSAGE;
pub use workbook::MAX_EQUATION_LAYOUT_BYTES;
pub use workbook::PhoneticProps;
pub use workbook::PhoneticRun;
pub use workbook::PhoneticString;
pub use workbook::ShowObjects;
pub use workbook::Workbook;
pub use workbook::WorkbookView;
pub use features::*;
pub use macros::*;

Modules§

cell
Cells.
features
Sheet features beyond cells: tables, conditional formatting, data validation, comments, hyperlinks, charts, images, autofilter, print settings.
macros
GridCraft macros: typed, declarative command lists that run as one undo step. They are not VBA: a VBA project in a file is carried through unchanged (Workbook::vba_project) and never run.
password
Excel-compatible password hashes for protection (ECMA-376 Part 1 §18.2.29 and §18.3.1.66 attribute sets): the legacy 16-bit hash (password="CC1A") and the iterated, salted hash (algorithmName, hashValue, saltValue, spinCount). Protection is a convenience, not security, but verification really checks the password: an unsupported variant is refused, never accepted.
preserved
File content GridCraft does not model, carried through unchanged so that saving a workbook never silently drops it (XLSX pass-through: custom XML, external links, connections, query tables, form controls, OLE objects…).
python
Python cells: the code a cell holds, its last result, and the text forms around it (the PY("…",0|1) formula of the function’s syntax, and the xl("…") references inside it). An xlsx file keeps the code in its Python part instead (see the xlsx crate).
sheet
Worksheets.
store
Copy-on-write sparse cell storage.
style
Cell styles (font, fill, borders, alignment, number format, protection), interned per workbook.
workbook
Workbooks.

Constants§

DEFAULT_FONT
Font used for new workbooks. Only a name: renderers substitute an available open font (e.g. the metric-compatible Carlito) when it isn’t installed.
DEFAULT_FONT_SIZE