homescreenapp/hsdomainmodel/src/hspage.cpp
changeset 39 4e8ebe173323
parent 36 cdae8c6c3876
child 46 23b5d6a29cce
--- a/homescreenapp/hsdomainmodel/src/hspage.cpp	Fri Apr 16 14:54:01 2010 +0300
+++ b/homescreenapp/hsdomainmodel/src/hspage.cpp	Mon May 03 12:24:59 2010 +0300
@@ -50,9 +50,6 @@
     setFlag(QGraphicsItem::ItemHasNoContents);
     setSizePolicy(QSizePolicy(QSizePolicy::Ignored, 
                               QSizePolicy::Ignored));
-                              
-    mStartPoint["portrait"] = QPointF();                              
-    mStartPoint["landscape"] = QPointF();                              
 }
 
 /*!
@@ -171,13 +168,12 @@
     if (!widgetHost->widgetPresentationData(key, presentation)) {
         presentation.key = key;
         presentation.setPos(QPointF());
-        presentation.setSize(widgetHost->preferredSize());
         presentation.zValue = 0;
         widgetHost->setWidgetPresentationData(presentation);
     }
 
     widgetHost->hide();
-    widgetHost->setGeometry(presentation.geometry());
+    widgetHost->setPos(presentation.x, presentation.y);
     widgetHost->setZValue(presentation.zValue);
     
     connectWidget(widgetHost);
@@ -208,7 +204,7 @@
         HsWidgetPositioningOnWidgetAdd::instance();
    
     QList<QRectF> calculatedRects = 
-        algorithm->convert(HsScene::mainWindow()->layoutRect(), rects, mStartPoint[key]);
+        algorithm->convert(HsScene::mainWindow()->layoutRect(), rects, QPointF());
     
     updateZValues();
 
@@ -221,18 +217,10 @@
         widget->setParentItem(this);
         widget->show();
     }
-    mStartPoint[key] = widget->geometry().bottomRight();
     mWidgets << mNewWidgets;
     mNewWidgets.clear();
 }
 
-/*!
-    Resets the new widgets list
-*/
-void HsPage::resetNewWidgets()
-{
-    mNewWidgets.clear();
-}
 
 bool HsPage::deleteFromDatabase()
 {
@@ -273,40 +261,6 @@
     mRemovable = removable; 
 }
 
-bool HsPage::updateZValues()
-{
-    int z = 0;
-
-    if (!mWidgets.isEmpty()) {
-        QMultiMap<qreal, HsWidgetHost *> map;
-        foreach (HsWidgetHost *widget, mWidgets) {
-            map.insert(widget->zValue(), widget);
-        }
-        
-        QList<HsWidgetHost *> sortedWidgets = map.values();
-                
-        HsWidgetHost *activeWidget = HsScene::instance()->activeWidget();    
-        if (sortedWidgets.contains(activeWidget)) {
-            sortedWidgets.removeOne(activeWidget);
-            sortedWidgets.append(activeWidget);        
-        }
-        
-        foreach (HsWidgetHost *widget, sortedWidgets) {
-            widget->setZValue(z++);
-            widget->setWidgetPresentation();
-        }
-    }
-
-    if (!mNewWidgets.isEmpty()) {
-        foreach (HsWidgetHost *widget, mNewWidgets) {
-            widget->setZValue(z++);
-            widget->setWidgetPresentation();
-        }
-    }
-
-    return true;
-}
-
 HsPage *HsPage::createInstance(const HsPageData &pageData)
 {
     HsDatabase *db = HsDatabase::instance();
@@ -359,6 +313,38 @@
     }
 }
 
+void HsPage::updateZValues()
+{
+    int z = 0;
+
+    if (!mWidgets.isEmpty()) {
+        QMultiMap<qreal, HsWidgetHost *> map;
+        foreach (HsWidgetHost *widget, mWidgets) {
+            map.insert(widget->zValue(), widget);
+        }
+        
+        QList<HsWidgetHost *> sortedWidgets = map.values();
+                
+        HsWidgetHost *activeWidget = HsScene::instance()->activeWidget();    
+        if (sortedWidgets.contains(activeWidget)) {
+            sortedWidgets.removeOne(activeWidget);
+            sortedWidgets.append(activeWidget);        
+        }
+        
+        foreach (HsWidgetHost *widget, sortedWidgets) {
+            widget->setZValue(z++);
+            widget->setWidgetPresentation();
+        }
+    }
+
+    if (!mNewWidgets.isEmpty()) {
+        foreach (HsWidgetHost *widget, mNewWidgets) {
+            widget->setZValue(z++);
+            widget->setWidgetPresentation();
+        }
+    }
+}
+
 void HsPage::connectWidget(HsWidgetHost *widget)
 {
     connect(widget, SIGNAL(widgetFinished(HsWidgetHost*)),