src/ext/amaretto/keycapture/inc/capturer.h
changeset 0 ca70ae20a155
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ext/amaretto/keycapture/inc/capturer.h	Tue Feb 16 10:07:05 2010 +0530
@@ -0,0 +1,58 @@
+/**
+ * ====================================================================
+ * capturer.h
+ * Copyright (c) 2006 Nokia Corporation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ====================================================================
+ */
+
+
+#include "Python.h"
+#include "symbian_python_ext_util.h"
+
+#include <w32std.h>
+#include <e32base.h>
+#include <apgwgnam.h>
+#include <coedef.h>
+
+
+#ifndef EKA2
+class CCapturer : public CActive
+#else
+NONSHARABLE_CLASS(CCapturer) : public CActive
+#endif
+{
+  public:
+    ~CCapturer();
+    static CCapturer* NewL(PyObject* callback);
+    TInt32 SetKeyToBeCapturedL(TInt32 keyCode);
+    void RemoveKey(TInt32 keyId);
+    void StartCapturing();
+    void RunL();
+    void DoCancel();
+    TInt32 LastCapturedKey();
+    void SetForwarding(TInt forwarding);
+  private:
+    CCapturer(PyObject* aCallback = NULL);
+    void ConstructL();
+    RWsSession* iSession;
+    RWindowGroup* iWinGroup;
+    CApaWindowGroupName* iWinGroupName;
+    PyObject* iCallback;
+    TInt32 iLastCapturedKey;
+    TBool iCallbackRunning;
+    TBool iForwarding;
+    TBool iRunning;
+};
+