Is there a way to stop components from intercepting mouse clicks which I want to be processed by their parent?
For example I have a panel with background image and on it there are some visual 'nodes'. Everyting can be panned around with middle mouse btn but it doesn't work when starting click over node because it intercepts the event.
tl;dr
no, you have to implement event handlers for child objects and forward them to parents like that:
procedure TTreeNode.OnLineMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
tpanel(parent).OnMouseDown(sender,button,shift,left+x,top+y);
end;