blob: 060076cacfa753b04dd023b96d941fb7ce709444 [file] [log] [blame]
#ifndef _RIVE_VIEW_MODEL_INSTANCE_ARTBOARD_HPP_
#define _RIVE_VIEW_MODEL_INSTANCE_ARTBOARD_HPP_
#include "rive/generated/viewmodel/viewmodel_instance_artboard_base.hpp"
#include "rive/bindable_artboard.hpp"
#include <stdio.h>
namespace rive
{
#ifdef WITH_RIVE_TOOLS
class ViewModelInstanceArtboard;
typedef void (*ViewModelArtboardChanged)(ViewModelInstanceArtboard* vmi,
uint32_t value);
#endif
class ViewModelInstanceArtboard : public ViewModelInstanceArtboardBase
{
protected:
void propertyValueChanged() override;
public:
void asset(rcp<BindableArtboard> value);
rcp<BindableArtboard> asset() { return m_bindableArtboard; }
private:
rcp<BindableArtboard> m_bindableArtboard = nullptr;
#ifdef WITH_RIVE_TOOLS
public:
void onChanged(ViewModelArtboardChanged callback)
{
m_changedCallback = callback;
}
ViewModelArtboardChanged m_changedCallback = nullptr;
#endif
};
} // namespace rive
#endif