Mercurial > audlegacy
comparison src/audacious/ui_skinned_playlist_slider.c @ 4195:2281da647da9
beggining of GdkPixbuf transition
author | Tomasz Mon <desowin@gmail.com> |
---|---|
date | Sat, 19 Jan 2008 06:03:03 +0100 |
parents | 9d4b5cdae3ba |
children | 47352b34dbdf |
comparison
equal
deleted
inserted
replaced
4191:3d8b2bbcb555 | 4195:2281da647da9 |
---|---|
215 | 215 |
216 UiSkinnedPlaylistSlider *ps = UI_SKINNED_PLAYLIST_SLIDER (widget); | 216 UiSkinnedPlaylistSlider *ps = UI_SKINNED_PLAYLIST_SLIDER (widget); |
217 UiSkinnedPlaylistSliderPrivate *priv = UI_SKINNED_PLAYLIST_SLIDER_GET_PRIVATE(ps); | 217 UiSkinnedPlaylistSliderPrivate *priv = UI_SKINNED_PLAYLIST_SLIDER_GET_PRIVATE(ps); |
218 g_return_val_if_fail (priv->width > 0 && priv->height > 0, FALSE); | 218 g_return_val_if_fail (priv->width > 0 && priv->height > 0, FALSE); |
219 | 219 |
220 GdkPixmap *obj = NULL; | 220 GdkPixbuf *obj = NULL; |
221 GdkGC *gc; | 221 obj = gdk_pixbuf_new(GDK_COLORSPACE_RGB, TRUE, 8, priv->width, priv->height); |
222 | |
223 obj = gdk_pixmap_new(NULL, priv->width, priv->height, gdk_rgb_get_visual()->depth); | |
224 gc = gdk_gc_new(obj); | |
225 | 222 |
226 gint num_visible; | 223 gint num_visible; |
227 num_visible = playlistwin_list_get_visible_count(); | 224 num_visible = playlistwin_list_get_visible_count(); |
228 | 225 |
229 | 226 |
242 priv->prev_y = y; | 239 priv->prev_y = y; |
243 | 240 |
244 /* FIXME: uses bmp_active_skin->pixmaps directly and may need calibration */ | 241 /* FIXME: uses bmp_active_skin->pixmaps directly and may need calibration */ |
245 /* drawing background */ | 242 /* drawing background */ |
246 gint c; | 243 gint c; |
247 for (c = 0; c <= priv->height / 29; c++) { | 244 for (c = 0; c < priv->height / 29; c++) { |
248 gdk_draw_drawable(obj, gc, bmp_active_skin->pixmaps[SKIN_PLEDIT].pixmap, | 245 gdk_pixbuf_copy_area(bmp_active_skin->pixmaps[SKIN_PLEDIT].pixbuf, |
249 36, 42, 0, c*29, priv->width, 29); | 246 36, 42, priv->width, 29, obj, 0, c*29); |
250 } | 247 } |
251 | 248 |
252 /* drawing knob */ | 249 /* drawing knob */ |
253 skin_draw_pixmap(widget, bmp_active_skin, obj, gc, priv->skin_index, ps->pressed ? 61 : 52, 53, 0, y, priv->width, 18); | 250 skin_draw_pixbuf(widget, bmp_active_skin, obj, priv->skin_index, ps->pressed ? 61 : 52, 53, 0, y, priv->width, 18); |
254 | 251 |
255 gdk_draw_drawable(widget->window, gc, obj, 0, 0, 0, 0, priv->width, priv->height); | 252 gdk_draw_pixbuf(widget->window, NULL, obj, 0, 0, 0, 0, priv->width, priv->height, GDK_RGB_DITHER_NONE, 0, 0); |
256 g_object_unref(obj); | 253 g_object_unref(obj); |
257 g_object_unref(gc); | |
258 | 254 |
259 return FALSE; | 255 return FALSE; |
260 } | 256 } |
261 | 257 |
262 static void ui_skinned_playlist_slider_set_position(GtkWidget *widget, gint y) { | 258 static void ui_skinned_playlist_slider_set_position(GtkWidget *widget, gint y) { |