42 class CxuiCaptureKeyHandler; |
42 class CxuiCaptureKeyHandler; |
43 class CxuiSettingDialog; |
43 class CxuiSettingDialog; |
44 class CxuiSettingRadioButtonList; |
44 class CxuiSettingRadioButtonList; |
45 class CxuiSettingSlider; |
45 class CxuiSettingSlider; |
46 class HbToolBarExtension; |
46 class HbToolBarExtension; |
|
47 class HbWidget; |
|
48 class CxuiZoomSlider; |
47 |
49 |
48 /** |
50 /** |
49 * Pre-capture view |
51 * Pre-capture view |
50 */ |
52 */ |
51 class CxuiPrecaptureView : public HbView |
53 class CxuiPrecaptureView : public HbView |
101 virtual void handleFocusLost() = 0; |
103 virtual void handleFocusLost() = 0; |
102 // UI: Zoom slider change notification |
104 // UI: Zoom slider change notification |
103 void zoomTo(int value); |
105 void zoomTo(int value); |
104 |
106 |
105 // Control visibility of all UI items at the same time: toolbar, zoom and titlepane items |
107 // Control visibility of all UI items at the same time: toolbar, zoom and titlepane items |
106 void hideControls(); |
108 virtual void hideControls(); |
107 virtual void showControls(); |
109 virtual void showControls(); |
108 void toggleControls(); |
110 void toggleControls(); |
109 |
111 |
110 void disableControlsTimeout(); |
112 void disableControlsTimeout(); |
111 |
113 |
115 void launchPhotosApp(); |
117 void launchPhotosApp(); |
116 void launchVideosApp(); |
118 void launchVideosApp(); |
117 |
119 |
118 // Settings related |
120 // Settings related |
119 void launchNotSupportedNotification(); |
121 void launchNotSupportedNotification(); |
|
122 void launchDiskFullNotification(); |
120 void showSettingsGrid(); |
123 void showSettingsGrid(); |
121 void hideSettingsGrid(); |
124 void hideSettingsGrid(); |
122 void launchSliderSetting(); |
125 void launchSliderSetting(); |
123 void prepareToShowDialog(HbAction *action); |
126 void prepareToShowDialog(HbAction *action); |
124 void prepareToCloseDialog(HbAction *action); |
127 void prepareToCloseDialog(HbAction *action); |
125 |
128 |
126 |
|
127 protected: |
129 protected: |
128 |
130 |
129 virtual void initializeSettingsGrid() = 0; |
131 virtual void initializeSettingsGrid() = 0; |
130 |
132 |
131 void hideZoom(); |
133 void hideZoom(); |
132 void showZoom(); |
134 void showZoom(); |
|
135 void hideIndicators(); |
|
136 void showIndicators(); |
133 void showEvent(QShowEvent *event); |
137 void showEvent(QShowEvent *event); |
134 void hideEvent(QHideEvent *event); |
138 void hideEvent(QHideEvent *event); |
135 void mousePressEvent(QGraphicsSceneMouseEvent *event); |
139 void mousePressEvent(QGraphicsSceneMouseEvent *event); |
136 virtual void showToolbar(); |
140 virtual void showToolbar(); |
137 bool eventFilter(QObject *object, QEvent *event); |
141 bool eventFilter(QObject *object, QEvent *event); |
138 void launchSettingsDialog(QObject *action); |
142 void launchSettingsDialog(QObject *action); |
139 bool isPostcaptureOn() const; |
143 bool isPostcaptureOn() const; |
140 void addIncreaseDecreaseButtons(HbSlider *slider); |
144 void addIncreaseDecreaseButtons(CxuiZoomSlider *slider); |
141 QString getSettingItemIcon(const QString &key, QVariant value); |
145 QString getSettingItemIcon(const QString &key, QVariant value); |
142 void updateQualityIcon(); |
146 void updateQualityIcon(); |
143 void createWidgetBackgroundGraphic(HbWidget *widget, |
147 void createWidgetBackgroundGraphic(HbWidget *widget, |
144 const QString &graphicName, |
148 const QString &graphicName, |
145 HbFrameDrawer::FrameType frameType = |
149 HbFrameDrawer::FrameType frameType = |
158 void startStandbyTimer(); |
162 void startStandbyTimer(); |
159 void stopStandbyTimer(); |
163 void stopStandbyTimer(); |
160 |
164 |
161 // signal to report error to ErrorManager for further actions. |
165 // signal to report error to ErrorManager for further actions. |
162 void reportError(CxeError::Id errorId); |
166 void reportError(CxeError::Id errorId); |
|
167 void showScenesView(); |
163 |
168 |
164 protected: |
169 protected: |
165 CxeEngine *mEngine; // not own |
170 CxeEngine *mEngine; // not own |
166 HbTransparentWindow *mViewfinder; // not own, owned by the graphics scene |
171 HbTransparentWindow *mViewfinder; // not own, owned by the graphics scene |
167 HbMainWindow *mMainWindow; // not own |
172 HbMainWindow *mMainWindow; // not own |
168 CxuiDocumentLoader *mDocumentLoader; // not own |
173 CxuiDocumentLoader *mDocumentLoader; // not own |
169 CxuiDisplayPropertyHandler *mDisplayHandler; |
174 CxuiDisplayPropertyHandler *mDisplayHandler; |
170 bool mControlsVisible; |
175 bool mControlsVisible; |
171 QTimer mHideControlsTimeout; |
176 QTimer mHideControlsTimeout; |
172 HbSlider *mSlider; // zoom slider, not own, owned by the graphics scene |
177 CxuiZoomSlider *mSlider; // zoom slider, not own, owned by the graphics scene |
173 HbToolBar *mToolBar; // not own, owned by the graphics scene |
178 HbToolBar *mToolBar; // not own, owned by the graphics scene |
174 HbToolBarExtension *mSettingsGrid; |
179 HbToolBarExtension *mSettingsGrid; |
175 bool mZoomVisible; |
180 bool mZoomVisible; |
176 bool mWidgetsLoaded; |
181 bool mWidgetsLoaded; |
177 CxuiSettingDialog *mSettingsDialog; |
182 CxuiSettingDialog *mSettingsDialog; |
178 CxuiSettingRadioButtonList *mSettingsDialogList; |
183 CxuiSettingRadioButtonList *mSettingsDialogList; |
179 CxuiCaptureKeyHandler *mKeyHandler; |
184 CxuiCaptureKeyHandler *mKeyHandler; |
180 HbLabel *mQualityIcon; |
185 HbLabel *mQualityIcon; |
|
186 HbWidget *mIndicators; |
181 |
187 |
182 private: |
188 private: |
183 CxuiSettingDialog* createSettingsDialog(); |
189 CxuiSettingDialog* createSettingsDialog(); |
184 CxuiSettingDialog* createSliderSettingsDialog(); |
190 CxuiSettingDialog* createSliderSettingsDialog(); |
185 QPointF getDialogPosition(); |
191 QPointF getDialogPosition(); |
189 CxuiSettingDialog *mSliderSettingsDialog; |
195 CxuiSettingDialog *mSliderSettingsDialog; |
190 HbLabel *mSliderSettingsDialogHeading; |
196 HbLabel *mSliderSettingsDialogHeading; |
191 CxuiSettingSlider *mSettingsSlider; |
197 CxuiSettingSlider *mSettingsSlider; |
192 |
198 |
193 CxuiSettingsInfo *mSettingsInfo; |
199 CxuiSettingsInfo *mSettingsInfo; |
194 |
200 |
|
201 HbAction *mSettingsDialogOkAction; |
|
202 HbAction *mSliderSettingsDialogOkAction; |
195 }; |
203 }; |
196 |
204 |
197 #endif // CXUIPRECAPTUREVIEW_H |
205 #endif // CXUIPRECAPTUREVIEW_H |