static gboolean _cd_do_fill_web_entry (CDEntry *pEntry) { if (pEntry->cIconName && pEntry->pIconSurface == NULL) { gchar *cImagePath = g_strconcat (MY_APPLET_SHARE_DATA_DIR, "/", pEntry->cIconName, NULL); pEntry->pIconSurface = cairo_dock_create_surface_from_icon (cImagePath, myDialogsParam.dialogTextDescription.iSize + 2, myDialogsParam.dialogTextDescription.iSize + 2); g_free (cImagePath); return TRUE; } return FALSE; }
static gboolean _cd_do_fill_file_entry (CDEntry *pEntry) { gchar *cName = NULL, *cURI = NULL, *cIconName = NULL; gboolean bIsDirectory; int iVolumeID; double fOrder; cairo_dock_fm_get_file_info (pEntry->cPath, &cName, &cURI, &cIconName, &bIsDirectory, &iVolumeID, &fOrder, 0); g_free (cName); g_free (cURI); if (cIconName != NULL && pEntry->pIconSurface == NULL) { cairo_t* pSourceContext = cairo_dock_create_context_from_container (CAIRO_CONTAINER (g_pMainDock)); pEntry->pIconSurface = cairo_dock_create_surface_from_icon (cIconName, pSourceContext, myDialogs.dialogTextDescription.iSize, myDialogs.dialogTextDescription.iSize); g_free (cIconName); cairo_destroy (pSourceContext); return TRUE; } return FALSE; }