Defining select event behaviour for multiple selection tables

!compat evselect

Define select event behaviour for multiple selection tables


SYNTAX

!compat evselect = 4

If this declaration is included in a program, selection of a block of lines (made with SHIFT-CLICK) from a multiple selection will cause the EV_SELECT event to be sent separately for each line.

If this declaration is absent from a program compiled with Sculptor V 5.3 or later, selection of a block of lines causes the EV_MULTIPLE_SELECT event to be sent.

The new behaviour was introduced because sending EV_SELECT separately for each line selected was causing problems:

1

Sculptor’s internal event stack overflowed, so the event was only sent for the first 255 lines.

2

Sending so many events degraded performance. Any fix would only have made this problem worse if a very large number of lines was selected.

Sculptor recommends that programs using tables with EM_MULTIPLE be modified to make use of EV_MULTIPLE_SELECT, before being recompiled with the latest version of scc. !compat evselect should only be used if this is impractical.


RELATED TOPICS

Table events and functions