# HG changeset patch # User chainsaw # Date 1134924986 28800 # Node ID 43e7cbbf77e1917e9aefbe9de4a1d77f59a44c75 # Parent 45a0d9a765be3e443b31d014aebbbe4d8e05e6f1 [svn] Convert to confdb usage. Squash most qualifier-related warnings. Remove pixmap/icon functionality. Eliminate dead code. diff -r 45a0d9a765be -r 43e7cbbf77e1 Plugins/Visualization/libvisual-proxy/config_gui.c --- a/Plugins/Visualization/libvisual-proxy/config_gui.c Sun Dec 18 07:03:56 2005 -0800 +++ b/Plugins/Visualization/libvisual-proxy/config_gui.c Sun Dec 18 08:56:26 2005 -0800 @@ -11,14 +11,6 @@ #include "config_gui.h" -#if 0 -static gchar *check_file_exists (const gchar *directory, const gchar *filename); -static GtkWidget *create_pixmap (GtkWidget *widget, const gchar *filename); -static GtkWidget *create_dummy_pixmap (GtkWidget *widget); -static GtkWidget* lookup_widget (GtkWidget *widget, const gchar *widget_name); -static void add_pixmap_directory (const gchar *directory); -#endif - ConfigWin *lv_bmp_config_gui_new (void) { ConfigWin *config_gui; @@ -61,10 +53,6 @@ tooltips = gtk_tooltips_new (); -#if 0 - add_pixmap_directory (PACKAGE_DATADIR); -#endif - window_main = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_object_set_data (GTK_OBJECT (window_main), "window_main", window_main); gtk_window_set_title (GTK_WINDOW (window_main), _("LibVisual Audacious Plugin")); @@ -336,139 +324,3 @@ return config_gui; } - -#if 0 -/* This is a dummy pixmap we use when a pixmap can't be found. */ -static char *dummy_pixmap_xpm[] = { -/* columns rows colors chars-per-pixel */ -"1 1 1 1", -" c None", -/* pixels */ -" " -}; - -static GtkWidget *create_dummy_pixmap (GtkWidget *widget) -{ - GdkColormap *colormap; - GdkPixmap *gdkpixmap; - GdkBitmap *mask; - GtkWidget *pixmap; - - colormap = gtk_widget_get_colormap (widget); - gdkpixmap = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap, &mask, - NULL, dummy_pixmap_xpm); - if (gdkpixmap == NULL) - g_error (_("Couldn't create replacement pixmap.")); - pixmap = gtk_pixmap_new (gdkpixmap, mask); - gdk_pixmap_unref (gdkpixmap); - gdk_bitmap_unref (mask); - return pixmap; -} -#endif - -#if 0 -static GList *pixmaps_directories = NULL; - -static void add_pixmap_directory (const gchar *directory) -{ - pixmaps_directories = g_list_prepend (pixmaps_directories, - g_strdup (directory)); -} -#endif - -#if 0 -static GtkWidget *create_pixmap (GtkWidget *widget, const gchar *filename) -{ - gchar *found_filename = NULL; - GdkColormap *colormap; - GdkPixmap *gdkpixmap; - GdkBitmap *mask; - GtkWidget *pixmap; - GList *elem; - - if (!filename || !filename[0]) - return create_dummy_pixmap (widget); - - /* We first try any pixmaps directories set by the application. */ - elem = pixmaps_directories; - while (elem) - { - found_filename = check_file_exists ((gchar*)elem->data, filename); - if (found_filename) - break; - elem = elem->next; - } - - /* If we haven't found the pixmap, try the source directory. */ - if (!found_filename) - { - found_filename = check_file_exists ("../pixmaps", filename); - } - - if (!found_filename) - { - g_warning (_("Couldn't find pixmap file: %s"), filename); - return create_dummy_pixmap (widget); - } - - colormap = gtk_widget_get_colormap (widget); - gdkpixmap = gdk_pixmap_colormap_create_from_xpm (NULL, colormap, &mask, - NULL, found_filename); - if (gdkpixmap == NULL) - { - g_warning (_("Error loading pixmap file: %s"), found_filename); - g_free (found_filename); - return create_dummy_pixmap (widget); - } - g_free (found_filename); - pixmap = gtk_pixmap_new (gdkpixmap, mask); - gdk_pixmap_unref (gdkpixmap); - gdk_bitmap_unref (mask); - return pixmap; -} -#endif - -#if 0 -static gchar *check_file_exists (const gchar *directory, const gchar *filename) -{ - gchar *full_filename; - struct stat s; - gint status; - - full_filename = (gchar*) g_malloc (strlen (directory) + 1 - + strlen (filename) + 1); - strcpy (full_filename, directory); - strcat (full_filename, G_DIR_SEPARATOR_S); - strcat (full_filename, filename); - - status = stat (full_filename, &s); - if (status == 0 && S_ISREG (s.st_mode)) - return full_filename; - g_free (full_filename); - return NULL; -} -#endif - -#if 0 -static GtkWidget* lookup_widget (GtkWidget *widget, const gchar *widget_name) -{ - GtkWidget *parent, *found_widget; - - for (;;) - { - if (GTK_IS_MENU (widget)) - parent = gtk_menu_get_attach_widget (GTK_MENU (widget)); - else - parent = widget->parent; - if (parent == NULL) - break; - widget = parent; - } - - found_widget = (GtkWidget*) gtk_object_get_data (GTK_OBJECT (widget), - widget_name); - if (!found_widget) - g_warning ("Widget not found: %s", widget_name); - return found_widget; -} -#endif diff -r 45a0d9a765be -r 43e7cbbf77e1 Plugins/Visualization/libvisual-proxy/lv_bmp_config.c --- a/Plugins/Visualization/libvisual-proxy/lv_bmp_config.c Sun Dec 18 07:03:56 2005 -0800 +++ b/Plugins/Visualization/libvisual-proxy/lv_bmp_config.c Sun Dec 18 08:56:26 2005 -0800 @@ -1,7 +1,7 @@ #include #include #include -#include +#include #include #include #include @@ -15,7 +15,7 @@ #define CONFIG_DEFAULT_INPUT_PLUGIN "esd" #define CONFIG_DEFAULT_MORPH_PLUGIN "alphablend" -static const Options default_options = { NULL, NULL, NULL, 320, 200, 30, 24, FALSE, FALSE, FALSE, TRUE, FALSE }; +static Options default_options = { NULL, NULL, NULL, 320, 200, 30, 24, FALSE, FALSE, FALSE, TRUE, FALSE }; static Options options = { NULL, NULL, NULL, -1, -1, -1, -1, FALSE, FALSE, FALSE, TRUE, FALSE }; static ConfigWin *config_win = NULL; @@ -55,7 +55,7 @@ static int load_actor_plugin_list (void); static int load_morph_plugin_list (void); -static void load_actor_plugin_enable_table (ConfigFile *f); +static void load_actor_plugin_enable_table (ConfigDb *db); static void remove_boolean (gpointer key, gpointer value, gpointer data); @@ -63,7 +63,7 @@ static void config_win_connect_callbacks (void); static void config_visual_initialize (void); -static gboolean read_config_file (ConfigFile *f); +static gboolean read_config_db (ConfigDb *db); static void dummy (GtkWidget *widget, gpointer data); @@ -75,7 +75,6 @@ actor_plugin_buffer = g_malloc0 (OPTIONS_MAX_NAME_LEN); options.last_plugin = actor_plugin_buffer; morph_plugin_buffer = g_malloc0 (OPTIONS_MAX_NAME_LEN); - options.icon_file = g_malloc0 (OPTIONS_MAX_ICON_PATH_LEN); config_visual_initialize (); @@ -94,8 +93,6 @@ g_free (actor_plugin_buffer); if (morph_plugin_buffer != NULL) g_free (morph_plugin_buffer); - if (options.icon_file != NULL) - g_free (options.icon_file); if (actor_plugin_table) { g_hash_table_destroy (actor_plugin_table); @@ -128,21 +125,20 @@ int lv_bmp_config_load_prefs () { gchar *vstr; - ConfigFile *f; + ConfigDb *db; gboolean errors; gboolean must_create_entry; gboolean must_update; GtkWidget *msg; - if ((f = xmms_cfg_open_default_file ()) == NULL) - return -1; + db = bmp_cfg_db_open(); errors = FALSE; must_create_entry = FALSE; must_update = FALSE; - if (xmms_cfg_read_string (f, "libvisual_bmp", "version", &vstr)) { + if (bmp_cfg_db_get_string (db, "libvisual", "version", &vstr)) { if (strcmp (vstr, VERSION) == 0) { - errors = read_config_file (f); + errors = read_config_db (db); if (errors) visual_log (VISUAL_LOG_INFO, "There are errors on config file"); } @@ -156,9 +152,9 @@ if (must_update || must_create_entry) set_defaults (); - load_actor_plugin_enable_table (f); + load_actor_plugin_enable_table (db); - xmms_cfg_free (f); + bmp_cfg_db_close(db); /* * Set our local copies @@ -213,70 +209,63 @@ static void save_actor_enable_state (gpointer data, gpointer user_data) { VisPluginRef *actor; - ConfigFile *f; + ConfigDb *db; gboolean *enable; actor = data; - f = user_data; + db = user_data; visual_log_return_if_fail (actor != NULL); visual_log_return_if_fail (actor->info != NULL); - visual_log_return_if_fail (f != NULL); + visual_log_return_if_fail (db != NULL); enable = g_hash_table_lookup (actor_plugin_enable_table, actor->info->plugname); if (!enable) { visual_log (VISUAL_LOG_DEBUG, "enable == NULL for %s", actor->info->plugname); return; } - xmms_cfg_write_boolean (f, "libvisual_bmp", actor->info->plugname, *enable); + bmp_cfg_db_set_bool (db, "libvisual", actor->info->plugname, *enable); } int lv_bmp_config_save_prefs () { - ConfigFile *f; + ConfigDb *db; - if((f = xmms_cfg_open_default_file ()) == NULL) - f = xmms_cfg_new (); - if (f == NULL) - return -1; + db = bmp_cfg_db_open(); - xmms_cfg_write_string (f, "libvisual_bmp", "version", VERSION); + bmp_cfg_db_set_string (db, "libvisual", "version", VERSION); if (options.last_plugin != NULL && (strlen(options.last_plugin) > 0)) - xmms_cfg_write_string (f, "libvisual_bmp", "last_plugin", GTK_SIGNAL_FUNC(options.last_plugin)); + bmp_cfg_db_set_string (db, "libvisual", "last_plugin", options.last_plugin); else - xmms_cfg_write_string (f, "libvisual_bmp", "last_plugin", CONFIG_DEFAULT_ACTOR_PLUGIN); + bmp_cfg_db_set_string (db, "libvisual", "last_plugin", CONFIG_DEFAULT_ACTOR_PLUGIN); if (options.morph_plugin != NULL && (strlen(options.morph_plugin) > 0)) - xmms_cfg_write_string (f, "libvisual_bmp", "morph_plugin", options.morph_plugin); + bmp_cfg_db_set_string (db, "libvisual", "morph_plugin", options.morph_plugin); else - xmms_cfg_write_string (f, "libvisual_bmp", "morph_plugin", CONFIG_DEFAULT_MORPH_PLUGIN); - xmms_cfg_write_boolean (f, "libvisual_bmp", "random_morph", options.random_morph); + bmp_cfg_db_set_string (db, "libvisual", "morph_plugin", CONFIG_DEFAULT_MORPH_PLUGIN); + bmp_cfg_db_set_bool (db, "libvisual", "random_morph", options.random_morph); - if (options.icon_file != NULL && (strlen(options.icon_file) > 0)) - xmms_cfg_write_string (f, "libvisual_bmp", "icon", options.icon_file); - - xmms_cfg_write_int (f, "libvisual_bmp", "width", options.width); - xmms_cfg_write_int (f, "libvisual_bmp", "height", options.height); - xmms_cfg_write_int (f, "libvisual_bmp", "color_depth", options.depth); - xmms_cfg_write_int (f, "libvisual_bmp", "fps", options.fps); - xmms_cfg_write_boolean (f, "libvisual_bmp", "fullscreen", options.fullscreen); + bmp_cfg_db_set_int (db, "libvisual", "width", options.width); + bmp_cfg_db_set_int (db, "libvisual", "height", options.height); + bmp_cfg_db_set_int (db, "libvisual", "color_depth", options.depth); + bmp_cfg_db_set_int (db, "libvisual", "fps", options.fps); + bmp_cfg_db_set_bool (db, "libvisual", "fullscreen", options.fullscreen); if (options.gl_plugins_only) - xmms_cfg_write_string (f, "libvisual_bmp", "enabled_plugins", "gl_only"); + bmp_cfg_db_set_string (db, "libvisual", "enabled_plugins", "gl_only"); else if (options.non_gl_plugins_only) - xmms_cfg_write_string (f, "libvisual_bmp", "enabled_plugins", "non_gl_only"); + bmp_cfg_db_set_string (db, "libvisual", "enabled_plugins", "non_gl_only"); else if (options.all_plugins_enabled) - xmms_cfg_write_string (f, "libvisual_bmp", "enabled_plugins", "all"); + bmp_cfg_db_set_string (db, "libvisual", "enabled_plugins", "all"); else g_warning ("Inconsistency on config module"); visual_log_return_val_if_fail (actor_plugins_gl != NULL, -1); - g_slist_foreach (actor_plugins_gl, save_actor_enable_state, f); - g_slist_foreach (actor_plugins_nongl, save_actor_enable_state, f); + g_slist_foreach (actor_plugins_gl, save_actor_enable_state, db); + g_slist_foreach (actor_plugins_nongl, save_actor_enable_state, db); - xmms_cfg_write_default_file (f); - xmms_cfg_free (f); + bmp_cfg_db_close(db); return 0; } @@ -290,7 +279,7 @@ fullscreen); } -const char *lv_bmp_config_get_prev_actor (void) +char *lv_bmp_config_get_prev_actor (void) { const gchar *prev_plugin; gboolean *plugin_enabled; @@ -314,7 +303,7 @@ return NULL; } -const char *lv_bmp_config_get_next_actor (void) +char *lv_bmp_config_get_next_actor (void) { const gchar *next_plugin; gboolean *plugin_enabled; @@ -338,14 +327,14 @@ return NULL; } -void lv_bmp_config_set_current_actor (const char *name) +void lv_bmp_config_set_current_actor (char *name) { visual_log_return_if_fail (name != NULL); options.last_plugin = name; } -const char *lv_bmp_config_morph_plugin (void) +char *lv_bmp_config_morph_plugin (void) { GSList *l; int i, pos; @@ -712,18 +701,18 @@ static void load_actor_enable_state (gpointer data, gpointer user_data) { - ConfigFile *config_file; + ConfigDb *db; VisPluginRef *actor; gboolean enabled, *b; actor = data; - config_file = user_data; + db = user_data; visual_log_return_if_fail (actor != NULL); visual_log_return_if_fail (actor->info != NULL); - visual_log_return_if_fail (config_file != NULL); + visual_log_return_if_fail (db != NULL); - if (!xmms_cfg_read_boolean (config_file, "libvisual_bmp", actor->info->plugname, &enabled)) + if (!bmp_cfg_db_get_bool (db, "libvisual", actor->info->plugname, &enabled)) enabled = TRUE; b = g_malloc (sizeof(gboolean)); @@ -731,16 +720,17 @@ g_hash_table_insert (actor_plugin_enable_table, actor->info->plugname, b); } -static void load_actor_plugin_enable_table (ConfigFile *f) +static void load_actor_plugin_enable_table (ConfigDb *db) { visual_log_return_if_fail (actor_plugins_nongl != NULL); visual_log_return_if_fail (actor_plugins_gl != NULL); + visual_log_return_if_fail (db != NULL); if (!actor_plugin_enable_table) actor_plugin_enable_table = g_hash_table_new (hash_function, hash_compare); - g_slist_foreach (actor_plugins_nongl, load_actor_enable_state, f); - g_slist_foreach (actor_plugins_gl, load_actor_enable_state, f); + g_slist_foreach (actor_plugins_nongl, load_actor_enable_state, db); + g_slist_foreach (actor_plugins_gl, load_actor_enable_state, db); } static void remove_boolean (gpointer key, gpointer value, gpointer data) @@ -754,7 +744,7 @@ GtkWidget *item/*, *olditem*/; VisPluginRef *actor; gchar *name; - const gchar *plugname; + gchar *plugname; gboolean *enabled; actor = data; @@ -1042,7 +1032,7 @@ if (!visual_is_initialized ()) { argv = g_malloc (sizeof(char*)); - argv[0] = g_strdup ("BMP plugin"); + argv[0] = g_strdup ("Libvisual"); argc = 1; if (visual_init (&argc, &argv) < 0) { msg = xmms_show_message (PACKAGE_NAME, @@ -1063,19 +1053,19 @@ { } -static gboolean read_config_file (ConfigFile *f) +static gboolean read_config_db (ConfigDb *db) { gchar *enabled_plugins; gboolean errors = FALSE; - if (!xmms_cfg_read_string (f, "libvisual_bmp", "last_plugin", &actor_plugin_buffer) + if (!bmp_cfg_db_get_string (db, "libvisual", "last_plugin", &actor_plugin_buffer) || (strlen (actor_plugin_buffer) <= 0)) { visual_log (VISUAL_LOG_DEBUG, "Error on last_plugin option"); strcpy (actor_plugin_buffer, CONFIG_DEFAULT_ACTOR_PLUGIN); errors = TRUE; } options.last_plugin = actor_plugin_buffer; - if (!xmms_cfg_read_string (f, "libvisual_bmp", "morph_plugin", &morph_plugin_buffer) + if (!bmp_cfg_db_get_string (db, "libvisual", "morph_plugin", &morph_plugin_buffer) || (strlen (morph_plugin_buffer) <= 0)) { visual_log (VISUAL_LOG_DEBUG, "Error on morph_plugin option"); strcpy (morph_plugin_buffer, CONFIG_DEFAULT_MORPH_PLUGIN); @@ -1083,43 +1073,38 @@ } morph_plugin = morph_plugin_buffer; options.morph_plugin = morph_plugin; - if (!xmms_cfg_read_boolean (f, "libvisual_bmp", "random_morph", &options.random_morph)) { + if (!bmp_cfg_db_get_bool (db, "libvisual", "random_morph", &options.random_morph)) { visual_log (VISUAL_LOG_DEBUG, "Error on random_morph option"); options.random_morph = default_options.random_morph; errors = TRUE; } - if (!xmms_cfg_read_string (f, "libvisual_bmp", "icon", &options.icon_file) - || (strlen (options.icon_file) <= 0)) { - visual_log (VISUAL_LOG_DEBUG, "Error on icon option"); - errors = TRUE; - } - if (!xmms_cfg_read_int (f, "libvisual_bmp", "width", &options.width) || options.width <= 0) { + if (!bmp_cfg_db_get_int (db, "libvisual", "width", &options.width) || options.width <= 0) { visual_log (VISUAL_LOG_DEBUG, "Error on width option"); options.width = default_options.width; errors = TRUE; } - if (!xmms_cfg_read_int (f, "libvisual_bmp", "height", &options.height) || options.height <= 0) { + if (!bmp_cfg_db_get_int (db, "libvisual", "height", &options.height) || options.height <= 0) { visual_log (VISUAL_LOG_DEBUG, "Error on height option"); options.height = default_options.height; errors = TRUE; } - if (!xmms_cfg_read_int (f, "libvisual_bmp", "fps", &options.fps) || options.fps <= 0) { + if (!bmp_cfg_db_get_int (db, "libvisual", "fps", &options.fps) || options.fps <= 0) { visual_log (VISUAL_LOG_DEBUG, "Error on fps option"); options.fps = default_options.fps; errors = TRUE; } - if (!xmms_cfg_read_int (f, "libvisual_bmp", "color_depth", &options.depth) || options.depth <= 0) { + if (!bmp_cfg_db_get_int (db, "libvisual", "color_depth", &options.depth) || options.depth <= 0) { visual_log (VISUAL_LOG_DEBUG, "Error on color_depth option"); options.depth = default_options.depth; errors = TRUE; } - if (!xmms_cfg_read_boolean (f, "libvisual_bmp", "fullscreen", &options.fullscreen)) { + if (!bmp_cfg_db_get_bool (db, "libvisual", "fullscreen", &options.fullscreen)) { visual_log (VISUAL_LOG_DEBUG, "Error on fullscreen option"); options.fullscreen = default_options.fullscreen; errors = TRUE; } enabled_plugins = g_malloc0 (OPTIONS_MAX_NAME_LEN); - if (!xmms_cfg_read_string (f, "libvisual_bmp", "enabled_plugins", &enabled_plugins) + if (!bmp_cfg_db_get_string (db, "libvisual", "enabled_plugins", &enabled_plugins) || (strlen (enabled_plugins) <= 0)) { visual_log (VISUAL_LOG_DEBUG, "Error on enabled_plugins option: %s", enabled_plugins); options.gl_plugins_only = default_options.gl_plugins_only; diff -r 45a0d9a765be -r 43e7cbbf77e1 Plugins/Visualization/libvisual-proxy/lv_bmp_config.h --- a/Plugins/Visualization/libvisual-proxy/lv_bmp_config.h Sun Dec 18 07:03:56 2005 -0800 +++ b/Plugins/Visualization/libvisual-proxy/lv_bmp_config.h Sun Dec 18 08:56:26 2005 -0800 @@ -14,7 +14,7 @@ */ typedef struct { - const gchar *last_plugin; /**< Name of the last plugin runned, + char *last_plugin; /**< Name of the last plugin runned, with length < OPTIONS_MAX_NAME_LEN. */ gchar *morph_plugin; /**< */ @@ -45,11 +45,11 @@ void lv_bmp_config_toggle_fullscreen (void); -const char *lv_bmp_config_get_next_actor (void); -const char *lv_bmp_config_get_prev_actor (void); -void lv_bmp_config_set_current_actor (const char *name); +char *lv_bmp_config_get_next_actor (void); +char *lv_bmp_config_get_prev_actor (void); +void lv_bmp_config_set_current_actor (char *name); -const char *lv_bmp_config_morph_plugin (void); +char *lv_bmp_config_morph_plugin (void); #endif /* __LV_BMP_CONFIG__ */ diff -r 45a0d9a765be -r 43e7cbbf77e1 Plugins/Visualization/libvisual-proxy/main.c --- a/Plugins/Visualization/libvisual-proxy/main.c Sun Dec 18 07:03:56 2005 -0800 +++ b/Plugins/Visualization/libvisual-proxy/main.c Sun Dec 18 08:56:26 2005 -0800 @@ -20,21 +20,21 @@ #include "lv_bmp_config.h" #include "about.h" -#define LV_XMMS_DEFAULT_INPUT_PLUGIN "esd" +#define LV_XMMS_DEFAULT_INPUT_PLUGIN "alsa" +#undef LV_XMMS_ENABLE_DEBUG /* SDL variables */ static SDL_Surface *screen = NULL; static SDL_Color sdlpal[256]; static SDL_Thread *render_thread; static SDL_mutex *pcm_mutex; -static SDL_Surface *icon; /* Libvisual and visualisation variables */ static VisVideo *video; static VisPalette *pal; static char song_name[1024]; -static const char *cur_lv_plugin = NULL; +static char *cur_lv_plugin = NULL; static VisBin *bin = NULL; @@ -121,12 +121,11 @@ g_free (argv); } -#if LV_XMMS_ENABLE_DEBUG +#ifdef LV_XMMS_ENABLE_DEBUG visual_log_set_verboseness (VISUAL_LOG_VERBOSENESS_HIGH); +#else + visual_log_set_verboseness (VISUAL_LOG_VERBOSENESS_NONE); #endif - /*g_print ("Trying to set verboseness\n"); - visual_log_set_verboseness (VISUAL_LOG_VERBOSENESS_LOW); - g_print ("Verboseness done\n");*/ options = lv_bmp_config_open (); if (!options) { @@ -147,12 +146,6 @@ return; } - icon = SDL_LoadBMP (options->icon_file); - if (icon) - SDL_WM_SetIcon (icon, NULL); - else - visual_log (VISUAL_LOG_WARNING, _("Cannot not load icon: %s"), SDL_GetError()); - pcm_mutex = SDL_CreateMutex (); if (strlen (options->last_plugin) <= 0 ) { @@ -209,9 +202,6 @@ visual_log (VISUAL_LOG_DEBUG, "closing config file"); lv_bmp_config_close (); - if (icon != NULL) - SDL_FreeSurface (icon); - visual_log (VISUAL_LOG_DEBUG, "destroying VisBin..."); visual_object_unref (VISUAL_OBJECT (bin)); @@ -522,7 +512,7 @@ { SDL_Event event; VisEventQueue *vevent; - const char *next_plugin; + char *next_plugin; while (SDL_PollEvent (&event)) { vevent = visual_plugin_get_eventqueue (visual_actor_get_plugin (visual_bin_get_actor (bin)));