X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;ds=sidebyside;f=src%2Fview.h;h=c6c230dfe05f23c44c1ecdbd085faa459a3efafd;hb=aaa65d90ac812f924cbbc39bef7a5f8b6cad2da3;hp=6b637991216a7b6f6b4a8c406e47963552f94496;hpb=e12f1118cca4997c895c5ece32900be74f59ecdd;p=ipdf%2Fcode.git diff --git a/src/view.h b/src/view.h index 6b63799..c6c230d 100644 --- a/src/view.h +++ b/src/view.h @@ -9,17 +9,31 @@ namespace IPDF class View { public: - View(Document & document) : m_document(document), m_bounds(0,0,1,1) {} + View(Document & document, const Rect & bounds = Rect(0,0,1,1), const Colour & colour = Colour(0.f,0.f,0.f,1.f)) + : m_document(document), m_bounds(bounds), m_colour(colour), m_use_gpu_transform(false) + { + Debug("View Created - Bounds => {%s}", m_bounds.Str().c_str()); + } virtual ~View() {} void Render(); void Translate(Real x, Real y); void ScaleAroundPoint(Real x, Real y, Real scaleAmt); + + Rect TransformToViewCoords(const Rect& inp) const; + + const Rect& GetBounds() const { return m_bounds; } + + const bool UsingGPUTransform() const { return m_use_gpu_transform; } + void ToggleGPUTransform() { m_use_gpu_transform = (!m_use_gpu_transform); } private: + void DrawGrid(); + bool m_use_gpu_transform; Document & m_document; Rect m_bounds; + Colour m_colour; }; }