filters

XPixmapOutputDev.h

00001 //========================================================================
00002 //
00003 // XPixmapOutputDev.h
00004 //
00005 // Copyright 2002 Glyph & Cog, LLC
00006 //
00007 //========================================================================
00008 
00009 #ifndef XPIXMAPOUTPUTDEV_H
00010 #define XPIXMAPOUTPUTDEV_H
00011 
00012 #include <aconf.h>
00013 
00014 #ifdef USE_GCC_PRAGMAS
00015 #pragma interface
00016 #endif
00017 
00018 #include <X11/Xlib.h>
00019 #include "XOutputDev.h"
00020 
00021 //------------------------------------------------------------------------
00022 
00023 class XPixmapOutputDev: public XOutputDev {
00024 public:
00025 
00026   XPixmapOutputDev(Display *displayA, int screenNumA,
00027            Visual *visualA, Colormap colormapA,
00028            GBool reverseVideoA, Gulong paperColorA,
00029            GBool installCmapA, int rgbCubeSizeA,
00030            GBool incrementalUpdateA,
00031            void (*redrawCbkA)(void *data),
00032            void *redrawCbkDataA);
00033 
00034   ~XPixmapOutputDev();
00035 
00036   //----- initialization and control
00037 
00038   // Start a page.
00039   virtual void startPage(int pageNum, GfxState *state);
00040 
00041   // End a page.
00042   virtual void endPage();
00043 
00044   // Dump page contents to display.
00045   virtual void dump();
00046 
00047   //----- special access
00048 
00049   // Set the window - this is used only to create a compatible pixmap.
00050   void setWindow(Window winA) { win = winA; }
00051 
00052   // Clear out the document (used when displaying an empty window).
00053   void clear();
00054 
00055 private:
00056 
00057   GBool incrementalUpdate;  // incrementally update the display?
00058   void (*redrawCbk)(void *data);
00059   void *redrawCbkData;
00060   Window win;
00061 };
00062 
00063 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys