Mercurial > audlegacy
diff src/audacious/ui_main.c @ 3042:01ae56759d15
mainwin_sposition is now UiSkinnedHorizontalSlider
author | Tomasz Mon <desowin@gmail.com> |
---|---|
date | Thu, 12 Jul 2007 12:50:52 +0200 |
parents | 067e0186623a |
children | 464ae313343c 91df04ec5ef7 |
line wrap: on
line diff
--- a/src/audacious/ui_main.c Thu Jul 12 12:26:54 2007 +0200 +++ b/src/audacious/ui_main.c Thu Jul 12 12:50:52 2007 +0200 @@ -150,7 +150,7 @@ GtkWidget *mainwin_vis; SVis *mainwin_svis; -HSlider *mainwin_sposition = NULL; +GtkWidget *mainwin_sposition = NULL; static MenuRow *mainwin_menurow; static HSlider *mainwin_volume, *mainwin_balance; @@ -282,13 +282,13 @@ ui_skinned_textbox_set_scroll(mainwin_info, FALSE); if (playback_get_playing()) { - widget_show(WIDGET(mainwin_sposition)); + gtk_widget_show(mainwin_sposition); gtk_widget_show(mainwin_stime_min); gtk_widget_show(mainwin_stime_sec); } else { - widget_hide(WIDGET(mainwin_sposition)); + gtk_widget_hide(mainwin_sposition); gtk_widget_hide(mainwin_stime_min); gtk_widget_hide(mainwin_stime_sec); } @@ -312,14 +312,15 @@ gtk_widget_hide(mainwin_stime_min); gtk_widget_hide(mainwin_stime_sec); - widget_hide(WIDGET(mainwin_sposition)); - - if (playback_get_playing() && !GTK_WIDGET_VISIBLE(mainwin_minus_num)) { + gtk_widget_hide(mainwin_sposition); + + if (playback_get_playing()) { gtk_widget_show(mainwin_minus_num); gtk_widget_show(mainwin_10min_num); gtk_widget_show(mainwin_min_num); gtk_widget_show(mainwin_10sec_num); gtk_widget_show(mainwin_sec_num); + gtk_widget_show(mainwin_position); } ui_skinned_textbox_set_scroll(mainwin_info, cfg.autoscroll); @@ -897,15 +898,6 @@ if (!playback_get_paused() && mainwin_playstatus != NULL) playstatus_set_status(mainwin_playstatus, STATUS_PLAY); - if (playlist_get_current_length(playlist) != -1) { - if (cfg.player_shaded) - widget_show(WIDGET(mainwin_sposition)); - } - else { - widget_hide(WIDGET(mainwin_sposition)); - mainwin_force_redraw = TRUE; - } - if (bmp_active_skin && bmp_active_skin->properties.mainwin_othertext == TRUE) { @@ -950,7 +942,7 @@ playback_set_sample_params(0, 0, 0); UI_SKINNED_HORIZONTAL_SLIDER(mainwin_position)->pressed = FALSE; - mainwin_sposition->hs_pressed = FALSE; + UI_SKINNED_HORIZONTAL_SLIDER(mainwin_sposition)->pressed = FALSE; /* clear sampling parameter displays */ ui_skinned_textbox_set_text(mainwin_rate_text, " "); @@ -971,7 +963,7 @@ gtk_widget_hide(mainwin_stime_sec); gtk_widget_hide(mainwin_position); - widget_hide(WIDGET(mainwin_sposition)); + gtk_widget_hide(mainwin_sposition); gtk_widget_hide(mainwin_othertext); @@ -987,14 +979,7 @@ return; gtk_widget_hide(mainwin_position); - - /* - * We dont call draw_main_window() here so this will not - * remove them visually. It will only prevent us from sending - * any seek calls to the input plugin before the input plugin - * calls ->set_info(). - */ - widget_hide(WIDGET(mainwin_sposition)); + gtk_widget_hide(mainwin_sposition); } static gboolean @@ -1704,21 +1689,22 @@ mainwin_spos_frame_cb(gint pos) { if (mainwin_sposition) { + gint x = 0; if (pos < 6) - mainwin_sposition->hs_knob_nx = mainwin_sposition->hs_knob_px = - 17; + x = 17; else if (pos < 9) - mainwin_sposition->hs_knob_nx = mainwin_sposition->hs_knob_px = - 20; + x = 20; else - mainwin_sposition->hs_knob_nx = mainwin_sposition->hs_knob_px = - 23; + x = 23; + + UI_SKINNED_HORIZONTAL_SLIDER(mainwin_sposition)->knob_nx = x; + UI_SKINNED_HORIZONTAL_SLIDER(mainwin_sposition)->knob_px = x; } return 1; } void -mainwin_spos_motion_cb(gint pos) +mainwin_spos_motion_cb(GtkWidget *widget, gint pos) { gint time; gchar *time_msg; @@ -1746,7 +1732,7 @@ } void -mainwin_spos_release_cb(gint pos) +mainwin_spos_release_cb(GtkWidget *widget, gint pos) { playback_seek(((playlist_get_current_length(playlist_get_active()) / 1000) * (pos - 1)) / 12); @@ -2867,16 +2853,16 @@ mainwin_svis = create_svis(&mainwin_wlist, mainwin_bg, SKINNED_WINDOW(mainwin)->gc, 79, 5); mainwin_position = ui_skinned_horizontal_slider_new(SKINNED_WINDOW(mainwin)->fixed, 16, 72, 248, - 10, 248, 0, 278, 0, 29, 10, 10, 0, 0, 219, NULL, SKIN_POSBAR); + 10, 248, 0, 278, 0, 29, 10, 10, 0, 0, 219, + NULL, SKIN_POSBAR); g_signal_connect(mainwin_position, "motion", G_CALLBACK(mainwin_position_motion_cb), NULL); g_signal_connect(mainwin_position, "release", G_CALLBACK(mainwin_position_release_cb), NULL); - mainwin_sposition = - create_hslider(&mainwin_wlist, mainwin_bg, SKINNED_WINDOW(mainwin)->gc, 226, 4, 17, - 7, 17, 36, 17, 36, 3, 7, 36, 0, 1, 13, - mainwin_spos_frame_cb, mainwin_spos_motion_cb, - mainwin_spos_release_cb, SKIN_TITLEBAR); - widget_hide(WIDGET(mainwin_sposition)); + mainwin_sposition = ui_skinned_horizontal_slider_new(SKINNED_WINDOW(mainwin)->fixed, 226, 4, 17, + 7, 17, 36, 17, 36, 3, 7, 36, 0, 1, 13, + mainwin_spos_frame_cb, SKIN_TITLEBAR); + g_signal_connect(mainwin_sposition, "motion", G_CALLBACK(mainwin_spos_motion_cb), NULL); + g_signal_connect(mainwin_sposition, "release", G_CALLBACK(mainwin_spos_release_cb), NULL); mainwin_stime_min = ui_skinned_textbox_new(SKINNED_WINDOW(mainwin)->fixed, 130, 4, 15, FALSE, SKIN_TEXT); g_signal_connect(mainwin_stime_min, "clicked", change_timer_mode, NULL); @@ -2904,8 +2890,6 @@ ui_skinned_window_widgetlist_associate(mainwin, WIDGET(mainwin_playstatus)); ui_skinned_window_widgetlist_associate(mainwin, WIDGET(mainwin_svis)); - - ui_skinned_window_widgetlist_associate(mainwin, WIDGET(mainwin_sposition)); } static void @@ -2994,6 +2978,7 @@ gtk_widget_hide(mainwin_othertext); gtk_widget_hide(mainwin_position); + gtk_widget_hide(mainwin_sposition); if (bmp_active_skin->properties.mainwin_vis_visible) gtk_widget_show(mainwin_vis); @@ -3052,7 +3037,7 @@ ui_skinned_number_set_number(mainwin_10sec_num, (t / 10) % 6); ui_skinned_number_set_number(mainwin_sec_num, t % 10); - if (!mainwin_sposition->hs_pressed) { + if (!UI_SKINNED_HORIZONTAL_SLIDER(mainwin_sposition)->pressed) { gchar *time_str; time_str = g_strdup_printf("%c%2.2d", stime_prefix, t / 60); @@ -3069,18 +3054,18 @@ if (length > 0) { if (time > length) { ui_skinned_horizontal_slider_set_position(mainwin_position, 219); - hslider_set_position(mainwin_sposition, 13); + ui_skinned_horizontal_slider_set_position(mainwin_sposition, 13); } /* update the slider position ONLY if there is not a seek in progress */ else if (seek_state == MAINWIN_SEEK_NIL) { ui_skinned_horizontal_slider_set_position(mainwin_position, (time * 219) / length); - hslider_set_position(mainwin_sposition, + ui_skinned_horizontal_slider_set_position(mainwin_sposition, ((time * 12) / length) + 1); } } else { ui_skinned_horizontal_slider_set_position(mainwin_position, 0); - hslider_set_position(mainwin_sposition, 1); + ui_skinned_horizontal_slider_set_position(mainwin_sposition, 1); } return TRUE;