Document Interface
The Document interface represents the main document object that manages Excel workbooks.
Classes
-
class oo::iDocument
Main document interface for creating and managing Excel workbooks.
-
oo::iWorkbook *get_workbook()
Get the workbook associated with this document.
- Returns:
Pointer to the workbook interface
-
bool save(const char *filename = nullptr) const
Save the document to a file.
- Parameters:
filename – Path to save the document. If null, saves to current file.
- Returns:
true if successful, false otherwise
-
bool save_to_csv(const char *filename = nullptr) const
Save the current active worksheet to a csv file.
- Parameters:
filename – The path and file name where the file will be saved. If NULL, the worksheet name will be used as the csv file name and the csv file will be saved in the current working directory.
- Returns:
true if successful, false otherwise
-
void release()
Release the document and free associated resources.
Warning
This should be called when the document is no longer needed to prevent memory leaks.
-
oo::iWorkbook *get_workbook()
Global Functions
-
const char *lib_version()
Get the library version string.
- Returns:
Constant string containing library version information
-
void set_product_key(const char *user, const char *key)
Set the license key.
- Parameters:
user – User name
key – License key
-
oo::iDocument *create_document()
Create a new empty document.
- Returns:
Pointer to newly created document
-
oo::iDocument *load_document(const char *filename)
Load an existing document from file.
- Parameters:
filename – Path to the Excel file to load
- Returns:
Pointer to loaded document, or nullptr if failed
-
oo::iCSVPolicy *create_csv_policy()
Create a new default csv policy.
- Returns:
Pointer to newly created csv policy
-
oo::iDocument *load_csv(const char *filename, const oo::iCSVPolicy *policy)
Load an existing document from csv file.
- Parameters:
filename – Path to the csv file to load
policy – A CSV policy for configuring the parsing rules applied to CSV files.
- Returns:
Pointer to loaded document, or nullptr if failed
Usage Example
#include "oosxl.hxx"
// Create a new document
oo::iDocument* doc = create_document();
if (doc) {
// Get workbook and work with sheets
oo::iWorkbook* workbook = doc->get_workbook();
// Perform operations...
// Save document
doc->save("example.xlsx");
// Clean up
doc->release();
}