[prev in list] [next in list] [prev in thread] [next in thread]
List: gtk-app-devel
Subject: Re: Can put a GtkLayout in a GtkListBox
From: Cédric Bellegarde <gnumdk () gmail ! com>
Date: 2014-11-05 17:00:16
Message-ID: 1415206816.1506.0 () smtp ! gmail ! com
[Download RAW message or body]
Ok, just need to add an eventbox...
regards,
--
Cédric
Le mer. 5 nov. 2014 Ã 14:41, Cedric Bellegarde <gnumdk@gmail.com> a
écrit :
> Ok, so here another question...
>
> I want to implement drag and drop in a gtklistbox.
>
> If i add buttons to gtklistbox, set button as drag source, it works.
>
> If i add complex widgets to gtklistbox, as my container (gtkgrid)
> doesn't have a window, it fails to be a drag source.
>
> That's why i'm looking for a container with a window (and tried with
> GtkLayout)
>
> https://wiki.gnome.org/GnomeLove/DragNDropTutorial
> "Note that these GTK+ widgets must have an associated X Window, check
> using GTK_WIDGET_NO_WINDOW(widget))."
>
> any idea?
>
> regards
> --
> Cédric Bellegarde
>
> Le mer. 5 nov. 2014 Ã 13:28, Tristan Van Berkom
> <tristan@upstairslabs.com> a écrit :
>> On Wed, 2014-11-05 at 13:08 +0100, Cedric Bellegarde wrote:
>>> Hello, in this code, adding a layout to a GtkListBox do not show
>>> layout
>>> content :(
>>>
>>> What am i missing?
>>>
>>
>> A GtkLayout is like a GtkViewport which you can place widgets at
>> specific locations and draw on etc, it has the special property
>> that it does not require space (typically it's used in a scrolled
>> window).
>>
>> The reason you would not see the label would be that the layout
>> does not have any specific size request and as such does not get
>> allocated any space, so anything packed inside it would be clipped
>> away from view.
>>
>> Cheers,
>> -Tristan
>>
>>> regards,
>>>
>>> from gi.repository import Gtk
>>>
>>> class mywindow(Gtk.Window):
>>>
>>> def __init__(self):
>>> Gtk.Window.__init__(self, title="Hello")
>>> box = Gtk.ListBox()
>>> label = Gtk.Label("Hello")
>>> label2 = Gtk.Label("Hello2")
>>> layout = Gtk.Layout()
>>> layout.put(label, 0, 0)
>>> box.add(layout)
>>> box.add(label2)
>>> self.add(box)
>>>
>>> win = mywindow()
>>> win.connect("delete-event", Gtk.main_quit)
>>> win.show_all()
>>> win.resize(300, 300)
>>> Gtk.main()
>>>
>>> --
>>> Cédric Bellegarde
>>> _______________________________________________
>>> gtk-app-devel-list mailing list
>>> gtk-app-devel-list@gnome.org
>>> https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
>>
>>
_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic