Because all widgets are event black holes.

LiveCode Builder is a language for extending LiveCode's capabilities, creating new object types as Widgets, and libraries that access lower-level APIs in OSes, applications, and DLLs.

Moderators: LCMark, LCfraser

Post Reply
andresdt
Posts: 50
Joined: Fri Aug 16, 2019 7:51 pm

Because all widgets are event black holes.

Post by andresdt » Tue Apr 13, 2021 4:12 pm

Because when I want to use a widget in my project, I have to watch to see if its developer remembered to tell it to pass the mouseUp event or whatever it needs. Although I don't have much experience in LCB, I have seen that to create a widget you need to call the library “com.livecode.widget”. So I wonder if it would be possible that this library had a mechanism to pass all the events that are not used in the widget.
Example if I have a widget that uses mouseDown for something internal. This takes precedence over the library, but the widget still receives all other events. After all, widgets are controls and should respond to all engine events that other controls respond to.
The idea of putting that mechanism in com.livecode.widget is because I think you won't need to recompile all the widgets.
Image

Post Reply

Return to “LiveCode Builder”