photosgallery/viewframework/views/zoomview/inc/glxzoomcontrol.h
branchRCL_3
changeset 47 f9e827349359
parent 30 a60acebbbd9d
child 56 b023a8d2866a
equal deleted inserted replaced
35:420f6808bf21 47:f9e827349359
    32 #include <mglxmedialist.h>
    32 #include <mglxmedialist.h>
    33 #include <mglxzoomeventhandlers.h>
    33 #include <mglxzoomeventhandlers.h>
    34 #include <glxfullscreenview.hrh>
    34 #include <glxfullscreenview.hrh>
    35 #include <glxzoomeventhandler.h>
    35 #include <glxzoomeventhandler.h>
    36 #include <mglxtvobserver.h>     // for inteface MGlxTvObserver
    36 #include <mglxtvobserver.h>     // for inteface MGlxTvObserver
       
    37 #include "glxrequestfreegoom.h"
    37 //Gesture Helper namespace
    38 //Gesture Helper namespace
    38 namespace GestureHelper
    39 namespace GestureHelper
    39     {
    40     {
    40     class CGestureHelper;
    41     class CGestureHelper;
    41     }
    42     }
    64 using namespace Alf;
    65 using namespace Alf;
    65 
    66 
    66 // Commands sent to the view in response to zoom keys
    67 // Commands sent to the view in response to zoom keys
    67 const TInt KGlxZoomInCommand    = 1 ;
    68 const TInt KGlxZoomInCommand    = 1 ;
    68 const TInt KGlxZoomOutCommand   = 2 ;
    69 const TInt KGlxZoomOutCommand   = 2 ;
       
    70 const TInt KGlxZoomOrientationChange   =3;
    69 const TInt KGlxVerticalImageOrientationThreshold   = 4 ;
    71 const TInt KGlxVerticalImageOrientationThreshold   = 4 ;
    70 
    72 
    71 /**
    73 /**
    72  * Control for zooming in the FullScreen view.
    74  * Control for zooming in the FullScreen view.
    73  * @ingroup glx_view_zoomed_view
    75  * @ingroup glx_view_zoomed_view
    75 class CGlxZoomControl : public CAlfControl,
    77 class CGlxZoomControl : public CAlfControl,
    76                         public IAlfWidgetEventHandler,
    78                         public IAlfWidgetEventHandler,
    77                         public MGlxTextureObserver,
    79                         public MGlxTextureObserver,
    78                         public MGlxZoomEventHandlers,
    80                         public MGlxZoomEventHandlers,
    79                         public GestureHelper::MGestureObserver,
    81                         public GestureHelper::MGestureObserver,
    80                         public MGlxTvObserver
    82                         public MGlxTvObserver,
       
    83                         public MGoomNotifierObserver
    81     {
    84     {
    82 public:
    85 public:
    83     // Constructors and destructor
    86     // Constructors and destructor
    84     /**
    87     /**
    85     * Two-phased constructor.
    88     * Two-phased constructor.
   234     /*
   237     /*
   235     * Does the zoom out on pinch released event
   238     * Does the zoom out on pinch released event
   236     */
   239     */
   237     void HandleHDMIGestureReleased();
   240     void HandleHDMIGestureReleased();
   238     
   241     
       
   242     /*
       
   243      * @ Notification from MGoomNotifierObserver
       
   244      */
       
   245     void HandleGoomMemoryReleased(TInt aStatus);
       
   246     
   239 private:    // Data
   247 private:    // Data
   240     CAlfEnv* iEnv;                                      // AlfEnv
   248     CAlfEnv* iEnv;                                      // AlfEnv
   241     MGlxMediaList& iMediaList;                          // Medialist (not owned)
   249     MGlxMediaList& iMediaList;                          // Medialist (not owned)
   242     GestureHelper::CGestureHelper* iGestureHelper;                     // Attribute context for image dimensions
   250     GestureHelper::CGestureHelper* iGestureHelper;                     // Attribute context for image dimensions
   243     IMulSliderModel* iZoomSliderModel;                  // Zoom slider model
   251     IMulSliderModel* iZoomSliderModel;                  // Zoom slider model
   264     TSize iScreenSize;
   272     TSize iScreenSize;
   265     TBool iMultiTouchGestureOngoing;
   273     TBool iMultiTouchGestureOngoing;
   266     CGlxTv*  iGlxTvOut;
   274     CGlxTv*  iGlxTvOut;
   267     CPeriodic* iTimer;
   275     CPeriodic* iTimer;
   268     TBool iZoomIn;
   276     TBool iZoomIn;
   269     
   277     CGlxRelaseGPUMemory* iGPUMemMonitor;
   270     };
   278     };
   271 
   279 
   272 #endif  // C_GLXZOOMCONTROL_H
   280 #endif  // C_GLXZOOMCONTROL_H
   273 
   281 
   274 // End of File
   282 // End of File