Signal of a button dynamically created

2013-10-28 Thread Borja Mon Serrano
Hi, I'm building a popup window that has a Gtk::Grid inside it. The first row has a form with three Gtk::Entry and a button to add the information to the program. The rest of the rows has the items created before in that way (just with Gtk::Label) and a button to remove the information. Like

Re: Signal of a button dynamically created

2013-10-28 Thread fr33domlover
I'm not experienced but here's a quick idea: Create a new derived Button class which handles its own click by overriding the virtual method, and in that method it emits a signal which passes the button ID/row number as a parameter. Then listen to this signal from all buttons :-) :כתב Borja

Re: Signal of a button dynamically created

2013-10-28 Thread Colomban Wendling
Le 28/10/2013 16:22, Borja Mon Serrano a écrit : [...] The point here is: how can I know what button was pressed in order to remove a row? When you connect a handler to a signal, there is a data parameter, just pass in some info identifying the row through it:

RE: Signal of a button dynamically created

2013-10-28 Thread Jon Zabala Gutiérrez
I think the best thing you can do is associate a number when you connect the button response to a method like this: my_button.signal_clicked().connect(sigc::bind(sigc::mem_fun(*this, my_class::OnMyButtonClicked),iNumber)); The only thing you have to take into account is that the response

Re: GtkEntry ... change size

2013-10-28 Thread Michael Cronenworth
Mariano Gaudix wrote: I can not change the size to GtkEntry . I am using Gtk 3.6 . I need a GtkEntry small , for my graphic interface . GTK expands widgets to fill space by default so setting widget size has no visible effect. You need to disable expansion. I'll add a

Re: Signal of a button dynamically created

2013-10-28 Thread Michael Cronenworth
Borja Mon Serrano wrote: The point here is: how can I know what button was pressed in order to remove a row? You need to attach to the clicked signal on each button[1]. Each button could call a separate function or you can pass a pointer to different values to know which button is which.

Re: Signal of a button dynamically created

2013-10-28 Thread David Nečas
On Mon, Oct 28, 2013 at 04:22:38PM +0100, Borja Mon Serrano wrote: The point here is: how can I know what button was pressed in order to remove a row? (a) by passing something that identifies the button within user_data when you do g_signal_connect... (b) using something along the lines of

Re: Signal of a button dynamically created

2013-10-28 Thread Borja Mon Serrano
Thank you all guys, you're incredible! :) I've finally implemented the Jon Zabala's answer, I think it's the easiest. Thank you again!! ___ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org

Re: GtkEntry ... change size

2013-10-28 Thread Mariano Gaudix
¿ how I disable expansion ? I used the sentences . gtk_widget_set_vexpand (GTK_WIDGET(entry ) , FALSE ) ; gtk_widget_set_hexpand (GTK_WIDGET(entry ) , FALSE ) ; But these sentencesdon't run . 2013/10/28 Michael Cronenworth m...@cchtml.com Mariano Gaudix wrote: I can not change

Re: GtkEntry ... change size

2013-10-28 Thread Michael Cronenworth
Mariano Gaudix wrote: ¿ how I disable expansion ? I used the sentences . gtk_widget_set_vexpand (GTK_WIDGET(entry ) , FALSE ) ; gtk_widget_set_hexpand (GTK_WIDGET(entry ) , FALSE ) ; But these sentencesdon't run . I know those are the new GTK3 functions, but I still mainly use

Re: GtkEntry ... change size

2013-10-28 Thread Michael Cronenworth
On 10/28/2013 08:55 PM, Mariano Gaudix wrote: The GtkEntry continuous big . gtk_box_set_child_packing( GTK_BOX( box ), entry,FALSE, TRUE, 0, GTK_PACK_START ); the sentence don't work . You need a widget adjacent to your entry to take up the space you don't want filled by your entry...