BsGUIDropButton.h 928 B

123456789101112131415161718192021222324252627282930313233
  1. #pragma once
  2. #include "BsEditorPrerequisites.h"
  3. #include "BsGUIButtonBase.h"
  4. #include "BsGUIToggleGroup.h"
  5. #include "BsImageSprite.h"
  6. #include "BsTextSprite.h"
  7. #include "BsGUIContent.h"
  8. #include "boost/signal.hpp"
  9. namespace BansheeEditor
  10. {
  11. class GUIDropButton : public BS::GUIButtonBase
  12. {
  13. public:
  14. static const CM::String& getGUITypeName();
  15. static GUIDropButton* create(CM::UINT32 dragType, const CM::String& styleName = CM::StringUtil::BLANK);
  16. static GUIDropButton* create(CM::UINT32 dragType, const BS::GUIOptions& layoutOptions,
  17. const CM::String& styleName = CM::StringUtil::BLANK);
  18. boost::signal<void(void*)> onDataDropped;
  19. protected:
  20. virtual ~GUIDropButton();
  21. protected:
  22. GUIDropButton(CM::UINT32 dragType, const CM::String& styleName, const BS::GUILayoutOptions& layoutOptions);
  23. virtual bool mouseEvent(const BS::GUIMouseEvent& ev);
  24. CM::UINT32 mDragType;
  25. };
  26. }