*
* ***** END GPL/BL DUAL LICENSE BLOCK *****
*/
-
/**
-
- * $Id$
- * Copyright (C) 2001 NaN Technologies B.V.
- * @author Maarten Gribnau
- * @date May 31, 2001
+ * @file GHOST_IWindow.h
+ * Declaration of GHOST_IWindow interface class.
*/
#ifndef _GHOST_IWINDOW_H_
/**
* Interface for GHOST windows.
- * Dimensions are given in screen coordinates that are relative to the upper-left corner of the screen.
+ *
+ * You can create a window with the system's GHOST_ISystem::createWindow
+ * method.
+ * @see GHOST_ISystem#createWindow
+ *
+ * There are two coordinate systems:
+ * <ul>
+ * <li>The screen coordinate system. The origin of the screen is located in the
+ * upper left corner of the screen.</li>
+ * <li>The client rectangle coordinate system. The client rectangle of a window
+ * is the area that is drawable by the application (excluding title bars etc.).
+ * </li>
+ * </ul>
* @author Maarten Gribnau
* @date May 31, 2001
*/
-
class GHOST_IWindow
{
public:
* Returns the type of drawing context used in this window.
* @return The current type of drawing context.
*/
- inline virtual GHOST_TDrawingContextType getDrawingContextType() = 0;
+ virtual GHOST_TDrawingContextType getDrawingContextType() = 0;
/**
* Tries to install a rendering context in this window.
* Returns the window user data.
* @return The window user data.
*/
- inline virtual GHOST_TUserDataPtr getUserData() const = 0;
+ virtual GHOST_TUserDataPtr getUserData() const = 0;
/**
* Changes the window user data.
*/
virtual void setUserData(const GHOST_TUserDataPtr userData) = 0;
+ /**
+ * Returns the tablet data (pressure etc).
+ * @return The tablet data (pressure etc).
+ */
+ virtual const GHOST_TabletData* GetTabletData() = 0;
+
/***************************************************************************************
** Cursor management functionality
***************************************************************************************/
GHOST_TUns8 mask[16][2],
int hotX,
int hotY) = 0;
+
+ virtual GHOST_TSuccess setCustomCursorShape(GHOST_TUns8 *bitmap,
+ GHOST_TUns8 *mask,
+ int sizex, int sizey,
+ int hotX, int hotY,
+ int fg_color, int bg_color) = 0;
/**
* Returns the visibility state of the cursor.