static void
widget_destroy_cb(GtkWidget* widget,
                  gpointer udata)
{
    GtPlayerBackendMpvOpenGL* self = GT_PLAYER_BACKEND_MPV_OPENGL(udata);
    GtPlayerBackendMpvOpenGLPrivate* priv = gt_player_backend_mpv_opengl_get_instance_private(self);

    gtk_widget_destroyed(widget, &priv->widget);
}
예제 #2
0
파일: main.cpp 프로젝트: flocke/sterm
static void main_exit_cb(GtkWidget *i_widget, GtkWidget** i_destroy) {
  if ( first ) {
    if ( i_destroy != NULL )
      gtk_widget_destroyed(i_widget, i_destroy);

    gtk_main_quit();
    first = false;
  }
}
예제 #3
0
gint gw_window_box_about_destroy ( GtkWindow *w, GtkWidget **self_window)
{
	gint result = -1;


#ifdef GW_DEBUG_GUI_COMPONENT
                g_print ( "*** GW - %s (%d) :: %s()\n", __FILE__, __LINE__, __PRETTY_FUNCTION__);
#endif

	if ( (w != NULL) && ( self_window != NULL) )
	{
		gtk_widget_destroyed ( GTK_WIDGET ( w), self_window);

		result = 0;
	}

	return result;
}
예제 #4
0
static void close_chatbox(GtkWidget *widget, gpointer data) {
	chatbox_t *chatbox;
	ifreechat_t *ifc;
	GtkWidget *p;
	pthread_mutex_t *lock;

	chatbox = (chatbox_t*)data;
	ifc = (ifreechat_t*)chatbox->ifreechat;
	gtk_widget_destroyed(chatbox->window, &p);
	if (p != NULL) {
		gtk_widget_destroy(chatbox->window);
	}
	if (chatbox->type == PCHATBOX) {
		lock = &(ifc->pchatbox_lock);
	} else {
		lock = &(ifc->gchatbox_lock);
	}

	pthread_mutex_lock(lock);
	dlist_del(&(chatbox->chatbox_node));
	pthread_mutex_unlock(lock);
	free(chatbox);
}
예제 #5
0
static void rc_ui_settings_window_destroy_cb(GtkWidget *widget, gpointer data)
{
    RCUiSettingsPrivate *priv = &settings_priv;
    gtk_widget_destroyed(priv->settings_window, &(priv->settings_window));
}