title: Stop event propagation in Delphi 7
body: <p>I'm stuck on a problem in Delphi 7 about event propagation (due to my ignorance).</p>
  
  <p>I am asked to dynamically attach an <code>OnMouseUp</code> event handler on some controls on a form (and I'm fine with that thing), but if the <code>OnMouseUp</code> is present, the <code>OnClick</code> event on that control must not be processed.</p>
  
  <h2>Background</h2>
  
  <p>If you are asking the reason behind this, well, I'm in charge to modify an old production monitoring application (sigh) that from now on must accommodate a conditional behaviour for some controls, in direct response to a former click on a special function button.</p>
  
  <p>Some of those controls have an <code>OnClick</code> event handler already; the first solution the team came up with was to punctually intervene on each <code>OnClick</code> handler and manage out the contextual actions in relation to the special function button status.</p>
  
  <p>I suggested to take advantage of the Object-Oriented design already in place for the application forms: they all inherit from the same custom ancestor object, so I planned to insert an initialization method there to dynamically attach <code>OnMouseUp</code> events to the controls that are declared to support it in subclasses.</p>
  
  <h2>The need</h2>
  
  <p>I'm not hereby asking a validation or questioning on the (possible lack of) design goodness about all this (by the way, after a lot of thinking and reasoning it seemed to be the path we can walk with less pain); my problem is that for such design to take place I'd have to let dynamically-attached <code>OnMouseUp</code> event handlers stop event propagation to the pre-existent <code>OnClick</code> events on those controls.</p>
  
  <p>Is it possible with Delphi 7?</p>