aboutsummaryrefslogtreecommitdiff
path: root/extension/src/openvic-extension/classes/GUIButton.hpp
blob: 3873a4de93229c3b7981444c798ffa9c195a5dfd (plain) (blame)
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
#pragma once

#include <godot_cpp/classes/button.hpp>

#include <openvic-simulation/interface/GFXSprite.hpp>

#include "openvic-extension/classes/GFXButtonStateTexture.hpp"
#include "openvic-extension/classes/GUIHasTooltip.hpp"

namespace OpenVic {
   class GUIButton : public godot::Button {
      GDCLASS(GUIButton, godot::Button)

      GUI_TOOLTIP_DEFINITIONS

   protected:
      static void _bind_methods();

      void _notification(int what);

      godot::Error set_gfx_button_state_having_texture(godot::Ref<GFXButtonStateHavingTexture> const& texture);

   public:
      GUIButton();

      godot::Error set_gfx_font(GFX::Font const* gfx_font);
   };
}