Enlightenment CVS committal

Author  : moom
Project : e17
Module  : proto

Dir     : e17/proto/etk/src/lib


Modified Files:
        Etk.h Makefile.am etk_editable.c etk_editable.h etk_entry.c 
        etk_scrollbar.c etk_scrolled_view.h etk_types.h etk_widget.c 
Added Files:
        etk_spinner.c etk_spinner.h etk_tree2.c etk_tree2.h 
        etk_tree2_model.c etk_tree2_model.h 


Log Message:
* [Etk_Tree2] A future replacement of Etk_Tree. Still not usable
* [Etk_Spinner] A basic spinner widget that needs more work but it is 
already usable


===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/Etk.h,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -3 -r1.44 -r1.45
--- Etk.h       20 Oct 2006 17:51:44 -0000      1.44
+++ Etk.h       28 Nov 2006 21:40:07 -0000      1.45
@@ -61,6 +61,7 @@
 #include "etk_separator.h"
 #include "etk_shadow.h"
 #include "etk_slider.h"
+#include "etk_spinner.h"
 #include "etk_statusbar.h"
 #include "etk_stock.h"
 #include "etk_table.h"
@@ -74,6 +75,8 @@
 #include "etk_toplevel.h"
 #include "etk_tree.h"
 #include "etk_tree_model.h"
+#include "etk_tree2.h"
+#include "etk_tree2_model.h"
 #include "etk_viewport.h"
 #include "etk_widget.h"
 #include "etk_window.h"
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/Makefile.am,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -3 -r1.48 -r1.49
--- Makefile.am 20 Oct 2006 17:51:44 -0000      1.48
+++ Makefile.am 28 Nov 2006 21:40:07 -0000      1.49
@@ -65,6 +65,7 @@
 etk_signal.h \
 etk_signal_callback.h \
 etk_slider.h \
+etk_spinner.h \
 etk_statusbar.h \
 etk_stock.h \
 etk_string.h \
@@ -79,6 +80,8 @@
 etk_toplevel.h \
 etk_tree.h \
 etk_tree_model.h \
+etk_tree2.h \
+etk_tree2_model.h \
 etk_type.h \
 etk_types.h \
 etk_utils.h \
@@ -135,6 +138,7 @@
 etk_signal.c \
 etk_signal_callback.c \
 etk_slider.c \
+etk_spinner.c \
 etk_statusbar.c \
 etk_stock.c \
 etk_string.c \
@@ -149,6 +153,8 @@
 etk_toplevel.c \
 etk_tree.c \
 etk_tree_model.c \
+etk_tree2.c \
+etk_tree2_model.c \
 etk_type.c \
 etk_utils.c \
 etk_viewport.c \
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_editable.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- etk_editable.c      6 Oct 2006 17:04:14 -0000       1.2
+++ etk_editable.c      28 Nov 2006 21:40:07 -0000      1.3
@@ -32,6 +32,7 @@
    Etk_String *text;
    int unicode_length;
    
+   float align;
    int cursor_width;
    Etk_Bool selection_on_fg;
    int average_char_w;
@@ -130,6 +131,36 @@
 }
 
 /**
+ * @brief Sets the alignment of the text inside the editable object
+ * @param editable an editable object
+ * @param align the alignment of the text, from 0.0 (left alignment) to 1.0 
(right alignment)
+ */
+void etk_editable_align_set(Evas_Object *editable, float align)
+{
+   Etk_Editable_Smart_Data *sd;
+   
+   if (!editable || !(sd = evas_object_smart_data_get(editable)))
+      return;
+   
+   sd->align = ETK_CLAMP(align, 0.0, 1.0);
+   _etk_editable_text_position_update(editable, -1);
+}
+
+/**
+ * @brief Gets the alignment of the text inside the editable object
+ * @param editable an editable object
+ * @return Returns the alignment of the text, from 0.0 (left alignment) to 1.0 
(right alignment)
+ */
+float etk_editable_align_get(Evas_Object *editable)
+{
+   Etk_Editable_Smart_Data *sd;
+   
+   if (!editable || !(sd = evas_object_smart_data_get(editable)))
+      return 0.0;
+   return sd->align;
+}
+
+/**
  * @brief Sets whether or not the editable object is in password mode. In 
password mode, the
  * editable object displays '*' instead of the characters
  * @param editable an editable object
@@ -914,6 +945,8 @@
       else if ((tx + tw + offset_x) < (ox + ow))
          offset_x = (ox + ow) - (tx + tw);
    }
+   else
+      offset_x += (ow - tw) * sd->align;
    
    new_ty = oy + ((oh - th) / 2);
    evas_object_move(sd->text_object, tx + offset_x, new_ty);
@@ -1004,6 +1037,7 @@
    sd->average_char_w = -1;
    sd->average_char_h = -1;
    
+   sd->align = 0.0;
    sd->cursor_pos = 0;
    sd->cursor_visible = ETK_TRUE;
    sd->selection_pos = 0;
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_editable.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- etk_editable.h      6 Oct 2006 17:04:14 -0000       1.2
+++ etk_editable.h      28 Nov 2006 21:40:07 -0000      1.3
@@ -14,9 +14,10 @@
 
 Evas_Object *etk_editable_add(Evas *evas);
 void         etk_editable_theme_set(Evas_Object *editable, const char *file, 
const char *group);
-
-void     etk_editable_password_mode_set(Evas_Object *editable, Etk_Bool 
password_mode);
-Etk_Bool etk_editable_password_mode_get(Evas_Object *editable);
+void         etk_editable_align_set(Evas_Object *editable, float align);
+float        etk_editable_align_get(Evas_Object *editable);
+void         etk_editable_password_mode_set(Evas_Object *editable, Etk_Bool 
password_mode);
+Etk_Bool     etk_editable_password_mode_get(Evas_Object *editable);
 
 void         etk_editable_text_set(Evas_Object *editable, const char *text);
 const char  *etk_editable_text_get(Evas_Object *editable);
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_entry.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -3 -r1.21 -r1.22
--- etk_entry.c 20 Oct 2006 17:51:44 -0000      1.21
+++ etk_entry.c 28 Nov 2006 21:40:07 -0000      1.22
@@ -73,7 +73,7 @@
          ETK_PROPERTY_BOOL, ETK_PROPERTY_READABLE_WRITABLE,  
etk_property_value_bool(ETK_FALSE));
       
       entry_type->property_set = _etk_entry_property_set;
-      entry_type->property_get = _etk_entry_property_get;      
+      entry_type->property_get = _etk_entry_property_get;
    }
 
    return entry_type;
@@ -481,7 +481,7 @@
    
    if (!(entry = ETK_ENTRY(object)))
       return;
-   entry->selection_dragging = ETK_FALSE;
+   
    if (event->button == 1)
    {
       entry->selection_dragging = ETK_FALSE;
@@ -609,6 +609,12 @@
 }
 
 /** @} */
+
+/**************************
+ *
+ * Documentation
+ *
+ **************************/
 
 /**
  * @addtogroup Etk_Entry
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_scrollbar.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -3 -r1.16 -r1.17
--- etk_scrollbar.c     6 Oct 2006 17:04:14 -0000       1.16
+++ etk_scrollbar.c     28 Nov 2006 21:40:07 -0000      1.17
@@ -22,7 +22,7 @@
 static void _etk_scrollbar_value_changed_handler(Etk_Range *range, double 
value);
 static void _etk_scrollbar_page_size_changed_cb(Etk_Object *object, const char 
*property_name, void *data);
 static void _etk_scrollbar_range_changed_cb(Etk_Object *object, const char 
*property_name, void *data);
-static void _etk_scrollbar_mouse_wheel(Etk_Object *object, 
Etk_Event_Mouse_Wheel *event, void *data);
+static void _etk_scrollbar_mouse_wheel_cb(Etk_Object *object, 
Etk_Event_Mouse_Wheel *event, void *data);
 
 static void _etk_scrollbar_scroll_start_cb(void *data, Evas_Object *obj, const 
char *emission, const char *source);
 static void _etk_scrollbar_scroll_stop_cb(void *data, Evas_Object *obj, const 
char *emission, const char *source);
@@ -141,7 +141,7 @@
    scrollbar->dragging = ETK_FALSE;
    ETK_RANGE(scrollbar)->value_changed = _etk_scrollbar_value_changed_handler;
    etk_signal_connect("realize", ETK_OBJECT(scrollbar), 
ETK_CALLBACK(_etk_scrollbar_realize_cb), NULL);
-   etk_signal_connect("mouse_wheel", ETK_OBJECT(scrollbar), 
ETK_CALLBACK(_etk_scrollbar_mouse_wheel), NULL);
+   etk_signal_connect("mouse_wheel", ETK_OBJECT(scrollbar), 
ETK_CALLBACK(_etk_scrollbar_mouse_wheel_cb), NULL);
    etk_object_notification_callback_add(ETK_OBJECT(scrollbar), "page_size", 
_etk_scrollbar_page_size_changed_cb, NULL);
    etk_object_notification_callback_add(ETK_OBJECT(scrollbar), "lower", 
_etk_scrollbar_range_changed_cb, NULL);
    etk_object_notification_callback_add(ETK_OBJECT(scrollbar), "upper", 
_etk_scrollbar_range_changed_cb, NULL);
@@ -161,8 +161,9 @@
    if (!object || !(theme_object = ETK_WIDGET(object)->theme_object))
       return;
 
-   _etk_scrollbar_value_changed_handler(ETK_RANGE(object), 
ETK_RANGE(object)->value);
+   _etk_scrollbar_range_changed_cb(object, NULL, NULL);
    edje_object_signal_callback_add(theme_object, "drag*", "etk.dragable.bar", 
_etk_scrollbar_drag_dragged_cb, object);
+   /* TODO: change the signal name to "etk,action,scroll,down/up,start" and 
"etk,action,scroll,stop" */
    edje_object_signal_callback_add(theme_object, "scroll_*_start", "", 
_etk_scrollbar_scroll_start_cb, object);
    edje_object_signal_callback_add(theme_object, "scroll_stop", "", 
_etk_scrollbar_scroll_stop_cb, object);
 }
@@ -191,7 +192,7 @@
 }
 
 /* Called when the user wants to scroll the scrollbar with the mouse wheel */
-static void _etk_scrollbar_mouse_wheel(Etk_Object *object, 
Etk_Event_Mouse_Wheel *event, void *data)
+static void _etk_scrollbar_mouse_wheel_cb(Etk_Object *object, 
Etk_Event_Mouse_Wheel *event, void *data)
 {
    Etk_Range *scrollbar_range;
    
@@ -235,7 +236,10 @@
    if (!(range = ETK_RANGE(object)) || !(theme_object = 
ETK_WIDGET(range)->theme_object))
       return;
 
-   new_drag_size = (double)range->page_size / (range->upper - range->lower);
+   if (range->upper > range->lower)
+      new_drag_size = (double)range->page_size / (range->upper - range->lower);
+   else
+      new_drag_size = 1.0;
    if (ETK_IS_HSCROLLBAR(range))
       edje_object_part_drag_size_set(theme_object, "etk.dragable.bar", 
new_drag_size, 0.0);
    else
@@ -264,7 +268,10 @@
       edje_object_part_drag_value_set(theme_object, "etk.dragable.bar", 0.0, 
percent);
    
    /* Update the size of the drag button */
-   new_drag_size = (double)range->page_size / (range->upper - range->lower);
+   if (range->upper > range->lower)
+      new_drag_size = (double)range->page_size / (range->upper - range->lower);
+   else
+      new_drag_size = 1.0;
    if (ETK_IS_HSCROLLBAR(range))
       edje_object_part_drag_size_set(theme_object, "etk.dragable.bar", 
new_drag_size, 0.0);
    else
@@ -285,16 +292,11 @@
       scrollbar->scrolling_timer = NULL;
    }
 
+   scrollbar->first_scroll = ETK_TRUE;
    if (strcmp(emission, "scroll_left_start") == 0 || strcmp(emission, 
"scroll_up_start") == 0)
-   {
       scrollbar->scrolling_timer = ecore_timer_add(0.0, 
_etk_scrollbar_step_decrement_cb, scrollbar);
-      scrollbar->first_scroll = ETK_TRUE;
-   }
    else if (strcmp(emission, "scroll_right_start") == 0 || strcmp(emission, 
"scroll_down_start") == 0)
-   {
       scrollbar->scrolling_timer = ecore_timer_add(0.0, 
_etk_scrollbar_step_increment_cb, scrollbar);
-      scrollbar->first_scroll = ETK_TRUE;
-   }
 }
 
 /* Called when the user stops pressing an arrow of the scrollbar */
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_scrolled_view.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -3 -r1.6 -r1.7
--- etk_scrolled_view.h 2 Jun 2006 18:46:34 -0000       1.6
+++ etk_scrolled_view.h 28 Nov 2006 21:40:07 -0000      1.7
@@ -25,10 +25,10 @@
  */
 typedef enum Etk_Scrolled_View_Policy
 {
+   ETK_POLICY_AUTO,     /**< The scrollbar is shown and hidden automatically 
whether or not the child can fit
+                         * entirely in the scrolled view */
    ETK_POLICY_SHOW,     /**< The scrollbar is always visible */
    ETK_POLICY_HIDE,     /**< The scrollbar is always hidden */
-   ETK_POLICY_AUTO      /**< The scrollbar is shown and hidden automatically 
whether or not the child can fit
-                         * entirely in the scrolled view */
 } Etk_Scrolled_View_Policy;
 
 /**
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_types.h,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -3 -r1.57 -r1.58
--- etk_types.h 20 Oct 2006 17:51:44 -0000      1.57
+++ etk_types.h 28 Nov 2006 21:40:07 -0000      1.58
@@ -97,6 +97,7 @@
 typedef struct _Etk_Slider Etk_Slider;
 typedef struct _Etk_HSlider Etk_HSlider;
 typedef struct _Etk_VSlider Etk_VSlider;
+typedef struct Etk_Spinner Etk_Spinner;
 typedef struct Etk_Statusbar Etk_Statusbar;
 typedef struct _Etk_Table Etk_Table;
 typedef struct Etk_Text_View Etk_Text_View;
@@ -113,6 +114,10 @@
 typedef struct _Etk_Tree_Col Etk_Tree_Col;
 typedef struct _Etk_Tree_Model Etk_Tree_Model;
 typedef struct _Etk_Tree_Row Etk_Tree_Row;
+typedef struct Etk_Tree2 Etk_Tree2;
+typedef struct Etk_Tree2_Col Etk_Tree2_Col;
+typedef struct Etk_Tree2_Model Etk_Tree2_Model;
+typedef struct Etk_Tree2_Row Etk_Tree2_Row;
 typedef struct _Etk_Viewport Etk_Viewport;
 typedef struct Etk_Widget Etk_Widget;
 typedef struct _Etk_Window Etk_Window;
===================================================================
RCS file: /cvs/e/e17/proto/etk/src/lib/etk_widget.c,v
retrieving revision 1.86
retrieving revision 1.87
diff -u -3 -r1.86 -r1.87
--- etk_widget.c        29 Oct 2006 11:39:54 -0000      1.86
+++ etk_widget.c        28 Nov 2006 21:40:07 -0000      1.87
@@ -2472,6 +2472,11 @@
          evas_object_color_set(widget->content_object, 0, 0, 0, 0);
          evas_object_show(widget->content_object);
          edje_object_part_swallow(widget->theme_object, 
ETK_WIDGET_CONTENT_PART, widget->content_object);
+         
+         widget->inset.left = 0;
+         widget->inset.right = 0;
+         widget->inset.top = 0;
+         widget->inset.bottom = 0;
       }
    }
    else



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to