aboutsummaryrefslogtreecommitdiff
path: root/dw/types.hh
diff options
context:
space:
mode:
Diffstat (limited to 'dw/types.hh')
-rw-r--r--dw/types.hh9
1 files changed, 9 insertions, 0 deletions
diff --git a/dw/types.hh b/dw/types.hh
index a0f862e6..ce643239 100644
--- a/dw/types.hh
+++ b/dw/types.hh
@@ -8,6 +8,10 @@
namespace dw {
namespace core {
+namespace style {
+ class Style;
+}
+
enum HPosition
{
HPOS_LEFT,
@@ -54,6 +58,8 @@ class Shape: public lout::object::Object
{
public:
virtual bool isPointWithin (int x, int y) = 0;
+ virtual void draw (core::View *view, core::style::Style *style, int x,
+ int y) = 0;
};
/**
@@ -70,6 +76,7 @@ public:
inline Rectangle () { }
Rectangle (int x, int y, int width, int height);
+ void draw (core::View *view, core::style::Style *style, int x, int y);
bool intersectsWith (Rectangle *otherRect, Rectangle *dest);
bool isSubsetOf (Rectangle *otherRect);
bool isPointWithin (int x, int y);
@@ -86,6 +93,7 @@ public:
Circle (int x, int y, int radius);
+ void draw (core::View *view, core::style::Style *style, int x, int y);
bool isPointWithin (int x, int y);
};
@@ -116,6 +124,7 @@ public:
Polygon ();
~Polygon ();
+ void draw (core::View *view, core::style::Style *style, int x, int y);
void addPoint (int x, int y);
bool isPointWithin (int x, int y);
};