equal
deleted
inserted
replaced
24 |
24 |
25 #include <QFlags> |
25 #include <QFlags> |
26 #include <QObject> |
26 #include <QObject> |
27 #include <QRect> |
27 #include <QRect> |
28 |
28 |
|
29 // Define VIEWPORT_ALWAYS_ALLOW_ZOOMING to force all content (particularly mobile content that |
|
30 // has UserScalable turned off) to be scalable. This makes such content more usable since our |
|
31 // default font is so small. If we switch to a larger default font this can be removed. |
|
32 #ifdef Q_WS_MAEMO_5 |
|
33 #define VIEWPORT_ALWAYS_ALLOW_ZOOMING |
|
34 #endif |
|
35 |
29 namespace GVA { |
36 namespace GVA { |
30 |
37 |
31 struct ParsedViewportData{ |
38 struct ParsedViewportData{ |
32 QString m_width; |
39 QString m_width; |
33 QString m_height; |
40 QString m_height; |
50 ViewportMetaData(); |
57 ViewportMetaData(); |
51 ViewportMetaData(const ViewportMetaData&); |
58 ViewportMetaData(const ViewportMetaData&); |
52 ViewportMetaData& operator=(const ViewportMetaData&); |
59 ViewportMetaData& operator=(const ViewportMetaData&); |
53 ~ViewportMetaData(); |
60 ~ViewportMetaData(); |
54 |
61 |
55 void adjustViewportData(const QRect& clientRect); |
62 void adjustViewportData(const QSizeF& clientRect); |
56 void updateViewportData(const QSize& size, const QRect& clientRect); |
63 QSize getSpecifiedSize() const; |
57 void orientationChanged(const QRect& newClientRect); |
64 void adjustZoomValues(const QSizeF& contentSize); |
|
65 void orientationChanged(const QSizeF& newClientRect); |
58 bool isLayoutNeeded(); |
66 bool isLayoutNeeded(); |
59 void reset() {initialize();} |
67 void reset() {initialize();} |
60 |
68 |
61 void setFlag(ScaleLimit scaleLimit, bool enable) |
69 void setFlag(ScaleLimit scaleLimit, bool enable) |
62 { |
70 { |
71 return m_scaleLimits.testFlag(scaleLimit); |
79 return m_scaleLimits.testFlag(scaleLimit); |
72 } |
80 } |
73 |
81 |
74 protected: |
82 protected: |
75 void initialize(); |
83 void initialize(); |
76 void adjustZoomValues(const QRect& clientRect); |
84 |
77 bool isUserSpecifiedWidth(); |
85 bool isUserSpecifiedWidth(); |
78 bool isUserSpecifiedHeight(); |
86 bool isUserSpecifiedHeight(); |
79 |
87 |
80 public: |
88 public: |
81 qreal m_initialScale; |
89 qreal m_initialScale; |
82 qreal m_minimumScale; |
90 qreal m_minimumScale; |
83 qreal m_maximumScale; |
91 qreal m_maximumScale; |
84 int m_width; |
92 int m_width; |
85 int m_height; |
93 int m_height; |
86 bool m_userScalable; |
94 bool m_userScalable; |
|
95 #ifdef VIEWPORT_ALWAYS_ALLOW_ZOOMING |
|
96 /// True indicates that "user-scalable=no" has been overridden. |
|
97 bool m_userScalableOverRidden; |
|
98 #endif |
87 ScaleLimits m_scaleLimits; |
99 ScaleLimits m_scaleLimits; |
88 bool m_isValid; |
100 bool m_isValid; |
89 ParsedViewportData m_specifiedData; |
101 ParsedViewportData m_specifiedData; |
|
102 int m_defaultViewportWidth; |
|
103 int m_defaultViewportHeight; |
|
104 int m_maxViewportWidth; |
|
105 int m_maxViewportHeight; |
|
106 |
90 };//ViewportMetaData |
107 };//ViewportMetaData |
91 |
108 |
92 Q_DECLARE_OPERATORS_FOR_FLAGS(ViewportMetaData::ScaleLimits) |
109 Q_DECLARE_OPERATORS_FOR_FLAGS(ViewportMetaData::ScaleLimits) |
93 |
110 |
94 } //namespace GVA |
111 } //namespace GVA |