/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
// CLASS HEADER
#include <dali/integration-api/events/key-event-integ.h>
+// INTERNAL INCLUDES
+#include <dali/internal/event/events/key-event-impl.h>
+
namespace Dali
{
KeyEvent::KeyEvent()
: Event( Key ),
keyName(),
+ logicalKey(),
keyString(),
keyCode( -1 ),
keyModifier( 0 ),
time( 0 ),
state( KeyEvent::Down ),
+ compose( "" ),
deviceName( "" ),
- deviceClass( DevelDevice::Class::NONE ),
- deviceSubclass( DevelDevice::Subclass::NONE )
+ deviceClass( Device::Class::NONE ),
+ deviceSubclass( Device::Subclass::NONE )
{
}
-KeyEvent::KeyEvent( const std::string& keyName, const std::string& keyString, int keyCode, int keyModifier,
- unsigned long timeStamp, const State& keyState, const std::string deviceName,
- const DevelDevice::Class::Type deviceClass, const DevelDevice::Subclass::Type deviceSubclass )
+KeyEvent::KeyEvent( const std::string& keyName, const std::string& logicalKey, const std::string& keyString, int keyCode, int keyModifier,
+ unsigned long timeStamp, const State& keyState, const std::string& compose, const std::string& deviceName,
+ const Device::Class::Type deviceClass, const Device::Subclass::Type deviceSubclass )
: Event( Key ),
keyName( keyName ),
+ logicalKey( logicalKey ),
keyString( keyString ),
keyCode( keyCode ),
keyModifier( keyModifier ),
time( timeStamp ),
state( keyState ),
+ compose( compose ),
deviceName( deviceName ),
deviceClass( deviceClass ),
deviceSubclass( deviceSubclass )
KeyEvent::KeyEvent( const Dali::KeyEvent& event )
: Event( Key ),
keyName( event.keyPressedName ),
+ logicalKey( "" ),
keyString( event.keyPressed ),
keyCode( event.keyCode ),
keyModifier( event.keyModifier ),
time( event.time ),
state( static_cast< Integration::KeyEvent::State >( event.state ) ),
+ compose( "" ),
deviceName( "" ),
- deviceClass( DevelDevice::Class::NONE ),
- deviceSubclass( DevelDevice::Subclass::NONE )
+ deviceClass( Device::Class::NONE ),
+ deviceSubclass( Device::Subclass::NONE )
{
+ const Internal::KeyEventImpl* keyEventImpl = GetImplementation( &event );
+ logicalKey = keyEventImpl->GetLogicalKey();
+ compose = keyEventImpl->GetCompose();
+ deviceName = keyEventImpl->GetDeviceName();
+ deviceClass = keyEventImpl->GetDeviceClass();
+ deviceSubclass = keyEventImpl->GetDeviceSubclass();
}
KeyEvent::~KeyEvent()