diff -r 4785f57bf3d4 -r 03646e8da489 homescreenapp/hsdomainmodel/inc/hsdomainmodeldatastructures.h --- a/homescreenapp/hsdomainmodel/inc/hsdomainmodeldatastructures.h Thu May 27 12:46:08 2010 +0300 +++ b/homescreenapp/hsdomainmodel/inc/hsdomainmodeldatastructures.h Fri Jun 11 13:30:16 2010 +0300 @@ -21,25 +21,19 @@ #include #include "hsdomainmodel_global.h" #include +#include class HSDOMAINMODEL_EXPORT HsSceneData { public: HsSceneData() - : id(-1), defaultPageId(-1), maximumPageCount(-1), - maximumWidgetHeight(-1.0), maximumWidgetWidth(-1.0), - minimumWidgetHeight(-1.0), minimumWidgetWidth(-1.0) + : id(-1) {} int id; QString portraitWallpaper; QString landscapeWallpaper; - int defaultPageId; - int maximumPageCount; - qreal maximumWidgetHeight; - qreal maximumWidgetWidth; - qreal minimumWidgetHeight; - qreal minimumWidgetWidth; + }; class HSDOMAINMODEL_EXPORT HsPageData @@ -70,7 +64,7 @@ { public: HsWidgetPresentationData() - : x(0), y(0), zValue(0), + : orientation(Qt::Vertical), x(0), y(0), zValue(0), widgetId(-1) {} @@ -80,7 +74,12 @@ y = pos.y(); } - QString key; + QPointF pos() const + { + return QPointF(x, y); + } + + Qt::Orientation orientation; qreal x; qreal y; qreal zValue; @@ -91,11 +90,11 @@ { public: int bounceEffect; // pixels, bounce effect reservation, half in left side and half in right side of wallpaper - int tapAndHoldDistance; // pixels + qreal tapAndHoldDistance; // pixels int widgetTapAndHoldTimeout; // ms, duration of long press before action is triggered on widget int sceneTapAndHoldTimeout; // ms, duration of long press before action is triggered on background - int pageChangeZoneWidth; // pixels - int pageIndicatorSpacing; // pixels + qreal pageChangeZoneWidth; // pixels + qreal pageIndicatorSpacing; // pixels int pageChangeAnimationDuration; // ms, this is how long page change animation takes int pageChangeZoneAnimationDuration; // ms, this is how long crawling is done before page is actually changed int pageChangeZoneReverseAnimationDuration; // ms, animation duration back to starting position when crawling ends before page is changed @@ -105,128 +104,31 @@ int widgetDropEffectDuration; // ms int boundaryFeedbackEffectDistance; // pixels, when widget is moved within n pixels from first page right border or // n pixels from last page's left border, feedback effect is played + int defaultPageId; // id of default page (which cannot be removed) + int maximumPageCount; // maximum number of pages + qreal maximumWidgetHeight; // px + qreal maximumWidgetWidth; // px + qreal minimumWidgetHeight; // px + qreal minimumWidgetWidth; // px + bool shortcutLabelsVisible; // display labels under shortcut widgets + qreal pageChangePanDistance; // un, amount of pan needed to change page }; class HSDOMAINMODEL_EXPORT HsFeedbackConfiguration { public: - HbFeedback::InstantEffect feedbackFromString(QString feedback) + HbFeedback::InstantEffect feedbackFromString(const QString &feedback) { - if (feedback == "Basic") { - return HbFeedback::Basic; - } - else if (feedback == "Sensitive") { - return HbFeedback::Sensitive; - } - else if (feedback == "BasicButton") { - return HbFeedback::BasicButton; - } - else if (feedback == "SensitiveButton") { - return HbFeedback::SensitiveButton; - } - else if (feedback == "BasicKeypad") { - return HbFeedback::BasicKeypad; - } - else if (feedback == "SensitiveKeypad") { - return HbFeedback::SensitiveKeypad; - } - else if (feedback == "BasicSlider") { - return HbFeedback::BasicSlider; - } - else if (feedback == "SensitiveSlider") { - return HbFeedback::SensitiveSlider; - } - else if (feedback == "BasicKeypad") { - return HbFeedback::BasicKeypad; - } - else if (feedback == "BasicSlider") { - return HbFeedback::BasicSlider; - } - else if (feedback == "SensitiveSlider") { - return HbFeedback::SensitiveSlider; - } - else if (feedback == "BasicItem") { - return HbFeedback::BasicItem; - } - else if (feedback == "SensitiveItem") { - return HbFeedback::SensitiveItem; - } - else if (feedback == " ItemScroll") { - return HbFeedback::ItemScroll; - } - else if (feedback == "ItemPick") { - return HbFeedback::ItemPick; - } - else if (feedback == "ItemDrop") { - return HbFeedback::ItemDrop; - } - else if (feedback == "ItemMoveOver") { - return HbFeedback::ItemMoveOver; - } - else if (feedback == "BounceEffect") { - return HbFeedback::BounceEffect; - } - else if (feedback == "Checkbox") { - return HbFeedback::Checkbox; - } - else if (feedback == "MultipleCheckbox") { - return HbFeedback::MultipleCheckbox; - } - else if (feedback == "Editor") { - return HbFeedback::Editor; - } - else if (feedback == "TextSelection") { - return HbFeedback::TextSelection; - } - else if (feedback == "BlankSelection") { - return HbFeedback::BlankSelection; - } - else if (feedback == "LineSelection") { - return HbFeedback::LineSelection; - } - else if (feedback == "EmptyLineSelection") { - return HbFeedback::EmptyLineSelection; - } - else if (feedback == "PopUp") { - return HbFeedback::PopUp; - } - else if (feedback == "PopupOpen") { - return HbFeedback::PopupOpen; - } - else if (feedback == "PopupClose") { - return HbFeedback::PopupClose; - } - else if (feedback == "Flick") { - return HbFeedback::Flick; - } - else if (feedback == "StopFlick") { - return HbFeedback::StopFlick; - } - else if (feedback == "MultitouchActivate") { - return HbFeedback::MultitouchActivate; - } - else if (feedback == "RotateStep") { - return HbFeedback::RotateStep; - } - else if (feedback == "PositiveTacticon") { - return HbFeedback::PositiveTacticon; - } - else if (feedback == "NeutralTacticon") { - return HbFeedback::NeutralTacticon; - } - else if (feedback == "NegativeTacticon") { - return HbFeedback::NegativeTacticon; - } - else if (feedback == "NumberOfInstantFeedbacks") { - return HbFeedback::NumberOfInstantFeedbacks; - } - else if (feedback == "InstantUser") { - return HbFeedback::InstantUser; - } - else if (feedback == "InstantMaxUser") { - return HbFeedback::InstantMaxUser; - } + int index = HbFeedback::staticMetaObject.indexOfEnumerator("InstantEffect"); + QMetaEnum metaEnum = HbFeedback::staticMetaObject.enumerator(index); + + int intFeedback = metaEnum.keysToValue(feedback.toAscii()); + + if (intFeedback < HbFeedback::None || intFeedback > HbFeedback::InstantMaxUser) { return HbFeedback::None; + } + + return static_cast(intFeedback); } public: