T O P I C R E V I E W |
yogiyang |
Posted - May 12 2020 : 01:38:45 Hello,
It seems that there is a bug in LayerMerge (as per my understanding).
I tried it in the Layers_AllTypes demo.
Here is what I did: Changed the line: ImageEnView1.LayerOptions := ImageEnView1.LayerOptions + [loAutoUndoChangesByuser, loAutoUndoChangesByCode];
to: ImageEnView1.LayerOptions := ImageEnView1.LayerOptions + [loAutoUndoChangesByuser, loAutoUndoChangesByCode, loAutoSelectMask];
Added a menu item and put this one line of code: ImageEnView1.LayersMerge();
What is happening is that all selected layers get merged. Except for the mask of the lower most layer.
Is this by design or is it a bug?
I am attaching a small video showing this behavior.
attach/yogiyang/202051213719_Video_2020-05-12_095123.zip 3627.18 KB
TIA
Yogi Yang |
3 L A T E S T R E P L I E S (Newest First) |
xequte |
Posted - May 13 2020 : 16:52:46 Hi Yogi
If you break the code at that point, what line/method is running? I suspect it is an outdated reference in TImageEnLayerMView that is caught by an exception handler (which in 9.0.0 does not raise an exception).
Nigel Xequte Software www.imageen.com
|
yogiyang |
Posted - May 13 2020 : 07:59:04 Hello Nigel,
Thanks for confirming.
While you are at it.
I also observed that when we pass LayersMerge an array in debug mode ImageEn givs error as follows after LayersMerge code is executed: --------------------------- Debugger Exception Notification --------------------------- Project Layers.exe raised exception class EListError with message 'List index out of bounds (-1)'. --------------------------- Break Continue Help ---------------------------
I repeat this happens only when we are running the EXE in IDE. If we run the exe out side the IDE then there are no errors generated.
Please also look into this if possible.
I am using Delphi 10.3 Rio Update 3 and ImageEN 8.7.6.
TIA
Yogi Yang |
xequte |
Posted - May 12 2020 : 17:35:05 Thanks Yogi,
I can reproduce and will investigate.
Nigel Xequte Software www.imageen.com
|