GtkSignalFunc issues



Hi all,

I am the maintainer of GNU Denemo and have a question about
using GtkSignalFunc's  in the program we have the following code
for making sure that a changed file is destroyed without the users
knowledge.

The confirmbox function is called using the following

confirmbox ((struct scoreinfo *)callback_data, GTK_SIGNAL_FUNC (file_open));

where file_open is of  the form 

void file_open (GtkWidget * widget, gpointer callback_data)

void confirmbox (struct scoreinfo *si, GtkSignalFunc signalfunc)
{
  if (si->haschanged)
    {
[SNIP]
 gtk_signal_connect (GTK_OBJECT (yes), "clicked",
                          GTK_SIGNAL_FUNC (signalfunc), si);
[SNIP]
  else
    signalfunc (/*NULL, si*/);
}

My question is when I compile it with g++3 the arguments to signalfunc have
to be commented out  but with g++2.95/96 they do not??

The error that I get with g++3.0 is too many arguments to function,  when I
try to cast it to GtkSignalFunc I get

cannot convert `signalfunc()' from type `void' to type `void (*)()'


Adam
--
Maintainer GNU Denemo
http://denemo.sourceforge.net

-------------------------------------------------------



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]