diff -r c5b304f4d89b -r ed94e1e8390e mpviewplugins/mpmediawallviewplugin/src/mptracklistwidget.cpp --- a/mpviewplugins/mpmediawallviewplugin/src/mptracklistwidget.cpp Thu Sep 02 20:24:03 2010 +0300 +++ b/mpviewplugins/mpmediawallviewplugin/src/mptracklistwidget.cpp Fri Sep 17 08:28:52 2010 +0300 @@ -28,12 +28,15 @@ #include #include #include +#include +#include #include "mptracklistwidget.h" const int swipeAngleTolerance = 30; // angle is from 0 to 360 +const int tracklistOutlineSize = 1; // /*! \class MpTrackListWidget @@ -56,20 +59,25 @@ */ MpTrackListWidget::MpTrackListWidget( QGraphicsItem *parent ) : HbWidget( parent ) { + setFlag( QGraphicsItem::ItemHasNoContents, false ); // Register the custorm css path for the list items. - HbStyleLoader::registerFilePath(":/css/mpcustomlistitem.css"); - HbStyleLoader::registerFilePath(":/css/mpcustomlistitem.hblistviewitem.widgetml"); + HbStyleLoader::registerFilePath( ":/css/mpcustomlistitem.css" ); + HbStyleLoader::registerFilePath( ":/css/mpcustomlistitem.hblistviewitem.widgetml" ); mList = new HbListView( this ); // set layout name that matches the custom list item layout. - mList->setLayoutName("mpmwtracklist"); + mList->setLayoutName( "mpmwtracklist" ); + HbScrollBar *scrollbar = mList->verticalScrollBar(); + scrollbar->show(); + scrollbar->setInteractive( true ); + mList->setVerticalScrollBarPolicy( HbScrollArea::ScrollBarAlwaysOn ); //grab the gesture for close. grabGesture(Qt::SwipeGesture); mFrameItem = new HbFrameItem( this ); - mFrameItem->frameDrawer().setFrameType( HbFrameDrawer::NinePieces ); - mFrameItem->frameDrawer().setFrameGraphicsName( "qtg_fr_multimedia_trans" ); - mFrameItem->setZValue(-1); + mFrameItem->frameDrawer().setFrameType( HbFrameDrawer::OnePiece ); + mFrameItem->frameDrawer().setFrameGraphicsName( "qtg_fr_popup_c" ); //replace for qtg_graf_mediawall_list_bg when available. + mFrameItem->setFlag(QGraphicsItem::ItemStacksBehindParent); } /*! @@ -93,8 +101,7 @@ void MpTrackListWidget::resizeEvent(QGraphicsSceneResizeEvent *event) { mFrameItem->setGeometry( rect() ); - qreal margin = 0.0; - style()->parameter(QString("var(hb-param-margin-gene-middle-vertical)"), margin); + qreal margin = tracklistOutlineSize; mList->setGeometry( rect().adjusted( margin, margin, -margin, -margin ) ); HbWidget::resizeEvent( event ); } @@ -143,6 +150,20 @@ } /*! + \reimp + */ +void MpTrackListWidget::paint( QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget ) +{ + Q_UNUSED( widget ) + Q_UNUSED( option ) + painter->save(); + qreal outlineWidth(tracklistOutlineSize); + painter->setPen(QPen(HbColorScheme::color("qtc_view_normal_secondary"), outlineWidth,Qt::SolidLine,Qt::FlatCap,Qt::MiterJoin)); + painter->drawRect( rect().adjusted(outlineWidth/2,outlineWidth/2,-outlineWidth/2,-outlineWidth/2) ); + painter->restore(); +} + +/*! Maps swipe \a angle to QSwipeGesture::SwipeDirection based on a tolerance parameter and orientation. This funtions helps to identify a swipe even if it is not sharp movement from 180 to 0 degrees on the righ swipe