1 #ifndef __DALI_KEY_IMPL_H__
2 #define __DALI_KEY_IMPL_H__
5 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
23 #include <key-extension-plugin.h>
35 * Implementation of the Key matching
42 const char* keyName; ///< XF86 key name
43 const Dali::KEY daliKeyCode; ///< Dali key code
44 const bool deviceButton; ///< Whether the key is from a button on the device
47 extern KeyLookup KeyLookupTable[];
48 extern const std::size_t KEY_LOOKUP_COUNT;
51 * @copydoc Dali::IsKey()
53 bool IsKey( const Dali::KeyEvent& keyEvent, Dali::KEY daliKey );
56 * Check if a the given key name string is a button on the device itself.
57 * @param keyName A pointer to the key name
58 * @return true if the key is matched, false if not
60 bool IsDeviceButton( const char* keyName );
63 * Get a key name from a dali key code.
64 * @param daliKey The dali key code
65 * @return The key name. NULL if the daliKey does not exist in the supported key lookup table.
67 const char* GetKeyName( Dali::KEY daliKey );
70 * @brief Get the key code from a key name.
71 * @param[in] keyName The key name
72 * @return The key code. -1 if the daliKey does not exist in the supported key lookup table.
74 int GetDaliKeyCode( const char* keyName );
76 } // namespace KeyLookup
78 } // namespace Adaptor
80 } // namespace Internal
84 #endif // __DALI_KEY_IMPL_H__