From 2655a8ccada45beb1f78f2e5fbad13e88ba44447 Mon Sep 17 00:00:00 2001 From: Aleksey Lim Date: Wed, 29 Jul 2009 16:15:38 +0000 Subject: [PATCH] Suppress sub-palettes in radiopalette --- examples/radiopalette.py | 12 ++++++------ src/sugar/activity/activity.py | 10 ++++------ src/sugar/graphics/radiopalette.py | 8 ++++++-- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/examples/radiopalette.py b/examples/radiopalette.py index 8a47f987..a5538730 100644 --- a/examples/radiopalette.py +++ b/examples/radiopalette.py @@ -30,21 +30,21 @@ group = RadioToolButton( icon_name='document-open', tooltip='menu.document-open') group.connect('clicked', lambda button: echo(button)) -palette.append(group) +palette.append(group, 'menu.document-open') button = RadioToolButton( icon_name='document-save', group=group, tooltip='menu.document-save') button.connect('clicked', lambda button: echo(button)) -palette.append(button) +palette.append(button, 'menu.document-save') button = RadioToolButton( icon_name='document-send', group=group, tooltip='menu.document-send') button.connect('clicked', lambda button: echo(button)) -palette.append(button) +palette.append(button, 'menu.document-send') button = RadioMenuButton(palette=palette) toolbar.insert(button, -1) @@ -57,21 +57,21 @@ group = RadioToolButton( icon_name='document-open', tooltip='menu.document-open') group.connect('clicked', lambda button: echo(button)) -palette.append(group) +palette.append(group, 'menu.document-open') button = RadioToolButton( icon_name='document-save', group=group, tooltip='menu.document-save') button.connect('clicked', lambda button: echo(button)) -palette.append(button) +palette.append(button, 'menu.document-save') button = RadioToolButton( icon_name='document-send', group=group, tooltip='menu.document-send') button.connect('clicked', lambda button: echo(button)) -palette.append(button) +palette.append(button, 'menu.document-send') button = RadioToolsButton(palette=palette) toolbar.insert(button, -1) diff --git a/src/sugar/activity/activity.py b/src/sugar/activity/activity.py index 76a349f3..30cd0a10 100644 --- a/src/sugar/activity/activity.py +++ b/src/sugar/activity/activity.py @@ -1061,16 +1061,14 @@ def share_button(activity, **kwargs): palette = RadioPalette() private = RadioToolButton( - icon_name='zoom-home', - tooltip=_('Private')) - palette.append(private) + icon_name='zoom-home') + palette.append(private, _('Private')) neighborhood = RadioToolButton( icon_name='zoom-neighborhood', - group=private, - tooltip=_('My Neighborhood')) + group=private) neighborhood.connect('clicked', neighborhood_cb) - palette.append(neighborhood) + palette.append(neighborhood, _('My Neighborhood')) def update_share(): neighborhood.handler_block_by_func(neighborhood_cb) diff --git a/src/sugar/graphics/radiopalette.py b/src/sugar/graphics/radiopalette.py index 743a45f9..b76ae4c4 100644 --- a/src/sugar/graphics/radiopalette.py +++ b/src/sugar/graphics/radiopalette.py @@ -88,12 +88,16 @@ class RadioPalette(Palette): self.top.show() self.set_content(self.top) - def append(self, button): + def append(self, button, label): children = self.top.get_children() + # palette's button should not have sub-palettes + button.palette = None + button.show() button.connect('clicked', self.__clicked_cb) self.top.pack_start(button, fill=False) + button.__palette_label = label if not children: self.__clicked_cb(button, True) @@ -106,7 +110,7 @@ class RadioPalette(Palette): if not button.get_active(): return - self.set_primary_text(button.props.tooltip) + self.set_primary_text(button.__palette_label) if not quiet: self.popdown(immediate=True)