Here is the official sample for the igHierarchicalGrid's Load on Demand functionality. You can inspect the AJAX requests being made when rows of the parent grid are being expanded so you can see what the input and output data of those AJAX requests look like.
The official help article on the "Load on Demand functionality" is here and I would like to stress on the last part: "Load on Demand parameters in MVC". Although the functionality appears to be tightly coupled with either ASP.NET MVC or oData, you can use and back-end data provider, as long as that provider complies with the hierarchical grid's expectations for input and output data.
As far as hooking to the +/- buttons, I'm afraid that their events are not exposed.
The best you can get in terms of events are the rowExpanding, childGridCreating or better yet: childrenPopulating. You can find the official API reference on those events here.
Wrapping one's head around the Load on Demand functionality of any hierarchical grid can be a daunting task so fret not - as long as the details are clear, the solution won't be that hard to compose.
One final piece of reference (and examples) I can provide is the official Infragistics forums. There are quite a few discussions on similar predicaments there already.