diff options
author | Michael Meeks <michael.meeks@collabora.com> | 2014-11-29 22:14:36 +0000 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@collabora.co.uk> | 2014-12-02 08:34:52 +0100 |
commit | c31ed7004dfb3e8e37ddeb9fddf0f015b661dd12 (patch) | |
tree | 48d3069604bc35122347b6d346649c84f84ef67c /vcl/inc/salgeom.hxx | |
parent | c22d5338fad383800b35efa458561bb89b604922 (diff) |
vcl: create a GeometryProvider interface.
Implemented by both SalFrame and SalVirtualDevice, to help us to
un-tangle code that needs to operate on resources associated with
both of these without special cases.
Change-Id: If681a002647e20c57186577fe039d4ac85bba872
Diffstat (limited to 'vcl/inc/salgeom.hxx')
-rw-r--r-- | vcl/inc/salgeom.hxx | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/vcl/inc/salgeom.hxx b/vcl/inc/salgeom.hxx index 138a6d96acdf..d54c58a0ee98 100644 --- a/vcl/inc/salgeom.hxx +++ b/vcl/inc/salgeom.hxx @@ -20,6 +20,8 @@ #ifndef INCLUDED_VCL_INC_SALGEOM_HXX #define INCLUDED_VCL_INC_SALGEOM_HXX +#include <vcl/dllapi.h> + typedef struct _SalFrameGeometry { // screen position of upper left corner of drawable area in pixel long nX, nY; @@ -40,6 +42,16 @@ typedef struct _SalFrameGeometry { {} } SalFrameGeometry; +/// Interface used to share logic on sizing between +/// SalVirtualDevices and SalFrames +class VCL_PLUGIN_PUBLIC SalGeometryProvider { +public: + virtual ~SalGeometryProvider() {} + virtual long GetWidth() const = 0; + virtual long GetHeight() const = 0; + virtual bool IsOffScreen() const = 0; +}; + #endif // INCLUDED_VCL_INC_SALGEOM_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |