When I told that GSX has a control I mean that GSX doesn't do the requested action untill you follow the warning message (white line and beep).
See below ...
That's exactly what I've say, GSX doesn't have control of the APU, you have, and by acting on the APU, you control GSX. GSX is a passive actor here, which is what the meaning of "control" is. Maybe you wanted to say "create a parameter to assign If you want that GSX *checks* the APU state, doors"
Having a separate menu option it's not possible, because GSX doesn't really know anything about what an APU is, it's far too flexible to work with such specific case. For GSX, there's only the generic concept of a "Pushback constrain", which can be anything, a wheel chock, an air starter, a stewardess figure, etc. and, more important, is nothing hard-coded in GSX itself, which doesn't know anything about such conditions, it's something that is specific to an airplane definition, and can be different for every airplane.
As I've said, the most sensible way would be that GSX will allow pushback with the APU off IF there's at least one engine running, which implies a cross-bleed start.
There's no need to more and more menu options, which means the product will be a nuisance to use (because a set of a menu options might be right for an airplane/airport, but not for another one, it's much better to make the program smarter, without having to touch any menu.