iAChartWithFunctionsWidget (in core/charts) takes an MdiChild* parameter in its constructor; yet this is only used to retrieve the current path of the mdichild e.g. when storing the transfer function. It would be better to remove the parameter.
Instead, one could for example introduce an abstract interface class for retrieving a path (which MdiChild could implement); then pass in only a pointer/reference to this interface to iAChartWithFunctionsWidget; then it is not as tightly coupled to the MdiChild class anymore.
iAChartWithFunctionsWidget (in core/charts) takes an MdiChild* parameter in its constructor; yet this is only used to retrieve the current path of the mdichild e.g. when storing the transfer function. It would be better to remove the parameter. Instead, one could for example introduce an abstract interface class for retrieving a path (which MdiChild could implement); then pass in only a pointer/reference to this interface to iAChartWithFunctionsWidget; then it is not as tightly coupled to the MdiChild class anymore.