diff options
author | Markus Mohrhard <markus.mohrhard@collabora.co.uk> | 2014-04-23 02:35:25 +0200 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@collabora.co.uk> | 2014-04-23 02:36:17 +0200 |
commit | 86c065a143c8c35f744fa3c1160f3550446ffcf3 (patch) | |
tree | 6099c7b28787d05796ea04be58c3315da2f5c59e | |
parent | Rename OutputDevice::ImplGetGraphics to GetGraphics (diff) | |
download | core-86c065a143c8c35f744fa3c1160f3550446ffcf3.tar.gz core-86c065a143c8c35f744fa3c1160f3550446ffcf3.zip |
WIP: orcus autofilter import
Change-Id: I44ed24fbd4d67a0f440202117a980c7d349016b9
-rw-r--r-- | sc/source/filter/inc/orcusinterface.hxx | 23 | ||||
-rw-r--r-- | sc/source/filter/orcus/interface.cxx | 25 |
2 files changed, 48 insertions, 0 deletions
diff --git a/sc/source/filter/inc/orcusinterface.hxx b/sc/source/filter/inc/orcusinterface.hxx index aba1f6d214fb..03eef2c96d59 100644 --- a/sc/source/filter/inc/orcusinterface.hxx +++ b/sc/source/filter/inc/orcusinterface.hxx @@ -71,12 +71,33 @@ public: virtual size_t commit_segments() SAL_OVERRIDE; }; +class ScOrcusAutoFilter : public orcus::spreadsheet::iface::import_auto_filter +{ +public: + + virtual ~ScOrcusAutoFilter(); + + virtual void set_range(const char* p_ref, size_t n_ref); + + virtual void set_column(orcus::spreadsheet::col_t col); + + virtual void append_column_match_value(const char* p, size_t n); + + virtual void commit_column(); + + virtual void commit(); + +private: + +}; + class ScOrcusSheet : public orcus::spreadsheet::iface::import_sheet { ScDocumentImport& mrDoc; SCTAB mnTab; ScOrcusFactory& mrFactory; sc::SharedFormulaGroups maFormulaGroups; + ScOrcusAutoFilter maAutoFilter; typedef std::map<size_t, ScRangeData*> SharedFormulaContainer; SharedFormulaContainer maSharedFormulas; @@ -88,6 +109,8 @@ class ScOrcusSheet : public orcus::spreadsheet::iface::import_sheet public: ScOrcusSheet(ScDocumentImport& rDoc, SCTAB nTab, ScOrcusFactory& rFactory); + virtual orcus::spreadsheet::iface::import_auto_filter* get_auto_filter() { return &maAutoFilter; } + // Orcus import interface virtual void set_auto(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, const char* p, size_t n) SAL_OVERRIDE; virtual void set_string(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, size_t sindex) SAL_OVERRIDE; diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx index 085a2d624592..10e5998654e0 100644 --- a/sc/source/filter/orcus/interface.cxx +++ b/sc/source/filter/orcus/interface.cxx @@ -647,5 +647,30 @@ size_t ScOrcusStyles::commit_cell_style() return 0; } +// auto filter import + +ScOrcusAutoFilter::~ScOrcusAutoFilter() +{ +} + +void ScOrcusAutoFilter::set_range(const char* p_ref, size_t n_ref) +{ +} + +void ScOrcusAutoFilter::set_column(orcus::spreadsheet::col_t /*col*/) +{ +} + +void ScOrcusAutoFilter::append_column_match_value(const char* p, size_t n) +{ +} + +void ScOrcusAutoFilter::commit_column() +{ +} + +void ScOrcusAutoFilter::commit() +{ +} /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |