X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FTextCache.h;h=93df369bb05498b8c4fde5eff392090d39e8996e;hb=21226de2b87a86be19fff025cace3d286a75aa76;hp=f2fa9ffc31936c669a9cca522a8b27ce2c83b0a3;hpb=85798535a19919e82cc94a177a8414c542a9c5bf;p=lyx.git diff --git a/src/TextCache.h b/src/TextCache.h index f2fa9ffc31..93df369bb0 100644 --- a/src/TextCache.h +++ b/src/TextCache.h @@ -4,9 +4,9 @@ * * LyX, The Document Processor * Copyright 1995 Matthias Ettrich - * Copyright 1995-2000 The LyX Team + * Copyright 1995-2001 The LyX Team * - * This file is Copyright 2000 + * This file is Copyright 2000-2001 * Lars Gullik Bjønnes * * ====================================================== */ @@ -18,15 +18,13 @@ #pragma interface #endif -#include - #include "LString.h" #include "lyxtext.h" +#include "buffer.h" -using std::ostream; -using std::vector; +#include +#include -class Buffer; // This is only the very first implemetation and use of the TextCache, // operations on it needs to be put into a class or a namespace, that part @@ -39,7 +37,7 @@ class Buffer; // // Q. What are we caching? // A. We are caching the screen representations (LyXText) of the -// documents (Buffer,LyXParagraph) for specific BufferView widths. +// documents (Buffer,Paragraph) for specific BufferView widths. // Q. Why the cache? // A. It is not really needed, but it speeds things up a lot // when you have more than one document loaded at once since a total @@ -115,21 +113,22 @@ class Buffer; class TextCache { public: /// - typedef vector Cache; + typedef std::map > Cache; + /// - typedef LyXText * value_type; + typedef Cache::value_type value_type; /** Returns a pointer to a LyXText that fits the provided buffer and width. Of there is no match 0 is returned. */ - LyXText * findFit(Buffer * b, unsigned short p); + LyXText * findFit(Buffer * b, int p); /** Lists all the LyXText's currently in the cache. Uses msg as header for the list. */ - void show(ostream & o, string const & msg); + void show(std::ostream & o, string const & msg); /// Gives info on a single LyXText (buffer and width) - static void show(ostream & o, LyXText *); + static void show(std::ostream & o, value_type const &); /** Adds a LyXText to the cache iff its buffer is present in bufferlist. */ - void add(LyXText *); + void add(Buffer *, int witdth, LyXText *); /** Clears the cache. Deletes all LyXText's and releases the allocated memory. */ void clear(); @@ -140,6 +139,6 @@ private: Cache cache; }; -// bla bla +/// extern TextCache textcache; #endif