Diffstat (limited to 'noncore/apps/opie-reader/BuffDoc.h') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/apps/opie-reader/BuffDoc.h | 58 |
1 files changed, 40 insertions, 18 deletions
diff --git a/noncore/apps/opie-reader/BuffDoc.h b/noncore/apps/opie-reader/BuffDoc.h index 61531c0..a7dd7bf 100644 --- a/noncore/apps/opie-reader/BuffDoc.h +++ b/noncore/apps/opie-reader/BuffDoc.h @@ -2,12 +2,9 @@ #define __BuffDoc_h #include "useqpe.h" -#include "ZText.h" -#include "Aportis.h" -#include "ztxt.h" -#include "ppm_expander.h" #include "CDrawBuffer.h" #include "CFilter.h" +#include "CExpander.h" #include <qfontmetrics.h> #include <qmessagebox.h> @@ -17,9 +14,19 @@ class BuffDoc CSizeBuffer lastsizes, allsizes; size_t laststartline; bool lastispara; - CExpander* exp; + CExpander_Interface* exp; CFilterChain* filt; + int m_hyphenthreshold; + // bool m_customhyphen; public: + QString about(); + bool findanchor(const QString& nm) + { + return filt->findanchor(nm); + } + // void setCustomHyphen(bool _v) { m_customhyphen = _v; } + // bool getCustomHyphen() { return m_customhyphen; } + void setHyphenThreshold(int _v) { m_hyphenthreshold = _v; } void setSaveData(unsigned char*& data, unsigned short& len, unsigned char* src, unsigned short srclen) { if (exp == NULL) @@ -56,7 +63,7 @@ class BuffDoc exp = NULL; filt = NULL; lastword.empty(); - // odebug << "Buffdoc created" << oendl; +// // qDebug("Buffdoc created"); } bool empty() { return (exp == NULL); } void setfilter(CFilterChain* _f) @@ -75,15 +82,16 @@ class BuffDoc CStyle sty; if (exp != NULL) { - filt->getch(ch, sty); + unsigned long dummy; + filt->getch(ch, sty, dummy); } return ch; } - void getch(tchar& ch, CStyle& sty) + void getch(tchar& ch, CStyle& sty, unsigned long& pos) { if (exp != NULL) { - filt->getch(ch, sty); + filt->getch(ch, sty, pos); } else ch = UEOF; @@ -96,12 +104,22 @@ class BuffDoc unsigned int explocate() { return (exp == NULL) ? 0 : exp->locate(); } void setContinuous(bool _b) { if (exp != NULL) exp->setContinuous(_b); } MarkupType PreferredMarkup() { return (exp == NULL) ? cTEXT : exp->PreferredMarkup(); } - linkType hyperlink(unsigned int n, QString& wrd); + linkType hyperlink(unsigned int n, unsigned int noff, QString& wrd, QString& nm); size_t getHome() { return ((exp != NULL) ? exp->getHome() : 0); } void locate(unsigned int n); - bool getline(CDrawBuffer* buff, int w, unsigned char _border); - bool getline(CDrawBuffer* buff, int w, int cw, unsigned char _border); - void sizes(unsigned long& fs, unsigned long& ts) { exp->sizes(fs,ts); } + bool getline(CDrawBuffer* buff, int w, unsigned short _lborder, unsigned short _rborder, bool hyphenate, int availht); + bool getline(CDrawBuffer* buff, int w, int cw, unsigned short _lborder, unsigned short _rborder, int availht); + void sizes(unsigned long& fs, unsigned long& ts) + { + if (exp != NULL) + { + exp->sizes(fs,ts); + } + else + { + fs = ts = 0; + } + } int getpara(CBuffer& buff) { tchar ch; @@ -112,11 +130,15 @@ class BuffDoc laststartline = exp->locate(); return i; } - void saveposn(size_t posn) { exp->saveposn(posn); } - void writeposn(size_t posn) { exp->writeposn(posn); } - bool forward(size_t& loc) { return exp->forward(loc); } - bool back(size_t& loc) { return exp->back(loc); } - bool hasnavigation() { return exp->hasnavigation(); } + void saveposn(const QString& f, size_t posn) { filt->saveposn(f, posn); } + void writeposn(const QString& f, size_t posn) { filt->writeposn(f, posn); } + linkType forward(QString& f, size_t& loc) { return filt->forward(f, loc); } + linkType back(QString& f, size_t& loc) { return filt->back(f, loc); } + bool hasnavigation() { return filt->hasnavigation(); } + bool getFile(QString href) + { + return (exp == NULL) ? false : exp->getFile(href); + } }; #endif |