2009-07-15 14:33:29 -07:00
|
|
|
#ifndef EFLPP_EDJEPART_H
|
|
|
|
#define EFLPP_EDJEPART_H
|
|
|
|
|
|
|
|
/* STL */
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
/* EFL++ */
|
2009-11-29 13:29:43 -08:00
|
|
|
#include <eflxx/Common.h>
|
2009-07-15 14:33:29 -07:00
|
|
|
#include <eflxx/CountedPtr.h>
|
2009-11-29 13:29:43 -08:00
|
|
|
#include <evasxx/Object.h>
|
2009-07-15 14:33:29 -07:00
|
|
|
|
2010-11-30 15:04:07 -08:00
|
|
|
/* EFL */
|
|
|
|
#include <Edje.h>
|
|
|
|
|
2009-07-15 14:33:29 -07:00
|
|
|
using std::string;
|
|
|
|
|
2009-11-29 13:29:43 -08:00
|
|
|
namespace Edjexx {
|
2009-07-15 14:33:29 -07:00
|
|
|
|
2010-12-06 14:01:36 -08:00
|
|
|
// forward declarations
|
|
|
|
class ExternalParam;
|
2009-11-29 13:29:43 -08:00
|
|
|
class Object;
|
2009-07-15 14:33:29 -07:00
|
|
|
|
2009-11-29 13:29:43 -08:00
|
|
|
class Part
|
2009-07-15 14:33:29 -07:00
|
|
|
{
|
2009-11-29 13:29:43 -08:00
|
|
|
friend class Object;
|
2009-07-15 14:33:29 -07:00
|
|
|
|
|
|
|
private:
|
2009-11-29 13:29:43 -08:00
|
|
|
Part( Object* parent, const std::string &partname );
|
2009-07-15 14:33:29 -07:00
|
|
|
|
|
|
|
public:
|
2009-11-29 13:29:43 -08:00
|
|
|
~Part();
|
2009-07-15 14:33:29 -07:00
|
|
|
|
2009-11-29 13:29:43 -08:00
|
|
|
Eflxx::Rect getGeometry() const;
|
2009-07-15 14:33:29 -07:00
|
|
|
|
|
|
|
void setText( const std::string &text );
|
|
|
|
const std::string getText() const;
|
|
|
|
|
2009-11-29 13:29:43 -08:00
|
|
|
void swallow( Evasxx::Object* );
|
|
|
|
void unswallow( Evasxx::Object* );
|
2009-07-15 14:33:29 -07:00
|
|
|
|
2010-10-14 14:17:50 -07:00
|
|
|
Eflxx::CountedPtr <Evasxx::Object> getSwallow ();
|
2009-07-15 14:33:29 -07:00
|
|
|
|
2010-11-30 15:04:07 -08:00
|
|
|
Eflxx::CountedPtr <Evasxx::Object> getExternalObject ();
|
|
|
|
|
|
|
|
// TODO: wrap Param?
|
2010-12-06 14:01:36 -08:00
|
|
|
bool setParam (Edjexx::ExternalParam *param);
|
2010-11-30 15:04:07 -08:00
|
|
|
|
2009-11-29 13:29:43 -08:00
|
|
|
//const Evasxx::Object* getObject ( const char* name );
|
2009-07-15 14:33:29 -07:00
|
|
|
|
|
|
|
private:
|
2009-11-29 13:29:43 -08:00
|
|
|
Object* _parent;
|
2009-07-15 14:33:29 -07:00
|
|
|
const std::string &_partname;
|
|
|
|
|
|
|
|
/* State?
|
|
|
|
EAPI const char *edje_object_part_state_get (Evas_Object *obj, const char *part, double *val_ret);
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* Directions?
|
|
|
|
EAPI int edje_object_part_drag_dir_get (Evas_Object *obj, const char *part);
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* Drag?
|
|
|
|
EAPI void edje_object_part_drag_value_set (Evas_Object *obj, const char *part, double dx, double dy);
|
|
|
|
EAPI void edje_object_part_drag_value_get (Evas_Object *obj, const char *part, double *dx, double *dy);
|
|
|
|
EAPI void edje_object_part_drag_size_set (Evas_Object *obj, const char *part, double dw, double dh);
|
|
|
|
EAPI void edje_object_part_drag_size_get (Evas_Object *obj, const char *part, double *dw, double *dh);
|
|
|
|
EAPI void edje_object_part_drag_step_set (Evas_Object *obj, const char *part, double dx, double dy);
|
|
|
|
EAPI void edje_object_part_drag_step_get (Evas_Object *obj, const char *part, double *dx, double *dy);
|
|
|
|
EAPI void edje_object_part_drag_page_set (Evas_Object *obj, const char *part, double dx, double dy);
|
|
|
|
EAPI void edje_object_part_drag_page_get (Evas_Object *obj, const char *part, double *dx, double *dy);
|
|
|
|
EAPI void edje_object_part_drag_step (Evas_Object *obj, const char *part, double dx, double dy);
|
|
|
|
EAPI void edje_object_part_drag_page (Evas_Object *obj, const char *part, double dx, double dy);
|
|
|
|
*/
|
|
|
|
private:
|
2009-11-29 13:29:43 -08:00
|
|
|
Part();
|
|
|
|
Part( const Part& );
|
|
|
|
bool operator=( const Part& );
|
|
|
|
bool operator==( const Part& );
|
2009-07-15 14:33:29 -07:00
|
|
|
};
|
|
|
|
|
2009-11-29 13:29:43 -08:00
|
|
|
} // end namespace Edjexx
|
2009-07-15 14:33:29 -07:00
|
|
|
|
|
|
|
#endif // EFLPP_EDJEPART_H
|