diff options
Diffstat (limited to 'gtk/gtk-builder-convert')
-rwxr-xr-x | gtk/gtk-builder-convert | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gtk/gtk-builder-convert b/gtk/gtk-builder-convert index d77f8c3d1..59218d555 100755 --- a/gtk/gtk-builder-convert +++ b/gtk/gtk-builder-convert @@ -92,6 +92,16 @@ def get_signal_nodes(node): signals.append(child) return signals +def get_accelerator_nodes(node): + assert node.tagName == 'object' + accelerators = [] + for child in node.childNodes: + if child.nodeType == Node.TEXT_NODE: + continue + if child.tagName == 'accelerator': + accelerators.append(child) + return accelerators + def get_object_node(child_node): assert child_node.tagName == 'child' nodes = [] @@ -418,6 +428,15 @@ class GtkBuilderConverter(object): group.appendChild(child) child.appendChild(action) + for accelerator in get_accelerator_nodes(node): + signal = accelerator.getAttribute('signal') + if signal_name != 'activate': + print 'Unhandled accelerator signal for %s::%s' % ( + node.getAttribute('class'), signal_name) + continue + accelerator.removeAttribute('signal') + child.appendChild(accelerator) + def _convert_sizegroup(self, node, prop): # This is Gazpacho only node.removeChild(prop) |