Enlightenment CVS committal

Author  : essiene
Project : e17
Module  : proto

Dir     : e17/proto/entrance_edit_gui/src/widgets


Modified Files:
        ew_entry.c ew_entry.h 


Log Message:
- Make ew_entry a composite widget with its own label for easier use.
- Update gui/* to use new ew_entry* arguments.

===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/widgets/ew_entry.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- ew_entry.c  15 Aug 2006 00:51:53 -0000      1.1
+++ ew_entry.c  15 Aug 2006 03:50:04 -0000      1.2
@@ -2,16 +2,32 @@
 #include <Entrance_Widgets.h>
 
 
-Entrance_Widget
-ew_entry_new(const char *text, int ispassword)
+Entrance_Entry
+_ew_entry_new(void)
 {
-       Entrance_Widget ew = ew_new();
+       Entrance_Entry ee = calloc(1, sizeof(*ee));
+       if(ee)
+       {
+               ee->owner = NULL;
+               ee->box = NULL;
+               ee->label = NULL;
+               ee->control = NULL;
+       }
+
+       return ee;
+}
+
+Entrance_Entry
+ew_entry_new(const char *label, const char *text, int ispassword)
+{
+       Entrance_Entry ew = _ew_entry_new();
        if(!ew)
        {
                return NULL;
        }
 
-       ew->owner = etk_entry_new();
+       ew->owner = etk_hbox_new(0, 10);
+       ew->control = etk_entry_new();
 
        if(text)
                ew_entry_set(ew, text);
@@ -19,32 +35,40 @@
        if(ispassword)
                ew_entry_password_set(ew);
 
+       if(label)
+       {
+               ew->label = etk_label_new(label);
+               etk_box_pack_start(ETK_BOX(ew->owner), ew->label, ETK_TRUE, 
ETK_TRUE, 0);
+       }
+
+       etk_box_pack_start(ETK_BOX(ew->owner), ew->control, ETK_TRUE, ETK_TRUE, 
0);
+
        return ew;
 }
 
 const char*
-ew_entry_get(Entrance_Widget ew)
+ew_entry_get(Entrance_Entry ew)
 {
-       return etk_entry_text_get(ETK_ENTRY(ew->owner));
+       return etk_entry_text_get(ETK_ENTRY(ew->control));
 }
 
 void
-ew_entry_set(Entrance_Widget ew, const char *text)
+ew_entry_set(Entrance_Entry ew, const char *text)
 {
        if(ew)
-               etk_entry_text_set(ETK_ENTRY(ew->owner), text);
+               etk_entry_text_set(ETK_ENTRY(ew->control), text);
 }
 
 void
-ew_entry_password_set(Entrance_Widget ew)
+ew_entry_password_set(Entrance_Entry ew)
 {
        if(ew)
-               etk_entry_password_set(ETK_ENTRY(ew->owner), ETK_TRUE);
+               etk_entry_password_set(ETK_ENTRY(ew->control), ETK_TRUE);
 }
 
 void 
-ew_entry_password_clear(Entrance_Widget ew)
+ew_entry_password_clear(Entrance_Entry ew)
 {
        if(ew)
-               etk_entry_password_set(ETK_ENTRY(ew->owner),  ETK_FALSE);
+               etk_entry_password_set(ETK_ENTRY(ew->control),  ETK_FALSE);
 }
===================================================================
RCS file: /cvs/e/e17/proto/entrance_edit_gui/src/widgets/ew_entry.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- ew_entry.h  15 Aug 2006 00:51:53 -0000      1.1
+++ ew_entry.h  15 Aug 2006 03:50:04 -0000      1.2
@@ -1,11 +1,43 @@
 #ifndef _EW_ENTRY_H
 #define _EW_ENTRY_H
 
-Entrance_Widget ew_entry_new(const char *, int);
-const char* ew_entry_get(Entrance_Widget);
-void ew_entry_set(Entrance_Widget ew, const char *text);
-void ew_entry_password_set(Entrance_Widget ew);
-void ew_entry_password_clear(Entrance_Widget ew);
+typedef struct _Entrance_Entry {
+       Etk_Widget *owner;
+       Etk_Widget *box;
+       Etk_Widget *label;
+       Etk_Widget *control;
+} *Entrance_Entry;
+
+#define EW_ENTRY_FREE(ew) if(1) \
+{ \
+       if(ew) \
+       { \
+               if(ew->owner) \
+               { \
+                       free(ew->owner); \
+               } \
+               if(ew->box) \
+               { \
+                       free(ew->box); \
+               } \
+               if(ew->label) \
+               { \
+                       free(ew->label); \
+               } \
+               if(ew->control) \
+               { \
+                       free(ew->control); \
+               } \
+               free(ew); \
+       } \
+} \
+else \
+
+Entrance_Entry ew_entry_new(const char*, const char *, int);
+const char* ew_entry_get(Entrance_Entry);
+void ew_entry_set(Entrance_Entry ew, const char *text);
+void ew_entry_password_set(Entrance_Entry ew);
+void ew_entry_password_clear(Entrance_Entry ew);
 
 
 



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