From b952bfcc363e491e8e4d8279057d52fa63b9c0b2 Mon Sep 17 00:00:00 2001
From: kleonc <9283098+kleonc@users.noreply.github.com>
Date: Sun, 4 Feb 2024 02:30:43 +0100
Subject: [PATCH] Document some Image methods can unlock it (making `set_pixel`
fail)
---
doc/classes/Image.xml | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/doc/classes/Image.xml b/doc/classes/Image.xml
index 245315ac0..95f194e73 100644
--- a/doc/classes/Image.xml
+++ b/doc/classes/Image.xml
@@ -400,6 +400,13 @@
img.unlock()
img.set_pixel(x, y, color) # Does not have an effect
[/codeblock]
+ [b]Note:[/b] Some image methods can leave the image unlocked, making subsequent [method set_pixel] calls fail unless the image is locked again. Methods potentially unlocking the image: [method blend_rect], [method blend_rect_mask], [method blit_rect_mask], [method convert], [method fill], [method fill_rect], [method get_used_rect], and [method rgbe_to_srgb].
+ [codeblock]
+ img.lock()
+ img.set_pixel(x, y, color) # Works
+ img.fill(color) # Unlocks the image
+ img.set_pixel(x, y, color) # Does not have an effect
+ [/codeblock]
@@ -416,6 +423,13 @@
img.unlock()
img.set_pixelv(Vector2(x, y), color) # Does not have an effect
[/codeblock]
+ [b]Note:[/b] Some image methods can leave the image unlocked, making subsequent [method set_pixelv] calls fail unless the image is locked again. Methods potentially unlocking the image: [method blend_rect], [method blend_rect_mask], [method blit_rect_mask], [method convert], [method fill], [method fill_rect], [method get_used_rect], and [method rgbe_to_srgb].
+ [codeblock]
+ img.lock()
+ img.set_pixelv(Vector2(x, y), color) # Works
+ img.fill(dcolor) # Unlocks the image
+ img.set_pixelv(Vector2(x, y), color) # Does not have an effect
+ [/codeblock]