--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/gssettingsuis/Gs/GSDisplayPlugin/Inc/GSDisplayPlugin.h Thu Dec 17 08:52:52 2009 +0200
@@ -0,0 +1,335 @@
+/*
+* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: View for Display settings.
+*
+*/
+
+
+#ifndef GSDISPLAYPLUGIN_H
+#define GSDISPLAYPLUGIN_H
+
+// INCLUDES
+#include <aknsettingpage.h>
+#include <ConeResLoader.h>
+#include <gsplugininterface.h>
+#include <gsfwviewuids.h>
+#include <gsbaseview.h>
+#include <MMGFetchVerifier.h>
+#include <mgsasyncimagehandlingobserver.h>
+#include <backgroundimage.h>
+#include <eikmenup.h>
+
+#ifdef FF_POWER_SAVE
+ #include <psmtypes.h>
+#endif // FF_POWER_SAVE
+
+// CONSTANTS
+const TUid KGSDisplayPluginUid = { 0x10207441 };
+_LIT( KGSDefaultDisplayIconFileName, "Z:\\resource\\apps\\GSDisplayplugin.mbm");
+_LIT( KGSDisplayPluginIconFileName, "\\resource\\apps\\GSDisplayplugin.mif");
+
+const TInt KGSOpLogoLbxIndexOn = 0;
+const TInt KGSOpLogoLbxIndexOff = 1;
+// MACROS
+
+// DATA TYPES
+
+// FUNCTION PROTOTYPES
+
+// FORWARD CLASS DECLARATION
+class CAknViewAppUi;
+class CAknWaitDialog;
+class CAknRadioButtonSettingPage;
+//class CAknQueryDialog;
+class CGSDisplayPluginContainer;
+class CGSDisplayPluginModel;
+
+#ifdef FF_POWER_SAVE
+ class CGSDisplayPluginAO;
+#endif // FF_POWER_SAVE
+
+// CLASS DECLARATION
+/**
+* CGSDisplayPlugin view class
+*
+* Plugin implementation for Display settings
+* @lib GSDisplayPlugin.lib
+* @since Series 60_3.1
+*/
+class CGSDisplayPlugin : public CGSBaseView,
+ public MAknSettingPageObserver,
+ public MMGFetchVerifier,
+ public MGSAsyncImageHandlingObserver
+ {
+ public:
+
+ enum TGSSettingIds
+ {
+ KGSContrastSettingId,
+ KGSBrightnessSettingId,
+ KGSSaverObjectSettingId,
+ KGSAutodisconSettingId,
+ KGSWelcomeNoteSettingId,
+ KGSAmbientLightSensorId
+ };
+
+ public: // Constructors and destructor
+
+ /**
+ * Symbian OS two-phased constructor
+ * @return GS connection view.
+ */
+ static CGSDisplayPlugin* NewL( TAny* aInitParams );
+
+ /**
+ * Destructor.
+ */
+ ~CGSDisplayPlugin();
+
+ public: // from base classes
+
+ /**
+ * Returns view id.
+ * @return TUid
+ */
+ TUid Id() const;
+
+ /**
+ * Handles commands.
+ * @param aCommand Command to be handled.
+ *
+ */
+ void HandleCommandL( TInt aCommand );
+
+ public: // From CGSPluginInterface
+
+ /**
+ * @see CGSPluginInterface header file.
+ */
+ void GetCaptionL( TDes& aCaption ) const;
+
+ /**
+ * @see CGSPluginInterface header file.
+ */
+ TInt PluginProviderCategory() const;
+
+ /**
+ * See base class.
+ */
+ CGulIcon* CreateIconL( const TUid aIconType );
+
+ public: // from MAknSettingPageObserver
+
+ /**
+ * Handle setting page events
+ */
+ virtual void HandleSettingPageEventL( CAknSettingPage* aSettingPage,
+ TAknSettingPageEvent aEventType );
+
+ public: //new
+
+ /**
+ * Updates listbox's item's value.
+ * @param aItemId An item which is updated.
+ *
+ */
+ void UpdateListBoxL( TInt aItemId );
+
+ /**
+ * Get CGSDisplayPlugin's ccontainer.
+ */
+ CGSDisplayPluginContainer* Container();
+
+
+ /**
+ * Updates display plugin view.
+ */
+ void UpdateViewL();
+ void CloseDialog();
+
+ protected: // From CAknView
+
+ void DoActivateL( const TVwsViewId& aPrevViewId,
+ TUid aCustomMessageId,
+ const TDesC8& aCustomMessage );
+ void DoDeactivate();
+
+ protected: // From MEikMenuObserver
+
+ void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
+
+ protected:
+
+ /**
+ * C++ default constructor.
+ */
+ CGSDisplayPlugin();
+
+ /**
+ * Symbian OS default constructor.
+ *
+ */
+ void ConstructL();
+
+ void HandleClientRectChange();
+
+ private: // from CGSBaseView
+
+ void NewContainerL();
+ void HandleListBoxSelectionL();
+
+ private: //from MMGFetchVerifier
+
+ /**
+ * Display Backlight setting page
+ */
+ TBool VerifySelectionL( const MDesCArray* aSelectedFiles );
+
+ private: //from MGSSyncImageHandlingObserver
+ /**
+ * Display Welcome note image list from media gallery
+ */
+ void ImageHandlingCompleteL( TInt aError );
+
+ private: //new methods
+
+ /**
+ * Display Constrast setting page
+ */
+ void ShowContrastSettingPageL();
+
+ /**
+ * Display Brightness setting page
+ */
+ void ShowBrightnessSettingPageL();
+
+ /**
+ * Display ALS setting page
+ */
+ void ShowAmbientLightSensorSettingPageL();
+
+ /**
+ * Display Screen saver timeout setting page
+ */
+ void ShowScreenSaverPeriodSettingPageL();
+
+ /**
+ * Display Backlight setting page
+ */
+ void ShowBacklightSettingPageL();
+
+ /**
+ * Display Welcome note setting page
+ */
+ void ShowWelcomeNoteSettingPageL();
+
+ /**
+ * Display Welcome note text input dialog
+ */
+ void ShowWelcomeNoteTextQueryL();
+
+ /**
+ * Display Welcome note image list from media gallery
+ */
+ void ShowWelcomeNoteImageListL();
+
+
+ /**
+ * Show display text size setting page
+ */
+ void ShowDisplayTextSizeSettingPageL();
+
+
+ /**
+ * Display Power save LED setting page
+ * @param aSettingPage ETrue if setting page is to be shown
+ * EFalse, otherwise
+ */
+ void ShowPowerSaveLedSettingPageL( TBool aSettingPage );
+
+ /**
+ * Display load wait-note dialog during image loading
+ */
+ void ShowImageLoadWaitNoteL();
+
+ /**
+ * Hide load wait-note dialog after the image is loaded
+ */
+ void HideImageLoadWaitNoteL();
+
+ /**
+ * Check if the input file is DRM protected
+ * @param aOriginalFileName Path of the bitmap file
+ * @return ETrue if file is DRM protected.
+ * EFalse otherwise.
+ */
+ TBool CheckDRMProtectionL( const TDesC& aOriginalFileName );
+
+ /**
+ * Handle any errors during image processing
+ * @param aError system wide error code
+ */
+ void HandleImageErrorsL( TInt aError );
+
+ /**
+ * Changes operator logo value.
+ * @param aUseSettingPage ETrue if setting page should be used.
+ * EFalse is just switch between the values.
+ */
+ void ChangeOperatorLogoSettingL( TBool aUseSettingPage );
+
+ /**
+ * Displays operator logo setting page.
+ * @param aOperatorLogoValue current operator logo value.
+ */
+ TBool ShowOperatorLogoSettingPageL( TInt& aOperatorLogoValue );
+#ifdef FF_POWER_SAVE
+ /**
+ * Displays blocking note. Used if PSM is on.
+ */
+ void DisplayBlockNoteL();
+#endif // FF_POWER_SAVE
+
+ protected:
+ //check if screen saver text is to be updated
+ TBool iUpdateSSText;
+ //check if welcome note is supported
+ TBool iUpdateWNote;
+ // for load wait dialog
+ CAknWaitDialog* iWaitDialog;
+ CAknRadioButtonSettingPage* iOprtLogoSettingPage;
+
+ private:
+ // plugin model
+ CGSDisplayPluginModel *iModel;
+ // resource loader
+ RConeResourceLoader iResourceLoader;
+ //for image handling
+ CGSAsyncImageHandling* iImageHandler;
+ //welcome note type: none, text, image
+ TInt iWelcomeNoteType;
+ TBool iReshowOprtSetPage;
+#ifdef FF_POWER_SAVE
+ // Active object for handling PSM realted CenRep events.
+ CGSDisplayPluginAO* iPsmActive;
+#endif // FF_POWER_SAVE
+ // Prevent multiple launch the MFetch.
+ TBool iLaunchedImageFetch;
+
+ };
+
+
+ #endif // GSDISPLAYPLUGIN_H
+
+//End of File