Added GetTarget() for GALs.

This commit is contained in:
Maciej Suminski 2013-08-06 14:57:48 +02:00
parent 7d5a456344
commit bc69429a56
5 changed files with 31 additions and 0 deletions

View File

@ -740,6 +740,14 @@ void CAIRO_GAL::SetTarget( RenderTarget aTarget )
}
cairo_push_group( currentContext );
currentTarget = aTarget;
}
RenderTarget CAIRO_GAL::GetTarget() const
{
return currentTarget;
}

View File

@ -700,6 +700,14 @@ void OPENGL_GAL::SetTarget( RenderTarget aTarget )
currentManager = &overlayManager;
break;
}
currentTarget = aTarget;
}
RenderTarget OPENGL_GAL::GetTarget() const
{
return currentTarget;
}

View File

@ -218,6 +218,9 @@ public:
/// @copydoc GAL::SetTarget()
virtual void SetTarget( RenderTarget aTarget );
/// @copydoc GAL::GetTarget()
virtual RenderTarget GetTarget() const;
// -------
// Cursor
// -------
@ -263,6 +266,7 @@ private:
boost::shared_ptr<CAIRO_COMPOSITOR> compositor; ///< Object for layers compositing
unsigned int mainBuffer; ///< Handle to the main buffer
unsigned int overlayBuffer; ///< Handle to the overlay buffer
RenderTarget currentTarget; ///< Current rendering target
// Variables related to wxWidgets
wxWindow* parentWindow; ///< Parent window

View File

@ -572,6 +572,13 @@ public:
*/
virtual void SetTarget( RenderTarget aTarget ) = 0;
/**
* @brief Gets the currently used target for rendering.
*
* @return The current rendering target.
*/
virtual RenderTarget GetTarget() const = 0;
// -------------
// Grid methods
// -------------

View File

@ -211,6 +211,9 @@ public:
/// @copydoc GAL::SetTarget()
virtual void SetTarget( RenderTarget aTarget );
/// @copydoc GAL::GetTarget()
virtual RenderTarget GetTarget() const;
// -------
// Cursor
// -------
@ -283,6 +286,7 @@ private:
OPENGL_COMPOSITOR compositor; ///< Handles multiple rendering targets
unsigned int mainBuffer; ///< Main rendering target
unsigned int overlayBuffer; ///< Auxiliary rendering target (for menus etc.)
RenderTarget currentTarget; ///< Current rendering target
// Shader
SHADER shader; ///< There is only one shader used for different objects