Blender V4.3
GHOST_ModifierKeys.cc
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2001-2002 NaN Holding BV. All rights reserved.
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
13#include "GHOST_ModifierKeys.hh"
14#include "GHOST_Debug.hh"
15
20
22
24{
25 GHOST_TKey key;
26 switch (mask) {
29 break;
32 break;
35 break;
38 break;
41 break;
44 break;
46 key = GHOST_kKeyLeftOS;
47 break;
50 break;
51 default:
52 /* Should not happen. */
53 GHOST_ASSERT(0, "Invalid key!");
55 break;
56 }
57 return key;
58}
59
61{
62 switch (mask) {
64 return m_LeftShift;
66 return m_RightShift;
68 return m_LeftAlt;
70 return m_RightAlt;
72 return m_LeftControl;
74 return m_RightControl;
76 return m_LeftOS;
78 return m_RightOS;
79 default:
80 GHOST_ASSERT(0, "Invalid key!");
81 return false;
82 }
83}
84
86{
87 switch (mask) {
89 m_LeftShift = down;
90 break;
92 m_RightShift = down;
93 break;
95 m_LeftAlt = down;
96 break;
98 m_RightAlt = down;
99 break;
101 m_LeftControl = down;
102 break;
104 m_RightControl = down;
105 break;
107 m_LeftOS = down;
108 break;
110 m_RightOS = down;
111 break;
112 default:
113 GHOST_ASSERT(0, "Invalid key!");
114 break;
115 }
116}
117
119{
120 m_LeftShift = false;
121 m_RightShift = false;
122 m_LeftAlt = false;
123 m_RightAlt = false;
124 m_LeftControl = false;
125 m_RightControl = false;
126 m_LeftOS = false;
127 m_RightOS = false;
128}
129
131{
132 return (m_LeftShift == keys.m_LeftShift) && (m_RightShift == keys.m_RightShift) &&
133 (m_LeftAlt == keys.m_LeftAlt) && (m_RightAlt == keys.m_RightAlt) &&
135 (m_LeftOS == keys.m_LeftOS) && (m_RightOS == keys.m_RightOS);
136}
#define GHOST_ASSERT(x, info)
GHOST_TKey
@ GHOST_kKeyLeftOS
@ GHOST_kKeyLeftAlt
@ GHOST_kKeyRightShift
@ GHOST_kKeyRightOS
@ GHOST_kKeyLeftControl
@ GHOST_kKeyRightAlt
@ GHOST_kKeyRightControl
@ GHOST_kKeyUnknown
@ GHOST_kKeyLeftShift
GHOST_TModifierKey
@ GHOST_kModifierKeyRightControl
@ GHOST_kModifierKeyLeftControl
@ GHOST_kModifierKeyRightAlt
@ GHOST_kModifierKeyRightShift
@ GHOST_kModifierKeyLeftAlt
@ GHOST_kModifierKeyLeftShift
@ GHOST_kModifierKeyLeftOS
@ GHOST_kModifierKeyRightOS
void set(GHOST_TModifierKey mask, bool down)
bool get(GHOST_TModifierKey mask) const
bool equals(const GHOST_ModifierKeys &keys) const
static GHOST_TKey getModifierKeyCode(GHOST_TModifierKey mask)