"Fossies" - the Fresh Open Source Software Archive

Member "xpdf-4.02/xpdf/TileCompositor.h" (25 Sep 2019, 1895 Bytes) of package /linux/misc/xpdf-4.02.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "TileCompositor.h" see the Fossies "Dox" file reference documentation.

    1 //========================================================================
    2 //
    3 // TileCompositor.h
    4 //
    5 // Copyright 2014 Glyph & Cog, LLC
    6 //
    7 //========================================================================
    8 
    9 #ifndef TILECOMPOSITOR_H
   10 #define TILECOMPOSITOR_H
   11 
   12 #include <aconf.h>
   13 
   14 #ifdef USE_GCC_PRAGMAS
   15 #pragma interface
   16 #endif
   17 
   18 #include "SplashTypes.h"
   19 
   20 class GList;
   21 class SplashBitmap;
   22 class DisplayState;
   23 class TileCache;
   24 
   25 //------------------------------------------------------------------------
   26 
   27 class TileCompositor {
   28 public:
   29 
   30   TileCompositor(DisplayState *stateA,
   31          TileMap *tileMapA, TileCache *tileCacheA);
   32   ~TileCompositor();
   33 
   34   // Returns the window bitmap.  The returned bitmap is owned by the
   35   // TileCompositor object (and may be reused) -- the caller should
   36   // not modify or free it.  If <finished> is is non-NULL, *<finished>
   37   // will be set to true if all of the needed tiles are finished,
   38   // i.e., if the returned bitmap is complete.
   39   SplashBitmap *getBitmap(GBool *finished);
   40 
   41   void paperColorChanged();
   42   void matteColorChanged();
   43   void selectColorChanged();
   44   void reverseVideoChanged();
   45   void docChanged();
   46   void windowSizeChanged();
   47   void displayModeChanged();
   48   void zoomChanged();
   49   void rotateChanged();
   50   void scrollPositionChanged();
   51   void selectionChanged();
   52   void regionsChanged();
   53   void optionalContentChanged();
   54   void forceRedraw();
   55 
   56 private:
   57 
   58   void clearBitmap();
   59   void blit(SplashBitmap *srcBitmap, int xSrc, int ySrc,
   60         SplashBitmap *destBitmap, int xDest, int yDest,
   61         int w, int h, GBool compositeWithPaper);
   62   void fill(int xDest, int yDest, int w, int h,
   63         SplashColorPtr color);
   64   void drawSelection();
   65   void applySelection(int xDest, int yDest, int w, int h,
   66               SplashColorPtr color);
   67 
   68   DisplayState *state;
   69   TileMap *tileMap;
   70   TileCache *tileCache;
   71 
   72   SplashBitmap *bitmap;
   73   GBool bitmapValid;
   74 
   75 };
   76 
   77 #endif