]> Shamusworld >> Repos - architektonas/blobdiff - src/structs.h
Fix to prevent hit testing of objects on invisible layers.
[architektonas] / src / structs.h
index 62366adaca188179d705dfe97e6c76f4819b1ab6..d0dbb55611ae90b00a63f454c3727930f50d5482 100644 (file)
@@ -60,6 +60,9 @@ struct Line {
        Line(Vector pt1, Vector pt2, float th = 1.0, uint32_t c = 0, int l = LSSolid):
                type(OTLine), id(Global::objectID++), layer(0), color(c), thickness(th),
                style(l), selected(false), hovered(false), hitObject(false) { p[0] = pt1; p[1] = pt2; hitPoint[0] = hitPoint[1] = false; }
+       Vector Vect(void) { return Vector(p[0], p[1]); }
+       Vector Unit(void) { return Vector(p[0], p[1]).Unit(); }
+       double Length(void) { return Vector(p[0], p[1]).Magnitude(); }
 };
 
 struct Circle {
@@ -116,7 +119,7 @@ struct Text {
        std::string s;
 
        Text(): type(OTText), id(Global::objectID++) {}
-       Text(Vector pt1, char * str, float th = 10.0, uint32_t c = 0):
+       Text(Vector pt1, const char * str, float th = 10.0, uint32_t c = 0):
                type(OTText), id(Global::objectID++), layer(0), color(c), thickness(th),
                style(LSSolid), selected(false), hovered(false), hitObject(false),
                measured(false), s(str) { p[0] = pt1; angle[0] = 0; }