The problem is that i'm using a class to create this new window. In my
main.cpp I have this:

  gtk_signal_connect_object (GTK_OBJECT(button), "clicked",
                             GTK_SIGNAL_FUNC(create_param_window), 
                             GTK_OBJECT (window));


And the callback create_param_window look like this:ç

void create_param_window(GtkWidget *widget)
{
  ParamWindow* NewParamWindow = new ParamWindow(widget);
  gtk_widget_show(NewParamWindow->GetWidget()); 
}

(With GtkWidget* GetWidget() { return _pwindow; } in my ParamWindow.h )

And it's the constructor of the ParamWindow class who makes
        _pwindow = gtk_window_new (GTK_WINDOW_TOPLEVEL);

So, I want to create only one "ParamWindow" when THIS button is clicked,
but maybe I want to create later another window using my ParamWindow
class for any other purpose.
Is there anyway to do this? It's quite important for the project I'm
working in.

Thanks,

Ignacio Nodal


> ----- Original Message -----
> From: Dugas, Alan <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>; Ignacio Nodal <[EMAIL PROTECTED]>
> Sent: Thursday, February 22, 2001 4:39 PM
> Subject: RE: Avoiding multiple child-windows
>
>
> You could try something like this;
>
> /* Declaring local variables */
> static GtkWidget *window = NULL;
> ...
>
> /* Return if window already exists */
> if ( window )
> {
> gdk_window_raise(GTK_WIDGET(window)->window);
> return;
> }
>
> /* Creating window */
> window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
> ...
>
> [Note: make sure you set window == NULL in your destroy callback for the
> window,
> otherwise you will not be able to create the window again if the user
> destroys
> it!]
>
> Hope this helps.
>
>
>
> -- Stupid Genius


_______________________________________________
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list

Reply via email to