Enlightenment CVS committal
Author : moom
Project : e17
Module : libs/etk
Dir : e17/libs/etk/src/lib
Modified Files:
etk_button.c etk_button.h etk_entry.c etk_spinner.c
etk_toolbar.c
Log Message:
* [Spinner] Use "etk.swallow.content" instead of "etk.swallow.text"
* [Button] Fix etk_button_style_set()
* Some cleanups
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_button.c,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -3 -r1.33 -r1.34
--- etk_button.c 18 Feb 2007 16:53:24 -0000 1.33
+++ etk_button.c 22 Feb 2007 04:36:25 -0000 1.34
@@ -62,7 +62,7 @@
* @brief Gets the type of an Etk_Button
* @return Returns the type of an Etk_Button
*/
-Etk_Type *etk_button_type_get()
+Etk_Type *etk_button_type_get(void)
{
static Etk_Type *button_type = NULL;
@@ -102,7 +102,7 @@
* @brief Creates a new button
* @return Returns the new button
*/
-Etk_Widget *etk_button_new()
+Etk_Widget *etk_button_new(void)
{
return etk_widget_new(ETK_BUTTON_TYPE, "theme_group", "button",
"focusable", ETK_TRUE, "focus_on_click", ETK_TRUE, NULL);
@@ -230,8 +230,9 @@
if (button->image)
{
- etk_signal_disconnect("child_removed", ETK_OBJECT(button->box),
ETK_CALLBACK(_etk_button_image_removed_cb));
+ etk_signal_block("child_removed", ETK_OBJECT(button->box),
ETK_CALLBACK(_etk_button_image_removed_cb));
etk_container_remove(ETK_CONTAINER(button->box),
ETK_WIDGET(button->image));
+ etk_signal_unblock("child_removed", ETK_OBJECT(button->box),
ETK_CALLBACK(_etk_button_image_removed_cb));
}
button->image = image;
@@ -340,9 +341,13 @@
if (button->box)
{
if (button->image)
- etk_container_remove(ETK_CONTAINER(button->box),
ETK_WIDGET(button->image));
+ {
+ etk_signal_block("child_removed", ETK_OBJECT(button->box),
ETK_CALLBACK(_etk_button_image_removed_cb));
+ etk_container_remove(ETK_CONTAINER(button->box),
ETK_WIDGET(button->image));
+ etk_signal_unblock("child_removed", ETK_OBJECT(button->box),
ETK_CALLBACK(_etk_button_image_removed_cb));
+ }
if (button->label)
- etk_container_remove(ETK_CONTAINER(button->box),
ETK_WIDGET(button->label));
+ etk_container_remove(ETK_CONTAINER(button->box),
ETK_WIDGET(button->label));
etk_object_destroy(ETK_OBJECT(button->box));
button->box = NULL;
}
@@ -363,9 +368,9 @@
}
/**
- * @brief Sets the stock size of the button's image
+ * @brief Sets the stock-size of the button's image
* @param button a button
- * @param size the stock size
+ * @param size the stock-size
*/
void etk_button_stock_size_set(Etk_Button *button, Etk_Stock_Size size)
{
@@ -387,9 +392,9 @@
}
/**
- * @brief Gets the stock size of the button's image
+ * @brief Gets the stock-size of the button's image
* @param button a button
- * @return Returns the stock size of the button's image
+ * @return Returns the stock-size of the button's image
*/
Etk_Stock_Size etk_button_stock_size_get(Etk_Button *button)
{
@@ -417,10 +422,10 @@
button->stock_size = ETK_STOCK_SMALL;
button->label = etk_label_new(NULL);
+ etk_label_alignment_set(ETK_LABEL(button->label), 0.5, 0.5);
etk_widget_internal_set(button->label, ETK_TRUE);
etk_widget_theme_parent_set(button->label, ETK_WIDGET(button));
etk_widget_pass_mouse_events_set(button->label, ETK_TRUE);
- etk_label_alignment_set(ETK_LABEL(button->label), 0.5, 0.5);
etk_container_add(ETK_CONTAINER(button), button->label);
button->pressed = _etk_button_pressed_handler;
@@ -467,7 +472,7 @@
break;
case ETK_BUTTON_STOCK_SIZE_PROPERTY:
etk_button_stock_size_set(button, etk_property_value_int_get(value));
- break;
+ break;
default:
break;
}
@@ -500,7 +505,7 @@
break;
case ETK_BUTTON_STOCK_SIZE_PROPERTY:
etk_property_value_int_set(value, button->stock_size);
- break;
+ break;
default:
break;
}
@@ -536,6 +541,7 @@
{
button->image = NULL;
_etk_button_rebuild(button);
+ etk_object_notify(ETK_OBJECT(button), "image");
}
}
@@ -655,10 +661,10 @@
if (!button->box)
{
- if (button->style == ETK_BUTTON_BOTH_VERT)
- button->box = etk_vbox_new(ETK_FALSE, 1);
- else
- button->box = etk_hbox_new(ETK_FALSE, 8);
+ if (button->style == ETK_BUTTON_BOTH_VERT)
+ button->box = etk_vbox_new(ETK_FALSE, 2);
+ else
+ button->box = etk_hbox_new(ETK_FALSE, 8);
etk_container_add(ETK_CONTAINER(button->alignment), button->box);
etk_widget_internal_set(button->box, ETK_TRUE);
etk_widget_pass_mouse_events_set(button->box, ETK_TRUE);
@@ -704,8 +710,10 @@
* @addtogroup Etk_Button
*
* @image html widgets/button.png
- * An Etk_Button usually contains only a label and an icon, but it can contain
any type of widgets.
- *
+ * An Etk_Button usually contains only a label and an icon, but it can contain
any type of widgets. @n
+ * You can change the label of the button with etk_button_label_set(), and you
can change its icon with
+ * etk_button_image_set()
+ *
* \par Object Hierarchy:
* - Etk_Object
* - Etk_Widget
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_button.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -3 -r1.13 -r1.14
--- etk_button.h 27 Jan 2007 05:14:32 -0000 1.13
+++ etk_button.h 22 Feb 2007 04:36:25 -0000 1.14
@@ -58,8 +58,8 @@
Etk_Stock_Size stock_size;
};
-Etk_Type *etk_button_type_get();
-Etk_Widget *etk_button_new();
+Etk_Type *etk_button_type_get(void);
+Etk_Widget *etk_button_new(void);
Etk_Widget *etk_button_new_with_label(const char *label);
Etk_Widget *etk_button_new_from_stock(Etk_Stock_Id stock_id);
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_entry.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -3 -r1.28 -r1.29
--- etk_entry.c 19 Feb 2007 01:05:27 -0000 1.28
+++ etk_entry.c 22 Feb 2007 04:36:25 -0000 1.29
@@ -162,16 +162,16 @@
if (position == ETK_ENTRY_IMAGE_PRIMARY)
{
if (entry->primary_image == image)
- return;
+ return;
if (entry->primary_image)
{
- etk_widget_parent_set(ETK_WIDGET(entry->primary_image), NULL);
- etk_widget_internal_set(ETK_WIDGET(entry->primary_image), ETK_FALSE);
- entry->primary_image = NULL;
+ etk_widget_parent_set(ETK_WIDGET(entry->primary_image), NULL);
+ etk_widget_internal_set(ETK_WIDGET(entry->primary_image), ETK_FALSE);
+ entry->primary_image = NULL;
}
if (!image)
- return;
+ return;
entry->primary_image = image;
ok = 1;
@@ -179,16 +179,16 @@
else if (position == ETK_ENTRY_IMAGE_SECONDARY)
{
if (entry->secondary_image == image)
- return;
+ return;
if (entry->secondary_image)
{
- etk_widget_parent_set(ETK_WIDGET(entry->secondary_image), NULL);
- etk_widget_internal_set(ETK_WIDGET(entry->secondary_image), ETK_FALSE);
- entry->secondary_image = NULL;
+ etk_widget_parent_set(ETK_WIDGET(entry->secondary_image), NULL);
+ etk_widget_internal_set(ETK_WIDGET(entry->secondary_image),
ETK_FALSE);
+ entry->secondary_image = NULL;
}
if (!image)
- return;
+ return;
entry->secondary_image = image;
ok = 1;
@@ -220,18 +220,18 @@
if (position == ETK_ENTRY_IMAGE_PRIMARY)
{
if (!(image = entry->primary_image))
- return;
+ return;
if (entry->primary_image_highlight == highlight)
- return;
+ return;
entry->primary_image_highlight = highlight;
}
else if (position == ETK_ENTRY_IMAGE_SECONDARY)
{
if (!(image = entry->secondary_image))
- return;
+ return;
if (entry->secondary_image_highlight == highlight)
- return;
+ return;
entry->secondary_image_highlight = highlight;
}
@@ -240,24 +240,24 @@
if (highlight)
{
etk_signal_connect("mouse_in", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_image_mouse_in_cb), entry);
+ ETK_CALLBACK(_etk_entry_image_mouse_in_cb), entry);
etk_signal_connect("mouse_out", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_image_mouse_out_cb), entry);
+ ETK_CALLBACK(_etk_entry_image_mouse_out_cb), entry);
etk_signal_connect("mouse_down", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_image_mouse_down_cb), entry);
+ ETK_CALLBACK(_etk_entry_image_mouse_down_cb), entry);
etk_signal_connect("mouse_up", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_image_mouse_up_cb), entry);
+ ETK_CALLBACK(_etk_entry_image_mouse_up_cb), entry);
}
else
{
etk_signal_disconnect("mouse_in", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_image_mouse_in_cb));
+ ETK_CALLBACK(_etk_entry_image_mouse_in_cb));
etk_signal_disconnect("mouse_out", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_image_mouse_out_cb));
+ ETK_CALLBACK(_etk_entry_image_mouse_out_cb));
etk_signal_disconnect("mouse_down", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_image_mouse_down_cb));
+ ETK_CALLBACK(_etk_entry_image_mouse_down_cb));
etk_signal_disconnect("mouse_up", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_image_mouse_up_cb));
+ ETK_CALLBACK(_etk_entry_image_mouse_up_cb));
evas_object_color_set(etk_image_evas_object_get(image), 255, 255, 255,
255);
}
@@ -277,7 +277,7 @@
image = etk_image_new_from_stock(ETK_STOCK_EDIT_CLEAR, ETK_STOCK_SMALL);
etk_entry_image_set(entry, ETK_ENTRY_IMAGE_SECONDARY, ETK_IMAGE(image));
etk_signal_connect("mouse_click", ETK_OBJECT(image),
- ETK_CALLBACK(_etk_entry_clear_button_cb), entry);
+ ETK_CALLBACK(_etk_entry_clear_button_cb), entry);
}
/**
@@ -388,10 +388,10 @@
switch (property_id)
{
case ETK_ENTRY_PASSWORD_MODE_PROPERTY:
- etk_entry_password_mode_set(entry, etk_property_value_bool_get(value));
- break;
+ etk_entry_password_mode_set(entry,
etk_property_value_bool_get(value));
+ break;
default:
- break;
+ break;
}
}
@@ -439,36 +439,36 @@
w = geometry.w;
if (entry->primary_image)
{
- image = entry->primary_image;
- etk_image_size_get(image, &i_geometry.w, &i_geometry.h);
+ image = entry->primary_image;
+ etk_image_size_get(image, &i_geometry.w, &i_geometry.h);
- i_geometry.x = geometry.x;
- i_geometry.y = geometry.y;
- i_geometry.w = i_geometry.h = ETK_MAX(i_geometry.w, i_geometry.h);
- if (geometry.h <= i_geometry.h)
- i_geometry.w = i_geometry.h = geometry.h;
- else
- i_geometry.y += (geometry.h - i_geometry.h)/2;
-
- etk_widget_size_allocate(ETK_WIDGET(image), i_geometry);
- x += i_geometry.w + entry->image_interspace;
- w -= i_geometry.w + entry->image_interspace;
+ i_geometry.x = geometry.x;
+ i_geometry.y = geometry.y;
+ i_geometry.w = i_geometry.h = ETK_MAX(i_geometry.w, i_geometry.h);
+ if (geometry.h <= i_geometry.h)
+ i_geometry.w = i_geometry.h = geometry.h;
+ else
+ i_geometry.y += (geometry.h - i_geometry.h)/2;
+
+ etk_widget_size_allocate(ETK_WIDGET(image), i_geometry);
+ x += i_geometry.w + entry->image_interspace;
+ w -= i_geometry.w + entry->image_interspace;
}
if (entry->secondary_image)
{
- image = entry->secondary_image;
- etk_image_size_get(image, &i_geometry.w, &i_geometry.h);
+ image = entry->secondary_image;
+ etk_image_size_get(image, &i_geometry.w, &i_geometry.h);
- i_geometry.x = geometry.x + geometry.w - i_geometry.w;
- i_geometry.y = geometry.y;
- i_geometry.w = i_geometry.h = ETK_MAX(i_geometry.w, i_geometry.h);
- if (geometry.h <= i_geometry.h)
- i_geometry.w = i_geometry.h = geometry.h;
- else
- i_geometry.y += (geometry.h - i_geometry.h)/2;
+ i_geometry.x = geometry.x + geometry.w - i_geometry.w;
+ i_geometry.y = geometry.y;
+ i_geometry.w = i_geometry.h = ETK_MAX(i_geometry.w, i_geometry.h);
+ if (geometry.h <= i_geometry.h)
+ i_geometry.w = i_geometry.h = geometry.h;
+ else
+ i_geometry.y += (geometry.h - i_geometry.h)/2;
- etk_widget_size_allocate(ETK_WIDGET(image), i_geometry);
- w -= i_geometry.w + entry->image_interspace;
+ etk_widget_size_allocate(ETK_WIDGET(image), i_geometry);
+ w -= i_geometry.w + entry->image_interspace;
}
evas_object_move(entry->editable_object, x, geometry.y);
@@ -803,8 +803,8 @@
return;
evas_object_color_set(etk_image_evas_object_get(image),
- entry->highlight_color.r, entry->highlight_color.g,
- entry->highlight_color.b, entry->highlight_color.a);
+ entry->highlight_color.r, entry->highlight_color.g,
+ entry->highlight_color.b, entry->highlight_color.a);
}
/* Called when the mouse moves out of the image */
@@ -847,8 +847,8 @@
return;
evas_object_color_set(etk_image_evas_object_get(image),
- entry->highlight_color.r, entry->highlight_color.g,
- entry->highlight_color.b, entry->highlight_color.a);
+ entry->highlight_color.r, entry->highlight_color.g,
+ entry->highlight_color.b, entry->highlight_color.a);
}
/* Called when the clear button is pressed */
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_spinner.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- etk_spinner.c 28 Jan 2007 17:46:04 -0000 1.5
+++ etk_spinner.c 22 Feb 2007 04:36:25 -0000 1.6
@@ -30,6 +30,7 @@
static void _etk_spinner_constructor(Etk_Spinner *spinner);
static void _etk_spinner_property_set(Etk_Object *object, int property_id,
Etk_Property_Value *value);
static void _etk_spinner_property_get(Etk_Object *object, int property_id,
Etk_Property_Value *value);
+static void _etk_spinner_size_allocate(Etk_Widget *widget, Etk_Geometry
geometry);
static void _etk_spinner_realize_cb(Etk_Object *object, void *data);
static void _etk_spinner_unrealize_cb(Etk_Object *object, void *data);
@@ -220,14 +221,14 @@
strcpy(spinner->value_format, "%.0f");
spinner->snap_to_ticks = ETK_FALSE;
spinner->wrap = ETK_FALSE;
-
spinner->step_timer = NULL;
spinner->successive_steps = 0;
-
spinner->editable_object = NULL;
spinner->selection_dragging = ETK_FALSE;
ETK_RANGE(spinner)->value_changed = _etk_spinner_value_changed_handler;
+ ETK_WIDGET(spinner)->size_allocate = _etk_spinner_size_allocate;
+
etk_signal_connect("realize", ETK_OBJECT(spinner),
ETK_CALLBACK(_etk_spinner_realize_cb), NULL);
etk_signal_connect("unrealize", ETK_OBJECT(spinner),
ETK_CALLBACK(_etk_spinner_unrealize_cb), NULL);
etk_signal_connect("key_down", ETK_OBJECT(spinner),
ETK_CALLBACK(_etk_spinner_key_down_cb), NULL);
@@ -251,16 +252,16 @@
switch (property_id)
{
case ETK_SPINNER_DIGITS_PROPERTY:
- etk_spinner_digits_set(spinner, etk_property_value_int_get(value));
- break;
+ etk_spinner_digits_set(spinner, etk_property_value_int_get(value));
+ break;
case ETK_SPINNER_SNAP_TO_TICKS_PROPERTY:
- etk_spinner_snap_to_ticks_set(spinner,
etk_property_value_bool_get(value));
- break;
+ etk_spinner_snap_to_ticks_set(spinner,
etk_property_value_bool_get(value));
+ break;
case ETK_SPINNER_WRAP_PROPERTY:
- etk_spinner_wrap_set(spinner, etk_property_value_bool_get(value));
- break;
+ etk_spinner_wrap_set(spinner, etk_property_value_bool_get(value));
+ break;
default:
- break;
+ break;
}
}
@@ -288,6 +289,18 @@
}
}
+/* Resizes the spinner to the allocated size */
+static void _etk_spinner_size_allocate(Etk_Widget *widget, Etk_Geometry
geometry)
+{
+ Etk_Spinner *spinner;
+
+ if (!(spinner = ETK_SPINNER(widget)))
+ return;
+
+ evas_object_move(spinner->editable_object, geometry.x, geometry.y);
+ evas_object_resize(spinner->editable_object, geometry.w, geometry.h);
+}
+
/**************************
*
* Callbacks and handlers
@@ -318,7 +331,7 @@
etk_editable_selection_hide(spinner->editable_object);
}
evas_object_show(spinner->editable_object);
- etk_widget_swallow_object(ETK_WIDGET(spinner), "etk.swallow.text",
spinner->editable_object);
+ etk_widget_member_object_add(ETK_WIDGET(spinner), spinner->editable_object);
evas_object_event_callback_add(spinner->editable_object,
EVAS_CALLBACK_MOUSE_IN,
_etk_spinner_editable_mouse_in_cb, spinner);
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_toolbar.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- etk_toolbar.c 6 Oct 2006 17:04:15 -0000 1.7
+++ etk_toolbar.c 22 Feb 2007 04:36:25 -0000 1.8
@@ -194,7 +194,7 @@
for (l = children; l; l = l->next)
{
if (ETK_IS_TOOL_ITEM(l->data))
- etk_button_style_set(ETK_BUTTON(l->data), button_style);
+ etk_button_style_set(ETK_BUTTON(l->data), button_style);
}
evas_list_free(children);
@@ -453,7 +453,7 @@
{
etk_widget_theme_parent_set(child, ETK_WIDGET(toolbar));
}
- etk_signal_emit_by_name("child_added", ETK_OBJECT(toolbar), NULL, child);
+ //etk_signal_emit_by_name("child_added", ETK_OBJECT(toolbar), NULL, child);
}
/* Called when a widget is removed from the toolbar's box */
-------------------------------------------------------------------------
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