1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
/*!
@file
@author Georgiy Evmenov
@date 12/2009
*/
#ifndef _7e90e850_b99c_4d13_9681_3bfb0e9c11c0_
#define _7e90e850_b99c_4d13_9681_3bfb0e9c11c0_
#include "BaseLayout/BaseLayout.h"
#include "PanelView/BasePanelViewItem.h"
#include "IPropertyField.h"
namespace tools
{
class PanelControllers :
public wraps::BasePanelViewItem
{
public:
PanelControllers();
virtual void initialise();
virtual void shutdown();
void update(MyGUI::Widget* _currentWidget);
private:
void notifyAction(const std::string& _name, const std::string& _value, bool _final);
virtual void notifyChangeWidth(int _width);
void notifyAdd(MyGUI::Widget* _sender = 0);
void notifyDelete(MyGUI::Widget* _sender);
void notifySelectItem(MyGUI::ListBox* _sender, size_t _index);
void loadControllerTypes(MyGUI::xml::ElementPtr _node, const std::string& _file, MyGUI::Version _version);
void destroyPropertyFields();
void updateSize();
private:
MyGUI::ComboBox* mControllerName;
MyGUI::Button* mButtonAdd;
MyGUI::Button* mButtonDelete;
MyGUI::ListBox* mList;
MyGUI::Widget* mCurrentWidget;
int mButtonLeft;
int mButtonRight;
int mButtonSpace;
typedef std::map<std::string, MyGUI::MapString> MapMapString;
MapMapString mControllersProperties;
typedef std::vector<IPropertyField*> VectorPropertyField;
VectorPropertyField mFields;
size_t mIndexSelected;
};
}
#endif
|