git-svn-id: http://zxing.googlecode.com/svn/trunk@1336 59b500cc-1b3d-0410-9834-0bbf25...
[zxing.git] / symbian / ZXingBarcodeReader / inc / ZXingBarcodeReaderAppUi.h
1 /*\r
2  * Copyright (c) 2009 Nokia Corporation.\r
3  */\r
4 \r
5 #ifndef __CAMERAWRAPPEREXAMPLEAPPUI_h__\r
6 #define __CAMERAWRAPPEREXAMPLEAPPUI_h__\r
7 \r
8 // INCLUDES\r
9 #include <aknappui.h>\r
10 \r
11 //#define EKeyZoomIn      EKeyApplicationC\r
12 //#define EKeyZoomOut     EKeyApplicationD\r
13 //#define EKeyVolumeUp    EKeyIncVolume\r
14 //#define EKeyVolumeDown  EKeyDecVolume\r
15 \r
16 \r
17 #ifdef ENABLE_CAMERA_SHUTTER\r
18 // Focus key events (shutter key pressed half-way down)\r
19 const TInt KStdKeyCameraFocus   = 0xe2;\r
20 const TInt KStdKeyCameraFocus2  = 0xeb;     // S60 3.2 and onwards\r
21 \r
22 // All known event codes used for the camera shutter key on S60 3.x devices\r
23 const TUint KKeyCameraShutter1   = 0xf883;\r
24 const TUint KKeyCameraShutter2   = 0xf849;   // S60 3.2\r
25 const TUint KKeyCameraNseries1   = 0xf881;   // S60 3.2 Nseries\r
26 const TUint KKeyCameraNseries2   = 0xf88c;\r
27 \r
28 const TUint KCameraShutterKeyEventCodes[6] = {\r
29     EKeyCamera, // general camera key\r
30     KKeyCameraShutter1,\r
31     KKeyCameraShutter2,\r
32     KKeyCameraNseries1,\r
33     KKeyCameraNseries2,\r
34     0 };\r
35 #endif\r
36 \r
37 \r
38 // FORWARD DECLARATIONS\r
39 class CZXingBarcodeReaderAppView;\r
40 \r
41 // CLASS DECLARATION\r
42 class CZXingBarcodeReaderAppUi : public CAknAppUi,\r
43                                    public MCoeForegroundObserver\r
44     {\r
45     public:\r
46         // Constructors and destructor\r
47         void ConstructL ();\r
48         CZXingBarcodeReaderAppUi ();\r
49         virtual ~CZXingBarcodeReaderAppUi ();\r
50         \r
51     private:\r
52         TKeyResponse HandleKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);\r
53         void HandleCommandL (TInt aCommand );\r
54         void HandleResourceChangeL(TInt aType);\r
55         \r
56         #ifdef ENABLE_CAMERA_SHUTTER\r
57         void CaptureCameraShutter(TBool aEnable);\r
58         #endif\r
59         \r
60     public:\r
61         void UseOptionsExitCbaL();\r
62         void UseOptionsBackCbaL();\r
63         TBool IsBackCBA();        \r
64         \r
65     private: // From MCoeForegroundObserver\r
66         void HandleGainingForeground();\r
67         void HandleLosingForeground();\r
68         \r
69     private:\r
70         // Data\r
71         CZXingBarcodeReaderAppView*   iAppView;\r
72         RArray<TInt32>                  iShutterKeyHandles;\r
73         TBool                           iCameraKeyCaptured;\r
74 \r
75     };\r
76 \r
77 #endif // __CAMERAWRAPPEREXAMPLEAPPUI_h__\r
78 \r
79 // End of File\r