Enlightenment CVS committal
Author : raster
Project : e17
Module : libs/etk
Dir : e17/libs/etk/src/lib
Modified Files:
etk_viewport.c etk_viewport.h
Log Message:
add an object to viewport catch wheel and mouse drag etc. events when
clicking on "empty" space that doesnt hold widgets so it works properly.
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_viewport.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -3 -r1.16 -r1.17
--- etk_viewport.c 28 Sep 2007 19:56:13 -0000 1.16
+++ etk_viewport.c 19 Jun 2008 10:53:58 -0000 1.17
@@ -70,6 +70,7 @@
return;
viewport->clip = NULL;
+ viewport->event = NULL;
viewport->xscroll = 0;
viewport->yscroll = 0;
@@ -80,6 +81,7 @@
etk_signal_connect_by_code(ETK_WIDGET_REALIZED_SIGNAL,
ETK_OBJECT(viewport), ETK_CALLBACK(_etk_viewport_realized_cb), NULL);
etk_signal_connect_swapped_by_code(ETK_WIDGET_UNREALIZED_SIGNAL,
ETK_OBJECT(viewport), ETK_CALLBACK(etk_callback_set_null), &viewport->clip);
+ etk_signal_connect_swapped_by_code(ETK_WIDGET_UNREALIZED_SIGNAL,
ETK_OBJECT(viewport), ETK_CALLBACK(etk_callback_set_null), &viewport->event);
etk_signal_connect_by_code(ETK_CONTAINER_CHILD_ADDED_SIGNAL,
ETK_OBJECT(viewport), ETK_CALLBACK(_etk_viewport_child_added_cb), NULL);
etk_signal_connect_by_code(ETK_CONTAINER_CHILD_REMOVED_SIGNAL,
ETK_OBJECT(viewport), ETK_CALLBACK(_etk_viewport_child_removed_cb), NULL);
}
@@ -107,6 +109,8 @@
evas_object_move(viewport->clip, geometry.x, geometry.y);
evas_object_resize(viewport->clip, geometry.w, geometry.h);
+ evas_object_move(viewport->event, geometry.x, geometry.y);
+ evas_object_resize(viewport->event, geometry.w, geometry.h);
if ((child = etk_bin_child_get(ETK_BIN(viewport))))
{
@@ -184,6 +188,10 @@
etk_widget_clip_set(child, viewport->clip);
evas_object_show(viewport->clip);
}
+ viewport->event = evas_object_rectangle_add(evas);
+ etk_widget_member_object_add(ETK_WIDGET(viewport), viewport->event);
+ evas_object_color_set(viewport->event, 0, 0, 0, 0);
+ evas_object_show(viewport->event);
return ETK_TRUE;
}
===================================================================
RCS file: /cvs/e/e17/libs/etk/src/lib/etk_viewport.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- etk_viewport.h 19 Sep 2007 20:16:26 -0000 1.5
+++ etk_viewport.h 19 Jun 2008 10:53:58 -0000 1.6
@@ -32,7 +32,7 @@
/* Inherit from Etk_Bin */
Etk_Bin bin;
- Evas_Object *clip;
+ Evas_Object *clip, *event;
int xscroll, yscroll;
};
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs