UIButton.h 955 B

123456789101112131415161718192021222324252627282930313233343536
  1. // Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
  2. // SPDX-FileCopyrightText: 2021 Jorrit Rouwe
  3. // SPDX-License-Identifier: MIT
  4. #pragma once
  5. #include <UI/UITextButton.h>
  6. #include <UI/UITexturedQuad.h>
  7. /// Button with a background image and text on it
  8. class UIButton : public UITextButton
  9. {
  10. public:
  11. JPH_DECLARE_RTTI_VIRTUAL(JPH_NO_EXPORT, UIButton)
  12. /// Cloning / copying
  13. virtual void CopyTo(UIElement *ioElement) const override;
  14. /// Draw element
  15. virtual void Draw() const override;
  16. /// Set quad
  17. void SetButtonQuad(const UITexturedQuad &inQuad);
  18. private:
  19. UITexturedQuad mUpQuad;
  20. Color mUpColor { Color(220, 220, 220) };
  21. UITexturedQuad mDownQuad;
  22. Color mDownColor { Color::sGrey };
  23. UITexturedQuad mHighlightQuad;
  24. Color mHighlightColor { Color::sWhite };
  25. UITexturedQuad mSelectedQuad;
  26. Color mSelectedColor { Color::sWhite };
  27. UITexturedQuad mDisabledQuad;
  28. Color mDisabledColor { Color::sGrey };
  29. };