MyGUI
3.0.3
|
00001 00007 /* 00008 This file is part of MyGUI. 00009 00010 MyGUI is free software: you can redistribute it and/or modify 00011 it under the terms of the GNU Lesser General Public License as published by 00012 the Free Software Foundation, either version 3 of the License, or 00013 (at your option) any later version. 00014 00015 MyGUI is distributed in the hope that it will be useful, 00016 but WITHOUT ANY WARRANTY; without even the implied warranty of 00017 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00018 GNU Lesser General Public License for more details. 00019 00020 You should have received a copy of the GNU Lesser General Public License 00021 along with MyGUI. If not, see <http://www.gnu.org/licenses/>. 00022 */ 00023 #ifndef __MYGUI_ITEM_INFO_H__ 00024 #define __MYGUI_ITEM_INFO_H__ 00025 00026 #include "MyGUI_Prerequest.h" 00027 00028 namespace MyGUI 00029 { 00030 00031 // структура информации об отображении элемента 00033 struct MYGUI_EXPORT IBDrawItemInfo 00034 { 00035 00036 IBDrawItemInfo() : 00037 index(ITEM_NONE), 00038 update(false), 00039 select(false), 00040 active(false), 00041 drag(false), 00042 drop_accept(false), 00043 drop_refuse(false) 00044 { 00045 } 00046 00047 IBDrawItemInfo(size_t _index, size_t _select, size_t _active, size_t _accept, size_t _refuse, bool _update, bool _drag) : 00048 index(_index), 00049 update(_update), 00050 select(_index == _select), 00051 active(_index == _active), 00052 drag(_drag), 00053 drop_accept(_index == _accept), 00054 drop_refuse(_index == _refuse) 00055 { 00056 } 00057 00059 size_t index; 00061 bool update; 00063 bool select; 00065 bool active; 00067 bool drag; 00069 bool drop_accept; 00071 bool drop_refuse; 00072 }; 00073 00074 struct MYGUI_EXPORT IBNotifyItemData 00075 { 00076 enum NotifyItem 00077 { 00078 MousePressed, 00079 MouseReleased, 00080 KeyPressed, 00081 KeyReleased 00082 }; 00083 00084 IBNotifyItemData(size_t _index, NotifyItem _notify, int _x, int _y, MouseButton _id) : 00085 index(_index), notify(_notify), x(_x), y(_y), id(_id), code(KeyCode::None), key(0) { } 00086 00087 IBNotifyItemData(size_t _index, NotifyItem _notify, KeyCode _code, Char _key) : 00088 index(_index), notify(_notify), x(0), y(0), id(MouseButton::None), code(_code), key(_key) { } 00089 00090 IBNotifyItemData(size_t _index, NotifyItem _notify, KeyCode _code) : 00091 index(_index), notify(_notify), x(0), y(0), id(MouseButton::None), code(_code), key(KeyCode::None) { } 00092 00094 size_t index; 00096 NotifyItem notify; 00098 int x; 00100 int y; 00102 MouseButton id; 00104 KeyCode code; 00106 Char key; 00107 }; 00108 00109 } // namespace MyGUI 00110 00111 #endif // __MYGUI_ITEM_INFO_H__