Enlightenment CVS committal

Author  : horms
Project : e17
Module  : apps/entice

Dir     : e17/apps/entice/src/bin


Modified Files:
        event.c image.c image.h 


Log Message:
Added save functionality ('s')
There is no save-as or confirmation. Abunai!

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/event.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- event.c     14 Feb 2003 10:15:09 -0000      1.6
+++ event.c     14 Feb 2003 10:27:31 -0000      1.7
@@ -240,6 +240,10 @@
      {
        e_delete_current_image();
      }
+   else if (!strcmp(e->key, "s"))
+     {
+       e_save_current_image();
+     }
    else if (!strcmp(e->key, "Escape"))
      {
        exit(0);
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/image.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- image.c     14 Feb 2003 10:15:09 -0000      1.7
+++ image.c     14 Feb 2003 10:27:31 -0000      1.8
@@ -253,7 +253,7 @@
    else
          imlib_image_flip_vertical();
 
-   /* Get image data from Imblib */
+   /* Get image data from Imlib */
    image_data = imlib_image_get_data_for_reading_only();
 
    /* Set Evas Image Data */
@@ -409,6 +409,50 @@
 
    e_display_current_image();
 }
+
+void
+e_save_current_image(void)
+{
+   int w;
+   int h;
+   Image *im;
+   DATA32 *image_data;
+   Imlib_Image image;
+   int alpha_team; /* Speed Racer! */
+   const char *format;
+
+   if (!current_image || !current_image->data || !o_image)
+       return;
+
+   im = (Image *) (current_image->data);
+
+   /* Get image data from Evas */
+   evas_object_image_size_get(o_image, &w, &h);
+   image_data = evas_object_image_data_get(o_image, 0);
+   if (!image_data)
+     {
+         evas_object_image_data_set(o_image, image_data);
+         return;
+     }
+
+   /* Set up imlib image */
+   image = imlib_create_image_using_copied_data(w, h, image_data);
+   evas_object_image_data_set(o_image, image_data);
+   imlib_context_set_image(image);
+
+   alpha_team = evas_object_image_alpha_get(o_image);
+   format = strrchr(im->file, '.') + 1;
+
+   /* Save Image */
+   imlib_image_set_format(format);
+   imlib_image_set_has_alpha(alpha_team);  /* Go Speed, Go */
+   imlib_save_image(im->file);
+
+
+   /* Free Imlib image */
+   imlib_free_image();
+}
+   
 
 void
 e_display_current_image(void)
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/image.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- image.h     14 Feb 2003 10:15:10 -0000      1.7
+++ image.h     14 Feb 2003 10:27:31 -0000      1.8
@@ -20,6 +20,7 @@
 void                e_flip_v_current_image(void);
 
 void                e_delete_current_image(void);
+void                e_save_current_image(void);
 void                e_display_current_image(void);
 
 void                next_image(void *data, Evas * e, Evas_Object * obj,




-------------------------------------------------------
This SF.NET email is sponsored by: FREE  SSL Guide from Thawte
are you planning your Web Server Security? Click here to get a FREE
Thawte SSL guide and find the answers to all your  SSL security issues.
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0026en
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to