// headers
// ----------------------------------------------------------------------------
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma implementation "toplevel.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
XFree(wm_hints);
}
-static gint gtk_frame_urgency_timer_callback( GtkWidget *win )
+static gint gtk_frame_urgency_timer_callback( wxTopLevelWindowGTK *win )
{
#if defined(__WXGTK20__) && GTK_CHECK_VERSION(2,7,0)
if(!gtk_check_version(2,7,0))
- gtk_window_set_urgency_hint(GTK_WINDOW( win ), FALSE);
+ gtk_window_set_urgency_hint(GTK_WINDOW( win->m_widget ), FALSE);
else
#endif
- wxgtk_window_set_urgency_hint(GTK_WINDOW( win ), FALSE);
+ wxgtk_window_set_urgency_hint(GTK_WINDOW( win->m_widget ), FALSE);
- //BCI: argument from GtkWidget* to wxTopLevelWindowGTK* && win->m_urgency_hint = -2;
- gtk_object_set_data(GTK_OBJECT(win), "m_urgency_hint", GINT_TO_POINTER(-2));
+ win->m_urgency_hint = -2;
return FALSE;
}
}
// wxPrintf( wxT("active: %s\n"), win->GetTitle().c_str() );
// MR: wxRequestUserAttention related block
- //BCI: switch(win->m_urgency_hint)
- switch( GPOINTER_TO_INT(gtk_object_get_data( GTK_OBJECT(widget), "m_urgency_hint") ) )
+ switch( win->m_urgency_hint )
{
default:
- //BCI:
- gtk_timeout_remove( GPOINTER_TO_INT(gtk_object_get_data( GTK_OBJECT(widget), "m_urgency_hint") ) );
+ gtk_timeout_remove( win->m_urgency_hint );
// no break, fallthrough to remove hint too
case -1:
#if defined(__WXGTK20__) && GTK_CHECK_VERSION(2,7,0)
wxgtk_window_set_urgency_hint(GTK_WINDOW( widget ), FALSE);
}
- //BCI: win->m_urgency_hint = -2;
- gtk_object_set_data( GTK_OBJECT(widget), "m_urgency_hint", GINT_TO_POINTER(-2) );
+ win->m_urgency_hint = -2;
break;
case -2: break;
m_gdkDecor = m_gdkFunc = 0;
m_grabbed = false;
- //BCI: header wx/gtk/toplevel.h:
- // private gtk_timeout_add result for mimicing wxUSER_ATTENTION_INFO and
- // wxUSER_ATTENTION_ERROR difference, -2 for no hint, -1 for ERROR hint, rest for GtkTimeout handle.
- // int m_urgency_hint;
-
- //BCI: m_urgency_hint = -2;
+ m_urgency_hint = -2;
}
bool wxTopLevelWindowGTK::Create( wxWindow *parent,
}
}
- // BCI:
- gtk_object_set_data( GTK_OBJECT(m_widget), "m_urgency_hint", GINT_TO_POINTER(-2) );
-
wxWindow *topParent = wxGetTopLevelParent(m_parent);
if (topParent && (((GTK_IS_WINDOW(topParent->m_widget)) &&
(GetExtraStyle() & wxTOPLEVEL_EX_DIALOG)) ||
gtk_signal_connect( GTK_OBJECT(m_widget), "realize",
GTK_SIGNAL_FUNC(gtk_frame_realized_callback), (gpointer) this );
- // the only way to get the window size is to connect to this event
- gtk_signal_connect( GTK_OBJECT(m_widget), "configure_event",
- GTK_SIGNAL_FUNC(gtk_frame_configure_callback), (gpointer)this );
-
// map and unmap for iconized state
gtk_signal_connect( GTK_OBJECT(m_widget), "map_event",
GTK_SIGNAL_FUNC(gtk_frame_map_callback), (gpointer)this );
// wxYieldIfNeeded ensures the processing of it, but can have unwanted side effects - MR
::wxYieldIfNeeded();
- /*BCI:
if(m_urgency_hint >= 0)
gtk_timeout_remove(m_urgency_hint);
- */
- int urgency_hint = GPOINTER_TO_INT( gtk_object_get_data( GTK_OBJECT(m_widget), "m_urgency_hint") );
- if(urgency_hint >= 0)
- gtk_timeout_remove(urgency_hint);
- //BCI: END
- //BCI: m_urgency_hint = -2;
- gtk_object_set_data( GTK_OBJECT(m_widget), "m_urgency_hint", GINT_TO_POINTER(-2));
+ m_urgency_hint = -2;
if( GTK_WIDGET_REALIZED(m_widget) && !IsActive() )
{
if (flags & wxUSER_ATTENTION_INFO)
{
- //BCI: m_urgency_hint = gtk_timeout_add(5000, (GtkFunction)gtk_frame_urgency_timer_callback, this);
- gtk_object_set_data( GTK_OBJECT(m_widget), "m_urgency_hint",
- GINT_TO_POINTER( gtk_timeout_add(5000,
- (GtkFunction)gtk_frame_urgency_timer_callback,
- m_widget) ) );
+ m_urgency_hint = gtk_timeout_add(5000, (GtkFunction)gtk_frame_urgency_timer_callback, this);
} else {
- //BCI: m_urgency_hint = -1;
- gtk_object_set_data( GTK_OBJECT(m_widget), "m_urgency_hint", GINT_TO_POINTER(-1) );
+ m_urgency_hint = -1;
}
}