ui/views/listview/src/glxlistview.cpp
changeset 45 863223ea6961
parent 44 aa2fa096cbfb
child 50 a0f57508af73
child 55 fb37077c270f
--- a/ui/views/listview/src/glxlistview.cpp	Fri Jun 11 17:53:15 2010 +0530
+++ b/ui/views/listview/src/glxlistview.cpp	Fri Jun 25 15:41:33 2010 +0530
@@ -63,8 +63,12 @@
 void GlxListView::setModel(QAbstractItemModel *model) 
 {
     qDebug("GlxListView::setModel()");
+    if ( mModel ) {
+        disconnect(mModel, SIGNAL(listPopulated()), this, SLOT( populated()));
+    }
     mModel =  model ;
     mListView->setModel(mModel);
+    connect(mModel, SIGNAL(listPopulated()), this, SLOT( populated()));
 }
 
 void GlxListView::addToolBar( HbToolBar *toolBar ) 
@@ -180,6 +184,17 @@
     }
 }
 
+void GlxListView::populated()
+{
+    QVariant variant = mModel->data(mModel->index(0,0), GlxVisualWindowIndex );
+    int visualIndex = 0;
+    if ( variant.isValid() &&  variant.canConvert<int> () ) 
+    {
+        visualIndex = variant.value<int>();
+    }
+	//Scroll To the Visible Index as mentioned in the AM.
+    mListView->scrollTo(mModel->index(visualIndex, 0),  HbAbstractItemView::PositionAtTop );
+}
 void GlxListView::itemSelected(const QModelIndex &  index)
 {
     qDebug("GlxListView::itemSelected() index = %d", index.row() );