traverso-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Traverso-commit] traverso/src/traverso/songcanvas CurveView.cpp


From: Ben Levitt
Subject: [Traverso-commit] traverso/src/traverso/songcanvas CurveView.cpp
Date: Thu, 26 Apr 2007 18:50:31 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Ben Levitt <benjie>     07/04/26 18:50:31

Modified files:
        src/traverso/songcanvas: CurveView.cpp 

Log message:
        Keep node within the CurveView while dragging, correctly use 
on_first_input_event_x/y for node dragging

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/songcanvas/CurveView.cpp?cvsroot=traverso&r1=1.43&r2=1.44

Patches:
Index: CurveView.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/songcanvas/CurveView.cpp,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -b -r1.43 -r1.44
--- CurveView.cpp       26 Apr 2007 17:24:34 -0000      1.43
+++ CurveView.cpp       26 Apr 2007 18:50:31 -0000      1.44
@@ -144,8 +144,11 @@
        m_newPos.setX(m_newPos.x() + dx * m_scalefactor);
        m_newPos.setY(m_newPos.y() - ( dy / 
m_curveView->boundingRect().height()) );
        
-       if ( ((int)m_newPos.x()/ m_scalefactor) > 
m_curveView->boundingRect().width()) {
-               m_newPos.setX(m_curveView->boundingRect().width() * 
m_scalefactor);
+       if ( ((int)(m_newPos.x() - m_curveView->get_start_offset())/ 
m_scalefactor) > m_curveView->boundingRect().width()) {
+               m_newPos.setX(m_curveView->boundingRect().width() * 
m_scalefactor + m_curveView->get_start_offset());
+       }
+       if ( m_newPos.x() - m_curveView->get_start_offset() < 0) {
+               m_newPos.setX(m_curveView->get_start_offset());
        }
        
        if (m_newPos.y() < 0.0) {
@@ -482,7 +485,7 @@
 {
        PENTER;
 
-       QPointF origPos(mapFromScene(cpointer().scene_pos()));
+       QPointF 
origPos(mapFromScene(QPoint(cpointer().on_first_input_event_scene_x(), 
cpointer().on_first_input_event_scene_y())));
 
        update_softselected_node(QPoint((int)origPos.x(), (int)origPos.y()), 
true);
        




reply via email to

[Prev in Thread] Current Thread [Next in Thread]