Example #1
0
/** 
* @brief Copy part of display
* 
* @param display gui_diaplay instance
* @param rect    rectangle to copy
* @param img
* 
* @return 
*/
wg_status
gui_display_copy(Gui_display *display, Wg_rect *rect, Wg_image *img)
{
    wg_uchar *buffer = NULL;
    Wg_image image;
    Wg_image rect_image;
    wg_uint width  = 0;
    wg_uint height = 0;
    cam_status status = CAM_FAILURE;

    gdk_threads_enter();

    width  = gdk_pixbuf_get_width(display->pixbuf);
    height = gdk_pixbuf_get_height(display->pixbuf);
    buffer = gdk_pixbuf_get_pixels(display->pixbuf); 

    status = img_rgb_from_buffer(buffer, width, height, &image);
    if (CAM_FAILURE == status){
        return WG_FAILURE;
    }

    gdk_threads_leave();

    status = img_fill(rect->width, rect->height,
            RGB24_COMPONENT_NUM, IMG_RGB, &rect_image);
    if (CAM_FAILURE == status){
        img_cleanup(&image);
        return WG_FAILURE;
    }

    status = img_get_subimage(&image, rect->x, rect->y, &rect_image);
    if (CAM_FAILURE == status){
        img_cleanup(&image);
        img_cleanup(&rect_image);
        return WG_FAILURE;
    }

    status = img_rgb_2_hsv_gtk(&rect_image, img);
    if (CAM_FAILURE == status){
        img_cleanup(&image);
        img_cleanup(&rect_image);
        return WG_FAILURE;
    }

    img_cleanup(&image);
    img_cleanup(&rect_image);

    return WG_SUCCESS;
}
Example #2
0
void __blursk_cleanup (BlurskPrivate *priv) {
    img_cleanup();
    visual_mem_free(songinfo);

    /* cleanup config strings */
    visual_mem_free(config.color_style);
    visual_mem_free(config.signal_color);
    visual_mem_free(config.background);
    visual_mem_free(config.blur_style);
    visual_mem_free(config.transition_speed);
    visual_mem_free(config.blur_when);
    visual_mem_free(config.blur_stencil);
    visual_mem_free(config.fade_speed);
    visual_mem_free(config.signal_style);
    visual_mem_free(config.plot_style);
    visual_mem_free(config.flash_style);
    visual_mem_free(config.overall_effect);
    visual_mem_free(config.floaters);
    visual_mem_free(config.cpu_speed);
    visual_mem_free(config.show_info);

}