Dont remember old camera setting value:P130917-03305
authorRahul Varna <rahul.varna@samsung.com>
Wed, 18 Sep 2013 03:59:45 +0000 (12:59 +0900)
committerRahul Varna <rahul.varna@samsung.com>
Wed, 18 Sep 2013 04:01:39 +0000 (13:01 +0900)
Change-Id: I7614cb974ccad51843e57bd677bb87222c834081
Signed-off-by: Rahul Varna <rahul.varna@samsung.com>
project/src/Camera/CameraCaptureForm.cpp
project/src/Camera/CameraCaptureForm.h

index fbd3b37..b866503 100644 (file)
@@ -1321,13 +1321,6 @@ result
 CameraCaptureForm::Activate(void* pActivateParam)
 {
        result r = E_SUCCESS;
-       int tempVal = INIT;
-       int index = 0;
-       int count = 0;
-       Dimension tempDimension(INIT, INIT);
-       Tizen::Graphics::Dimension* pResolution = null;
-       Tizen::Graphics::PixelFormat pixFormat = PIXEL_FORMAT_YCbCr420_PLANAR;
-       int tempQuality = CAMERA_QUALITY_SUPER_FINE;
 
        if (IsBatteryLevelLow() == true)
        {
@@ -1344,10 +1337,10 @@ CameraCaptureForm::Activate(void* pActivateParam)
        __background = false;
 
        r = CreateOverlayRegion();
-       TryCatch(r == E_SUCCESS, , "[%s] CreateOverlayRegion", GetErrorMessage(r));
+       TryReturn(r == E_SUCCESS, r, "[%s] CreateOverlayRegion", GetErrorMessage(r));
 
        __pCamera = new (std::nothrow) Camera();
-       TryCatch(__pCamera != null, ShowError(E_OUT_OF_MEMORY, METHOD_FILE_LINENO), "camera cannot be created E_OUT_OF_MEMORY");
+       TryReturn(__pCamera != null, ShowError(E_OUT_OF_MEMORY, METHOD_FILE_LINENO), "camera cannot be created E_OUT_OF_MEMORY");
 
        r = __pCamera->Construct(*this, CAMERA_PRIMARY);
        if(IsFailed(r))
@@ -1357,255 +1350,95 @@ CameraCaptureForm::Activate(void* pActivateParam)
                delete __pCamera;
                __pCamera = null;
                ShowError(r, METHOD_FILE_LINENO);
-               goto CATCH;
+               return r;
        }
 
        r = __pCamera->PowerOn();
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO), " [%s] __pCamera->PowerOn()",GetErrorMessage(r));
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO), " [%s] __pCamera->PowerOn()",GetErrorMessage(r));
 
        __pPreviewFrameRateList = __pCamera->GetSupportedPreviewFrameRateListN();
-       TryCatch(__pPreviewFrameRateList != null, ShowError(r, METHOD_FILE_LINENO), " __pCamera->GetSupportedPreviewFrameRateListN returned empty");
+       TryReturn(__pPreviewFrameRateList != null, ShowError(r, METHOD_FILE_LINENO), " __pCamera->GetSupportedPreviewFrameRateListN returned empty");
 
        __pCaptureResolutionList = __pCamera->GetSupportedCaptureResolutionListN();
-       TryCatch(__pCaptureResolutionList != null, ShowError(r, METHOD_FILE_LINENO), " __pCamera->GetSupportedCaptureResolutionListN returned empty");
+       TryReturn(__pCaptureResolutionList != null, ShowError(r, METHOD_FILE_LINENO), " __pCamera->GetSupportedCaptureResolutionListN returned empty");
 
        __pPreviewResolutionList = __pCamera->GetSupportedPreviewResolutionListN();
-       TryCatch(__pPreviewResolutionList != null, ShowError(r, METHOD_FILE_LINENO), " __pCamera->GetSupportedPreviewResolutionListN returned empty");
+       TryReturn(__pPreviewResolutionList != null, ShowError(r, METHOD_FILE_LINENO), " __pCamera->GetSupportedPreviewResolutionListN returned empty");
 
        __pPreviewFormatList = __pCamera->GetSupportedPreviewFormatListN();
-       TryCatch(__pPreviewFormatList != null, ShowError(r, METHOD_FILE_LINENO), " __pCamera->GetSupportedPreviewFormatListN returned empty");
+       TryReturn(__pPreviewFormatList != null, ShowError(r, METHOD_FILE_LINENO), " __pCamera->GetSupportedPreviewFormatListN returned empty");
 
        r = __pOverlay->GetBackgroundBufferInfo(__bufferInfo);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pOverlay->GetBackgroundBufferInfo", GetErrorMessage(r));
-
-       tempVal = __pConfig->GetInt(INIT, SECTION_NAME, String(L"PreviewFormat"));
-       if (tempVal == INIT)
-       {
-               tempVal = __pCamera->GetPreviewFormat();
-       }
-
-       count = __pPreviewFormatList->GetCount();
-
-       for (index = 0; index < count; index++)
-       {
-               PixelFormat object = __pCamera->GetPreviewFormat();
-               r = __pPreviewFormatList->GetAt(index, object);
-               TryCatch(__pPreviewFormatList != null, ShowError(r, METHOD_FILE_LINENO), " __pPreviewFormatList is empty");
-
-               if (tempVal == object)
-               {
-                       __previewFormatIndex = index;
-                       break;
-               }
-       }
-
-       TryCatch(index < count, ShowError(E_FAILURE, METHOD_FILE_LINENO),"index >= count failed");
-
-
-       tempVal = __pConfig->GetInt(INIT, SECTION_NAME, String(L"framerate"));
-       if (tempVal == INIT)
-       {
-               tempVal = __pCamera->GetPreviewFrameRate();
-       }
-
-       count = __pPreviewFrameRateList->GetCount();
-
-       for (index = 0; index < count; index++)
-       {
-               int object = INIT;
-               r = __pPreviewFrameRateList->GetAt(index, object);
-               TryCatch(__pPreviewFrameRateList != null, ShowError(r, METHOD_FILE_LINENO), " __pPreviewFrameRateList is empty");
-
-               if (tempVal == object)
-               {
-                       __frameRateIndex = index;
-                       break;
-               }
-       }
-
-       TryCatch(index < count, ShowError(E_FAILURE, METHOD_FILE_LINENO),"index >= count failed");
-
-       tempDimension.width = __pConfig->GetInt(INIT, SECTION_NAME, String(L"captureresolutionWidth"));
-       tempDimension.height = __pConfig->GetInt(INIT, SECTION_NAME, String(L"captureresolutionHeight"));
-       if ((tempDimension.width == INIT) || (tempDimension.height == INIT))
-       {
-               tempDimension = __pCamera->GetCaptureResolution();
-       }
-
-       count = __pCaptureResolutionList->GetCount();
-
-       for (index = 0; index < count; index++)
-       {
-               Dimension* pDimension = null;
-               pDimension = static_cast< Dimension* >(__pCaptureResolutionList->GetAt(index));
-               TryCatch(pDimension != null, ShowError(E_FAILURE, METHOD_FILE_LINENO),"__pCaptureResolutionList is empty");
-
-               if (*pDimension == tempDimension)
-               {
-                       __captureResolutionIndex = index;
-                       break;
-               }
-       }
-
-       TryCatch(index < count, ShowError(E_FAILURE, METHOD_FILE_LINENO),"__pCaptureResolutionList not found");
-
-       tempDimension.width = __pConfig->GetInt(INIT, SECTION_NAME, String(L"previewresolutionWidth"));
-       tempDimension.height = __pConfig->GetInt(INIT, SECTION_NAME, String(L"previewresolutionHeight"));
-       if ((tempDimension.width == INIT) || (tempDimension.height == INIT))
-       {
-               tempDimension = __pCamera->GetPreviewResolution();
-       }
-
-       count = __pPreviewResolutionList->GetCount();
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pOverlay->GetBackgroundBufferInfo", GetErrorMessage(r));
 
-       for (index = 0; index < count; index++)
-       {
-               Dimension* pDimension = null;
-               pDimension = static_cast< Dimension* >(__pPreviewResolutionList->GetAt(index));
-               TryCatch(pDimension != null, ShowError(E_FAILURE, METHOD_FILE_LINENO),"__pPreviewResolutionList is empty");
-
-               if (*pDimension == tempDimension)
-               {
-                       __previewResolutionIndex = index;
-                       break;
-               }
-       }
-
-       TryCatch(index < count, ShowError(E_FAILURE, METHOD_FILE_LINENO),"__pPreviewResolutionList not found");
-
-       tempVal = __pConfig->GetInt(INIT, SECTION_NAME, String(L"quality"));
-       //Set to default only in the beginning
-       if (tempVal == INIT && __qualityIndex == INIT)
-       {
-               __qualityIndex = __pCamera->GetQuality();
-       }
-
-       r = __pPreviewFrameRateList->GetAt(__frameRateIndex, tempVal);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"__pPreviewFrameRateList is empty");
-
-       r = __pCamera->SetPreviewFrameRate(tempVal);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetPreviewFrameRate", GetErrorMessage(r));
-
-       r = __pPreviewFormatList->GetAt(__previewFormatIndex, pixFormat);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO), "[%s] __pPreviewFormatList->GetAt", GetErrorMessage(r));
-
-       r = __pCamera->SetPreviewFormat(pixFormat);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetPreviewFormat", GetErrorMessage(r));
-
-       pResolution = static_cast< Dimension* >(__pPreviewResolutionList->GetAt(__previewResolutionIndex));
-       TryCatch(pResolution != null, ShowError(r, METHOD_FILE_LINENO),"[%s] __pPreviewResolutionList is empty", GetErrorMessage(r));
-
-       r = __pCamera->SetPreviewResolution(*pResolution);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetPreviewResolution", GetErrorMessage(r));
-
-       pResolution = null;
-
-       pResolution = static_cast< Dimension* >(__pCaptureResolutionList->GetAt(__captureResolutionIndex));
-       TryCatch(pResolution != null, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCaptureResolutionList is empty", GetErrorMessage(r));
-
-       r = __pCamera->SetCaptureResolution(*pResolution);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetCaptureResolution", GetErrorMessage(r));
-
-       if (__pQualityList != null)
-       {
-               r = __pQualityList->GetAt(__qualityIndex, tempQuality);
-               TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pQualityList->GetAt", GetErrorMessage(r));
-       }
-       
-       if ( __qualityIndex == INIT)
-       {
-               __qualityIndex = __pCamera->GetQuality();
-       }
-
-       r = __pCamera->SetQuality((CameraQuality)__qualityIndex);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetQuality", GetErrorMessage(r));
-
-       if ( __meteringModeIndex == INIT)
-       {
-               __meteringModeValue = __pCamera->GetMeteringMode();
-       }
-
-       r = __pCamera->SetMeteringMode(__meteringModeValue);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetMeteringMode", GetErrorMessage(r));
-
-       if ( __focusModeIndex == INIT)
-       {
-               __focusModeValue = __pCamera->GetFocusMode();
-       }
-
-       if (__focusModeValue != CAMERA_FOCUS_MODE_NONE)
-       {
-               r = __pCamera->SetFocusMode(__focusModeValue);
-               TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetFocusMode", GetErrorMessage(r));
-       }
-
-       if ( __flashModeIndex == INIT)
-       {
-               __flashModeValue = __pCamera->GetFlashMode();
-       }
-
-       r = __pCamera->SetFlashMode(__flashModeValue);
-       TryCatch(r == E_SUCCESS || r == E_UNSUPPORTED_OPERATION, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetFlashMode", GetErrorMessage(r));
-
-       if ( __sceneModeIndex == INIT)
-       {
-               __sceneModeValue = __pCamera->GetSceneMode();
-       }
-
-       r = __pCamera->SetSceneMode(__sceneModeValue);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetSceneMode", GetErrorMessage(r));
-
-
-       r = ReloadAllConfiguration();
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO), "[%s] ReloadAllConfiguration", GetErrorMessage(r));
+       r = LoadDefaultConfiguration();
+       TryReturn(r == E_SUCCESS || r == E_UNSUPPORTED_OPERATION, r, "[%s] LoadDefaultConfiguration", GetErrorMessage(r));
 
        //set the default preview format in burst mode
        if (__isZeroShutterLag == true)
        {
                r = __pCamera->SetPreviewFormat(__defaultPreviewFormat);
-               TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetPreviewFormat", GetErrorMessage(r));
+               TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetPreviewFormat", GetErrorMessage(r));
        }
 
        r = __pCamera->StartPreview(&__bufferInfo, false);
-       TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->StartPreview", GetErrorMessage(r));
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->StartPreview", GetErrorMessage(r));
 
        if (__pSensorManager->IsAvailable(Tizen::Uix::Sensor::SENSOR_TYPE_ACCELERATION))
        {
                r = __pSensorManager->AddSensorListener(*this, Tizen::Uix::Sensor::SENSOR_TYPE_ACCELERATION, ACCERERATION_INTERVAL, true);
-               TryCatch(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pSensorManager->AddSensorListener", GetErrorMessage(r));
+               TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pSensorManager->AddSensorListener", GetErrorMessage(r));
        }
 
        return r;
-
-CATCH:
-       // Free resource is done when the error pop up Ok is pressed
-       return r;
 }
 
 result
-CameraCaptureForm::ReloadAllConfiguration(void)
+CameraCaptureForm::LoadDefaultConfiguration(void)
 {
        result r = E_SUCCESS;
 
-       if (__brightnessSliderValue != INIT)
-       {
-               AppLog("SetBrightness __brightnessSliderValue %d",__brightnessSliderValue);
-               r = __pCamera->SetBrightness(__brightnessSliderValue);
-               TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO), "[%s] __pCamera->SetBrightness", GetErrorMessage(r));
-       }
+       r = __pCamera->SetPreviewFrameRate(__pCamera->GetPreviewFrameRate());
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetPreviewFrameRate", GetErrorMessage(r));
 
-       if (__contrastSliderValue != INIT)
-       {
-               r = __pCamera->SetContrast(__contrastSliderValue);
-               TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO), "[%s] __pCamera->SetContrast", GetErrorMessage(r));
-       }
+       r = __pCamera->SetPreviewFormat(__pCamera->GetPreviewFormat());
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetPreviewFormat", GetErrorMessage(r));
+
+       r = __pCamera->SetPreviewResolution(__pCamera->GetPreviewResolution());
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetPreviewResolution", GetErrorMessage(r));
+
+       r = __pCamera->SetCaptureResolution(__pCamera->GetCaptureResolution());
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetCaptureResolution", GetErrorMessage(r));
+
+       r = __pCamera->SetQuality(__pCamera->GetQuality());
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetQuality", GetErrorMessage(r));
+
+       r = __pCamera->SetMeteringMode(__pCamera->GetMeteringMode());
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetMeteringMode", GetErrorMessage(r));
 
-       if (__exposureSliderValue != INIT)
+       if (__pCamera->GetFocusMode() != CAMERA_FOCUS_MODE_NONE)
        {
-               r = __pCamera->SetExposure(__exposureSliderValue);
-               TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO), "[%s] __pCamera->SetExposure", GetErrorMessage(r));
+               r = __pCamera->SetFocusMode(__pCamera->GetFocusMode());
+               TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetFocusMode", GetErrorMessage(r));
        }
 
+       r = __pCamera->SetFlashMode(__pCamera->GetFlashMode());
+       TryReturn(r == E_SUCCESS || r == E_UNSUPPORTED_OPERATION, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetFlashMode", GetErrorMessage(r));
+
+       r = __pCamera->SetSceneMode(__pCamera->GetSceneMode());
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO),"[%s] __pCamera->SetSceneMode", GetErrorMessage(r));
+
+       __isSceneModeSet = (__pCamera->GetSceneMode() == CAMERA_SCENE_OFF)? false:true;
+
+       r = __pCamera->SetBrightness(__pCamera->GetBrightness());
+       TryReturn(r == E_SUCCESS, ShowError(r, METHOD_FILE_LINENO), "[%s] __pCamera->SetBrightness", GetErrorMessage(r));
+
+       r = __pCamera->SetContrast(__pCamera->GetContrast());
+       TryReturn(r == E_SUCCESS || r == E_UNSUPPORTED_OPERATION, ShowError(r, METHOD_FILE_LINENO), "[%s] __pCamera->SetContrast", GetErrorMessage(r));
+
+       r = __pCamera->SetExposure(__pCamera->GetExposure());
+       TryReturn(r == E_SUCCESS || r == E_UNSUPPORTED_OPERATION, ShowError(r, METHOD_FILE_LINENO), "[%s] __pCamera->SetExposure", GetErrorMessage(r));
+
        return r;
 }
 
@@ -3439,7 +3272,8 @@ CameraCaptureForm::CreatePreviewFormat(void)
                TryCatch(r == E_SUCCESS, ,"[%s] AddButton - Preview Format", GetErrorMessage(r));
        }
 
-       TryCatch(__previewFormatIndex != INIT, ,"__previewFormatIndex value is wrong");
+       __previewFormatIndex = GetIndexFromValue(__pPreviewFormatList, __pCamera->GetPreviewFormat());
+       TryCatch(__previewFormatIndex != INIT, ,"GetIndexFromValue for __previewFormatIndex is -1");
 
        ShowPopUp(__pPopupPreviewFormat);
        __pListPreviewFormat->Draw();
@@ -3587,12 +3421,6 @@ CameraCaptureForm::CreateExposureSlider(void)
 
        exposure = __pCamera->GetExposure();
 
-       if (__exposureSliderValue != exposure &&
-               __exposureSliderValue != INIT)
-       {
-               exposure = __exposureSliderValue;
-       }
-
        __pExposureSlider->SetValue(exposure);
        strTemp.Format(50, L"Exposure : %d", exposure);
        __pExposureSlider->SetTitleText(strTemp);
@@ -3628,12 +3456,6 @@ CameraCaptureForm::CreateBrightnessSlider(void)
 
        brightness = __pCamera->GetBrightness();
 
-       if (__brightnessSliderValue != brightness &&
-               __brightnessSliderValue != INIT)
-       {
-               brightness = __brightnessSliderValue;
-       }
-
        __pBrightnessSlider->SetValue(brightness);
        strTemp.Format(50, L"Brightness : %d", brightness);
        __pBrightnessSlider->SetTitleText(strTemp);
@@ -3670,12 +3492,6 @@ CameraCaptureForm::CreateContrastSlider(void)
 
        contrast = __pCamera->GetContrast();
 
-       if (__contrastSliderValue != contrast &&
-               __contrastSliderValue != INIT)
-       {
-               contrast = __contrastSliderValue;
-       }
-
        __pContrastSlider->SetValue(contrast);
        strTemp.Format(50, L"Contrast : %d", contrast);
        __pContrastSlider->SetTitleText(strTemp);
@@ -4058,6 +3874,27 @@ CameraCaptureForm::GetIndexFromValue(Tizen::Base::Collection::IListT< int >* pLi
 }
 
 int
+CameraCaptureForm::GetIndexFromValue(Tizen::Base::Collection::IListT< Tizen::Graphics::PixelFormat >* pList, int value)
+{
+       int count = pList->GetCount();
+       result r = E_SUCCESS;
+       Tizen::Graphics::PixelFormat valueInList = PIXEL_FORMAT_YCbCr420_PLANAR;
+       for (int index = 0; index < count; index++)
+       {
+               r = pList->GetAt(index, valueInList);
+               if (r == E_SUCCESS && valueInList == value)
+               {
+                       AppLog("matching found at index = %d for value = %d", index, value);
+                       return index;
+               }
+       }
+       AppLog("no matching for value = %d", value);
+
+       return INIT;
+
+}
+
+int
 CameraCaptureForm::GetIndexFromValue(Tizen::Base::Collection::IList* pList, Tizen::Graphics::Dimension& value)
 {
        int count = pList->GetCount();
index 1ca6ade..5c89bce 100644 (file)
@@ -95,7 +95,7 @@ protected:
        virtual Tizen::Ui::Controls::ListItemBase* CreateItem(int index, int itemWidth);
        virtual bool DeleteItem(int index, Tizen::Ui::Controls::ListItemBase* pItem, int itemWidth);
        virtual int GetItemCount(void);
-       result ReloadAllConfiguration(void);
+       result LoadDefaultConfiguration(void);
        //ISceneEventListener
        virtual void OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId,
                                                                           const Tizen::Ui::Scenes::SceneId& currentSceneId, Tizen::Base::Collection::IList* pArgs);
@@ -131,6 +131,7 @@ private:
        bool CreateSettingPopUp(void);
        void SetCurrentListViewType(int id);
        int GetIndexFromValue(Tizen::Base::Collection::IListT< int >* pList, int value);
+       int GetIndexFromValue(Tizen::Base::Collection::IListT< Tizen::Graphics::PixelFormat >* pList, int value);
        int GetIndexFromValue(Tizen::Base::Collection::IList* pList, Tizen::Graphics::Dimension& value);
        void ShowFooterItems(void);
        void HideFooterItems(void);