mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-28 03:18:41 +00:00
55d6cf1e20
Generated by these regexes: find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/gfx[A-Za-z0-9_]*Surface\:\:[a-z]*\(\(ImageFormat\|SurfaceType\|ContentType\|MemoryLocation\)[0-9A-Za-z_]*\)/gfx\1/g' find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/gfx[A-Za-z0-9_]*Surface\:\:[a-z]*\(\(CONTENT_\|MEMORY_\)[0-9A-Za-z_]*\)/GFX_\1/g' find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(CONTENT_COLOR\|CONTENT_ALPHA\|CONTENT_COLOR_ALPHA\|CONTENT_SENTINEL\|MEMORY_IN_PROCESS_HEAP\|MEMORY_IN_PROCESS_NONHEAP\|MEMORY_OUT_OF_PROCESS\)\($\|[^A-Za-z0-9_]\)/\1GFX_\2\3/g' find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(ImageFormatARGB32\|ImageFormatRGB24\|ImageFormatA8\|ImageFormatA1\|ImageFormatRGB16_565\|ImageFormatUnknown\|SurfaceTypeImage\|SurfaceTypePDF\|SurfaceTypePS\|SurfaceTypeXlib\|SurfaceTypeXcb\|SurfaceTypeGlitz\|SurfaceTypeQuartz\|SurfaceTypeWin32\|SurfaceTypeBeOS\|SurfaceTypeDirectFB\|SurfaceTypeSVG\|SurfaceTypeOS2\|SurfaceTypeWin32Printing\|SurfaceTypeQuartzImage\|SurfaceTypeScript\|SurfaceTypeQPainter\|SurfaceTypeRecording\|SurfaceTypeVG\|SurfaceTypeGL\|SurfaceTypeDRM\|SurfaceTypeTee\|SurfaceTypeXML\|SurfaceTypeSkia\|SurfaceTypeSubsurface\|SurfaceTypeD2D\|SurfaceTypeMax\)\($\|[^A-Za-z0-9_]\)/\1gfx\2\3/g'
49 lines
1.6 KiB
C++
49 lines
1.6 KiB
C++
/* vim: set sw=4 sts=4 et cin: */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#ifndef GFX_OS2_SURFACE_H
|
|
#define GFX_OS2_SURFACE_H
|
|
|
|
#include "gfxASurface.h"
|
|
|
|
#define INCL_GPIBITMAPS
|
|
#include <os2.h>
|
|
#include <cairo-os2.h>
|
|
|
|
class gfxOS2Surface : public gfxASurface {
|
|
|
|
public:
|
|
// constructor used to create a memory surface of given size
|
|
gfxOS2Surface(const gfxIntSize& aSize,
|
|
gfxImageFormat aImageFormat);
|
|
// constructor for surface connected to an onscreen window
|
|
gfxOS2Surface(HWND aWnd);
|
|
// constructor for surface connected to a printing device context
|
|
gfxOS2Surface(HDC aDC, const gfxIntSize& aSize);
|
|
virtual ~gfxOS2Surface();
|
|
|
|
// Special functions that only make sense for the OS/2 port of cairo:
|
|
|
|
// Update the cairo surface.
|
|
// While gfxOS2Surface keeps track of the presentation handle itself,
|
|
// use the one from WinBeginPaint() here.
|
|
void Refresh(RECTL *aRect, HPS aPS);
|
|
|
|
// Reset the cairo surface to the given size.
|
|
int Resize(const gfxIntSize& aSize);
|
|
|
|
HPS GetPS();
|
|
virtual const gfxIntSize GetSize() const { return mSize; }
|
|
|
|
private:
|
|
HWND mWnd; // non-null if created through the HWND constructor
|
|
HDC mDC; // memory device context
|
|
HPS mPS; // presentation space connected to window or memory device
|
|
HBITMAP mBitmap; // bitmap for initialization of memory surface
|
|
gfxIntSize mSize; // current size of the surface
|
|
};
|
|
|
|
#endif /* GFX_OS2_SURFACE_H */
|