Orcus
Loading...
Searching...
No Matches
Public Member Functions | List of all members
orcus::spreadsheet::iface::import_auto_filter_node Class Referenceabstract

#include <import_interface_auto_filter.hpp>

Public Member Functions

virtual void append_item (col_t field, auto_filter_op_t op, double value)=0
 
virtual void append_item (col_t field, auto_filter_op_t op, std::string_view value, bool regex)=0
 
virtual void append_item (col_t field, auto_filter_op_t op)=0
 
virtual import_auto_filter_nodestart_node (auto_filter_node_op_t op)=0
 
virtual import_auto_filter_multi_valuesstart_multi_values (col_t field)=0
 
virtual void commit ()=0
 

Detailed Description

Interface for importing a single node in a larger auto-filter structure.

Note that one auto-filter structure may consist of nested filter nodes.

Member Function Documentation

◆ append_item() [1/3]

virtual void orcus::spreadsheet::iface::import_auto_filter_node::append_item ( col_t field,
auto_filter_op_t op )
pure virtual

Append to this node a new filter item with no associated value.

Parameters
field0-based field index which is the offset from the left-most column of the filtered range.
opOperator for the filter item.

◆ append_item() [2/3]

virtual void orcus::spreadsheet::iface::import_auto_filter_node::append_item ( col_t field,
auto_filter_op_t op,
double value )
pure virtual

Append to this node a new filter item with a numeric value.

Parameters
field0-based field index which is the offset from the left-most column of the filtered range.
opOperator for the filter item.
valueNumeric value associated with the operator for the filter item. Note that some operators may not require a value.

◆ append_item() [3/3]

virtual void orcus::spreadsheet::iface::import_auto_filter_node::append_item ( col_t field,
auto_filter_op_t op,
std::string_view value,
bool regex )
pure virtual

Append to this node a new filter item with a string value.

Note that the the life cycle of the string value passed to this call is only guaranteed to persist during the call.

Parameters
field0-based field index which is the offset from the left-most column of the filtered range.
opOperator for the filter item.
valueString value associated with the operator for the filter item. Note that some operators may not require a value.
regexWhether or not the string value should be interpreted as a regular expression.

◆ commit()

virtual void orcus::spreadsheet::iface::import_auto_filter_node::commit ( )
pure virtual

Commit the filter node data stored in the buffer to the destination store.

◆ start_multi_values()

virtual import_auto_filter_multi_values * orcus::spreadsheet::iface::import_auto_filter_node::start_multi_values ( col_t field)
pure virtual

Start importing a set of multiple filter values. Note that a set of multiple filter values and individual filter items cannot co-exist in the same filter node.

Returns
Interface for importing a set of multiple filter values for the current filter node.
Note
Note that the import_auto_filter_node implementer must return a non-null pointer.

◆ start_node()

virtual import_auto_filter_node * orcus::spreadsheet::iface::import_auto_filter_node::start_node ( auto_filter_node_op_t op)
pure virtual

Start a new node of filter rules as a filter item to this node. The new node should be appended to this node as new filter item when it is committed.

Parameters
opOperator to use to link the items stored in the new node.
Returns
Interface for importing the filter rules for the new node.
Note
Note that the import_auto_filter_node implementer must return a non-null pointer.