00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef MACOSX_GRAPHICS_HPP
00025 #define MACOSX_GRAPHICS_HPP
00026
00027 #include "../src/os_graphics.hpp"
00028 #include <Carbon/Carbon.h>
00029
00030 class GenericWindow;
00031 class GenericBitmap;
00032
00033
00034 class MacOSXGraphics: public OSGraphics
00035 {
00036 public:
00037 MacOSXGraphics( intf_thread_t *pIntf, int width, int height);
00038
00039 virtual ~MacOSXGraphics();
00040
00041
00042 virtual void clear();
00043
00044
00045 virtual void drawGraphics( const OSGraphics &rGraphics, int xSrc = 0,
00046 int ySrc = 0, int xDest = 0, int yDest = 0,
00047 int width = -1, int height = -1 );
00048
00049
00050 virtual void drawBitmap( const GenericBitmap &rBitmap, int xSrc = 0,
00051 int ySrc = 0, int xDest = 0, int yDest = 0,
00052 int width = -1, int height = -1,
00053 bool blend = false );
00054
00055
00056 virtual void fillRect( int left, int top, int width, int height,
00057 uint32_t color );
00058
00059
00060 virtual void drawRect( int left, int top, int width, int height,
00061 uint32_t color );
00062
00063
00064 virtual void applyMaskToWindow( OSWindow &rWindow );
00065
00066
00067 virtual void copyToWindow( OSWindow &rWindow, int xSrc,
00068 int ySrc, int width, int height,
00069 int xDest, int yDest );
00070
00071
00072 virtual bool hit( int x, int y ) const;
00073
00074
00075 virtual int getWidth() const { return m_width; }
00076 virtual int getHeight() const { return m_height; }
00077
00078 private:
00079
00080 int m_width, m_height;
00081 };
00082
00083
00084 #endif