Sigh.. In other words no. Just one point though, this doesn't fix every case. Why? Lets say your trigger is designed to capture a number of lines and store them, then delete itself when you receive a "specific" line. You still can't do that, because its **not** a one shot trigger by definition. Its not just getting one match, then deleting, its waiting for a specific event, then killing itself. So, allowing one shot, but having no way to change that state, doesn't fix it.
As for changing interfaces.. Ok, I can see your point there, except its producing function hell imho, in that, much like some Windows API calls, we are getting things like Blah, BlahEx, BlahEx2, etc., etc. I think that is one major flaw with ActiveX, now that I think of it, since you can ask the interface manager for a "named" interface, but not if there is one with specific parameters, so as you say, overloading isn't possible, even if it makes more bloody sense.
Anyway, the only reason I even suggested it is to maintain existing behavior, but since the existing behavior was intended to prevent someone crashing the client, changing the behavior so it does work, but won't crash the client, doesn't change the interface at all. If you get my meaning. Instead it simply puts in place what imho, most of us thought when we first tried it would have been "expected" behavior in the first place. |