On Tuesday 11 November 2008, Shelagh Manton wrote:

> 4. When however I Shift -> key and <- key to select particular parts of
> the song then I can get it to crash.

I think I got the crash with left arrow.  Here's a trace that runs all the way 
to #0.

Looks like it's either a quickie oh duh fix or something really ugly to figure 
out.

My initial reaction to the ruler change (first time I've looked at it)

1) Having the notation selection reflected on the ruler has a lot of potential

2) There are tons of drawing artifacts that look terrible, and this is nowhere 
near production quality (though we can worry about production quality for 
this on the other side of porting it over to the Qt4 branch)

3) This whole thing with keyboard arrow keys doing one thing and the mouse 
doing something different is rather confusing and unsettling.  I use shift + 
up/down keys to move the blue-selected ruler bars, and I use shift + mouse to 
move the red-selected ruler bars, and ruler bars can be both red- and 
blue-selected at the same time.  Are we sure we want to start writing 
documentation for this yet?  Do we really need two parallel selection 
mechanisms with conflicting but similar controls? (Yes is a viable answer, 
but let's talk about why.)

Stack trace:
#0  0x0895f673 in std::_Rb_tree<Rosegarden::Event*, Rosegarden::Event*, 
std::_Identity<Rosegarden::Event*>, Rosegarden::Event::EventCmp, 
std::allocator<Rosegarden::Event*> >::upper_bound (this=0xb408d8f0, 
[EMAIL PROTECTED]) at /usr/include/c++/4.2/bits/stl_tree.h:1484
#1  0x0895f6f7 in std::_Rb_tree<Rosegarden::Event*, Rosegarden::Event*, 
std::_Identity<Rosegarden::Event*>, Rosegarden::Event::EventCmp, 
std::allocator<Rosegarden::Event*> >::equal_range (this=0xb408d8f0, 
[EMAIL PROTECTED]) at /usr/include/c++/4.2/bits/stl_tree.h:1511
#2  0x0895f756 in std::multiset<Rosegarden::Event*, 
Rosegarden::Event::EventCmp, std::allocator<Rosegarden::Event*> 
>::equal_range (
    this=0xb408d8f0, [EMAIL PROTECTED]) 
at /usr/include/c++/4.2/bits/stl_multiset.h:481
#3  0x0895d3a2 in Rosegarden::EventSelection::contains (this=0xb408d8e8, 
e=0xb49f2260) at /home/silvan/SVN/rosegarden/src/base/Selection.cpp:134
#4  0x0860f0e9 in Rosegarden::ControlRuler::isEventSelected (this=0xb433ec10, 
e=0xb49f2260)
    at /home/silvan/SVN/rosegarden/src/gui/rulers/ControlRuler.cpp:165
#5  0x0882ac20 in Rosegarden::ControlItem::draw (this=0xb4310178, 
[EMAIL PROTECTED])
    at /home/silvan/SVN/rosegarden/src/gui/rulers/ControlItem.cpp:96
#6  0xb7ce10e5 in QCanvasItemList::drawUnique () from /usr/lib/libqt-mt.so.3
#7  0xb7ce755c in QCanvas::drawCanvasArea () from /usr/lib/libqt-mt.so.3
#8  0xb7ce86bc in QCanvas::drawChanges () from /usr/lib/libqt-mt.so.3
#9  0xb7ce9569 in QCanvas::update () from /usr/lib/libqt-mt.so.3
#10 0x0860f239 in Rosegarden::ControlRuler::slotUpdate (this=0xb433ec10) 
at /home/silvan/SVN/rosegarden/src/gui/rulers/ControlRuler.cpp:109
#11 0x085bdce6 in Rosegarden::EditView::updateControlRulers (this=0xb4bedd38, 
updateHPos=false)
    at /home/silvan/SVN/rosegarden/src/gui/general/EditView.cpp:210
#12 0x085c7346 in Rosegarden::EditView::paintEvent (this=0xb4bedd38, 
e=0xbf9a20d0) at /home/silvan/SVN/rosegarden/src/gui/general/EditView.cpp:190
#13 0x084ea77e in Rosegarden::NotationView::paintEvent (this=0xb4bedd38, 
e=0xbf9a20d0)
    
at /home/silvan/SVN/rosegarden/src/gui/editors/notation/NotationView.cpp:2990
#14 0xb7ae722b in QWidget::event () from /usr/lib/libqt-mt.so.3
#15 0xb7bbc2da in QMainWindow::event () from /usr/lib/libqt-mt.so.3
#16 0xb7a44c36 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3
#17 0xb7a47564 in QApplication::notify () from /usr/lib/libqt-mt.so.3
#18 0xb75c49b2 in KApplication::notify () from /usr/lib/libkdecore.so.4
#19 0xb79d528d in QApplication::sendEvent () from /usr/lib/libqt-mt.so.3
#20 0xb7a101e3 in QWidget::repaint () from /usr/lib/libqt-mt.so.3
#21 0xb7a45c56 in QApplication::sendPostedEvents () 
from /usr/lib/libqt-mt.so.3
#22 0xb7a45d76 in QApplication::sendPostedEvents () 
from /usr/lib/libqt-mt.so.3
#23 0xb79e98a3 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
#24 0xb7a5ff90 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3
#25 0xb7a5fc8e in QEventLoop::exec () from /usr/lib/libqt-mt.so.3
#26 0xb7a467df in QApplication::exec () from /usr/lib/libqt-mt.so.3
#27 0x083be211 in main (argc=-1080416328, argv=0xbf9a27e4) 
at /home/silvan/SVN/rosegarden/src/gui/application/main.cpp:733

-- 
D. Michael McIntyre 

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to