1 /*! 2 @file 3 @author Albert Semenov 4 @date 01/2009 5 @module 6 */ 7 #pragma once 8 9 #include <MyGUI.h> 10 #include "Marshaling.h" 11 12 namespace MyGUI 13 { 14 namespace Managed 15 { 16 17 #ifndef MMYGUI_USING_EXTERNAL_TYPE 18 19 public enum struct MouseButton 20 { 21 Left = MyGUI::MouseButton::Left, 22 Right = MyGUI::MouseButton::Right, 23 Middle = MyGUI::MouseButton::Middle, 24 25 Button0 = MyGUI::MouseButton::Button0, 26 Button1 = MyGUI::MouseButton::Button1, 27 Button2 = MyGUI::MouseButton::Button2, 28 Button3 = MyGUI::MouseButton::Button3, 29 Button4 = MyGUI::MouseButton::Button4, 30 Button5 = MyGUI::MouseButton::Button5, 31 Button6 = MyGUI::MouseButton::Button6, 32 Button7 = MyGUI::MouseButton::Button7, 33 34 None = MyGUI::MouseButton::None 35 }; 36 37 #else 38 39 typedef MMYGUI_EXTERNAL_NAMESPACE MouseButton MouseButton; 40 41 #endif // MMYGUI_USING_EXTERNAL_TYPE 42 43 template <> struct Convert<MyGUI::MouseButton> 44 { 45 typedef MouseButton Type; 46 inline static const MouseButton& To(const MyGUI::MouseButton& _value) 47 { 48 return reinterpret_cast<const MouseButton&>(_value); 49 } 50 inline static MyGUI::MouseButton& From(MouseButton& _value) 51 { 52 return reinterpret_cast<MyGUI::MouseButton&>(_value); 53 } 54 }; 55 56 } // namespace Managed 57 } // namespace MyGUI 58