Enlightenment CVS committal
Author : moom
Project : e17
Module : libs/etk
Dir : e17/libs/etk/src/lib
Modified Files:
etk_box.c etk_box.h etk_combobox.c etk_combobox.h etk_object.c
etk_slider.c etk_types.h
Log Message:
* [Box] Make insertion in a box faster
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_box.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -3 -r1.20 -r1.21
--- etk_box.c 22 Feb 2007 23:04:12 -0000 1.20
+++ etk_box.c 10 Mar 2007 00:57:58 -0000 1.21
@@ -10,14 +10,6 @@
* @{
*/
-typedef struct Etk_Box_Cell
-{
- Etk_Widget *child;
- Etk_Box_Group group;
- Etk_Box_Fill_Policy fill_policy;
- int padding;
-} Etk_Box_Cell;
-
enum Etk_Box_Property_Id
{
ETK_BOX_SPACING_PROPERTY,
@@ -41,7 +33,8 @@
static void _etk_vbox_size_allocate(Etk_Widget *widget, Etk_Geometry geometry);
static void _etk_box_insert_after_cell(Etk_Box *box, Etk_Widget *child,
Etk_Box_Group group, Etk_Box_Cell *after, Etk_Box_Fill_Policy fill_policy, int
padding);
-static Etk_Box_Cell *_etk_box_cell_get(Etk_Box *box, Etk_Widget *widget);
+static Etk_Box_Cell *_etk_box_cell_get(Etk_Widget *widget);
+static Etk_Box_Cell *_etk_box_cell_nth_get(Etk_Box *box, Etk_Box_Group group,
int n);
/**************************
@@ -157,13 +150,9 @@
*/
void etk_box_append(Etk_Box *box, Etk_Widget *child, Etk_Box_Group group,
Etk_Box_Fill_Policy fill_policy, int padding)
{
- Etk_Box_Cell *after_cell;
-
if (!box || !child)
return;
-
- after_cell = evas_list_data(evas_list_last(box->cells[group]));
- _etk_box_insert_after_cell(box, child, group, after_cell, fill_policy,
padding);
+ _etk_box_insert_after_cell(box, child, group, box->last_cell[group],
fill_policy, padding);
}
/**
@@ -184,7 +173,7 @@
if (!box || !child)
return;
- after_cell = _etk_box_cell_get(box, after);
+ after_cell = _etk_box_cell_get(after);
_etk_box_insert_after_cell(box, child, group, after_cell, fill_policy,
padding);
}
@@ -208,10 +197,10 @@
if (pos <= 0)
after_cell = NULL;
- else if (pos >= evas_list_count(box->cells[group]))
- after_cell = evas_list_data(evas_list_last(box->cells[group]));
+ else if (pos >= box->cells_count[group])
+ after_cell = box->last_cell[group];
else
- after_cell = evas_list_nth(box->cells[group], pos - 1);
+ after_cell = _etk_box_cell_nth_get(box, group, pos - 1);
_etk_box_insert_after_cell(box, child, group, after_cell, fill_policy,
padding);
}
@@ -230,7 +219,7 @@
if (!box)
return NULL;
- if (!(cell = evas_list_nth(box->cells[group], pos)))
+ if (!(cell = _etk_box_cell_nth_get(box, group, pos)))
return NULL;
else
return cell->child;
@@ -248,25 +237,16 @@
void etk_box_child_position_set(Etk_Box *box, Etk_Widget *child, Etk_Box_Group
group, int pos)
{
Etk_Box_Cell *cell;
- Evas_List *l;
+ Etk_Box_Fill_Policy fill_policy;
+ int padding;
- if (!box || !child || !(cell = _etk_box_cell_get(box, child)))
+ if (!box || !child || !(cell = _etk_box_cell_get(child)))
return;
- box->cells[cell->group] = evas_list_remove(box->cells[cell->group], cell);
- cell->group = group;
-
- if (pos <= 0)
- box->cells[group] = evas_list_prepend(box->cells[group], cell);
- else if (pos >= evas_list_count(box->cells[group]))
- box->cells[group] = evas_list_append(box->cells[group], cell);
- else
- {
- l = evas_list_nth_list(box->cells[group], pos - 1);
- box->cells[group] = evas_list_append_relative_list(box->cells[group],
cell, l);
- }
-
- etk_widget_redraw_queue(ETK_WIDGET(box));
+ padding = cell->padding;
+ fill_policy = cell->fill_policy;
+ etk_widget_parent_set(child, NULL);
+ etk_box_insert_at(box, child, group, pos, fill_policy, padding);
}
/**
@@ -279,30 +259,27 @@
*/
Etk_Bool etk_box_child_position_get(Etk_Box *box, Etk_Widget *child,
Etk_Box_Group *group, int *pos)
{
- Evas_List *l;
- Etk_Box_Cell *cell;
+ Etk_Box_Cell *cell, *c;
int i;
if (!box || !child)
return ETK_FALSE;
- if (!(cell = _etk_box_cell_get(box, child)))
+ if (!(cell = _etk_box_cell_get(child)))
return ETK_FALSE;
- else
+
+ for (i = 0, c = box->first_cell[cell->group]; c; i++, c = c->next)
{
- for (i = 0, l = box->cells[cell->group]; l; i++, l = l->next)
+ if (cell == c)
{
- if (cell == (Etk_Box_Cell *)l->data)
- {
- if (group)
- *group = cell->group;
- if (pos)
- *pos = i;
- return ETK_TRUE;
- }
+ if (group)
+ *group = cell->group;
+ if (pos)
+ *pos = i;
+ return ETK_TRUE;
}
- return ETK_FALSE;
}
+ return ETK_FALSE;
}
/**
@@ -319,7 +296,7 @@
if (!box || !child)
return;
- if ((cell = _etk_box_cell_get(box, child)))
+ if ((cell = _etk_box_cell_get(child)))
{
cell->fill_policy = fill_policy;
cell->padding = padding;
@@ -342,7 +319,7 @@
if (!box || !child)
return ETK_FALSE;
- if ((cell = _etk_box_cell_get(box, child)))
+ if ((cell = _etk_box_cell_get(child)))
{
if (fill_policy)
*fill_policy = cell->fill_policy;
@@ -424,10 +401,10 @@
if (!box)
return;
- box->cells[ETK_BOX_START] = NULL;
- box->cells[ETK_BOX_END] = NULL;
- box->request_sizes[ETK_BOX_START] = NULL;
- box->request_sizes[ETK_BOX_END] = NULL;
+ box->first_cell[ETK_BOX_START] = box->first_cell[ETK_BOX_END] = NULL;
+ box->last_cell[ETK_BOX_START] = box->last_cell[ETK_BOX_END] = NULL;
+ box->cells_count[ETK_BOX_START] = box->cells_count[ETK_BOX_END] = 0;
+ box->request_sizes[ETK_BOX_START] = box->request_sizes[ETK_BOX_END] = NULL;
box->spacing = 0;
box->homogeneous = ETK_FALSE;
@@ -439,6 +416,7 @@
/* Destroys the box */
static void _etk_box_destructor(Etk_Box *box)
{
+ Etk_Box_Cell *cell, *next;
int i;
if (!box)
@@ -446,10 +424,10 @@
for (i = 0; i < 2; i++)
{
- while (box->cells[i])
+ for (cell = box->first_cell[i]; cell; cell = next)
{
- free(box->cells[i]->data);
- box->cells[i] = evas_list_remove_list(box->cells[i], box->cells[i]);
+ next = cell->next;
+ free(cell);
}
free(box->request_sizes[i]);
}
@@ -512,10 +490,20 @@
if (!(box = ETK_BOX(container)) || !widget || (widget->parent !=
ETK_WIDGET(box)))
return;
- if ((cell = _etk_box_cell_get(box, widget)))
+ if ((cell = _etk_box_cell_get(widget)))
{
- box->cells[cell->group] = evas_list_remove(box->cells[cell->group],
cell);
- ETK_WIDGET(box)->focus_order =
evas_list_remove(ETK_WIDGET(box)->focus_order, widget);
+ if (cell->prev)
+ cell->prev->next = cell->next;
+ if (cell->next)
+ cell->next->prev = cell->prev;
+ if (cell == box->first_cell[cell->group])
+ box->first_cell[cell->group] = cell->next;
+ if (cell == box->last_cell[cell->group])
+ box->last_cell[cell->group] = cell->prev;
+ box->cells_count[cell->group]--;
+
+ ETK_WIDGET(box)->focus_order =
evas_list_remove_list(ETK_WIDGET(box)->focus_order, cell->focus_node);
+ etk_object_data_set(ETK_OBJECT(widget), "_Etk_Box::Cell", NULL);
etk_widget_parent_set_full(widget, NULL, ETK_FALSE);
free(cell);
@@ -528,7 +516,7 @@
static Evas_List *_etk_box_children_get(Etk_Container *container)
{
Etk_Box *box;
- Evas_List *children, *l;
+ Evas_List *children;
Etk_Box_Cell *cell;
int i;
@@ -538,11 +526,8 @@
children = NULL;
for (i = 0; i < 2; i++)
{
- for (l = box->cells[i]; l; l = l->next)
- {
- cell = l->data;
+ for (cell = box->first_cell[i]; cell; cell = cell->next)
children = evas_list_append(children, cell->child);
- }
}
return children;
@@ -565,14 +550,13 @@
/* Calculates the ideal size of the hbox */
static void _etk_hbox_size_request(Etk_Widget *widget, Etk_Size *size)
{
- Evas_List *l;
Etk_HBox *hbox;
Etk_Box *box;
Etk_Container *container;
Etk_Box_Cell *cell;
Etk_Widget *child;
Etk_Size child_size;
- int num_children, num_visible_children;
+ int num_visible_children;
int i, j;
if (!(hbox = ETK_HBOX(widget)) || !size)
@@ -586,11 +570,9 @@
for (i = 0; i < 2; i++)
{
- num_children = evas_list_count(box->cells[i]);
- box->request_sizes[i] = realloc(box->request_sizes[i], num_children *
sizeof(int));
- for (l = box->cells[i], j = 0; l; l = l->next, j++)
+ box->request_sizes[i] = realloc(box->request_sizes[i],
box->cells_count[i] * sizeof(int));
+ for (cell = box->first_cell[i], j = 0; cell; cell = cell->next, j++)
{
- cell = l->data;
child = cell->child;
box->request_sizes[i][j] = 0;
@@ -620,8 +602,7 @@
{
for (i = 0; i < 2; i++)
{
- num_children = evas_list_count(box->cells[i]);
- for (j = 0; j < num_children; j++)
+ for (j = 0; j < box->cells_count[i]; j++)
box->request_sizes[i][j] = size->w;
}
size->w *= num_visible_children;
@@ -636,7 +617,6 @@
/* Resizes the hbox to the allocated size */
static void _etk_hbox_size_allocate(Etk_Widget *widget, Etk_Geometry geometry)
{
- Evas_List *l;
Etk_HBox *hbox;
Etk_Box *box;
Etk_Container *container;
@@ -672,11 +652,10 @@
ratio = (float)allocated_size.w / requested_size.w;
for (i = 0; i < 2; i++)
{
- j = (i == ETK_BOX_START) ? 0 : (evas_list_count(box->cells[i]) - 1);
- l = (i == ETK_BOX_START) ? box->cells[i] :
evas_list_last(box->cells[i]);
- while (l)
+ j = (i == ETK_BOX_START) ? 0 : box->cells_count[i] - 1;
+ cell = (i == ETK_BOX_START) ? box->first_cell[i] : box->last_cell[i];
+ while (cell)
{
- cell = l->data;
child = cell->child;
if (etk_widget_is_visible(child))
@@ -705,7 +684,7 @@
etk_widget_size_allocate(child, child_geometry);
}
- l = (i == ETK_BOX_START) ? l->next : l->prev;
+ cell = (i == ETK_BOX_START) ? cell->next : cell->prev;
j = (i == ETK_BOX_START) ? (j + 1) : (j - 1);
}
}
@@ -716,9 +695,8 @@
for (i = 0; i < 2; i++)
{
- for (l = box->cells[i]; l; l = l->next)
+ for (cell = box->first_cell[i]; cell; cell = cell->next)
{
- cell = l->data;
child = cell->child;
if (!etk_widget_is_visible(child))
@@ -736,11 +714,10 @@
for (i = 0; i < 2; i++)
{
- j = (i == ETK_BOX_START) ? 0 : (evas_list_count(box->cells[i]) - 1);
- l = (i == ETK_BOX_START) ? box->cells[i] :
evas_list_last(box->cells[i]);
- while (l)
+ j = (i == ETK_BOX_START) ? 0 : box->cells_count[i] - 1;
+ cell = (i == ETK_BOX_START) ? box->first_cell[i] : box->last_cell[i];
+ while (cell)
{
- cell = l->data;
child = cell->child;
if (etk_widget_is_visible(child))
@@ -771,7 +748,7 @@
etk_widget_size_allocate(child, child_geometry);
}
- l = (i == ETK_BOX_START) ? l->next : l->prev;
+ cell = (i == ETK_BOX_START) ? cell->next : cell->prev;
j = (i == ETK_BOX_START) ? (j + 1) : (j - 1);
}
}
@@ -795,14 +772,13 @@
/* Calculates the ideal size of the vbox */
static void _etk_vbox_size_request(Etk_Widget *widget, Etk_Size *size)
{
- Evas_List *l;
Etk_VBox *vbox;
Etk_Box *box;
Etk_Container *container;
Etk_Box_Cell *cell;
Etk_Widget *child;
Etk_Size child_size;
- int num_children, num_visible_children;
+ int num_visible_children;
int i, j;
if (!(vbox = ETK_VBOX(widget)) || !size)
@@ -816,11 +792,9 @@
for (i = 0; i < 2; i++)
{
- num_children = evas_list_count(box->cells[i]);
- box->request_sizes[i] = realloc(box->request_sizes[i], num_children *
sizeof(int));
- for (l = box->cells[i], j = 0; l; l = l->next, j++)
+ box->request_sizes[i] = realloc(box->request_sizes[i],
box->cells_count[i] * sizeof(int));
+ for (cell = box->first_cell[i], j = 0; cell; cell = cell->next, j++)
{
- cell = l->data;
child = cell->child;
box->request_sizes[i][j] = 0;
@@ -850,8 +824,7 @@
{
for (i = 0; i < 2; i++)
{
- num_children = evas_list_count(box->cells[i]);
- for (j = 0; j < num_children; j++)
+ for (j = 0; j < box->cells_count[i]; j++)
box->request_sizes[i][j] = size->h;
}
size->h *= num_visible_children;
@@ -866,7 +839,6 @@
/* Resizes the vbox to the allocated size */
static void _etk_vbox_size_allocate(Etk_Widget *widget, Etk_Geometry geometry)
{
- Evas_List *l;
Etk_VBox *vbox;
Etk_Box *box;
Etk_Container *container;
@@ -902,11 +874,10 @@
ratio = (float)allocated_size.h / requested_size.h;
for (i = 0; i < 2; i++)
{
- j = (i == ETK_BOX_START) ? 0 : (evas_list_count(box->cells[i]) - 1);
- l = (i == ETK_BOX_START) ? box->cells[i] :
evas_list_last(box->cells[i]);
- while (l)
+ j = (i == ETK_BOX_START) ? 0 : box->cells_count[i] - 1;
+ cell = (i == ETK_BOX_START) ? box->first_cell[i] : box->last_cell[i];
+ while (cell)
{
- cell = l->data;
child = cell->child;
if (etk_widget_is_visible(child))
@@ -935,7 +906,7 @@
etk_widget_size_allocate(child, child_geometry);
}
- l = (i == ETK_BOX_START) ? l->next : l->prev;
+ cell = (i == ETK_BOX_START) ? cell->next : cell->prev;
j = (i == ETK_BOX_START) ? (j + 1) : (j - 1);
}
}
@@ -946,9 +917,8 @@
for (i = 0; i < 2; i++)
{
- for (l = box->cells[i]; l; l = l->next)
+ for (cell = box->first_cell[i]; cell; cell = cell->next)
{
- cell = l->data;
child = cell->child;
if (!etk_widget_is_visible(child))
@@ -966,11 +936,10 @@
for (i = 0; i < 2; i++)
{
- j = (i == ETK_BOX_START) ? 0 : (evas_list_count(box->cells[i]) - 1);
- l = (i == ETK_BOX_START) ? box->cells[i] :
evas_list_last(box->cells[i]);
- while (l)
+ j = (i == ETK_BOX_START) ? 0 : box->cells_count[i] - 1;
+ cell = (i == ETK_BOX_START) ? box->first_cell[i] : box->last_cell[i];
+ while (cell)
{
- cell = l->data;
child = cell->child;
if (etk_widget_is_visible(child))
@@ -1001,7 +970,7 @@
etk_widget_size_allocate(child, child_geometry);
}
- l = (i == ETK_BOX_START) ? l->next : l->prev;
+ cell = (i == ETK_BOX_START) ? cell->next : cell->prev;
j = (i == ETK_BOX_START) ? (j + 1) : (j - 1);
}
}
@@ -1017,7 +986,7 @@
/* Adds a new widget to the box, after the cell "after" */
static void _etk_box_insert_after_cell(Etk_Box *box, Etk_Widget *child,
Etk_Box_Group group, Etk_Box_Cell *after, Etk_Box_Fill_Policy fill_policy, int
padding)
{
- Etk_Box_Cell *cell, *c;
+ Etk_Box_Cell *cell;
Etk_Widget *box_widget;
if (!(box_widget = ETK_WIDGET(box)) || !child)
@@ -1030,54 +999,87 @@
}
cell = malloc(sizeof(Etk_Box_Cell));
+ cell->prev = NULL;
+ cell->next = NULL;
cell->child = child;
+ cell->focus_node = NULL;
cell->group = group;
cell->fill_policy = fill_policy;
cell->padding = padding;
- if (!after)
+ if (after)
{
- if (group == ETK_BOX_START)
- box_widget->focus_order = evas_list_prepend(box_widget->focus_order,
child);
+ cell->prev = after;
+ cell->next = after->next;
+ if (after->next)
+ after->next->prev = cell;
else
- {
- if ((c = evas_list_data(box->cells[ETK_BOX_END])))
- box_widget->focus_order =
evas_list_prepend_relative(box_widget->focus_order, child, c->child);
- else
- box_widget->focus_order =
evas_list_append(box_widget->focus_order, child);
- }
- box->cells[group] = evas_list_prepend(box->cells[group], cell);
+ box->last_cell[group] = cell;
+ after->next = cell;
+
+ box_widget->focus_order =
evas_list_append_relative_list(box_widget->focus_order, child,
after->focus_node);
+ cell->focus_node = evas_list_next(after->focus_node);
}
else
{
- box_widget->focus_order =
evas_list_append_relative(box_widget->focus_order, child, after->child);
- box->cells[group] = evas_list_append_relative(box->cells[group], cell,
after);
+ cell->next = box->first_cell[group];
+ if (box->first_cell[group])
+ box->first_cell[group]->prev = cell;
+ else
+ box->last_cell[group] = cell;
+ box->first_cell[group] = cell;
+
+ if (group == ETK_BOX_START || !box->last_cell[ETK_BOX_START])
+ {
+ box_widget->focus_order = evas_list_prepend(box_widget->focus_order,
child);
+ cell->focus_node = box_widget->focus_order;
+ }
+ else
+ {
+ box_widget->focus_order =
evas_list_append_relative_list(box_widget->focus_order,
+ child, box->last_cell[ETK_BOX_START]->focus_node);
+ cell->focus_node =
evas_list_next(box->last_cell[ETK_BOX_START]->focus_node);
+ }
}
+ box->cells_count[group]++;
+
+ etk_object_data_set(ETK_OBJECT(child), "_Etk_Box::Cell", cell);
etk_widget_parent_set(child, ETK_WIDGET(box));
etk_signal_emit_by_name("child_added", ETK_OBJECT(box), NULL, child);
}
/* Gets the cell of the box containing the widget */
-static Etk_Box_Cell *_etk_box_cell_get(Etk_Box *box, Etk_Widget *widget)
+static Etk_Box_Cell *_etk_box_cell_get(Etk_Widget *widget)
+{
+ if (!widget)
+ return NULL;
+ return etk_object_data_get(ETK_OBJECT(widget), "_Etk_Box::Cell");
+}
+
+/* Gets the nth cell of the box in the corresponding group */
+static Etk_Box_Cell *_etk_box_cell_nth_get(Etk_Box *box, Etk_Box_Group group,
int n)
{
- int i;
- Evas_List *l;
Etk_Box_Cell *cell;
+ int i;
- if (!box || !widget)
+ if (!box || box->cells_count[group] <= 0)
return NULL;
- for (i = 0; i < 2; i++)
+ if (n < (box->cells_count[group] / 2))
{
- for (l = box->cells[i]; l; l = l->next)
- {
- cell = l->data;
- if (cell->child == widget)
- return cell;
- }
+ cell = box->first_cell[group];
+ for (i = 0; i < n && cell->next; i++)
+ cell = cell->next;
}
- return NULL;
+ else
+ {
+ cell = box->last_cell[group];
+ for (i = 0; i < (box->cells_count[group] - n - 1) && cell->prev; i++)
+ cell = cell->prev;
+ }
+
+ return cell;
}
/** @} */
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_box.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- etk_box.h 22 Feb 2007 22:24:25 -0000 1.10
+++ etk_box.h 10 Mar 2007 00:57:58 -0000 1.11
@@ -58,6 +58,24 @@
/**
+ * @internal
+ * @brief A column of a combobox: a combobox should have at least a column,
+ * and each column contains a specific type of widget (see
Etk_Combobox_Column_Type)
+ */
+struct Etk_Box_Cell
+{
+ /* private: */
+ Etk_Box_Cell *prev;
+ Etk_Box_Cell *next;
+
+ Etk_Widget *child;
+ Evas_List *focus_node;
+ Etk_Box_Group group;
+ Etk_Box_Fill_Policy fill_policy;
+ int padding;
+};
+
+/**
* @brief @widget An abstract class for a box
* @structinfo
*/
@@ -69,7 +87,9 @@
int spacing;
Etk_Bool homogeneous;
- Evas_List *cells[2];
+ Etk_Box_Cell *first_cell[2];
+ Etk_Box_Cell *last_cell[2];
+ int cells_count[2];
int *request_sizes[2];
};
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_combobox.c,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -3 -r1.39 -r1.40
--- etk_combobox.c 9 Mar 2007 02:53:05 -0000 1.39
+++ etk_combobox.c 10 Mar 2007 00:57:58 -0000 1.40
@@ -12,8 +12,6 @@
#include "etk_signal_callback.h"
#include "etk_utils.h"
-/*TODO/FIXME: what if the theme item border are smaller/bigger than usual?!?!
(important!!) */
-
/**
* @addtogroup Etk_Combobox
* @{
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_combobox.h,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -3 -r1.17 -r1.18
--- etk_combobox.h 9 Mar 2007 02:53:05 -0000 1.17
+++ etk_combobox.h 10 Mar 2007 00:57:58 -0000 1.18
@@ -11,6 +11,7 @@
* - selected/unselected signal for items
* - Should items could have children (i.e sub-windows) ?
* - make sure the items' children are not reparented
+ * - etk_combobox_items_height_set() should maybe use theme-data to calculate
the right item-height
*/
/**
@@ -54,9 +55,9 @@
/**
+ * @internal
* @brief A column of a combobox: a combobox should have at least a column,
* and each column contains a specific type of widget (see
Etk_Combobox_Column_Type)
- * @structinfo
*/
struct Etk_Combobox_Column
{
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_object.c,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -3 -r1.33 -r1.34
--- etk_object.c 8 Mar 2007 18:16:01 -0000 1.33
+++ etk_object.c 10 Mar 2007 00:57:58 -0000 1.34
@@ -171,9 +171,7 @@
if (!object || object->destroy_me)
return;
-
- if (!strcmp("Etk_Bin", object->type->name))
- printf("Bin Destroyed!!\n");
+
etk_object_name_set(object, NULL);
/* Sets the weak-pointers to NULL */
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_slider.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -3 -r1.18 -r1.19
--- etk_slider.c 21 Feb 2007 18:31:36 -0000 1.18
+++ etk_slider.c 10 Mar 2007 00:57:58 -0000 1.19
@@ -29,7 +29,7 @@
static void _etk_slider_realize_cb(Etk_Object *object, void *data);
static void _etk_slider_key_down_cb(Etk_Object *object, Etk_Event_Key_Down
*event, void *data);
-static void _etk_slider_mouse_wheel(Etk_Object *object, Etk_Event_Mouse_Wheel
*event, void *data);
+static void _etk_slider_mouse_wheel_cb(Etk_Object *object,
Etk_Event_Mouse_Wheel *event, void *data);
static void _etk_slider_cursor_dragged_cb(void *data, Evas_Object *obj, const
char *emission, const char *source);
static void _etk_slider_value_changed_handler(Etk_Range *range, double value);
static void _etk_slider_range_changed_cb(Etk_Object *object, const char
*property_name, void *data);
@@ -256,7 +256,7 @@
ETK_RANGE(slider)->value_changed = _etk_slider_value_changed_handler;
etk_signal_connect("realize", ETK_OBJECT(slider),
ETK_CALLBACK(_etk_slider_realize_cb), NULL);
etk_signal_connect("key_down", ETK_OBJECT(slider),
ETK_CALLBACK(_etk_slider_key_down_cb), NULL);
- etk_signal_connect("mouse_wheel", ETK_OBJECT(slider),
ETK_CALLBACK(_etk_slider_mouse_wheel), NULL);
+ etk_signal_connect("mouse_wheel", ETK_OBJECT(slider),
ETK_CALLBACK(_etk_slider_mouse_wheel_cb), NULL);
etk_object_notification_callback_add(ETK_OBJECT(slider), "lower",
_etk_slider_range_changed_cb, NULL);
etk_object_notification_callback_add(ETK_OBJECT(slider), "upper",
_etk_slider_range_changed_cb, NULL);
}
@@ -376,7 +376,7 @@
}
/* Called when the user wants to change the value with the mouse wheel */
-static void _etk_slider_mouse_wheel(Etk_Object *object, Etk_Event_Mouse_Wheel
*event, void *data)
+static void _etk_slider_mouse_wheel_cb(Etk_Object *object,
Etk_Event_Mouse_Wheel *event, void *data)
{
Etk_Range *range;
int dir;
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_types.h,v
retrieving revision 1.63
retrieving revision 1.64
diff -u -3 -r1.63 -r1.64
--- etk_types.h 20 Feb 2007 20:50:19 -0000 1.63
+++ etk_types.h 10 Mar 2007 00:57:58 -0000 1.64
@@ -34,6 +34,7 @@
typedef struct Etk_Box Etk_Box;
typedef struct Etk_HBox Etk_HBox;
typedef struct Etk_VBox Etk_VBox;
+typedef struct Etk_Box_Cell Etk_Box_Cell;
typedef struct Etk_Button Etk_Button;
typedef struct Etk_Cache Etk_Cache;
typedef struct Etk_Canvas Etk_Canvas;
-------------------------------------------------------------------------
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs