Dottet label selection box and standard widget selection boxes would not always align when snapping was enabled. Also, the dragging indicators would not snap. (STR #964)

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4514 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Matthias Melcher 2005-08-15 20:40:16 +00:00
parent c38c41a0c6
commit 41c089f3c1
3 changed files with 9 additions and 2 deletions

View File

@ -3,6 +3,7 @@ CHANGES IN FLTK 1.1.7
- Documentation fixes (STR #571, STR #648, STR #692, STR
#730, STR #744, STR #745, STR #931, STR #942, STR #960,
STR #969)
- FLUID selection boxes now synchronised (STR #964)
- fl_filename_list now recognizes pathnames without trailing
slash as directions (STR #854)
- Fl_Text_Display now auto-scrolls in all

View File

@ -464,7 +464,8 @@ protected:
friend class Overlay_Window;
int mx,my; // mouse position during dragging
int x1,y1; // initial position of selection box
int bx,by,br,bt; // bounding box of selection
int bx,by,br,bt; // bounding box of selection before snapping
int sx,sy,sr,st; // bounding box of selection after snapping to guides
int dx,dy;
int drag; // which parts of bbox are being moved
int numselected; // number of children selected

View File

@ -647,6 +647,7 @@ void Fl_Window_Type::draw_overlay() {
if (myo->o->y()+myo->o->h() > bt) bt = myo->o->y()+myo->o->h();
}
recalc = 0;
sx = bx; sy = by; sr = br; st = bt;
}
fl_color(FL_RED);
if (drag==BOX && (x1 != mx || y1 != my)) {
@ -695,7 +696,7 @@ void Fl_Window_Type::draw_overlay() {
// - check for distance to the window edge
// * FLTK suggests 10 pixels from the edge
int d;
int xsp, ysp;
int xsp, ysp, mybx_bak = mybx, myby_bak = myby;
Fl_Widget_Type *mysel = (Fl_Widget_Type *)selection;
@ -973,7 +974,11 @@ void Fl_Window_Type::draw_overlay() {
}
}
}
mysx += mybx-mybx_bak; mysr += mybx-mybx_bak;
mysy += myby-myby_bak; myst += myby-myby_bak;
}
// align the snapping selection box with the box we draw.
sx = mysx; sy = mysy; sr = mysr; st = myst;
// Draw selection box + resize handles...
// draw box including all labels