[sugar] [PATCH] Try harder to resolve collisions in the mesh view.
Tomeu Vizoso
tomeu
Mon Jun 16 12:08:33 EDT 2008
On Mon, Jun 16, 2008 at 5:58 PM, Marco Pesenti Gritti
<mpgritti at gmail.com> wrote:
> On Mon, Jun 16, 2008 at 3:27 PM, Tomeu Vizoso <tomeu at tomeuvizoso.net> wrote:
>> Hi,
>>
>> this implements some missing pieces from the layout algorithm
>> specified by Eben. Icons don't move smoothly towards their new
>> position, though.
>
> + if rect.x + rect.width < self.width - 1 and \
> + rect.y + rect.height < self.height - 1:
> + new_rects.append(gtk.gdk.Rectangle(rect.x + 1, rect.y + 1,
> + rect.width, rect.height))
>
> A comment that you are handling diagonals would probably be useful.
Ok.
> if best_rect:
> - self._move_child(child, best_rect)
> + child.grid_rect = best_rect
> + weight = self._shift_child(child, weight)
>
> I'm not to understand this recursion. Is it supposed to keep shifting
> until it finds the best possible place?
It will shift until it stops improving, this was the bigger difference
with Eben's demo.
Thanks,
Tomeu
More information about the Sugar-devel
mailing list