Functionality QActions should only be used when no other protocol constructs are available to implement the desired functionality.