diff options
Diffstat (limited to 'akregator/src/mk4storage/metakit/src/custom.h')
-rw-r--r-- | akregator/src/mk4storage/metakit/src/custom.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/akregator/src/mk4storage/metakit/src/custom.h b/akregator/src/mk4storage/metakit/src/custom.h new file mode 100644 index 000000000..80555d3b6 --- /dev/null +++ b/akregator/src/mk4storage/metakit/src/custom.h @@ -0,0 +1,63 @@ +// custom.h -- +// $Id$ +// This is part of Metakit, the homepage is http://www.equi4.com/metakit/ + +/** @file + * Encapsulation of many custom viewer classes + */ + +#ifndef __CUSTOM_H__ +#define __CUSTOM_H__ + +#ifndef __FIELD_H__ +#include "field.h" +#endif +#ifndef __STORE_H__ +#include "handler.h" +#endif + +///////////////////////////////////////////////////////////////////////////// + +class c4_CustomSeq : public c4_HandlerSeq +{ + c4_CustomViewer* _viewer; + bool _inited; + +public: + c4_CustomSeq (c4_CustomViewer* viewer_); + virtual ~c4_CustomSeq (); + + virtual int NumRows() const; + + virtual bool RestrictSearch(c4_Cursor, int&, int&); + + virtual void InsertAt(int, c4_Cursor, int =1); + virtual void RemoveAt(int, int =1); + virtual void Move(int from_, int); + + bool DoGet(int row_, int col_, c4_Bytes& buf_) const; + void DoSet(int row_, int col_, const c4_Bytes& buf_); + +private: // this *is* used, as override + virtual c4_Handler* CreateHandler(const c4_Property&); +}; + +///////////////////////////////////////////////////////////////////////////// + + extern c4_CustomViewer* f4_CustSlice(c4_Sequence&, int, int , int); + extern c4_CustomViewer* f4_CustProduct(c4_Sequence&, const c4_View&); + extern c4_CustomViewer* f4_CustRemapWith(c4_Sequence&, const c4_View&); + extern c4_CustomViewer* f4_CustPair(c4_Sequence&, const c4_View&); + extern c4_CustomViewer* f4_CustConcat(c4_Sequence&, const c4_View&); + extern c4_CustomViewer* f4_CustRename(c4_Sequence&, + const c4_Property&, const c4_Property&); + extern c4_CustomViewer* f4_CustGroupBy(c4_Sequence&, + const c4_View&, const c4_Property&); + extern c4_CustomViewer* f4_CustJoinProp(c4_Sequence&, + const c4_ViewProp&, bool); + extern c4_CustomViewer* f4_CustJoin(c4_Sequence&, + const c4_View&, const c4_View&, bool); + +///////////////////////////////////////////////////////////////////////////// + +#endif |