BsGUIDropButton.h 979 B

1234567891011121314151617181920212223242526272829303132
  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(BS::GUIWidget& parent, CM::UINT32 dragType, const BS::GUIElementStyle* style = nullptr);
  16. static GUIDropButton* create(BS::GUIWidget& parent, CM::UINT32 dragType, const BS::GUIOptions& layoutOptions, const BS::GUIElementStyle* style = nullptr);
  17. boost::signal<void(void*)> onDataDropped;
  18. protected:
  19. virtual ~GUIDropButton();
  20. protected:
  21. GUIDropButton(BS::GUIWidget& parent, CM::UINT32 dragType, const BS::GUIElementStyle* style, const BS::GUILayoutOptions& layoutOptions);
  22. virtual bool mouseEvent(const BS::GUIMouseEvent& ev);
  23. CM::UINT32 mDragType;
  24. };
  25. }