Version: CVS_HEAD (using KDE KDE 3.2.1) Installed from: Compiled From Sources OS: Linux STEPS TO REPRODUCE: Create a plot. Enter datamode. Move the cursor to a point in the plor where the datamode marker is visible. Scroll the plot left or right using the arrow keys. RESULTS: The datamode marker remains where it is. EXPECTED RESULTS: The datamode marker should move to the point now closest to the cursor.
Duplicate post.
Not a duplicate post.
Yes it is. You posted it three times: Bugs 95410, 95412 and 95413. I closed two.
My apologies for 95410, which I incorrectly posted to ksjembed. However, 95412 and 95413 are different bugs. They appear similar at first glance but are different. -----Original Message----- From: owner@bugs.kde.org [mailto:owner@bugs.kde.org]On Behalf Of Thiago Macieira Sent: Saturday, December 18, 2004 2:50 PM To: arwalker@sumusltd.com Subject: [Bug 95412] Datamode no longer working when scrolling ------- You are receiving this mail because: ------- You reported the bug, or are watching the reporter. http://bugs.kde.org/show_bug.cgi?id=95412 thiago.macieira kdemail net changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution| |INVALID ------- Additional Comments From thiago.macieira kdemail net 2004-12-18 23:50 ------- Yes it is. You posted it three times: Bugs 95410, 95412 and 95413. I closed two.
You're right. Just a few words different. Sorry for the inconvenience.
On Saturday 18 December 2004 17:55, Thiago Macieira wrote: > 23:55 ------- You're right. Just a few words different. > > Sorry for the inconvenience. But they're actually the same bug anyway.
CVS commit by staikos: Update the datamode marker when scrolling and zooming BUG: 95413, 95412 M +12 -5 kst2dplot.cpp 1.336 M +2 -1 kst2dplot.h 1.130 --- kdeextragear-2/kst/kst/kst2dplot.cpp #1.335:1.336 @@ -1956,8 +1956,8 @@ void Kst2DPlot::paint(KstPaintType type, if (view) { _copy_x = _copy_y = KST::NOPOINT; - if (GetPlotRegion().contains(_mouse.lastLocation)) { - updateMousePos(_mouse.lastLocation); + if (GetPlotRegion().contains(_mouse.tracker)) { + updateMousePos(_mouse.tracker); if (KstApp::inst()->dataMode()) { - highlightNearestDataPoint(false, view, _mouse.lastLocation); + highlightNearestDataPoint(false, view, _mouse.tracker); } } @@ -2954,5 +2954,5 @@ bool Kst2DPlot::mouseHandler() const { void Kst2DPlot::removeFocus(QPainter& p) { - _mouse.lastLocation = QPoint(-1, -1); + _mouse.tracker = _mouse.lastLocation = QPoint(-1, -1); p.setClipRegion(_lastClipRegion); setHasFocus(false); @@ -3159,4 +3159,6 @@ void Kst2DPlot::mouseMoveEvent(QWidget * } + _mouse.tracker = e->pos(); + if (globalZoomType() == LABEL_TOOL) { // HACK _mouse.mode = LABEL_TOOL; @@ -3432,4 +3434,6 @@ void Kst2DPlot::mouseReleaseEvent(QWidge static_cast<KstViewWidget*>(view)->viewObject()->releaseMouse(this); + _mouse.tracker = e->pos(); + QRect newg = _mouse.mouseRect(); if (_mouse.mode == XY_ZOOMBOX) { @@ -3574,4 +3578,5 @@ KstMouse::KstMouse() minMove = 2; lastLocation = QPoint(-1, -1); + tracker = QPoint(-1, -1); } @@ -3638,5 +3643,5 @@ void Kst2DPlot::zoomRectUpdate(QWidget * void Kst2DPlot::setCursorForMode(QWidget *view) { Q_ASSERT(false); - setCursorForMode(view, _mouse.mode, _mouse.lastLocation); + setCursorForMode(view, _mouse.mode, _mouse.tracker); } @@ -4588,4 +4593,6 @@ void Kst2DPlot::dropEvent(QWidget *view, } + _mouse.tracker = e->pos(); + if (accept) { KstApp::inst()->document()->setModified(); --- kdeextragear-2/kst/kst/kst2dplot.h #1.129:1.130 @@ -61,5 +61,6 @@ struct KstMouse { KstMouseModeType mode; int label, minMove; - QPoint lastLocation, pressLocation; + QPoint lastLocation, pressLocation; // for zooming primarily + QPoint tracker; // for tracking the mouse location QRect plotGeometry; bool zooming() const;