]> git.sesse.net Git - vlc/blobdiff - modules/gui/skins2/src/os_graphics.hpp
skins2: fix forgotten initialization in copy constructor
[vlc] / modules / gui / skins2 / src / os_graphics.hpp
index 6133120b2dc9805c72b88c42f5cfdc4f7b54e41b..c8cf28f998fd506da6ddeb03411b8a614b955b3c 100644 (file)
@@ -1,11 +1,11 @@
 /*****************************************************************************
  * os_graphics.hpp
  *****************************************************************************
- * Copyright (C) 2003 VideoLAN (Centrale Réseaux) and its contributors
+ * Copyright (C) 2003 the VideoLAN team
  * $Id$
  *
  * Authors: Cyril Deguet     <asmax@via.ecp.fr>
- *          Olivier Teulière <ipkiss@via.ecp.fr>
+ *          Olivier Teulière <ipkiss@via.ecp.fr>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
 #ifndef OS_GRAPHICS_HPP
 #define OS_GRAPHICS_HPP
 
 #include "skin_common.hpp"
+#include "../utils/position.hpp"
 #include "../utils/pointer.hpp"
 
 class GenericBitmap;
@@ -33,51 +34,48 @@ class OSWindow;
 
 
 /// OS specific graphics class
-class OSGraphics: public SkinObject
+class OSGraphics: public SkinObject, public Box
 {
-    public:
-        virtual ~OSGraphics() {}
+public:
+    virtual ~OSGraphics() { }
 
-        /// Clear the graphics
-        virtual void clear() = 0;
+    /// Clear the graphics
+    virtual void clear( int xDest = 0, int yDest = 0,
+                        int width = -1, int height = -1) = 0;
 
-        /// Draw another graphics on this one
-        virtual void drawGraphics( const OSGraphics &rGraphics, int xSrc = 0,
-                                   int ySrc = 0, int xDest = 0, int yDest = 0,
-                                   int width = -1, int height = -1 ) = 0;
+    /// Draw another graphics on this one
+    virtual void drawGraphics( const OSGraphics &rGraphics, int xSrc = 0,
+                               int ySrc = 0, int xDest = 0, int yDest = 0,
+                               int width = -1, int height = -1 ) = 0;
 
-        /// Render a bitmap on this graphics
-        virtual void drawBitmap( const GenericBitmap &rBitmap, int xSrc = 0,
-                                 int ySrc = 0, int xDest = 0, int yDest = 0,
-                                 int width = -1, int height = -1,
-                                 bool blend = false) = 0;
+    /// Render a bitmap on this graphics
+    virtual void drawBitmap( const GenericBitmap &rBitmap, int xSrc = 0,
+                             int ySrc = 0, int xDest = 0, int yDest = 0,
+                             int width = -1, int height = -1,
+                             bool blend = false) = 0;
 
-        /// Draw a filled rectangle on the grahics (color is #RRGGBB)
-        virtual void fillRect( int left, int top, int width, int height,
-                               uint32_t color ) = 0;
+    /// Draw a filled rectangle on the grahics (color is #RRGGBB)
+    virtual void fillRect( int left, int top, int width, int height,
+                           uint32_t color ) = 0;
 
-        /// Draw an empty rectangle on the grahics (color is #RRGGBB)
-        virtual void drawRect( int left, int top, int width, int height,
-                               uint32_t color ) = 0;
+    /// Draw an empty rectangle on the grahics (color is #RRGGBB)
+    virtual void drawRect( int left, int top, int width, int height,
+                           uint32_t color ) = 0;
 
 
-        /// Set the shape of a window with the mask of this graphics.
-        virtual void applyMaskToWindow( OSWindow &rWindow ) = 0;
+    /// Set the shape of a window with the mask of this graphics.
+    virtual void applyMaskToWindow( OSWindow &rWindow ) = 0;
 
-        /// Copy the graphics on a window
-        virtual void copyToWindow( OSWindow &rWindow, int xSrc,
-                                   int ySrc, int width, int height,
-                                   int xDest, int yDest ) = 0;
+    /// Copy the graphics on a window
+    virtual void copyToWindow( OSWindow &rWindow, int xSrc,
+                               int ySrc, int width, int height,
+                               int xDest, int yDest ) = 0;
 
-        /// Tell whether the pixel at the given position is visible
-        virtual bool hit( int x, int y ) const = 0;
+    /// Tell whether the pixel at the given position is visible
+    virtual bool hit( int x, int y ) const = 0;
 
-        /// Getters
-        virtual int getWidth() const = 0;
-        virtual int getHeight() const = 0;
-
-    protected:
-        OSGraphics( intf_thread_t *pIntf ): SkinObject( pIntf ) {}
+protected:
+    OSGraphics( intf_thread_t *pIntf ): SkinObject( pIntf ) { }
 };
 
 typedef CountedPtr<OSGraphics> OSGraphicsPtr;