summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/tools/gen.hxx10
-rw-r--r--tools/source/generic/gen.cxx15
2 files changed, 16 insertions, 9 deletions
diff --git a/include/tools/gen.hxx b/include/tools/gen.hxx
index 0d9a81ebdcee..56af47582a7f 100644
--- a/include/tools/gen.hxx
+++ b/include/tools/gen.hxx
@@ -470,7 +470,7 @@ public:
/**
* Expands the rectangle in all directions by the input value.
*/
- inline void expand(long nExpandBy);
+ void expand(long nExpandBy);
inline void shrink(long nShrinkBy);
/**
@@ -722,14 +722,6 @@ inline Rectangle operator - ( const Rectangle& rRect, const Point& rPt )
}
}
-inline void tools::Rectangle::expand(long nExpandBy)
-{
- nLeft -= nExpandBy;
- nTop -= nExpandBy;
- nRight += nExpandBy;
- nBottom += nExpandBy;
-}
-
inline void tools::Rectangle::shrink(long nShrinkBy)
{
nLeft += nShrinkBy;
diff --git a/tools/source/generic/gen.cxx b/tools/source/generic/gen.cxx
index 3593801579ac..53bb2680c5c8 100644
--- a/tools/source/generic/gen.cxx
+++ b/tools/source/generic/gen.cxx
@@ -233,4 +233,19 @@ OString tools::Rectangle::toString() const
return ss.str().c_str();
}
+void tools::Rectangle::expand(long nExpandBy)
+{
+ nLeft -= nExpandBy;
+ nTop -= nExpandBy;
+ if (nRight == RECT_EMPTY)
+ nRight = nLeft + nExpandBy - 1;
+ else
+ nRight += nExpandBy;
+ if (nBottom == RECT_EMPTY)
+ nBottom = nTop + nExpandBy - 1;
+ else
+ nBottom += nExpandBy;
+}
+
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */