Merge branch 'fixes' into main/rendor-staging
[ryzomcore.git] / nel / src / gui / event_descriptor.cpp
blob160b02730c0b052a98d3f41675947d4513a5ba1d
1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This source file has been modified by the following contributors:
5 // Copyright (C) 2013 Laszlo KIS-ADAM (dfighter) <dfighter1985@gmail.com>
6 //
7 // This program is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU Affero General Public License as
9 // published by the Free Software Foundation, either version 3 of the
10 // License, or (at your option) any later version.
12 // This program is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU Affero General Public License for more details.
17 // You should have received a copy of the GNU Affero General Public License
18 // along with this program. If not, see <http://www.gnu.org/licenses/>.
21 #include "stdpch.h"
22 #include "nel/misc/events.h"
23 #include "nel/gui/event_descriptor.h"
25 #ifdef DEBUG_NEW
26 #define new DEBUG_NEW
27 #endif
29 namespace NLGUI
32 void CEventDescriptorKey::init(const NLMISC::CEventKey &ev)
34 _CtrlState = (ev.Button & NLMISC::ctrlKeyButton) != 0;
35 _ShiftState = (ev.Button & NLMISC::shiftKeyButton) != 0;
36 _AltState = (ev.Button & NLMISC::altKeyButton) != 0;
37 if (ev == NLMISC::EventCharId)
39 _KeyEvent = keychar;
40 _Char = ((const NLMISC::CEventChar &) ev).Char;
42 else if (ev == NLMISC::EventKeyUpId)
44 _KeyEvent = keyup;
45 _Key = ((const NLMISC::CEventKeyUp &) ev).Key;
47 else if (ev == NLMISC::EventKeyDownId)
49 _KeyEvent = keydown;
50 _Key = ((const NLMISC::CEventKeyDown &) ev).Key;
52 else if (ev == NLMISC::EventStringId)
54 _KeyEvent = keystring;
55 _String = ((const NLMISC::CEventString &) ev).String;
57 else
59 _KeyEvent = unknown;