Enlightenment CVS committal

Author  : leviathan
Project : e17
Module  : proto

Dir     : e17/proto/etk-perl


Modified Files:
        Etk.xs EtkTypes.c EtkTypes.h MANIFEST TODO test.pl typemap 
Added Files:
        EtkSignals.c EtkSignals.h 


Log Message:
- Follow etk changes
- some work on Etk::Tree and the models (still needs work)
- moved some functions into seperate files

===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/Etk.xs,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -3 -r1.41 -r1.42
--- Etk.xs      11 Aug 2006 18:36:53 -0000      1.41
+++ Etk.xs      16 Aug 2006 20:21:56 -0000      1.42
@@ -15,46 +15,7 @@
 #include "const-c.inc"
 
 #include "EtkTypes.h"
-
-
-typedef struct _Callback_Signal_Data Callback_Signal_Data;
-typedef struct _Notification_Callback_Data Notification_Callback_Data;
-typedef struct _Callback_Tree_Compare_Data Callback_Tree_Compare_Data;
-typedef struct _Callback_Timer_Data Callback_Timer_Data;
-
-/* Carries info for normal signals */
-struct _Callback_Signal_Data
-{
-   char       *signal_name;   /* etk signal name */
-   Etk_Object *object;        /* object signal is connected to */
-   SV         *perl_object;   /* reference to the perl object */
-   SV         *perl_callback; /* perl callback to be called */
-   void       *perl_data;     /* perl data to pass to the perl callback */
-};
-
-/* Carries info for the notification callback */
-struct _Notification_Callback_Data
-{
-   char                *property_name;
-   Etk_Object  *object;
-   SV          *perl_callback;
-   void                *perl_data;
-};
-
-/* Carries info for tree (column) compare callback */
-struct _Callback_Tree_Compare_Data
-{
-   Etk_Object *object;          /* the column */
-   SV         *perl_callback;   /* perl function that does the comparison */
-   SV         *perl_data;       /* data to be passed to the above function */
-};
-
-/* Carries info when we have a timer callback */
-struct _Callback_Timer_Data
-{
-   SV *perl_callback; /* the perl callback to call per timer tick */
-   SV *perl_data;     /* data to pass to the perl callback */
-};
+#include "EtkSignals.h"
 
 static void
 notification_callback(Etk_Object * object, const char * property_name, void * 
data)
@@ -84,7 +45,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));
    PUTBACK ;
       
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -102,7 +62,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));   
    PUTBACK ;
       
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -120,7 +79,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));   
    PUTBACK ;
 
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -129,35 +87,10 @@
 {
    dSP;
    Callback_Signal_Data *cbd = NULL;
-   HV *event_hv;
    SV *event_rv;
    cbd = data;   
-   
-   if(!strcmp(cbd->signal_name, "mouse_up") || !strcmp(cbd->signal_name, 
"mouse_down"))
-     { 
-        Etk_Event_Mouse_Up_Down *event = value;   
-       event_rv = newSVEventMouseUpDown(event);
-     }
-   else if(!strcmp(cbd->signal_name, "mouse_move"))
-     {
-       Etk_Event_Mouse_Move *event = value;
-       event_rv = newSVEventMouseMove(event);
-     }
-   else if(!strcmp(cbd->signal_name, "row_mouse_in") || 
!strcmp(cbd->signal_name, "row_mouse_out"))
-     {
-       event_rv = newSVEtkTreeRowPtr((Etk_Tree_Row *)value);
-     }
-   else if(!strcmp(cbd->signal_name, "key_down") || !strcmp(cbd->signal_name, 
"key_up"))
-     {
-       Etk_Event_Key_Up_Down *key_event = value;
-       event_rv = newSVEventKeyUpDown(key_event);
-
-     }
-   else
-     {
-       event_hv = (HV*)sv_2mortal((SV*)newHV());
-       event_rv = newRV((SV*)event_hv);
-     }
+
+   event_rv = GetSignalEvent(object, value, cbd);
    
    PUSHMARK(SP) ;
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_object)));
@@ -165,7 +98,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));   
    PUTBACK ;
       
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -182,7 +114,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));   
    PUTBACK ;
       
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -200,7 +131,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));   
    PUTBACK ;
       
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -217,7 +147,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));   
    PUTBACK ;
       
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -235,7 +164,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));   
    PUTBACK ;
       
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -252,7 +180,6 @@
    XPUSHs(sv_2mortal(newSVsv(cbd->perl_data)));   
    PUTBACK ;
       
-   /* Call the Perl sub */
    call_sv(cbd->perl_callback, G_DISCARD);
 }
 
@@ -531,26 +458,20 @@
       ALIAS:
        ChildPackingGet=1
      PPCODE:
+       Etk_Box_Fill_Policy     fill;
        int             padding;
-       Etk_Bool        expand;
-       Etk_Bool        fill;
-       Etk_Bool        pack_end;
        
-       etk_box_child_packing_get(box, child, &padding, &expand, &fill, 
&pack_end);
+       etk_box_child_packing_get(box, child, &fill, &padding);
        EXTEND(SP, 4);
-       PUSHs(sv_2mortal(newSViv(padding)));
-       PUSHs(sv_2mortal(newSViv(expand)));
        PUSHs(sv_2mortal(newSViv(fill)));
-       PUSHs(sv_2mortal(newSViv(pack_end)));
+       PUSHs(sv_2mortal(newSViv(padding)));
 
 void
-etk_box_child_packing_set(box, child, padding, expand, fill, pack_end)
+etk_box_child_packing_set(box, child, fill, padding=0)
        Etk_Box *       box
        Etk_Widget *    child
+       Etk_Box_Fill_Policy     fill
        int     padding
-       Etk_Bool        expand
-       Etk_Bool        fill
-       Etk_Bool        pack_end
       ALIAS:
        ChildPackingSet=1
 
@@ -568,24 +489,46 @@
        HomogeneousSet=1
 
 void
-etk_box_pack_end(box, child, expand=1, fill=1, padding=0)
+etk_box_prepend(box, child, group=ETK_BOX_START, fill=ETK_BOX_NONE, padding=0)
        Etk_Box *       box
        Etk_Widget *    child
-       Etk_Bool        expand
-       Etk_Bool        fill
+       Etk_Box_Group   group
+       Etk_Box_Fill_Policy fill
        int     padding
-      ALIAS:
-       PackEnd=1
+     ALIAS:
+       Prepend=1
 
 void
-etk_box_pack_start(box, child, expand=1, fill=1, padding=0)
+etk_box_append(box, child, group=ETK_BOX_START, fill=ETK_BOX_NONE, padding=0)
        Etk_Box *       box
        Etk_Widget *    child
-       Etk_Bool        expand
-       Etk_Bool        fill
+       Etk_Box_Group   group
+       Etk_Box_Fill_Policy fill
        int     padding
-      ALIAS:
-       PackStart=1
+     ALIAS:
+       Append=1
+
+void
+etk_box_insert(box, child, group, after, fill=ETK_BOX_NONE, padding=0)
+       Etk_Box *       box
+       Etk_Widget *    child
+       Etk_Box_Group   group
+       Etk_Widget *    after
+       Etk_Box_Fill_Policy fill
+       int     padding
+     ALIAS:
+       Insert=1
+
+void
+etk_box_insert_at(box, child, group, pos, fill=ETK_BOX_NONE, padding=0)
+       Etk_Box *       box
+       Etk_Widget *    child
+       Etk_Box_Group   group
+       int     pos
+       Etk_Box_Fill_Policy fill
+       int     padding
+     ALIAS:
+       InsertAt=1
 
 int
 etk_box_spacing_get(box)
@@ -3261,12 +3204,12 @@
        int     bottom_attach
        int     x_padding
        int     y_padding
-       Etk_Fill_Policy_Flags   fill_policy
+       Etk_Table_Fill_Policy   fill_policy
       ALIAS:
        Attach=1
 
 void
-etk_table_attach_defaults(table, child, left_attach, right_attach, top_attach, 
bottom_attach)
+etk_table_attach_default(table, child, left_attach, right_attach, top_attach, 
bottom_attach)
        Etk_Table *     table
        Etk_Widget *    child
        int     left_attach
@@ -3274,7 +3217,7 @@
        int     top_attach
        int     bottom_attach
       ALIAS:
-       AttachDefaults=1
+       AttachDefault=1
 
 void
 etk_table_cell_clear(table, col, row)
@@ -3950,6 +3893,10 @@
       ALIAS:
        ColNew=1
 
+
+MODULE = Etk::Tree::Model::Double      PACKAGE = Etk::Tree::Model::Double      
PREFIX = etk_tree_model_double_
+
+
        
 MODULE = Etk::Tree::Col        PACKAGE = Etk::Tree::Col        PREFIX = 
etk_tree_col_
 
@@ -4120,26 +4067,32 @@
 
 MODULE = Etk::Tree::Model::Checkbox    PACKAGE = Etk::Tree::Model::Checkbox    
PREFIX = etk_tree_model_checkbox_
 
-Etk_Tree_Model *
+void
 new(class, tree)
        SV * class
        Etk_Tree *      tree
-       CODE:
-       RETVAL = etk_tree_model_checkbox_new(tree);
-       OUTPUT:
-       RETVAL
+       PPCODE:
+       Etk_Tree_Model * model;
+       SV * ret;
+       model = etk_tree_model_checkbox_new(tree);
+       ret = newSVEtkTreeModelPtr(model);
+       hv_store( (HV*)SvRV(ret), "_model", 6, newSVpv("checkbox", 0), 0);
+       XPUSHs(sv_2mortal(ret));
 
 
 MODULE = Etk::Tree::Model::Double      PACKAGE = Etk::Tree::Model::Double      
PREFIX = etk_tree_model_double_
 
-Etk_Tree_Model *
+void
 new(class, tree)
        SV * class
        Etk_Tree *      tree
-       CODE:
-       RETVAL = etk_tree_model_double_new(tree);
-       OUTPUT:
-       RETVAL
+       PPCODE:
+       Etk_Tree_Model * model;
+       SV * ret;
+       model = etk_tree_model_double_new(tree);
+       ret = newSVEtkTreeModelPtr(model);
+       hv_store( (HV*)SvRV(ret), "_model", 6, newSVpv("double", 0), 0);
+       XPUSHs(sv_2mortal(ret));
 
 
 MODULE = Etk::Tree::Model::IconText    PACKAGE = Etk::Tree::Model::IconText    
PREFIX = etk_tree_model_icon_text_
@@ -4157,62 +4110,79 @@
       ALIAS:
        IconWidthSet=1
 
-Etk_Tree_Model *
-new(class, tree, icon_type)
+void
+new(class, tree, type)
        SV * class
        Etk_Tree *      tree
-       Etk_Tree_Model_Image_Type       icon_type
-       CODE:
-       RETVAL = etk_tree_model_icon_text_new(tree, icon_type);
-       OUTPUT:
-       RETVAL
+       Etk_Tree_Model_Image_Type type
+       PPCODE:
+       Etk_Tree_Model * model;
+       SV * ret;
+       model = etk_tree_model_icon_text_new(tree, type);
+       ret = newSVEtkTreeModelPtr(model);
+       hv_store( (HV*)SvRV(ret), "_model", 6, newSVpv("icontext", 0), 0);
+       XPUSHs(sv_2mortal(ret));
 
 
 MODULE = Etk::Tree::Model::Image       PACKAGE = Etk::Tree::Model::Image       
PREFIX = etk_tree_model_image_
 
-Etk_Tree_Model *
-new(class, tree, image_type)
+void
+new(class, tree, type)
        SV * class
        Etk_Tree *      tree
-       Etk_Tree_Model_Image_Type       image_type
-       CODE:
-       RETVAL = etk_tree_model_image_new(tree, image_type);
-       OUTPUT:
-       RETVAL
+       Etk_Tree_Model_Image_Type type
+       PPCODE:
+       Etk_Tree_Model * model;
+       SV * ret;
+       model = etk_tree_model_image_new(tree, type);
+       ret = newSVEtkTreeModelPtr(model);
+       hv_store( (HV*)SvRV(ret), "_model", 6, newSVpv("image", 0), 0);
+       XPUSHs(sv_2mortal(ret));
 
 MODULE = Etk::Tree::Model::Int PACKAGE = Etk::Tree::Model::Int PREFIX = 
etk_tree_model_int_
 
-Etk_Tree_Model *
+void
 new(class, tree)
        SV * class
        Etk_Tree *      tree
-       CODE:
-       RETVAL = etk_tree_model_int_new(tree);
-       OUTPUT:
-       RETVAL
+       PPCODE:
+       Etk_Tree_Model * model;
+       SV * ret;
+       model = etk_tree_model_int_new(tree);
+       ret = newSVEtkTreeModelPtr(model);
+       hv_store( (HV*)SvRV(ret), "_model", 6, newSVpv("int", 0), 0);
+       XPUSHs(sv_2mortal(ret));
+
+       
 
 MODULE = Etk::Tree::Model::ProgressBar PACKAGE = Etk::Tree::Model::ProgressBar 
PREFIX = etk_tree_model_progress_bar_
 
-Etk_Tree_Model *
+void
 new(class, tree)
        SV * class
        Etk_Tree *      tree
-       CODE:
-       RETVAL = etk_tree_model_progress_bar_new(tree);
-       OUTPUT:
-       RETVAL
+       PPCODE:
+       Etk_Tree_Model * model;
+       SV * ret;
+       model = etk_tree_model_progress_bar_new(tree);
+       ret = newSVEtkTreeModelPtr(model);
+       hv_store( (HV*)SvRV(ret), "_model", 6, newSVpv("progressbar", 0), 0);
+       XPUSHs(sv_2mortal(ret));
 
 
 MODULE = Etk::Tree::Model::Text        PACKAGE = Etk::Tree::Model::Text        
PREFIX = etk_tree_model_text_
 
-Etk_Tree_Model *
+void
 new(class, tree)
        SV * class
        Etk_Tree *      tree
-       CODE:
-       RETVAL = etk_tree_model_text_new(tree);
-       OUTPUT:
-       RETVAL
+       PPCODE:
+       Etk_Tree_Model * model;
+       SV * ret;
+       model = etk_tree_model_text_new(tree);
+       ret = newSVEtkTreeModelPtr(model);
+       hv_store( (HV*)SvRV(ret), "_model", 6, newSVpv("text", 0), 0);
+       XPUSHs(sv_2mortal(ret));
 
 
 MODULE = Etk::Tree::Row        PACKAGE = Etk::Tree::Row        PREFIX = 
etk_tree_row_
@@ -4254,100 +4224,57 @@
       ALIAS:
        Expand=1
 
-void
-etk_tree_row_field_int_set(row, col, i)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       int             i
-      ALIAS:
-       FieldIntSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, i, NULL);
-       
-void
-etk_tree_row_field_text_set(row, col, t)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       char         *  t
-      ALIAS:
-       FieldTextSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, t, NULL);
-
-void
-etk_tree_row_field_double_set(row, col, d)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       double          d
-      ALIAS:
-       FieldDoubleSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, d, NULL);
 
 void
-etk_tree_row_field_image_file_set(row, col, image)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       char         *  image
-      ALIAS:
-       FieldImageFileSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, image, NULL);
-
-void
-etk_tree_row_field_image_edje_set(row, col, edje, group)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       char         *  edje
-       char         *  group
-      ALIAS:
-       FieldImageEdjeSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, edje, group, NULL);
-
-void
-etk_tree_row_field_icon_file_text_set(row, col, icon, t)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       char         *  icon
-       char         *  t
-      ALIAS:
-       FieldIconFileTextSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, icon, t, NULL);
-
-void
-etk_tree_row_field_icon_edje_text_set(row, col, icon, group, t)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       char         *  icon
-       char         *  group
-       char         *  t
-      ALIAS:
-       FieldIconEdjeTextSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, icon, group, t, NULL);
-       
-void
-etk_tree_row_field_checkbox_set(row, col, checked)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       int             checked
-      ALIAS:
-       FieldCheckboxSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, checked, NULL);
-       
-void
-etk_tree_row_field_progress_bar_set(row, col, fraction, t)
-        Etk_Tree_Row *  row
-       Etk_Tree_Col *  col
-       double          fraction
-       char         *  t
-      ALIAS:
-       FieldProgressBarSet=1
-      CODE:
-        etk_tree_row_fields_set(row, col, fraction, t, NULL);
+field_set(row, col, ...)
+       Etk_Tree_Row * row
+       Etk_Tree_Col * col
+     ALIAS:
+       FieldSet=1
+       CODE:
+       int i1, i2, i3;
+       double n1, n2, n3;
+       void * data1, * data2, * data3;
+       SV * d1, * d2, *d3;
+       
+       d1 = ST(2);
+       if (SvIOK(d1)) {
+               i1 = SvIV(d1);
+               data1 = &i1;
+       } else if (SvNOK(d1)) {
+               n1 = SvNV(d1);
+               data1 = &n1;
+       } else if (SvPOK(d1)) 
+               data1 = SvPV_nolen(d1); 
+       
+       if (items == 3) {
+               etk_tree_row_fields_set(row, col, data1, NULL);
+       } else {
+               d2 = ST(3);
+               if (SvIOK(d2)) {
+                       i2 = SvIV(d2);
+                       data2 = &i2;
+               } else if (SvNOK(d2)) {
+                       n2 = SvNV(d2);
+                       data2 = &n2;
+               } else if (SvPOK(d2)) 
+                       data2 = SvPV_nolen(d2); 
+
+               if (items == 4) {
+                       etk_tree_row_fields_set(row, col, data1, data2, NULL);
+               } else {
+                       d3 = ST(4);
+                       if (SvIOK(d3)) {
+                               i3 = SvIV(d3);
+                               data3 = &i3;
+                       } else if (SvNOK(d3)) {
+                               n3 = SvNV(d3);
+                               data3 = &n3;
+                       } else if (SvPOK(d3)) 
+                               data3 = SvPV_nolen(d3); 
+                       etk_tree_row_fields_set(row, col, data1, data2, data3, 
NULL);
+               }
+       }
 
 int
 etk_tree_row_field_int_get(row, col)
===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/EtkTypes.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- EtkTypes.c  11 Aug 2006 18:36:53 -0000      1.7
+++ EtkTypes.c  16 Aug 2006 20:21:56 -0000      1.8
@@ -1,5 +1,3 @@
-
-
 #include "EtkTypes.h"
 
 
@@ -217,15 +215,12 @@
 }
 
 
-// main
-
-
 SV * newSVColor(Etk_Color col) { 
 
        HV * hv;
        SV * color;
 
-       hv = (HV*)sv_2mortal((SV*)newHV());
+       hv = newHV();
 
        color = newSViv(col.r);
         hv_store(hv, "r", strlen("r"), color, 0);
@@ -236,7 +231,7 @@
        color = newSViv(col.a);
         hv_store(hv, "a", strlen("a"), color, 0);
        
-       return newRV((SV*)hv);
+       return newRV_noinc((SV*)hv);
 }
 
 Etk_Color SvColor(SV *color) { 
@@ -309,7 +304,7 @@
        HV * hv;
        SV * geometry;
        
-       hv = (HV*)sv_2mortal((SV*)newHV());
+       hv = newHV();
 
        geometry = newSViv(geo.x);
         hv_store(hv, "x", strlen("x"), geometry, 0);
@@ -320,7 +315,7 @@
        geometry = newSViv(geo.h);
         hv_store(hv, "h", strlen("h"), geometry, 0);
        
-       return newRV((SV*)hv);
+       return newRV_noinc((SV*)hv);
 }
 
 Etk_Size * SvSizePtr(SV * size) {
@@ -352,14 +347,14 @@
        HV *hv;
        SV * sv;
 
-       hv = (HV*)sv_2mortal((SV*)newHV());
+       hv = newHV();
 
        sv = newSViv(size->w);
        hv_store(hv, "w", strlen("w"), sv, 0);
        sv = newSViv(size->h);
        hv_store(hv, "h", strlen("h"), sv, 0);
 
-       return newRV((SV*)hv);
+       return newRV_noinc((SV*)hv);
 }
 
 Evas_List * SvEvasList(SV *sv) {
@@ -392,7 +387,7 @@
        for (l = list; l; l = l->next) 
                av_push(av, newSVEtkWidgetPtr((Etk_Widget *)(l->data)));
 
-       return newRV((SV*)av);
+       return newRV_noinc((SV*)av);
 
 }
 
@@ -406,7 +401,7 @@
        for (l = list; l; l = l->next) 
                av_push(av, newSVpv((char *)(l->data), 0));
 
-       return newRV((SV*)av);
+       return newRV_noinc((SV*)av);
 
 }
 
@@ -567,7 +562,7 @@
        I_STORE("timestamp", newSVuv(ev->timestamp))
 
        printf("New Event (%p)\n", hv);
-       return newRV((SV*)hv);
+       return newRV_noinc((SV*)hv);
 }
 
 SV * newSVEventMouseWheel(Etk_Event_Mouse_Wheel *ev) {
@@ -583,7 +578,7 @@
        I_STORE("widget.y", newSViv(ev->widget.y))
        I_STORE("timestamp", newSVuv(ev->timestamp))
 
-       return newRV((SV*)hv);
+       return newRV_noinc((SV*)hv);
 }
 
 SV * newSVEventMouseMove(Etk_Event_Mouse_Move *ev) {
@@ -602,7 +597,7 @@
        I_STORE("prev.widget.y", newSViv(ev->prev.widget.y))
        I_STORE("timestamp", newSVuv(ev->timestamp))
 
-       return newRV((SV*)hv);
+       return newRV_noinc((SV*)hv);
 }
 
 SV * newSVEventMouseUpDown(Etk_Event_Mouse_Up_Down *ev) {
@@ -617,7 +612,7 @@
        I_STORE("widget.y", newSViv(ev->widget.y))
        I_STORE("timestamp", newSVuv(ev->timestamp))
 
-       return newRV((SV*)hv);
+       return newRV_noinc((SV*)hv);
 }
 
 SV * newSVEventMouseInOut(Etk_Event_Mouse_In_Out *ev) {
@@ -632,7 +627,7 @@
        I_STORE("widget.y", newSViv(ev->widget.y))
        I_STORE("timestamp", newSVuv(ev->timestamp))
 
-       return newRV((SV*)hv);
+       return newRV_noinc((SV*)hv);
 }
 
 #undef S_STORE
===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/EtkTypes.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- EtkTypes.h  11 Aug 2006 18:36:53 -0000      1.6
+++ EtkTypes.h  16 Aug 2006 20:21:56 -0000      1.7
@@ -5,6 +5,7 @@
 #include "perl.h"
 #include "XSUB.h"
 
+#define NEED_newRV_noinc
 #include "ppport.h"
 
 #ifdef _
===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/MANIFEST,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- MANIFEST    6 Aug 2006 14:56:13 -0000       1.6
+++ MANIFEST    16 Aug 2006 20:21:56 -0000      1.7
@@ -2,6 +2,8 @@
 Etk.xs
 EtkTypes.c
 EtkTypes.h
+EtkSignals.c
+EtkSignals.h
 Makefile.PL
 MANIFEST
 ppport.h
===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/TODO,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -3 -r1.14 -r1.15
--- TODO        11 Aug 2006 18:36:53 -0000      1.14
+++ TODO        16 Aug 2006 20:21:56 -0000      1.15
@@ -6,6 +6,7 @@
        - Check for memory usage (I'm not sure if we're leaking or not,
          need to do some tests for that)
        - Fix Combobox append functions (waiting for some functionality in etk)
+       - Fix Tree models
 
 BUGS:
        - make test is defining PERL_DL_NONLAZY=1 for some reason and
===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/test.pl,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- test.pl     30 Jul 2006 19:22:31 -0000      1.6
+++ test.pl     16 Aug 2006 20:21:56 -0000      1.7
@@ -1,5 +1,6 @@
 use strict;
 use Etk;
+use Etk::Constants qw/:box/;
 
 my $win = Etk::Window->new();
 
@@ -7,11 +8,11 @@
 
 my $button = Etk::Button::new_with_label("click me!");
 $button->signal_connect("clicked", \&click_cb1, "click_cb1_data");
-$vbox->PackStart($button, 1, 1, 5);
+$vbox->Append($button, BoxStart, BoxNone, 1);
 
 my $button2 = Etk::Button::new_with_label("click me too!");
 $button2->signal_connect("clicked", \&click_cb2);
-$vbox->PackStart($button2, 0, 0, 2);
+$vbox->Append($button2, BoxStart, BoxNone, 0);
 
 
 my $tree = Etk::Tree->new();
@@ -30,15 +31,15 @@
 $row->field_text_set($col1, "Second Line");
 $row->FieldProgressBarSet($col2, 0.2, " Reading ... ");
 
-$vbox->PackStart($tree, 0, 0, 0);
+$vbox->Append($tree, BoxStart, BoxNone, 0);
 
 sub click_cb1
 {
     my $self = shift;
     my $data = shift;
     print "click_cb1! (data=$data)\n";
-    my ($padding, $expand, $fill, $pack_end) = $vbox->ChildPackingGet($self);
-    print "padding = $padding, expand = $expand, fill = $fill, pack_end = 
$pack_end\n";
+    my ($fill, $padding) = $vbox->ChildPackingGet($self);
+    print "padding = $padding, fill = $fill\n";
 }
 
 sub click_cb2
===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/typemap,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- typemap     11 Aug 2006 18:36:53 -0000      1.12
+++ typemap     16 Aug 2006 20:21:56 -0000      1.13
@@ -5,6 +5,8 @@
 Etk_Bool                                       T_IV
 Etk_Bool *                                     T_PV
 Etk_Box *                                      T_PTROBJ_ETK
+Etk_Box_Group                                  T_IV
+Etk_Box_Fill_Policy                            T_IV
 Etk_HBox *                                     T_PTROBJ_ETK
 Etk_VBox *                                     T_PTROBJ_ETK
 Etk_Button *                                   T_PTROBJ_ETK
@@ -24,7 +26,7 @@
 Etk_Entry *                                    T_PTROBJ_ETK
 Etk_Event_Selection_Request *                  T_PTROBJ
 Etk_Filechooser_Widget *                       T_PTROBJ_ETK
-Etk_Fill_Policy_Flags                          T_IV
+Etk_Table_Fill_Policy                          T_IV
 Etk_Frame *                                    T_PTROBJ_ETK
 Etk_Geometry                                   T_GEOMETRY
 Etk_Geometry *                                 T_GEOMETRY_PTR



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to