summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlli Werwolff <qt-info@nokia.com>2010-05-28 15:38:18 +0200
committerOlli Werwolff <qt-info@nokia.com>2010-05-31 10:36:28 +0200
commit428d63bc66caf5ebf479a4adefa3fbabc91a27ad (patch)
tree967ee9481e15fdea2e5133e12aa3c8a63d0221b2
parent181ab314e46e4072ccf3035a940b253d38966580 (diff)
Reenable closeButton as it got lost when changing menu structure
Reviewed-by: ckamm
-rw-r--r--models/maemoFremantle/maemoFremantle.config2
-rw-r--r--src/other/configurationreader.cpp13
-rw-r--r--src/other/deviceitem.cpp11
-rw-r--r--src/other/deviceitem.h3
4 files changed, 27 insertions, 2 deletions
diff --git a/models/maemoFremantle/maemoFremantle.config b/models/maemoFremantle/maemoFremantle.config
index 3d45983..65f6bbc 100644
--- a/models/maemoFremantle/maemoFremantle.config
+++ b/models/maemoFremantle/maemoFremantle.config
@@ -12,3 +12,5 @@ menuPortrait:fremantle_portrait.png
availableGeometryPortrait:0,56,480,744
menuLandscape:fremantle_landscape.png
availableGeometryLandscape:0,57,800,423
+closeButtonLandscape:691,0,109,57
+closeButtonPortrait:371,0,109,56
diff --git a/src/other/configurationreader.cpp b/src/other/configurationreader.cpp
index 550f0be..2db1308 100644
--- a/src/other/configurationreader.cpp
+++ b/src/other/configurationreader.cpp
@@ -138,6 +138,19 @@ bool ConfigurationReader::processLine(const QByteArray &line, DeviceData *device
b.area = QRectF(values[2].toFloat(), values[3].toFloat(),
values[4].toFloat(), values[5].toFloat());
deviceData->buttons.append(b);
+ } else if (parameter == "closeButtonPortrait" || parameter == "closeButtonLandscape") {
+ QList<QByteArray> values = value.split(',');
+ if (values.count() != 4) {
+ errorMsg = tr("ConfigurationReader: closeButton property requires four comma separated values\n"
+ " closeButton:x,y,width,height");
+ return false;
+ }
+ QRectF toSet = QRectF(values[0].toFloat(), values[1].toFloat(),
+ values[2].toFloat(), values[3].toFloat());
+ if (parameter == "closeButtonPortrait")
+ deviceData->closeButtonPortrait = toSet;
+ else
+ deviceData->closeButtonLandscape = toSet;
} else if (parameter == "availableGeometryPortrait" || parameter == "availableGeometryLandscape") {
QList<QByteArray> values = value.split(',');
if (values.count() != 4) {
diff --git a/src/other/deviceitem.cpp b/src/other/deviceitem.cpp
index a1c3c0d..51ccbf4 100644
--- a/src/other/deviceitem.cpp
+++ b/src/other/deviceitem.cpp
@@ -44,6 +44,7 @@ DeviceItem::DeviceItem(QGraphicsItem *parent)
, mLandscape(false)
, mDisplay(0)
, mMockup(0)
+ , mCloseButton(0)
, mMenu(0)
{
qRegisterMetaType<DeviceData>("DeviceData");
@@ -58,7 +59,10 @@ DeviceItem::DeviceItem(QGraphicsItem *parent)
mMenu->setFlag(QGraphicsItem::ItemIsFocusable);
mMenu->setFocusProxy(mDisplay);
mMenu->setZValue(SIMULATOR_MENU_Z);
-
+
+ mCloseButton = new DeviceButton(mMenu);
+ connect(mCloseButton, SIGNAL(pressed()), this, SIGNAL(closeWindowPressed()));
+
mLandscapeState = new QState;
mPortraitState = new QState;
@@ -132,7 +136,6 @@ void DeviceItem::changeDevice(const DeviceData &data)
if (!data.landscapeMenu.pixmap || data.landscapeMenu.pixmap->isNull())
qFatal("Could not read landscape menu image %s", qPrintable(data.landscapeMenu.pixmapPath));
}
-
Orientation current;
if (mLandscape)
@@ -308,6 +311,8 @@ void DeviceItem::updateMenuPositionAndSize()
mMenu->setPixmap(QPixmap());
mAvailableGeometry = displayRect;
}
+ mCloseButton->setPos(mDeviceData.closeButtonLandscape.topLeft());
+ mCloseButton->setSize(mDeviceData.closeButtonLandscape.size());
} else {
displayRect.setRect(0, 0, mDeviceData.resolution.width(), mDeviceData.resolution.height());
if (mDeviceData.portraitMenu.pixmap) {
@@ -317,6 +322,8 @@ void DeviceItem::updateMenuPositionAndSize()
mMenu->setPixmap(QPixmap());
mAvailableGeometry = displayRect;
}
+ mCloseButton->setPos(mDeviceData.closeButtonPortrait.topLeft());
+ mCloseButton->setSize(mDeviceData.closeButtonPortrait.size());
}
emit offsetChanged(mAvailableGeometry.topLeft());
}
diff --git a/src/other/deviceitem.h b/src/other/deviceitem.h
index 2a8d4a2..256a12a 100644
--- a/src/other/deviceitem.h
+++ b/src/other/deviceitem.h
@@ -72,6 +72,8 @@ struct DeviceData
QPoint offset;
int defaultFontSize;
int forceDpi;
+ QRectF closeButtonPortrait;
+ QRectF closeButtonLandscape;
QList<Button> buttons;
QString style;
Orientation nativeOrientation;
@@ -187,6 +189,7 @@ private:
QPoint mDragOffset;
QList<KeyButton*> mButtons;
+ DeviceButton *mCloseButton;
MenuPixmapItem *mMenu;
private slots: