1 // Copyright (c) 1999-2009 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 1999-2010 Nokia Corporation and/or its subsidiary(-ies). |
2 // All rights reserved. |
2 // All rights reserved. |
3 // This component and the accompanying materials are made available |
3 // This component and the accompanying materials are made available |
4 // under the terms of "Eclipse Public License v1.0" |
4 // under the terms of "Eclipse Public License v1.0" |
5 // which accompanies this distribution, and is available |
5 // which accompanies this distribution, and is available |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
149 void SetL(const TWsWinCmdCaptureKey &aCaptureKey); |
150 void SetL(const TWsWinCmdCaptureKey &aCaptureKey); |
150 void CommandL(TInt aOpcode, const TAny *aCmdData); |
151 void CommandL(TInt aOpcode, const TAny *aCmdData); |
151 inline CWsWindowGroup *WindowGroup(); |
152 inline CWsWindowGroup *WindowGroup(); |
152 inline const CWsWindowGroup *WindowGroup() const; |
153 inline const CWsWindowGroup *WindowGroup() const; |
153 private: |
154 private: |
154 void CmdToParams(const TWsWinCmdCaptureKey &aCaptureKey, TCaptureKey &aParams); |
155 void CmdToRequest(const TWsWinCmdCaptureKey &aCaptureKey, TKeyCaptureRequest &aParams); |
155 private: |
156 private: |
156 CWsWindowGroup *iWindowGroup; |
157 CWsWindowGroup *iWindowGroup; |
157 }; |
158 }; |
158 |
159 |
159 class CWsHotKey : public CBase |
160 class CWsHotKey : public CBase |
180 public: |
181 public: |
181 CWsCaptureKeyUpsAndDowns(CWsWindowGroup *owner); |
182 CWsCaptureKeyUpsAndDowns(CWsWindowGroup *owner); |
182 ~CWsCaptureKeyUpsAndDowns(); |
183 ~CWsCaptureKeyUpsAndDowns(); |
183 void ConstructL(const TWsWinCmdCaptureKey &aCaptureKey); |
184 void ConstructL(const TWsWinCmdCaptureKey &aCaptureKey); |
184 void CommandL(TInt aOpcode, const TAny *aCmdData); |
185 void CommandL(TInt aOpcode, const TAny *aCmdData); |
185 static CWsWindowGroup *CheckForCapture(TUint aScanCode, TUint aModifiers); |
|
186 inline CWsWindowGroup *WindowGroup(); |
186 inline CWsWindowGroup *WindowGroup(); |
187 inline const CWsWindowGroup *WindowGroup() const; |
187 inline const CWsWindowGroup *WindowGroup() const; |
188 private: |
188 private: |
189 TUint iModifierValue; |
|
190 TUint iModifierMask; |
|
191 TUint iScanCode; |
|
192 static TPriQue<CWsCaptureKeyUpsAndDowns> iCaptureKeysUpsAndDowns; |
|
193 TPriQueLink iLink; |
|
194 CWsWindowGroup *iWindowGroup; |
189 CWsWindowGroup *iWindowGroup; |
195 }; |
190 }; |
196 |
191 |
197 class CWsCaptureLongKey : public CWsObject |
192 class CWsCaptureLongKey : public CWsObject |
198 { |
193 { |
199 friend class CKeyboardRepeat; |
194 friend class CKeyboardRepeat; |
|
195 friend class TWindowServerEvent; |
200 public: |
196 public: |
201 CWsCaptureLongKey(CWsWindowGroup *owner); |
197 CWsCaptureLongKey(CWsWindowGroup *owner); |
202 ~CWsCaptureLongKey(); |
198 ~CWsCaptureLongKey(); |
203 void ConstructL(const TWsWinCmdCaptureLongKey &aCaptureKey); |
199 void ConstructL(const TWsWinCmdCaptureLongKey &aCaptureKey); |
204 void CommandL(TInt aOpcode, const TAny *aCmdData); |
200 void CommandL(TInt aOpcode, const TAny *aCmdData); |
205 inline CWsWindowGroup *WindowGroup(); |
201 inline CWsWindowGroup *WindowGroup(); |
206 inline const CWsWindowGroup *WindowGroup() const; |
202 inline const CWsWindowGroup *WindowGroup() const; |
207 static CWsCaptureLongKey* CheckForCapture(TUint aKeyCode, TInt aModifiers); |
203 private: |
208 public: |
204 TTimeIntervalMicroSeconds32 iDelay; |
209 static TPriQue<CWsCaptureLongKey> iCaptureLongKeys; |
205 TUint iFlags; |
210 private: |
|
211 TPriQueLink iLink; |
|
212 CWsWindowGroup *iWindowGroup; |
206 CWsWindowGroup *iWindowGroup; |
213 TWsWinCmdCaptureLongKey iData; |
|
214 }; |
207 }; |
215 |
208 |
216 //-------------------------------- |
209 //-------------------------------- |
217 // Owner of CWsGraphicDrawer |
210 // Owner of CWsGraphicDrawer |
218 //-------------------------------- |
211 //-------------------------------- |