|
From: Enlightenment S. <no-...@en...> - 2008-12-13 23:27:11
|
Log:
- don\'t longer use EvasCanvas in EvasObject private data; it\'s not needed and makes problems in some situations
- rewrote ecore_paint example to use new signal callback design
Author: andreas
Date: 2008-12-13 15:27:07 -0800 (Sat, 13 Dec 2008)
New Revision: 38134
Modified:
trunk/BINDINGS/cxx/examples/ecore/paint/main.cpp trunk/BINDINGS/cxx/examples/etk/embed/main.cpp trunk/BINDINGS/cxx/src/edje/eflpp_edje.cpp trunk/BINDINGS/cxx/src/edje/eflpp_edje.h trunk/BINDINGS/cxx/src/emotion/eflpp_emotion.cpp trunk/BINDINGS/cxx/src/esmart/eflpp_esmart.cpp trunk/BINDINGS/cxx/src/esmart/eflpp_esmart.h trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_container.cpp trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_group.cpp trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_textentry.cpp trunk/BINDINGS/cxx/src/etk/eflpp_etk.cpp trunk/BINDINGS/cxx/src/etk/eflpp_etk.h trunk/BINDINGS/cxx/src/evas/eflpp_evas.cpp trunk/BINDINGS/cxx/src/evas/eflpp_evas.h trunk/BINDINGS/cxx/src/ewl/eflpp_ewl.cpp
Modified: trunk/BINDINGS/cxx/examples/ecore/paint/main.cpp
===================================================================
--- trunk/BINDINGS/cxx/examples/ecore/paint/main.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/examples/ecore/paint/main.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -14,38 +14,40 @@
#define DOTSIZE 2
-static int callback( void* data, int type, void *event )
-{
- cout << "CALLBACK RECEIVED: type = " << type << ", pevent = " << event << "pdata = " << data << endl;
- return 0;
-}
-
class PaintArea : public EvasRectangle
{
public:
- PaintArea( EvasCanvas* evas ) : EvasRectangle( evas ), mouseDown( false )
+ PaintArea( EvasCanvas* evas ) :
+ EvasRectangle( evas ),
+ mouseDown( false ),
+ mEvas (evas)
{
setLayer( 10 );
setColor( 255, 255, 255, 0 ); // fully transparent, to catch the mouse events
setFocus( true );
+
+ signalHandleKeyUp.connect (sigc::mem_fun (this, &PaintArea::handleKeyUp));
+ signalHandleMouseUp.connect (sigc::mem_fun (this, &PaintArea::handleMouseUp));
+ signalHandleMouseDown.connect (sigc::mem_fun (this, &PaintArea::handleMouseDown));
+ signalHandleMouseMove.connect (sigc::mem_fun (this, &PaintArea::handleMouseMove));
}
virtual ~PaintArea() { };
- virtual bool handleMouseUp( const EvasMouseUpEvent& e )
+ virtual void handleMouseUp( const EvasMouseUpEvent& e )
{
cout << "PA::mouseUp" << endl;
mouseDown = false;
}
- virtual bool handleMouseDown( const EvasMouseDownEvent& e )
+ virtual void handleMouseDown( const EvasMouseDownEvent& e )
{
cout << "PA::mouseDown" << endl;
mouseDown = true;
- EvasObject* l = new EvasRectangle( e.data->canvas.x, e.data->canvas.y, 2, 2, canvas() );
+ EvasObject* l = new EvasRectangle( e.data->canvas.x, e.data->canvas.y, 2, 2, mEvas );
int b=200+(int) (55.0*rand()/(RAND_MAX+1.0));
l->setColor( b, b, b, 255 );
l->show();
}
- virtual bool handleMouseMove( const EvasMouseMoveEvent& e )
+ virtual void handleMouseMove( const EvasMouseMoveEvent& e )
{
cout << "PA::mouseMove" << endl;
if ( mouseDown )
@@ -53,13 +55,13 @@
int width = 2 + abs( e.data->cur.canvas.x - e.data->prev.canvas.x );
int height = 2 + abs( e.data->cur.canvas.y - e.data->prev.canvas.y );
cout << "width = " << width << ", height = " << height << endl;
- EvasObject* l = new EvasRectangle( e.data->cur.canvas.x - width/2, e.data->cur.canvas.y - height/2, width, height, canvas() );
+ EvasObject* l = new EvasRectangle( e.data->cur.canvas.x - width/2, e.data->cur.canvas.y - height/2, width, height, mEvas );
int b=200+(int) (55.0*rand()/(RAND_MAX+1.0));
l->setColor( b, b, b, 255 );
l->show();
}
}
- virtual bool handleKeyUp( const EvasKeyUpEvent& e )
+ virtual void handleKeyUp( const EvasKeyUpEvent& e )
{
cout << "PA:::keyUp - released '" << e.data->keyname << "'" << endl;
if ( strcmp( e.data->keyname, "Escape" ) == 0 )
@@ -87,6 +89,7 @@
}
private:
bool mouseDown;
+ EvasCanvas* mEvas;
};
int main( int argc, const char **argv )
@@ -124,3 +127,4 @@
return 0;
}
+
Modified: trunk/BINDINGS/cxx/examples/etk/embed/main.cpp
===================================================================
--- trunk/BINDINGS/cxx/examples/etk/embed/main.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/examples/etk/embed/main.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -46,7 +46,7 @@
#endif
EtkEmbed* embed = new EtkEmbed( evas );
- EvasEtk* evasetk = new EvasEtk( embed, evas, "evasetk" );
+ EvasEtk* evasetk = new EvasEtk( embed, "evasetk" );
embed->setFocus( true );
evasetk->move( 5, 5 );
Modified: trunk/BINDINGS/cxx/src/edje/eflpp_edje.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/edje/eflpp_edje.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/edje/eflpp_edje.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -22,7 +22,6 @@
// EvasEdje
//===============================================================================================
EvasEdje::EvasEdje( EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = edje_object_add( canvas->obj() );
init( name ? name : "edje" );
@@ -34,7 +33,6 @@
}
EvasEdje::EvasEdje( const char* filename, const char* groupname, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = edje_object_add( canvas->obj() );
init( name ? name : groupname );
@@ -47,7 +45,6 @@
}
EvasEdje::EvasEdje( int x, int y, const char* filename, const char* groupname, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = edje_object_add( canvas->obj() );
init( name ? name : groupname );
@@ -62,6 +59,11 @@
//resize( _size );
}
+/*EvasEdje::EvasEdje( Evas_Object* object, EvasCanvas* canvas, const char* name )
+{
+ o = object;
+}*/
+
bool EvasEdje::setFile( const char* filename, const char* groupname )
{
edje_object_file_set( o, filename, groupname );
@@ -182,13 +184,19 @@
void EdjePart::unswallow( EvasObject* object )
{
- //FIXME Move to EvasEdje?
edje_object_part_unswallow( _parent->obj(), object->obj() );
}
-EvasObject* EdjePart::swallow()
+Evas_Object* EdjePart::swallow()
{
- return EvasObject::objectLink( edje_object_part_swallow_get( _parent->obj(), _partname ) );
+ return edje_object_part_swallow_get( _parent->obj(), _partname );//, _parent->canvas ();
}
+const EvasObject* EdjePart::getObject ( const char* name )
+{
+ return EvasObject::objectLink( edje_object_part_object_get( static_cast <const Evas_Object*> (_parent->obj()), name ) );
}
+
+
+} // end namespace efl
+
Modified: trunk/BINDINGS/cxx/src/edje/eflpp_edje.h
===================================================================
--- trunk/BINDINGS/cxx/src/edje/eflpp_edje.h 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/edje/eflpp_edje.h 2008-12-13 23:27:07 UTC (rev 38134)
@@ -105,7 +105,10 @@
void swallow( EvasObject* );
void unswallow( EvasObject* );
- EvasObject* swallow();
+
+ Evas_Object* swallow();
+
+ const EvasObject* getObject ( const char* name );
private:
EvasEdje* _parent;
@@ -147,7 +150,12 @@
EvasEdje( EvasCanvas* canvas, const char* name = 0 );
EvasEdje( const char* filename, const char* groupname, EvasCanvas* canvas, const char* name = 0 );
EvasEdje( int x, int y, const char* filename, const char* groupname, EvasCanvas* canvas, const char* name = 0 );
+
+ /*!
+ * Connect to existing Evas_Object
+ */
//EvasEdje( Evas_Object* object, EvasCanvas* canvas, const char* name = 0 );
+
~EvasEdje();
/*
@@ -192,7 +200,7 @@
EdjePart* operator[]( const char* partname );
/*!
- * @param partname Loads a EdjePart into the EvasEdje.
+ * @param partname Access a EdjePart in the EvasEdje.
* @throw PartNotExistingException
*/
EdjePart* part( const char* partname );
Modified: trunk/BINDINGS/cxx/src/emotion/eflpp_emotion.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/emotion/eflpp_emotion.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/emotion/eflpp_emotion.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -15,7 +15,6 @@
//===============================================================================================
EvasEmotion::EvasEmotion( const char * module_filename, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = emotion_object_add( canvas->obj() );
init( name ? name : "emotion" );
@@ -23,7 +22,7 @@
}
EvasEmotion::EvasEmotion( const char* filename, const char * module_filename,
- EvasCanvas* canvas, const char* name ) :EvasObject( canvas )
+ EvasCanvas* canvas, const char* name )
{
o = emotion_object_add( canvas->obj() );
init( name ? name : filename );
@@ -33,7 +32,6 @@
EvasEmotion::EvasEmotion( int x, int y, const char* filename, const char * module_filename,
EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = emotion_object_add( canvas->obj() );
init( name ? name : filename );
@@ -44,7 +42,6 @@
EvasEmotion::EvasEmotion( int x, int y, int width, int height, const char* filename,
const char * module_filename, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
printf("EvasEmotion::EvasEmotion, begin \n");
o = emotion_object_add( canvas->obj() );
@@ -56,7 +53,8 @@
resize( width, height );
}
-void EvasEmotion::engineInit (const char * module_filename) {
+void EvasEmotion::engineInit (const char * module_filename)
+{
if (!emotion_object_init(o, module_filename))
return;
}
Modified: trunk/BINDINGS/cxx/src/esmart/eflpp_esmart.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/esmart/eflpp_esmart.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/esmart/eflpp_esmart.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -10,8 +10,7 @@
//===============================================================================================
// EvasEsmart
//===============================================================================================
-EvasEsmart::EvasEsmart(EvasCanvas *canvas, const char *type, const char *name )
- :EvasObject( canvas )
+EvasEsmart::EvasEsmart()
{
printf ("EvasEsmart constructor\n");
}
@@ -20,11 +19,11 @@
{
}
-Evas_Object *EvasEsmart::newEsmart( const char *name )
+Evas_Object *EvasEsmart::newEsmart(EvasCanvas *canvas, const char *name )
{
Evas_Object *evasobj;
- evasobj = evas_object_smart_add(canvas()->obj(), getEsmart(name));
+ evasobj = evas_object_smart_add(canvas->obj(), getEsmart(name));
//evas_object_smart_data_set(evasobj, this);
Modified: trunk/BINDINGS/cxx/src/esmart/eflpp_esmart.h
===================================================================
--- trunk/BINDINGS/cxx/src/esmart/eflpp_esmart.h 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/esmart/eflpp_esmart.h 2008-12-13 23:27:07 UTC (rev 38134)
@@ -21,13 +21,11 @@
class EvasEsmart : public EvasObject
{
public:
- EvasEsmart( EvasCanvas *canvas,
- const char* type = "unknown",
- const char* name = "(null)" );
+ EvasEsmart();
virtual ~EvasEsmart();
protected:
- Evas_Object *newEsmart( const char *name );
+ Evas_Object *newEsmart( EvasCanvas *canvas, const char *name );
Evas_Smart *getEsmart( const char *name );
// smart object handlers
Modified: trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_container.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_container.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_container.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -11,14 +11,12 @@
//===============================================================================================
EvasEsmartContainer::EvasEsmartContainer( EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
o = esmart_container_new( canvas->obj() );
init( name ? name : "esmart_container" );
}
EvasEsmartContainer::EvasEsmartContainer( Direction dir, EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
o = esmart_container_new( canvas->obj() );
init( name ? name : "esmart_container" );
@@ -27,7 +25,6 @@
}
EvasEsmartContainer::EvasEsmartContainer( int x, int y, Direction dir, EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
o = esmart_container_new( canvas->obj() );
@@ -38,7 +35,6 @@
}
EvasEsmartContainer::EvasEsmartContainer( int x, int y, int width, int height, Direction dir, EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
o = esmart_container_new( canvas->obj() );
init( name ? name : "esmart_container" );
Modified: trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_group.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_group.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_group.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -12,25 +12,22 @@
//===========================================================================//
EvasEsmartGroup::EvasEsmartGroup( EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
- o = newEsmart( name );
+ o = newEsmart( canvas, name );
init( name ? name : "esmart_group" );
}
EvasEsmartGroup::EvasEsmartGroup( int x, int y, EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
- o = newEsmart( name );
+ o = newEsmart( canvas, name );
init( name ? name : "esmart_group" );
move( x, y );
}
EvasEsmartGroup::EvasEsmartGroup( int x, int y, int width, int height, EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
- o = newEsmart( name );
+ o = newEsmart( canvas, name );
init( name ? name : "esmart_group" );
move( x, y );
Modified: trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_textentry.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_textentry.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/esmart/eflpp_esmart_textentry.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -11,14 +11,12 @@
//===========================================================================//
EvasEsmartTextEntry::EvasEsmartTextEntry( EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
o = esmart_text_entry_new( canvas->obj() );
init( name ? name : "esmart_textentry" );
}
EvasEsmartTextEntry::EvasEsmartTextEntry( int x, int y, EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
o = esmart_text_entry_new( canvas->obj() );
init( name ? name : "esmart_textentry" );
@@ -27,7 +25,6 @@
}
EvasEsmartTextEntry::EvasEsmartTextEntry( int x, int y, int width, int height, EvasCanvas* canvas, const char* name )
- :EvasEsmart( canvas )
{
o = esmart_text_entry_new( canvas->obj() );
init( name ? name : "esmart_textentry" );
Modified: trunk/BINDINGS/cxx/src/etk/eflpp_etk.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/etk/eflpp_etk.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/etk/eflpp_etk.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -169,8 +169,7 @@
// EvasEtk
//==========================================================================//
-EvasEtk::EvasEtk( EtkEmbed* ewlobj, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
+EvasEtk::EvasEtk( EtkEmbed* ewlobj, const char* name )
{
o = etk_embed_object_get( ETK_EMBED(ewlobj->obj()) );
Modified: trunk/BINDINGS/cxx/src/etk/eflpp_etk.h
===================================================================
--- trunk/BINDINGS/cxx/src/etk/eflpp_etk.h 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/etk/eflpp_etk.h 2008-12-13 23:27:07 UTC (rev 38134)
@@ -114,7 +114,7 @@
class EvasEtk : public EvasObject
{
public:
- EvasEtk( EtkEmbed* ewlobj, EvasCanvas* canvas, const char* name = 0 );
+ EvasEtk( EtkEmbed* ewlobj, const char* name = 0 );
~EvasEtk();
};
Modified: trunk/BINDINGS/cxx/src/evas/eflpp_evas.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/evas/eflpp_evas.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/evas/eflpp_evas.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -190,12 +190,17 @@
// EvasObject
//===============================================================================================
-EvasObject::EvasObject( EvasCanvas* canvas, const char* name )
+EvasObject::EvasObject (Evas_Object *eo)
+{
+ o = eo;
+}
+
+/*EvasObject::EvasObject( EvasCanvas* canvas, const char* name )
: _canvas( canvas )
{
AllocTag( this, type );
Dout( dc::notice, "EvasObject::Object " << "created new " << type << " (" << ( name ? name : "null" ) << ")" );
-}
+}*/
void EvasObject::init (const char *name)
{
@@ -406,9 +411,15 @@
EvasObject* EvasObject::objectLink( Evas_Object* evas_object )
{
- return static_cast<EvasObject*>( evas_object_data_get( evas_object, "obj_c++" ) );
+ void *v = evas_object_data_get( evas_object, "obj_c++" );
+ return static_cast<EvasObject*>( v );
}
+const EvasObject* EvasObject::objectLink( const Evas_Object* evas_object )
+{
+ return static_cast<const EvasObject*>( evas_object_data_get( evas_object, "obj_c++" ) );
+}
+
// PRIVATE
void EvasObject::registerCallbacks()
{
@@ -523,14 +534,12 @@
//===============================================================================================
EvasLine::EvasLine( EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_line_add( canvas->obj() );
init( name ? name : "line" );
}
EvasLine::EvasLine( int x1, int y1, int x2, int y2, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_line_add( canvas->obj() );
init( name ? name : "line" );
@@ -553,14 +562,12 @@
//===============================================================================================
EvasRectangle::EvasRectangle( EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_rectangle_add( canvas->obj() );
init( name ? name : "rectangle" );
}
EvasRectangle::EvasRectangle( int x, int y, int width, int height, EvasCanvas* canvas, const char* name )
-:EvasObject( canvas )
{
o = evas_object_rectangle_add( canvas->obj() );
init( name ? name : "rectangle" );
@@ -569,7 +576,6 @@
}
EvasRectangle::EvasRectangle( const Rect& r, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_rectangle_add( canvas->obj() );
init( name ? name : "rectangle" );
@@ -587,7 +593,6 @@
//===============================================================================================
EvasPolygon::EvasPolygon( EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_polygon_add( canvas->obj() );
init( name ? name : "polygon" );
@@ -614,7 +619,6 @@
//===============================================================================================
EvasText::EvasText( EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_text_add( canvas->obj() );
init( name ? name : "text" );
@@ -623,7 +627,6 @@
}
EvasText::EvasText( int x, int y, const char* text, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_text_add( canvas->obj() );
init( name ? name : "text" );;
@@ -634,7 +637,6 @@
}
EvasText::EvasText( const char* font, int size, const char* text, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_text_add( canvas->obj() );
init( name ? name : "text" );
@@ -644,7 +646,6 @@
}
EvasText::EvasText( const char* font, int size, int x, int y, const char* text, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_text_add( canvas->obj() );
init( name ? name : "text" );
@@ -654,11 +655,10 @@
setText( text );
}
-EvasText::EvasText( EvasText* ao )
- :EvasObject( ao->canvas() )
+EvasText::EvasText( EvasText* ao, EvasCanvas* canvas )
{
Dout( dc::notice, *this << " EvasText::EvasText copy constructor" );
- o = evas_object_text_add( ao->canvas()->obj() );
+ o = evas_object_text_add( canvas->obj() );
init( "text" );
setGeometry( ao->geometry() );
@@ -758,14 +758,12 @@
//===============================================================================================
EvasTextblock::EvasTextblock( EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_textblock_add( canvas->obj() );
init( name ? name : "textblock" );
}
EvasTextblock::EvasTextblock( int x, int y, const char* text, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_textblock_add( canvas->obj() );
init( name ? name : "textblock" );
@@ -799,7 +797,6 @@
//===============================================================================================
EvasImage::EvasImage( EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_image_add( canvas->obj() );
init( name ? name : "image" );
@@ -809,7 +806,6 @@
}
EvasImage::EvasImage( const char* filename, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_image_add( canvas->obj() );
init( name ? name : filename );
@@ -820,7 +816,6 @@
}
EvasImage::EvasImage( int x, int y, const char* filename, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_image_add( canvas->obj() );
init( name ? name : filename );
@@ -834,7 +829,6 @@
// attach temporary disabled
#if 0
EvasImage::EvasImage( Evas_Object* object, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas, "<attach>", name )
{
o = evas_object_image_add( canvas->obj() );
init( name ? name : type );
@@ -943,14 +937,12 @@
//===============================================================================================
EvasGradient::EvasGradient( EvasCanvas* canvas, const char* name )
- : EvasObject( canvas )
{
o = evas_object_gradient_add( canvas->obj() );
init( name ? name : "gradient" );
}
EvasGradient::EvasGradient( int x, int y, int width, int height, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
{
o = evas_object_gradient_add( canvas->obj() );
init( name ? name : "gradient" );
Modified: trunk/BINDINGS/cxx/src/evas/eflpp_evas.h
===================================================================
--- trunk/BINDINGS/cxx/src/evas/eflpp_evas.h 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/evas/eflpp_evas.h 2008-12-13 23:27:07 UTC (rev 38134)
@@ -111,16 +111,22 @@
protected:
// construction/destruction
- EvasObject( EvasCanvas* canvas,
- const char* name = "(null)" );
+ //EvasObject( EvasCanvas* canvas,
+ // const char* name = "(null)" );
public:
+ /*!
+ * Construct from existing Evas_Object
+ */
+ EvasObject (Evas_Object *eo);
+ EvasObject () {}
+
virtual ~EvasObject();
bool operator==(const EvasObject& rhs) { return rhs.o == o; };
/* don't use these */
Evas_Object* obj() const { return o; };
- EvasCanvas* canvas() const { return _canvas; }; // FIXME: Rename to parent() ?
+ //EvasCanvas* canvas() const { return _canvas; }; // FIXME: Rename to parent() ?
/* event signals */
sigc::signal <void, const EvasMouseInEvent&> signalHandleMouseIn;
@@ -193,17 +199,18 @@
private:
static EvasObject* objectLink( Evas_Object* evas_object = 0 );
+ static const EvasObject* objectLink( const Evas_Object* evas_object = 0 );
void registerCallbacks();
static void dispatcher( void *data, Evas *evas, Evas_Object *evas_object, void *event_info);
protected:
Evas_Object* o;
- EvasCanvas* _canvas;
+ //EvasCanvas* _canvas;
void init (const char *name);
private:
- EvasObject(); // disable default constructor
+ //EvasObject(); // disable default constructor
EvasObject( const EvasObject& ); // disable copy constructor
bool operator=(const EvasObject& ); // disable assignment operator
};
@@ -252,7 +259,7 @@
class EvasText : public EvasObject
{
public:
- EvasText( EvasText* ao );
+ EvasText( EvasText* ao, EvasCanvas* canvas );
EvasText( EvasCanvas* canvas, const char* name = 0 );
EvasText( int x, int y, const char* text, EvasCanvas* canvas, const char* name = 0 );
EvasText( const char* font, int size, const char* text, EvasCanvas* canvas, const char* name = 0 );
Modified: trunk/BINDINGS/cxx/src/ewl/eflpp_ewl.cpp
===================================================================
--- trunk/BINDINGS/cxx/src/ewl/eflpp_ewl.cpp 2008-12-13 21:21:34 UTC (rev 38133)
+++ trunk/BINDINGS/cxx/src/ewl/eflpp_ewl.cpp 2008-12-13 23:27:07 UTC (rev 38134)
@@ -113,8 +113,6 @@
//==========================================================================//
EvasEwl::EvasEwl( EwlEmbed* ewlobj, EvasCanvas* canvas, const char* name )
- :EvasObject( canvas )
-
{
#warning not sure whether this belongs here
#if 0 // [audifahrer]
|