Enlightenment CVS committal

Author  : leviathan
Project : e17
Module  : proto

Dir     : e17/proto/etk-perl


Modified Files:
        Etk.xs EtkTypes.c TODO 


Log Message:
- better handling of tree fields

===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/Etk.xs,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -3 -r1.44 -r1.45
--- Etk.xs      19 Aug 2006 08:27:35 -0000      1.44
+++ Etk.xs      19 Aug 2006 10:42:19 -0000      1.45
@@ -19,11 +19,13 @@
 
 #define mINT 1 
 #define mDOUBLE 2
-#define mICONTEXT 3 
-#define mIMAGE 4
+#define mICONTEXTF 3 
+#define mIMAGEF 4
 #define mCHECKBOX 5
 #define mPROGRESSBAR 6
 #define mTEXT 7
+#define mICONTEXTE 8 
+#define mIMAGEE 9
 
 static void
 notification_callback(Etk_Object * object, const char * property_name, void * 
data)
@@ -395,7 +397,7 @@
        Shutdown=1
        CODE:
        etk_shutdown();
-       FreeObjectCache();
+       //FreeObjectCache();
 
 
 MODULE = Etk::Alignment                PACKAGE = Etk::Alignment        PREFIX 
= etk_alignment_
@@ -2772,12 +2774,6 @@
        else
          etk_signal_disconnect(signal_name, obj, 
ETK_CALLBACK(callback_VOID__VOID));
 
-void
-DESTROY(object)
-       Etk_Object * object
-       CODE:
-       FreeEtkObject(object);
-
 
 MODULE = Etk::Paned    PACKAGE = Etk::Paned    PREFIX = etk_paned_
        
@@ -3808,8 +3804,6 @@
 etk_tree_nth_col_get(tree, nth)
        Etk_Tree *      tree
        int     nth
-      ALIAS:
-       NthColGet=1
 
 int
 etk_tree_num_cols_get(tree)
@@ -3902,8 +3896,6 @@
        char *  title
        SV *    model
        int     width
-      ALIAS:
-       ColNew=1
        CODE:
        Etk_Tree_Model * modeldata;
        Etk_Tree_Col * col;
@@ -4144,9 +4136,15 @@
        PPCODE:
        Etk_Tree_Model * model;
        SV * ret;
+       SV * mod;
+       if (type == ETK_TREE_FROM_FILE)
+               mod = newSViv(mICONTEXTF);
+       else
+               mod = newSViv(mICONTEXTE);
+
        model = etk_tree_model_icon_text_new(tree, type);
        ret = newSVEtkTreeModelPtr(model);
-       hv_store( (HV*)SvRV(ret), "_model", 6, newSViv(mICONTEXT), 0);
+       hv_store( (HV*)SvRV(ret), "_model", 6, mod, 0);
        XPUSHs(sv_2mortal(ret));
 
 
@@ -4160,9 +4158,14 @@
        PPCODE:
        Etk_Tree_Model * model;
        SV * ret;
+       SV * mod;
+       if (type == ETK_TREE_FROM_FILE)
+               mod = newSViv(mIMAGEF);
+       else
+               mod = newSViv(mIMAGEE);
        model = etk_tree_model_image_new(tree, type);
        ret = newSVEtkTreeModelPtr(model);
-       hv_store( (HV*)SvRV(ret), "_model", 6, newSViv(mIMAGE), 0);
+       hv_store( (HV*)SvRV(ret), "_model", 6, mod, 0);
        XPUSHs(sv_2mortal(ret));
 
 MODULE = Etk::Tree::Model::Int PACKAGE = Etk::Tree::Model::Int PREFIX = 
etk_tree_model_int_
@@ -4275,19 +4278,17 @@
                        case mDOUBLE:
                                etk_tree_row_fields_set(row, column, 
SvNV(ST(2)), NULL);
                                break;
-                       case mICONTEXT:
-                               if (items == 3) 
-                                       etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), NULL);
-                               else if (items == 4)
-                                       etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), SvPV_nolen(ST(3)), NULL);
-                               else 
-                                       etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), SvPV_nolen(ST(3)), SvPV_nolen(ST(4)), NULL);
+                       case mICONTEXTF:
+                               etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), SvPV_nolen(ST(3)), NULL);
                                break;
-                       case mIMAGE:
-                               if (items == 3)
-                                       etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), NULL);
-                               else
-                                       etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), SvPV_nolen(ST(3)), NULL);
+                       case mICONTEXTE:
+                               etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), SvPV_nolen(ST(3)), SvPV_nolen(ST(4)), NULL);
+                               break;
+                       case mIMAGEF:
+                               etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), NULL);
+                               break;
+                       case mIMAGEE:
+                               etk_tree_row_fields_set(row, column, 
SvPV_nolen(ST(2)), SvPV_nolen(ST(3)), NULL);
                                break;
                        case mPROGRESSBAR:
                                etk_tree_row_fields_set(row, column, 
SvNV(ST(2)), SvPV_nolen(ST(3)), NULL);
@@ -4332,16 +4333,25 @@
                                etk_tree_row_fields_get(row, column, &d, NULL);
                                XPUSHs(sv_2mortal(newSVnv(d)));
                                break;
-                       case mICONTEXT:
+                       case mICONTEXTE:
                                etk_tree_row_fields_get(row, column, &c1, &c2, 
&c3, NULL);
                                XPUSHs(sv_2mortal(newSVpv(c1, strlen(c1))));
-                               if (c2) XPUSHs(sv_2mortal(newSVpv(c2, 
strlen(c2))));
-                               if (c3) XPUSHs(sv_2mortal(newSVpv(c3, 
strlen(c3))));
+                               XPUSHs(sv_2mortal(newSVpv(c2, strlen(c2))));
+                               XPUSHs(sv_2mortal(newSVpv(c3, strlen(c3))));
+                               break;
+                       case mICONTEXTF:
+                               etk_tree_row_fields_get(row, column, &c1, &c2, 
NULL);
+                               XPUSHs(sv_2mortal(newSVpv(c1, strlen(c1))));
+                               XPUSHs(sv_2mortal(newSVpv(c2, strlen(c2))));
+                               break;
+                       case mIMAGEF:
+                               etk_tree_row_fields_get(row, column, &c1, NULL);
+                               XPUSHs(sv_2mortal(newSVpv(c1, strlen(c1))));
                                break;
-                       case mIMAGE:
+                       case mIMAGEE:
                                etk_tree_row_fields_get(row, column, &c1, &c2, 
NULL);
                                XPUSHs(sv_2mortal(newSVpv(c1, strlen(c1))));
-                               if (c2) XPUSHs(sv_2mortal(newSVpv(c2, 
strlen(c2))));
+                               XPUSHs(sv_2mortal(newSVpv(c2, strlen(c2))));
                                break;
                        case mPROGRESSBAR:
                                etk_tree_row_fields_get(row, column, &d, &c1, 
NULL);
===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/EtkTypes.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- EtkTypes.c  16 Aug 2006 20:21:56 -0000      1.8
+++ EtkTypes.c  19 Aug 2006 10:42:19 -0000      1.9
@@ -1,6 +1,7 @@
 #include "EtkTypes.h"
 
 
+#if 0
 static HV * ObjectCache = NULL;
 
 static void SetEtkObject(SV * perl_object, Etk_Object * object)
@@ -86,6 +87,8 @@
        ObjectCache = NULL;
 }
 
+#endif
+
 void * SvObj(SV *o, char * classname)
 {
 #ifdef DEBUG
@@ -141,7 +144,7 @@
 
 void __etk_perl_init() {
 
-       ObjectCache = newHV();
+//     ObjectCache = newHV();
 
 #define __(A, B)\
        av_push(get_av("Etk::"A"::ISA", TRUE), newSVpv("Etk::"B, 
strlen("Etk::"B)));
===================================================================
RCS file: /cvs/e/e17/proto/etk-perl/TODO,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -3 -r1.15 -r1.16
--- TODO        16 Aug 2006 20:21:56 -0000      1.15
+++ TODO        19 Aug 2006 10:42:19 -0000      1.16
@@ -6,16 +6,14 @@
        - 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
          fails to load the library, for now you can run:
          $ perl -MExtUtils::Command::MM -e "test_harness(0, 'blib/lib', 
'blib/arch')" t/Etk/*.t
 
-       - Cache is still all over the place
-
 Pending:
        -etk_canvas.h
+       -dnd
 
 



-------------------------------------------------------------------------
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