summaryrefslogtreecommitdiffstats
path: root/tksao/frame/basecommand.C
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2019-08-07 18:43:56 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2019-08-07 18:43:56 (GMT)
commitde2c859f0fc52f7efa02a4076ae25597ee75b1c7 (patch)
tree18cc948105ca95ed7b0dea19b4d51ce736c47193 /tksao/frame/basecommand.C
parent2716131fe5614208e662693b74c1f257d2c4fd7f (diff)
downloadblt-de2c859f0fc52f7efa02a4076ae25597ee75b1c7.zip
blt-de2c859f0fc52f7efa02a4076ae25597ee75b1c7.tar.gz
blt-de2c859f0fc52f7efa02a4076ae25597ee75b1c7.tar.bz2
simplify code
Diffstat (limited to 'tksao/frame/basecommand.C')
-rw-r--r--tksao/frame/basecommand.C56
1 files changed, 4 insertions, 52 deletions
diff --git a/tksao/frame/basecommand.C b/tksao/frame/basecommand.C
index 81872ff..7c6186c 100644
--- a/tksao/frame/basecommand.C
+++ b/tksao/frame/basecommand.C
@@ -452,72 +452,24 @@ void Base::cropCenterCmd(const Vector& vv,
void Base::cropBeginCmd(const Vector& vv)
{
+ useCrop = 1;
cropBegin = vv;
cropEnd = vv;
}
void Base::cropMotionCmd(const Vector& vv)
{
- Vector ss = mapToRef(cropBegin, Coord::CANVAS);
-
- // erase
- if (cropBegin[0]!=cropEnd[0] || cropBegin[1]!=cropEnd[1]) {
- Vector tt = mapToRef(cropEnd, Coord::CANVAS);
-
- Vector ll = mapFromRef(ss, Coord::CANVAS);
- Vector lr = mapFromRef(Vector(tt[0],ss[1]), Coord::CANVAS);
- Vector ur = mapFromRef(tt, Coord::CANVAS);
- Vector ul = mapFromRef(Vector(ss[0],tt[1]), Coord::CANVAS);
-
- BBox bb(ll);
- bb.bound(lr);
- bb.bound(ur);
- bb.bound(ul);
-
- redrawNow(bb.expand(2));
- }
-
cropEnd = vv;
- // and draw to window
- {
- Vector tt = mapToRef(cropEnd, Coord::CANVAS);
-
- Vector ll = mapFromRef(ss, Coord::WINDOW);
- Vector lr = mapFromRef(Vector(tt[0],ss[1]), Coord::WINDOW);
- Vector ur = mapFromRef(tt, Coord::WINDOW);
- Vector ul = mapFromRef(Vector(ss[0],tt[1]), Coord::WINDOW);
-
- XDrawLine(display,Tk_WindowId(tkwin),selectGCXOR,ll[0],ll[1],lr[0],lr[1]);
- XDrawLine(display,Tk_WindowId(tkwin),selectGCXOR,lr[0],lr[1],ur[0],ur[1]);
- XDrawLine(display,Tk_WindowId(tkwin),selectGCXOR,ur[0],ur[1],ul[0],ul[1]);
- XDrawLine(display,Tk_WindowId(tkwin),selectGCXOR,ul[0],ul[1],ll[0],ll[1]);
- }
+ update(PIXMAP);
}
void Base::cropEndCmd(const Vector& vv)
{
- Vector ss = mapToRef(cropBegin, Coord::CANVAS);
-
- // erase
- if (cropBegin[0]!=cropEnd[0] || cropBegin[1]!=cropEnd[1]) {
- Vector tt = mapToRef(cropEnd, Coord::CANVAS);
-
- Vector ll = mapFromRef(ss, Coord::CANVAS);
- Vector lr = mapFromRef(Vector(tt[0],ss[1]), Coord::CANVAS);
- Vector ur = mapFromRef(tt, Coord::CANVAS);
- Vector ul = mapFromRef(Vector(ss[0],tt[1]), Coord::CANVAS);
-
- BBox bb(ll);
- bb.bound(lr);
- bb.bound(ur);
- bb.bound(ul);
- redrawNow(bb.expand(2));
- }
-
- // and crop
+ useCrop = 0;
cropEnd = vv;
if (cropBegin[0]!=cropEnd[0] || cropBegin[1]!=cropEnd[1]) {
+ Vector ss = mapToRef(cropBegin, Coord::CANVAS);
Vector tt = mapToRef(cropEnd, Coord::CANVAS);
if (!isMosaic()) {