Есть много способов сделать это. Вы не указываете, как вы строите галерею изображений, но я предполагаю, что вы создаете макет стилей IMAGE и затем отображаете этот макет.
Звучит так, будто вы хотите, чтобы у каждого изображения была своя свобода, поэтому я предлагаю вам создать отдельный стиль, возможно, полученный из IMAGE. Вы можете сделать это так:
stylize/master [
image: image with [
feel: make feel [
engage: func [face act event] [
; do my custom engage function
]
]
]
]
Поставьте код перед макетом. Таким образом, вы можете сохранить сложный код для поведения IMAGE вне блока макета. Когда вы работаете таким образом, стиль меняется глобально.
Вы также можете просто создать новый стиль, изменив имя:
stylize/master [
image2: image with [
...
]
]
ИЗОБРАЖЕНИЕ останется нетронутым, в то время как вы можете использовать IMAGE2 в макете.
Почему СТИЛИЗ / МАСТЕР? Я использую STYLIZE / MASTER по привычке, поэтому мне не нужно указывать конкретный список стилей в макете, и я могу сбрить строку кода для каждого макета.