#include "gi_probe_editor_plugin.h" void GIProbeEditorPlugin::_bake() { if (gi_probe) { gi_probe->bake(); } } void GIProbeEditorPlugin::edit(Object *p_object) { GIProbe * s = p_object->cast_to(); if (!s) return; gi_probe=s; } bool GIProbeEditorPlugin::handles(Object *p_object) const { return p_object->is_class("GIProbe"); } void GIProbeEditorPlugin::make_visible(bool p_visible) { if (p_visible) { bake->show(); } else { bake->hide(); } } void GIProbeEditorPlugin::_bind_methods() { ClassDB::bind_method("_bake",&GIProbeEditorPlugin::_bake); } GIProbeEditorPlugin::GIProbeEditorPlugin(EditorNode *p_node) { editor=p_node; bake = memnew( Button ); bake->set_icon(editor->get_gui_base()->get_icon("BakedLight","EditorIcons")); bake->hide();; bake->connect("pressed",this,"_bake"); add_control_to_container(CONTAINER_SPATIAL_EDITOR_MENU,bake); gi_probe=NULL; } GIProbeEditorPlugin::~GIProbeEditorPlugin() { memdelete(bake); }