<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def print_all_signals(self):
 """ Prints out every signal available for this widget and childs. """

        for o in dir(self):
            obj= getattr(self, o)
            #print o, type(obj)
            div = False
            for c in dir(obj):
                cobj = getattr(obj, c)
                if isinstance(cobj, Signal):
                    print('def _on_{}__{}(self):'.format(o, c))
                    div = True

            if div: print('-'*30)