camerauis/cameraxui/cxui/inc/cxuiprecaptureview.h
changeset 28 3075d9b614e6
parent 19 d9aefe59d544
child 38 0f0b4c1d7744
child 43 0e652f8f1fbd
equal deleted inserted replaced
19:d9aefe59d544 28:3075d9b614e6
    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