Merge pull request #89983 from KoBeWi/different_kind_of_image

Change how ImageTexture's image is defined
This commit is contained in:
Rémi Verschelde 2025-12-02 14:15:16 +01:00
commit df0e6d3906
No known key found for this signature in database
GPG key ID: C3336907360768E1
2 changed files with 4 additions and 25 deletions

View file

@ -53,26 +53,6 @@ void ImageTexture::reload_from_file() {
} }
} }
bool ImageTexture::_set(const StringName &p_name, const Variant &p_value) {
if (p_name == "image") {
set_image(p_value);
return true;
}
return false;
}
bool ImageTexture::_get(const StringName &p_name, Variant &r_ret) const {
if (p_name == "image") {
r_ret = get_image();
return true;
}
return false;
}
void ImageTexture::_get_property_list(List<PropertyInfo> *p_list) const {
p_list->push_back(PropertyInfo(Variant::OBJECT, PNAME("image"), PROPERTY_HINT_RESOURCE_TYPE, "Image", PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT));
}
Ref<ImageTexture> ImageTexture::create_from_image(const Ref<Image> &p_image) { Ref<ImageTexture> ImageTexture::create_from_image(const Ref<Image> &p_image) {
ERR_FAIL_COND_V_MSG(p_image.is_null(), Ref<ImageTexture>(), "Invalid image: null"); ERR_FAIL_COND_V_MSG(p_image.is_null(), Ref<ImageTexture>(), "Invalid image: null");
ERR_FAIL_COND_V_MSG(p_image->is_empty(), Ref<ImageTexture>(), "Invalid image: image is empty"); ERR_FAIL_COND_V_MSG(p_image->is_empty(), Ref<ImageTexture>(), "Invalid image: image is empty");
@ -239,6 +219,10 @@ void ImageTexture::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_image", "image"), &ImageTexture::set_image); ClassDB::bind_method(D_METHOD("set_image", "image"), &ImageTexture::set_image);
ClassDB::bind_method(D_METHOD("update", "image"), &ImageTexture::update); ClassDB::bind_method(D_METHOD("update", "image"), &ImageTexture::update);
ClassDB::bind_method(D_METHOD("set_size_override", "size"), &ImageTexture::set_size_override); ClassDB::bind_method(D_METHOD("set_size_override", "size"), &ImageTexture::set_size_override);
ClassDB::bind_method(D_METHOD("_set_image", "image"), &ImageTexture::set_image);
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "image", PROPERTY_HINT_RESOURCE_TYPE, "Image", PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_INTERNAL | PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT), "_set_image", "get_image");
} }
ImageTexture::~ImageTexture() { ImageTexture::~ImageTexture() {

View file

@ -49,11 +49,6 @@ class ImageTexture : public Texture2D {
protected: protected:
virtual void reload_from_file() override; virtual void reload_from_file() override;
bool _set(const StringName &p_name, const Variant &p_value);
bool _get(const StringName &p_name, Variant &r_ret) const;
void _get_property_list(List<PropertyInfo> *p_list) const;
static void _bind_methods(); static void _bind_methods();
public: public: