Commit 5805cafb authored by Cyril Deguet's avatar Cyril Deguet

* ctrl_tree.cpp: (un)folding of a playlist item is no triggered

by a simple click (was a double click before) which is more
natural
parent 89acb8f5
...@@ -396,18 +396,27 @@ void CtrlTree::handleEvent( EvtGeneric &rEvent ) ...@@ -396,18 +396,27 @@ void CtrlTree::handleEvent( EvtGeneric &rEvent )
else if( rEvent.getAsString().find( "mouse:left:down" ) != else if( rEvent.getAsString().find( "mouse:left:down" ) !=
string::npos ) string::npos )
{ {
// Unselect any previously selected item it = findItemAtPos(yPos);
for( it = m_rTree.begin(); it != m_rTree.end(); if( it->size() && xPos > (it->depth() - 1) * itemImageWidth()
it = m_rTree.getNextVisibleItem( it ) ) && xPos < it->depth() * itemImageWidth() )
{ {
it->m_selected = false; // Fold/unfold the item
it->m_expanded = !it->m_expanded;
} }
// Select the new item else
it = findItemAtPos(yPos);
if( it != m_rTree.end() )
{ {
it->m_selected = true; // Unselect any previously selected item
m_pLastSelected = &*it; for( it = m_rTree.begin(); it != m_rTree.end();
it = m_rTree.getNextVisibleItem( it ) )
{
it->m_selected = false;
}
// Select the new item
if( it != m_rTree.end() )
{
it->m_selected = true;
m_pLastSelected = &*it;
}
} }
} }
...@@ -417,15 +426,8 @@ void CtrlTree::handleEvent( EvtGeneric &rEvent ) ...@@ -417,15 +426,8 @@ void CtrlTree::handleEvent( EvtGeneric &rEvent )
it = findItemAtPos(yPos); it = findItemAtPos(yPos);
if( it != m_rTree.end() ) if( it != m_rTree.end() )
{ {
if( it->size() && xPos < it->depth() * itemImageWidth() ) // Execute the action associated to this item
{ m_rTree.action( &*it );
it->m_expanded = !it->m_expanded;
}
else
{
// Execute the action associated to this item
m_rTree.action( &*it );
}
} }
} }
......
...@@ -88,8 +88,6 @@ void Playtree::action( VarTree *pItem ) ...@@ -88,8 +88,6 @@ void Playtree::action( VarTree *pItem )
void Playtree::onChange() void Playtree::onChange()
{ {
/* FIXME : updateTree could be a nice idea so we don't have to
* start from scratch each time the playlist changes */
buildTree(); buildTree();
notify(); notify();
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment