# HG changeset patch # User Tomasz Mon # Date 1211305272 -7200 # Node ID c9e40418a74c526525d4ee507a5cbbf5f2050ec3 # Parent 294232665cb0f6186e2e7a32cf1a78e061ab1a0a use plugin's own config diff -r 294232665cb0 -r c9e40418a74c src/skins/skins_cfg.c --- a/src/skins/skins_cfg.c Tue May 20 16:34:06 2008 +0200 +++ b/src/skins/skins_cfg.c Tue May 20 19:41:12 2008 +0200 @@ -40,6 +40,8 @@ .dim_titlebar = TRUE, .show_wm_decorations = FALSE, .easy_move = TRUE, + .allow_broken_skins = FALSE, + .disable_inline_gtk = FALSE, .timer_mode = 0, .vis_type = VIS_ANALYZER, .analyzer_mode = ANALYZER_NORMAL, @@ -65,6 +67,7 @@ .snap_distance = 10, .snap_windows = TRUE, .save_window_position = TRUE, + .analyzer_peaks = TRUE, }; typedef struct skins_cfg_boolent_t { @@ -84,8 +87,11 @@ {"dim_titlebar", &config.dim_titlebar, TRUE}, {"show_wm_decorations", &config.show_wm_decorations, TRUE}, {"easy_move", &config.easy_move, TRUE}, + {"allow_broken_skins", &config.allow_broken_skins, TRUE}, + {"disable_inline_gtk", &config.disable_inline_gtk, TRUE}, {"snap_windows", &config.snap_windows, TRUE}, {"save_window_positions", &config.save_window_position, TRUE}, + {"analyzer_peaks", &config.analyzer_peaks, TRUE}, }; static gint ncfgbent = G_N_ELEMENTS(skins_boolents); diff -r 294232665cb0 -r c9e40418a74c src/skins/skins_cfg.h --- a/src/skins/skins_cfg.h Tue May 20 16:34:06 2008 +0200 +++ b/src/skins/skins_cfg.h Tue May 20 19:41:12 2008 +0200 @@ -34,7 +34,7 @@ typedef struct { - gint player_x, player_y; + gint player_x, player_y; gint equalizer_x, equalizer_y; gint playlist_x, playlist_y; gint playlist_width, playlist_height; @@ -49,6 +49,9 @@ gboolean dim_titlebar; gboolean show_wm_decorations; gboolean easy_move; + gboolean allow_broken_skins; + gboolean disable_inline_gtk; + gboolean analyzer_peaks; gint timer_mode; gint vis_type; gint analyzer_mode, analyzer_type; diff -r 294232665cb0 -r c9e40418a74c src/skins/ui_skin.c --- a/src/skins/ui_skin.c Tue May 20 16:34:06 2008 +0200 +++ b/src/skins/ui_skin.c Tue May 20 19:41:12 2008 +0200 @@ -407,7 +407,7 @@ pm = &skin->pixmaps[id]; GdkPixbuf *pix = gdk_pixbuf_new_from_file(filename, NULL); - pm->pixbuf = audacious_create_colorized_pixbuf(pix, aud_cfg->colorize_r, aud_cfg->colorize_g, aud_cfg->colorize_b); + pm->pixbuf = audacious_create_colorized_pixbuf(pix, config.colorize_r, aud_cfg->colorize_g, aud_cfg->colorize_b); g_object_unref(pix); pm->width = gdk_pixbuf_get_width(pm->pixbuf); pm->height = gdk_pixbuf_get_height(pm->pixbuf); @@ -552,7 +552,7 @@ } } #if 0 - if (aud_cfg->random_skin_on_play) + if (config.random_skin_on_play) skinlist_update(); #endif return TRUE; @@ -1305,10 +1305,10 @@ gpoints = g_new(GdkPoint, g_array_index(num, gint, i)); for (k = 0; k < g_array_index(num, gint, i); k++) { gpoints[k].x = - g_array_index(point, gint, j + k * 2) * (scale ? aud_cfg->scale_factor : 1 ); + g_array_index(point, gint, j + k * 2) * (scale ? config.scale_factor : 1 ); gpoints[k].y = g_array_index(point, gint, - j + k * 2 + 1) * (scale ? aud_cfg->scale_factor : 1); + j + k * 2 + 1) * (scale ? config.scale_factor : 1); } j += k * 2; gdk_draw_polygon(mask, gc, TRUE, gpoints, @@ -1411,7 +1411,7 @@ AUDDBG("Loading pixmaps in %s\n", path); for (i = 0; i < SKIN_PIXMAP_COUNT; i++) - if (!skin_load_pixmap_id(skin, i, path) && !aud_cfg->allow_broken_skins) + if (!skin_load_pixmap_id(skin, i, path) && !config.allow_broken_skins) return FALSE; text_pb = skin->pixmaps[SKIN_TEXT].pixbuf; @@ -1527,7 +1527,7 @@ } // Check if skin path has all necessary files. - if (!aud_cfg->allow_broken_skins && !skin_check_pixmaps(skin, skin_path)) { + if (!config.allow_broken_skins && !skin_check_pixmaps(skin, skin_path)) { if(archive) del_directory(skin_path); g_free(skin_path); AUDDBG("Skin path (%s) doesn't have all wanted pixmaps\n", skin_path); @@ -1565,7 +1565,7 @@ } #ifndef _WIN32 - if (!aud_cfg->disable_inline_gtk && !archive) { + if (!config.disable_inline_gtk && !archive) { gtkrcpath = find_path_recursively(skin->path, "gtkrc"); if (gtkrcpath != NULL) skin_set_gtk_theme(settings, skin); @@ -1576,9 +1576,9 @@ if(archive) del_directory(skin_path); g_free(skin_path); - gtk_widget_shape_combine_mask(mainwin, skin_get_mask(aud_active_skin, SKIN_MASK_MAIN + aud_cfg->player_shaded), 0, 0); + gtk_widget_shape_combine_mask(mainwin, skin_get_mask(aud_active_skin, SKIN_MASK_MAIN + config.player_shaded), 0, 0); #if 0 - gtk_widget_shape_combine_mask(equalizerwin, skin_get_mask(aud_active_skin, SKIN_MASK_EQ + aud_cfg->equalizer_shaded), 0, 0); + gtk_widget_shape_combine_mask(equalizerwin, skin_get_mask(aud_active_skin, SKIN_MASK_EQ + config.equalizer_shaded), 0, 0); #endif return TRUE; } @@ -1683,7 +1683,7 @@ g_return_val_if_fail(skin != NULL, NULL); g_return_val_if_fail(mi < SKIN_PIXMAP_COUNT, NULL); - masks = aud_cfg->scaled ? skin->scaled_masks : skin->masks; + masks = config.scaled ? skin->scaled_masks : skin->masks; return masks[mi]; } @@ -2056,8 +2056,8 @@ g_return_if_fail(obj != NULL); if (scale) { - GdkPixbuf *image = gdk_pixbuf_scale_simple(obj, width * aud_cfg->scale_factor, height* aud_cfg->scale_factor, GDK_INTERP_NEAREST); - gdk_draw_pixbuf(widget->window, NULL, image, 0, 0, 0, 0, width * aud_cfg->scale_factor , height * aud_cfg->scale_factor, GDK_RGB_DITHER_NONE, 0, 0); + GdkPixbuf *image = gdk_pixbuf_scale_simple(obj, width * config.scale_factor, height* aud_cfg->scale_factor, GDK_INTERP_NEAREST); + gdk_draw_pixbuf(widget->window, NULL, image, 0, 0, 0, 0, width * config.scale_factor , height * aud_cfg->scale_factor, GDK_RGB_DITHER_NONE, 0, 0); g_object_unref(image); } else { gdk_draw_pixbuf(widget->window, NULL, obj, 0, 0, 0, 0, width, height, GDK_RGB_DITHER_NONE, 0, 0); diff -r 294232665cb0 -r c9e40418a74c src/skins/ui_skinned_window.c --- a/src/skins/ui_skinned_window.c Tue May 20 16:34:06 2008 +0200 +++ b/src/skins/ui_skinned_window.c Tue May 20 19:41:12 2008 +0200 @@ -136,7 +136,7 @@ case WINDOW_PLAYLIST: #if 0 width = playlistwin_get_width(); - height = aud_cfg->playlist_height; + height = config.playlist_height; #endif break; default: @@ -149,7 +149,7 @@ switch (window->type) { case WINDOW_MAIN: skin_draw_pixbuf(widget, aud_active_skin, obj,SKIN_MAIN, 0, 0, 0, 0, width, height); - skin_draw_mainwin_titlebar(aud_active_skin, obj, config.player_shaded, focus || !aud_cfg->dim_titlebar); + skin_draw_mainwin_titlebar(aud_active_skin, obj, config.player_shaded, focus || !config.dim_titlebar); break; case WINDOW_EQ: skin_draw_pixbuf(widget, aud_active_skin, obj, SKIN_EQMAIN, 0, 0, 0, 0, width, height); @@ -170,7 +170,7 @@ if (config.playlist_shaded) { skin_draw_playlistwin_shaded(aud_active_skin, obj, width, focus); } else { - skin_draw_playlistwin_frame(aud_active_skin, obj, width, aud_cfg->playlist_height, focus); + skin_draw_playlistwin_frame(aud_active_skin, obj, width, config.playlist_height, focus); } break; } diff -r 294232665cb0 -r c9e40418a74c src/skins/ui_svis.c --- a/src/skins/ui_svis.c Tue May 20 16:34:06 2008 +0200 +++ b/src/skins/ui_svis.c Tue May 20 19:41:12 2008 +0200 @@ -28,6 +28,7 @@ #include "ui_svis.h" #include "ui_vis.h" #include "util.h" +#include "skins_cfg.h" #include #include #include @@ -240,16 +241,16 @@ static void ui_svis_size_request(GtkWidget *widget, GtkRequisition *requisition) { UiSVis *svis = UI_SVIS(widget); - requisition->width = svis->width * (svis->scaled ? aud_cfg->scale_factor : 1); - requisition->height = svis->height*(svis->scaled ? aud_cfg->scale_factor : 1); + requisition->width = svis->width * (svis->scaled ? config.scale_factor : 1); + requisition->height = svis->height*(svis->scaled ? config.scale_factor : 1); } static void ui_svis_size_allocate(GtkWidget *widget, GtkAllocation *allocation) { UiSVis *svis = UI_SVIS (widget); widget->allocation = *allocation; - widget->allocation.x *= (svis->scaled ? aud_cfg->scale_factor : 1 ); - widget->allocation.y *= (svis->scaled ? aud_cfg->scale_factor : 1); + widget->allocation.x *= (svis->scaled ? config.scale_factor : 1 ); + widget->allocation.y *= (svis->scaled ? config.scale_factor : 1); if (GTK_WIDGET_REALIZED (widget)) { if (svis->event_window != NULL) @@ -258,8 +259,8 @@ gdk_window_move_resize(widget->window, widget->allocation.x, widget->allocation.y, allocation->width, allocation->height); } - svis->x = widget->allocation.x/(svis->scaled ? aud_cfg->scale_factor : 1); - svis->y = widget->allocation.y/(svis->scaled ? aud_cfg->scale_factor : 1); + svis->x = widget->allocation.x/(svis->scaled ? config.scale_factor : 1); + svis->y = widget->allocation.y/(svis->scaled ? config.scale_factor : 1); } static gboolean ui_svis_expose(GtkWidget *widget, GdkEventExpose *event) { @@ -288,11 +289,11 @@ } cmap = gdk_rgb_cmap_new(colors, 24); - if (!aud_cfg->scaled) { + if (!config.scaled) { memset(rgb_data, 0, SVIS_WIDTH * SVIS_HEIGHT); - if (aud_cfg->vis_type == VIS_ANALYZER && !audacious_drct_get_paused() && audacious_drct_get_playing()){ + if (config.vis_type == VIS_ANALYZER && !audacious_drct_get_paused() && audacious_drct_get_playing()){ for(y=0; y < SVIS_HEIGHT; y++){ - if (aud_cfg->analyzer_type == ANALYZER_BARS){ + if (config.analyzer_type == ANALYZER_BARS){ for(x=0;x< SVIS_WIDTH; x++){ if(svis->data[x] > y << 1) { @@ -312,8 +313,8 @@ } } } - else if (aud_cfg->vis_type == VIS_VOICEPRINT){ - switch (aud_cfg->vu_mode) { + else if (config.vis_type == VIS_VOICEPRINT){ + switch (config.vu_mode) { case VU_NORMAL: for (y = 0; y < 2; y++) { ptr = rgb_data + ((y * 3) * 38); @@ -341,7 +342,7 @@ break; } } - else if (aud_cfg->vis_type == VIS_SCOPE) { + else if (config.vis_type == VIS_SCOPE) { for (x = 0; x < 38; x++) { h = svis->data[x << 1] / 3; ptr = rgb_data + ((4 - h) * 38) + x; @@ -352,10 +353,10 @@ } else { /*svis scaling, this needs some work, since a lot of stuff is hardcoded --majeru*/ - memset(rgb_data, 0, SVIS_WIDTH * aud_cfg->scale_factor * SVIS_HEIGHT * aud_cfg->scale_factor); - if (aud_cfg->vis_type == VIS_ANALYZER && !audacious_drct_get_paused() && audacious_drct_get_playing()){ + memset(rgb_data, 0, SVIS_WIDTH * config.scale_factor * SVIS_HEIGHT * aud_cfg->scale_factor); + if (config.vis_type == VIS_ANALYZER && !audacious_drct_get_paused() && audacious_drct_get_playing()){ for(y=0; y < SVIS_HEIGHT; y++){ - if (aud_cfg->analyzer_type == ANALYZER_BARS){ + if (config.analyzer_type == ANALYZER_BARS){ for(x=0;x< SVIS_WIDTH; x++){ if(svis->data[x] > y << 1) { @@ -376,8 +377,8 @@ } } } - else if (aud_cfg->vis_type == VIS_VOICEPRINT){ - switch (aud_cfg->vu_mode) { + else if (config.vis_type == VIS_VOICEPRINT){ + switch (config.vu_mode) { case VU_NORMAL: for (y = 0; y < 2; y++) { ptr = rgb_data + ((y * 3) * 152); @@ -405,7 +406,7 @@ break; } } - else if (aud_cfg->vis_type == VIS_SCOPE) { + else if (config.vis_type == VIS_SCOPE) { for (x = 0; x < 38; x++) { h = svis->data[x << 1] / 3; ptr = rgb_data + ((4 - h) * 152) + (x << 1); @@ -421,8 +422,8 @@ GdkPixmap *obj = NULL; GdkGC *gc; - obj = gdk_pixmap_new(NULL, svis->width* ( svis->scaled ? aud_cfg->scale_factor : 1), - svis->height*(svis->scaled ? aud_cfg->scale_factor : 1), gdk_rgb_get_visual()->depth); + obj = gdk_pixmap_new(NULL, svis->width* ( svis->scaled ? config.scale_factor : 1), + svis->height*(svis->scaled ? config.scale_factor : 1), gdk_rgb_get_visual()->depth); gc = gdk_gc_new(obj); if (!svis->scaled) { @@ -439,8 +440,8 @@ gdk_rgb_cmap_free(cmap); gdk_draw_drawable (widget->window, gc, obj, 0, 0, 0, 0, - svis->width*(svis->scaled ? aud_cfg->scale_factor : 1), - svis->height*(svis->scaled ? aud_cfg->scale_factor : 1)); + svis->width*(svis->scaled ? config.scale_factor : 1), + svis->height*(svis->scaled ? config.scale_factor : 1)); g_object_unref(obj); g_object_unref(gc); @@ -451,7 +452,7 @@ GtkWidget *widget = GTK_WIDGET (svis); svis->scaled = !svis->scaled; - gtk_widget_set_size_request(widget, svis->width* aud_cfg->scale_factor, svis->height * aud_cfg->scale_factor); + gtk_widget_set_size_request(widget, svis->width* config.scale_factor, svis->height * aud_cfg->scale_factor); gtk_widget_queue_draw(widget); } @@ -490,7 +491,7 @@ UiSVis *svis = UI_SVIS (widget); for (i = 0; i < 75; i++) { - svis->data[i] = (aud_cfg->vis_type == VIS_SCOPE) ? 6 : 0; + svis->data[i] = (config.vis_type == VIS_SCOPE) ? 6 : 0; } } @@ -512,7 +513,7 @@ } - if (aud_cfg->vis_type == VIS_VOICEPRINT) { + if (config.vis_type == VIS_VOICEPRINT) { if (micros > 14000) falloff = TRUE; @@ -538,7 +539,7 @@ if (micros > 14000) { if (!svis->refresh_delay) { gtk_widget_queue_draw(widget); - svis->refresh_delay = svis_redraw_delays[aud_cfg->vis_refresh]; + svis->refresh_delay = svis_redraw_delays[config.vis_refresh]; } svis->refresh_delay--; } diff -r 294232665cb0 -r c9e40418a74c src/skins/ui_vis.c --- a/src/skins/ui_vis.c Tue May 20 16:34:06 2008 +0200 +++ b/src/skins/ui_vis.c Tue May 20 19:41:12 2008 +0200 @@ -27,6 +27,7 @@ #include "ui_skin.h" #include "ui_vis.h" #include "util.h" +#include "skins_cfg.h" #include static const gfloat vis_afalloff_speeds[] = { 0.34, 0.5, 1.0, 1.3, 1.6 }; @@ -224,16 +225,16 @@ static void ui_vis_size_request(GtkWidget *widget, GtkRequisition *requisition) { UiVis *vis = UI_VIS(widget); - requisition->width = vis->width*(vis->scaled ? aud_cfg->scale_factor : 1); - requisition->height = vis->height*(vis->scaled ? aud_cfg->scale_factor : 1); + requisition->width = vis->width*(vis->scaled ? config.scale_factor : 1); + requisition->height = vis->height*(vis->scaled ? config.scale_factor : 1); } static void ui_vis_size_allocate(GtkWidget *widget, GtkAllocation *allocation) { UiVis *vis = UI_VIS (widget); widget->allocation = *allocation; - widget->allocation.x *= (vis->scaled ? aud_cfg->scale_factor : 1); - widget->allocation.y *= (vis->scaled ? aud_cfg->scale_factor : 1); + widget->allocation.x *= (vis->scaled ? config.scale_factor : 1); + widget->allocation.y *= (vis->scaled ? config.scale_factor : 1); if (GTK_WIDGET_REALIZED (widget)) { if (vis->event_window != NULL) @@ -242,8 +243,8 @@ gdk_window_move_resize(widget->window, widget->allocation.x, widget->allocation.y, allocation->width, allocation->height); } - vis->x = widget->allocation.x/(vis->scaled ? aud_cfg->scale_factor : 1); - vis->y = widget->allocation.y/(vis->scaled ? aud_cfg->scale_factor : 1); + vis->x = widget->allocation.x/(vis->scaled ? config.scale_factor : 1); + vis->y = widget->allocation.y/(vis->scaled ? config.scale_factor : 1); } static gboolean ui_vis_expose(GtkWidget *widget, GdkEventExpose *event) { @@ -277,7 +278,7 @@ cmap = gdk_rgb_cmap_new(colors, 24); if (!vis->scaled) { - if(aud_cfg->vis_type == VIS_VOICEPRINT /*&& aud_cfg->voiceprint_mode != VOICEPRINT_NORMAL*/){ + if(config.vis_type == VIS_VOICEPRINT /*&& aud_cfg->voiceprint_mode != VOICEPRINT_NORMAL*/){ memset(rgb_data, 0, 76 * 16 * 3); } else{ @@ -290,33 +291,33 @@ } } else{ - if(aud_cfg->vis_type == VIS_VOICEPRINT /*&& aud_cfg->voiceprint_mode != VOICEPRINT_NORMAL*/){ + if(config.vis_type == VIS_VOICEPRINT /*&& aud_cfg->voiceprint_mode != VOICEPRINT_NORMAL*/){ memset(rgb_data, 0, 3 * 4 * 16 * 76); } else{ - memset(rgb_data, 0, (guint)(76 * aud_cfg->scale_factor) * 32); + memset(rgb_data, 0, (guint)(76 * config.scale_factor) * 32); for (y = 1; y < 16; y += 2) { - ptr = rgb_data + (y * (guint)(76 * 4 * aud_cfg->scale_factor)); + ptr = rgb_data + (y * (guint)(76 * 4 * config.scale_factor)); for (x = 0; x < 76; x += 2, ptr += 4) { *ptr = 1; *(ptr + 1) = 1; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = 1; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = 1; + *(ptr + (guint)(76 * config.scale_factor)) = 1; + *(ptr + (guint)(76 * config.scale_factor)+1) = 1; } } } } - if (aud_cfg->vis_type == VIS_ANALYZER) { + if (config.vis_type == VIS_ANALYZER) { for (x = 0; x < 75; x++) { - if (aud_cfg->analyzer_type == ANALYZER_BARS && (x % 4) == 0) + if (config.analyzer_type == ANALYZER_BARS && (x % 4) == 0) h = vis->data[x >> 2]; - else if (aud_cfg->analyzer_type == ANALYZER_LINES) + else if (config.analyzer_type == ANALYZER_LINES) h = vis->data[x]; - if (h && (aud_cfg->analyzer_type == ANALYZER_LINES || + if (h && (config.analyzer_type == ANALYZER_LINES || (x % 4) != 3)) { if (!vis->scaled) { ptr = rgb_data + ((16 - h) * 76) + x; - switch (aud_cfg->analyzer_mode) { + switch (config.analyzer_mode) { case ANALYZER_NORMAL: for (y = 0; y < h; y++, ptr += 76) *ptr = 18 - h + y; @@ -332,30 +333,30 @@ } } else{ - ptr = rgb_data + ((16 - h) * (guint)(76 * 4 * aud_cfg->scale_factor)) + (guint)(x * aud_cfg->scale_factor); - switch (aud_cfg->analyzer_mode) { + ptr = rgb_data + ((16 - h) * (guint)(76 * 4 * config.scale_factor)) + (guint)(x * aud_cfg->scale_factor); + switch (config.analyzer_mode) { case ANALYZER_NORMAL: - for (y = 0; y < h; y++, ptr += (guint)(76 * 4 * aud_cfg->scale_factor)) { + for (y = 0; y < h; y++, ptr += (guint)(76 * 4 * config.scale_factor)) { *ptr = 18 - h + y; *(ptr + 1) = 18 - h + y; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = 18 - h + y; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = 18 - h + y; + *(ptr + (guint)(76 * config.scale_factor)) = 18 - h + y; + *(ptr + (guint)(76 * config.scale_factor)+1) = 18 - h + y; } break; case ANALYZER_FIRE: - for (y = 0; y < h; y++, ptr += (guint)(76 * 4 * aud_cfg->scale_factor)) { + for (y = 0; y < h; y++, ptr += (guint)(76 * 4 * config.scale_factor)) { *ptr = y + 2; *(ptr + 1) = y + 2; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = y + 2; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = y + 2; + *(ptr + (guint)(76 * config.scale_factor)) = y + 2; + *(ptr + (guint)(76 * config.scale_factor)+1) = y + 2; } break; case ANALYZER_VLINES: - for (y = 0; y < h; y++, ptr += (guint)(76 * 4 * aud_cfg->scale_factor)) { + for (y = 0; y < h; y++, ptr += (guint)(76 * 4 * config.scale_factor)) { *ptr = 18 - h; *(ptr + 1) = 18 - h; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = 18 - h; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = 18 - h; + *(ptr + (guint)(76 * config.scale_factor)) = 18 - h; + *(ptr + (guint)(76 * config.scale_factor)+1) = 18 - h; } break; @@ -363,29 +364,29 @@ } } } - if (aud_cfg->analyzer_peaks) { + if (config.analyzer_peaks) { for (x = 0; x < 75; x++) { - if (aud_cfg->analyzer_type == ANALYZER_BARS && (x % 4) == 0) + if (config.analyzer_type == ANALYZER_BARS && (x % 4) == 0) h = vis->peak[x >> 2]; - else if (aud_cfg->analyzer_type == ANALYZER_LINES) + else if (config.analyzer_type == ANALYZER_LINES) h = vis->peak[x]; - if (h && (aud_cfg->analyzer_type == ANALYZER_LINES || (x % 4) != 3)){ + if (h && (config.analyzer_type == ANALYZER_LINES || (x % 4) != 3)){ if (!vis->scaled) { rgb_data[(16 - h) * 76 + x] = 23; } else{ - ptr = rgb_data + (16 - h) * (guint)(76 * 4 * aud_cfg->scale_factor) + (guint)(x * aud_cfg->scale_factor); + ptr = rgb_data + (16 - h) * (guint)(76 * 4 * config.scale_factor) + (guint)(x * aud_cfg->scale_factor); *ptr = 23; *(ptr + 1) = 23; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = 23; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = 23; + *(ptr + (guint)(76 * config.scale_factor)) = 23; + *(ptr + (guint)(76 * config.scale_factor)+1) = 23; } } } } } - else if (aud_cfg->vis_type == VIS_VOICEPRINT) { + else if (config.vis_type == VIS_VOICEPRINT) { if(!audacious_drct_get_paused() && audacious_drct_get_playing()){/*Don't scroll when it's paused or stopped*/ for (y = 0; y < 16; y ++) for (x = 75; x > 0; x--) @@ -394,7 +395,7 @@ voiceprint_data[y * 76] = vis->data[y]; } if(audacious_drct_get_playing()){ /*Only draw the data if we're playing*/ - if(aud_cfg->voiceprint_mode == VOICEPRINT_NORMAL){ + if(config.voiceprint_mode == VOICEPRINT_NORMAL){ /* Create color gradient from the skin's background- and foreground color*/ fgc = skin_get_color(aud_active_skin, SKIN_TEXTFG); bgc = skin_get_color(aud_active_skin, SKIN_TEXTBG); @@ -424,12 +425,12 @@ for (x = 0; x < 76; x++){ guint8 d = voiceprint_data[x + y*76]; - if(aud_cfg->voiceprint_mode == VOICEPRINT_NORMAL){ + if(config.voiceprint_mode == VOICEPRINT_NORMAL){ voice_c[0] = vis_voice_color[d][0]; voice_c[1] = vis_voice_color[d][1]; voice_c[2] = vis_voice_color[d][2]; } - else if(aud_cfg->voiceprint_mode == VOICEPRINT_FIRE){ + else if(config.voiceprint_mode == VOICEPRINT_FIRE){ voice_c[0] = d < 64 ? (d * 2) : 255; voice_c[1] = d < 64 ? 0 : (d < 128 ? (d-64) * 2 : 255); voice_c[2] = d < 128 ? 0 : (d-128) * 2; @@ -439,7 +440,7 @@ voice_c[2] = d < 64 ? d << 2 : (d < 128 ? (128 - d) << 2 : 0); */ } - else if(aud_cfg->voiceprint_mode == VOICEPRINT_ICE){ + else if(config.voiceprint_mode == VOICEPRINT_ICE){ voice_c[0] = d; voice_c[1] = d < 128 ? d * 2 : 255; voice_c[2] = d < 64 ? d * 4 : 255; @@ -449,33 +450,33 @@ rgb_data[x * 3 + y * 76*3+n] = voice_c[n]; } else{ - ptr = rgb_data + (guint)(x * 3 * aud_cfg->scale_factor) + (guint) (y * 76 * 3 * aud_cfg->scale_factor); + ptr = rgb_data + (guint)(x * 3 * config.scale_factor) + (guint) (y * 76 * 3 * aud_cfg->scale_factor); for(n=0;n<3;n++) { *(ptr + n) = voice_c[n]; *(ptr + n + 3) = voice_c[n]; - *(ptr + (guint)(n + 76 * aud_cfg->scale_factor * 3)) = voice_c[n]; - *(ptr + (guint)(n + 3 + 76 * aud_cfg->scale_factor * 3)) = voice_c[n]; + *(ptr + (guint)(n + 76 * config.scale_factor * 3)) = voice_c[n]; + *(ptr + (guint)(n + 3 + 76 * config.scale_factor * 3)) = voice_c[n]; } } } } } } - if (aud_cfg->vis_type == VIS_SCOPE) { + if (config.vis_type == VIS_SCOPE) { for (x = 0; x < 75; x++) { - switch (aud_cfg->scope_mode) { + switch (config.scope_mode) { case SCOPE_DOT: h = vis->data[x]; if (!vis->scaled) { ptr = rgb_data + ((14 - h) * 76) + x; *ptr = vis_scope_colors[h + 1]; }else{ - ptr = rgb_data + ((14 - h) * (guint)(76 * 4 * aud_cfg->scale_factor)) + (guint)(x * aud_cfg->scale_factor); + ptr = rgb_data + ((14 - h) * (guint)(76 * 4 * config.scale_factor)) + (guint)(x * aud_cfg->scale_factor); *ptr = vis_scope_colors[h + 1]; *(ptr + 1) = vis_scope_colors[h + 1]; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = vis_scope_colors[h + 1]; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = vis_scope_colors[h + 1]; + *(ptr + (guint)(76 * config.scale_factor)) = vis_scope_colors[h + 1]; + *(ptr + (guint)(76 * config.scale_factor)+1) = vis_scope_colors[h + 1]; } break; case SCOPE_LINE: @@ -493,12 +494,12 @@ *ptr = vis_scope_colors[y - 2]; } else{ - ptr = rgb_data + (h * (guint)(76 * 4 * aud_cfg->scale_factor)) + (guint)(x * aud_cfg->scale_factor); - for (y = h; y <= h2; y++, ptr += (guint)(76 * 4 * aud_cfg->scale_factor)) { + ptr = rgb_data + (h * (guint)(76 * 4 * config.scale_factor)) + (guint)(x * aud_cfg->scale_factor); + for (y = h; y <= h2; y++, ptr += (guint)(76 * 4 * config.scale_factor)) { *ptr = vis_scope_colors[y - 2]; *(ptr + 1) = vis_scope_colors[y - 2]; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = vis_scope_colors[y - 2]; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = vis_scope_colors[y - 2]; + *(ptr + (guint)(76 * config.scale_factor)) = vis_scope_colors[y - 2]; + *(ptr + (guint)(76 * config.scale_factor)+1) = vis_scope_colors[y - 2]; } } } @@ -508,11 +509,11 @@ ptr = rgb_data + (h * 76) + x; *ptr = vis_scope_colors[h + 1]; }else{ - ptr = rgb_data + (h * (guint)(76 * 4 * aud_cfg->scale_factor)) + (guint)(x * aud_cfg->scale_factor); + ptr = rgb_data + (h * (guint)(76 * 4 * config.scale_factor)) + (guint)(x * aud_cfg->scale_factor); *ptr = vis_scope_colors[h + 1]; *(ptr + 1) = vis_scope_colors[h + 1]; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = vis_scope_colors[h + 1]; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = vis_scope_colors[h + 1]; + *(ptr + (guint)(76 * config.scale_factor)) = vis_scope_colors[h + 1]; + *(ptr + (guint)(76 * config.scale_factor)+1) = vis_scope_colors[h + 1]; } } break; @@ -530,12 +531,12 @@ for (y = h; y <= h2; y++, ptr += 76) *ptr = c; }else{ - ptr = rgb_data + (h * (guint)(76 * 4 * aud_cfg->scale_factor)) + (guint)(x * aud_cfg->scale_factor); - for (y = h; y <= h2; y++, ptr += (guint)(76 * 4 * aud_cfg->scale_factor)) { + ptr = rgb_data + (h * (guint)(76 * 4 * config.scale_factor)) + (guint)(x * aud_cfg->scale_factor); + for (y = h; y <= h2; y++, ptr += (guint)(76 * 4 * config.scale_factor)) { *ptr = c; *(ptr + 1) = c; - *(ptr + (guint)(76 * aud_cfg->scale_factor)) = c; - *(ptr + (guint)(76 * aud_cfg->scale_factor)+1) = c; + *(ptr + (guint)(76 * config.scale_factor)) = c; + *(ptr + (guint)(76 * config.scale_factor)+1) = c; } } break; @@ -545,11 +546,11 @@ GdkPixmap *obj = NULL; GdkGC *gc; - obj = gdk_pixmap_new(NULL, vis->width*(vis->scaled ? aud_cfg->scale_factor : 1), vis->height*(vis->scaled ? aud_cfg->scale_factor : 1), gdk_rgb_get_visual()->depth); + obj = gdk_pixmap_new(NULL, vis->width*(vis->scaled ? config.scale_factor : 1), vis->height*(vis->scaled ? aud_cfg->scale_factor : 1), gdk_rgb_get_visual()->depth); gc = gdk_gc_new(obj); if (!vis->scaled) { - if (aud_cfg->vis_type == VIS_VOICEPRINT) { + if (config.vis_type == VIS_VOICEPRINT) { gdk_draw_rgb_image(obj, gc, 0, 0, vis->width, vis->height, GDK_RGB_DITHER_NORMAL, (guchar *) rgb_data, 76 * 3); @@ -559,7 +560,7 @@ 76 , cmap); } } else { - if (aud_cfg->vis_type == VIS_VOICEPRINT) { + if (config.vis_type == VIS_VOICEPRINT) { gdk_draw_rgb_image(obj, gc, 0 << 1, 0 << 1, vis->width << 1, vis->height << 1, GDK_RGB_DITHER_NONE, (guchar *) rgb_data, @@ -573,7 +574,7 @@ } gdk_draw_drawable (widget->window, gc, obj, 0, 0, 0, 0, - vis->width*(vis->scaled ? aud_cfg->scale_factor : 1), vis->height*(vis->scaled ? aud_cfg->scale_factor : 1)); + vis->width*(vis->scaled ? config.scale_factor : 1), vis->height*(vis->scaled ? aud_cfg->scale_factor : 1)); g_object_unref(obj); g_object_unref(gc); gdk_rgb_cmap_free(cmap); @@ -584,7 +585,7 @@ GtkWidget *widget = GTK_WIDGET (vis); vis->scaled = !vis->scaled; - gtk_widget_set_size_request(widget, vis->width*(vis->scaled ? aud_cfg->scale_factor : 1), vis->height*(vis->scaled ? aud_cfg->scale_factor : 1)); + gtk_widget_set_size_request(widget, vis->width*(vis->scaled ? config.scale_factor : 1), vis->height*(vis->scaled ? aud_cfg->scale_factor : 1)); gtk_widget_queue_draw(GTK_WIDGET(vis)); } @@ -635,7 +636,7 @@ memset(voiceprint_data, 0, 16*76); for (i = 0; i < 75; i++) { - vis->data[i] = (aud_cfg->vis_type == VIS_SCOPE) ? 6 : 0; + vis->data[i] = (config.vis_type == VIS_SCOPE) ? 6 : 0; vis->peak[i] = 0; } } @@ -656,7 +657,7 @@ if (micros > 14000) g_timer_reset(timer); } - if (aud_cfg->vis_type == VIS_ANALYZER) { + if (config.vis_type == VIS_ANALYZER) { if (micros > 14000) falloff = TRUE; if (data || falloff) { @@ -671,7 +672,7 @@ else if (vis->peak[i] > 0.0) { vis->peak[i] -= vis->peak_speed[i]; vis->peak_speed[i] *= - vis_pfalloff_speeds[aud_cfg->peaks_falloff]; + vis_pfalloff_speeds[config.peaks_falloff]; if (vis->peak[i] < vis->data[i]) vis->peak[i] = vis->data[i]; if (vis->peak[i] < 0.0) @@ -681,14 +682,14 @@ else if (falloff) { if (vis->data[i] > 0.0) { vis->data[i] -= - vis_afalloff_speeds[aud_cfg->analyzer_falloff]; + vis_afalloff_speeds[config.analyzer_falloff]; if (vis->data[i] < 0.0) vis->data[i] = 0.0; } if (vis->peak[i] > 0.0) { vis->peak[i] -= vis->peak_speed[i]; vis->peak_speed[i] *= - vis_pfalloff_speeds[aud_cfg->peaks_falloff]; + vis_pfalloff_speeds[config.peaks_falloff]; if (vis->peak[i] < vis->data[i]) vis->peak[i] = vis->data[i]; if (vis->peak[i] < 0.0) @@ -698,7 +699,7 @@ } } } - else if (aud_cfg->vis_type == VIS_VOICEPRINT && data){ + else if (config.vis_type == VIS_VOICEPRINT && data){ for(i = 0; i < 16; i++) { vis->data[i] = data[15 - i]; @@ -712,7 +713,7 @@ if (micros > 14000) { if (!vis->refresh_delay) { gtk_widget_queue_draw(widget); - vis->refresh_delay = vis_redraw_delays[aud_cfg->vis_refresh]; + vis->refresh_delay = vis_redraw_delays[config.vis_refresh]; } vis->refresh_delay--; }