[DEV] extract gravity from widget
This commit is contained in:
parent
2e1644be3e
commit
3c9851ecf5
26
ewol/DrawProperty.cpp
Normal file
26
ewol/DrawProperty.cpp
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
/**
|
||||||
|
* @author Edouard DUPIN
|
||||||
|
*
|
||||||
|
* @copyright 2011, Edouard DUPIN, all right reserved
|
||||||
|
*
|
||||||
|
* @license APACHE v2.0 (see license file)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <ewol/DrawProperty.h>
|
||||||
|
#include <ewol/debug.h>
|
||||||
|
|
||||||
|
#undef __class__
|
||||||
|
#define __class__ "DrawProperty"
|
||||||
|
|
||||||
|
std::ostream& ewol::operator <<(std::ostream& _os, const ewol::DrawProperty& _obj) {
|
||||||
|
_os << "{ windowsSize=" << _obj.m_windowsSize << " start=" << _obj.m_origin << " stop=" << (_obj.m_origin+_obj.m_size) << "}";
|
||||||
|
return _os;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ewol::DrawProperty::limit(const vec2& _origin, const vec2& _size) {
|
||||||
|
m_size += m_origin;
|
||||||
|
m_origin.setMax(_origin);
|
||||||
|
m_size.setMin(_origin+_size);
|
||||||
|
m_size -= m_origin;
|
||||||
|
}
|
||||||
|
|
50
ewol/DrawProperty.h
Normal file
50
ewol/DrawProperty.h
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
/**
|
||||||
|
* @author Edouard DUPIN
|
||||||
|
*
|
||||||
|
* @copyright 2011, Edouard DUPIN, all right reserved
|
||||||
|
*
|
||||||
|
* @license APACHE v2.0 (see license file)
|
||||||
|
*/
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <etk/types.h>
|
||||||
|
#include <etk/math/Vector2D.h>
|
||||||
|
|
||||||
|
namespace ewol {
|
||||||
|
/**
|
||||||
|
* @not-in-doc
|
||||||
|
*/
|
||||||
|
class DrawProperty{
|
||||||
|
/*
|
||||||
|
/--> m_windowsSize
|
||||||
|
*--------------------------------------------------*
|
||||||
|
| g |
|
||||||
|
| |
|
||||||
|
| m_size |
|
||||||
|
| / |
|
||||||
|
| o-------------------o |
|
||||||
|
| | | |
|
||||||
|
| | | |
|
||||||
|
| | | |
|
||||||
|
| | | |
|
||||||
|
| | | |
|
||||||
|
| | | |
|
||||||
|
| | | |
|
||||||
|
| | | |
|
||||||
|
| o-------------------o |
|
||||||
|
| / |
|
||||||
|
| m_origin |
|
||||||
|
| |
|
||||||
|
*--------------------------------------------------*
|
||||||
|
/
|
||||||
|
(0,0)
|
||||||
|
*/
|
||||||
|
public :
|
||||||
|
ivec2 m_windowsSize; //!< Windows compleate size
|
||||||
|
ivec2 m_origin; //!< Windows clipping upper widget (can not be <0)
|
||||||
|
ivec2 m_size; //!< Windows clipping upper widget (can not be <0 and >m_windowsSize)
|
||||||
|
void limit(const vec2& _origin, const vec2& _size);
|
||||||
|
};
|
||||||
|
std::ostream& operator <<(std::ostream& _os, const ewol::DrawProperty& _obj);
|
||||||
|
|
||||||
|
}
|
@ -8,6 +8,76 @@
|
|||||||
|
|
||||||
#include <ewol/Padding.h>
|
#include <ewol/Padding.h>
|
||||||
|
|
||||||
|
ewol::Padding::Padding() {
|
||||||
|
// nothing to do...
|
||||||
|
}
|
||||||
|
|
||||||
|
ewol::Padding::Padding(float _xl, float _yt, float _xr, float _yb) {
|
||||||
|
setValue(_xl, _yt, _xr, _yb);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ewol::Padding::setValue(float _xl, float _yt, float _xr, float _yb) {
|
||||||
|
m_value[0] = _xl;
|
||||||
|
m_value[1] = _yt;
|
||||||
|
m_value[2] = _xr;
|
||||||
|
m_value[3] = _yb;
|
||||||
|
}
|
||||||
|
|
||||||
|
float ewol::Padding::x() const {
|
||||||
|
return m_value[0] + m_value[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
float ewol::Padding::y() const {
|
||||||
|
return m_value[1] + m_value[3];
|
||||||
|
}
|
||||||
|
|
||||||
|
float ewol::Padding::xLeft() const {
|
||||||
|
return m_value[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
void ewol::Padding::setXLeft(float _val) {
|
||||||
|
m_value[0] = _val;
|
||||||
|
}
|
||||||
|
|
||||||
|
float ewol::Padding::xRight() const {
|
||||||
|
return m_value[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
void ewol::Padding::setXRight(float _val) {
|
||||||
|
m_value[2] = _val;
|
||||||
|
}
|
||||||
|
|
||||||
|
float ewol::Padding::yTop() const {
|
||||||
|
return m_value[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
void ewol::Padding::setYTop(float _val) {
|
||||||
|
m_value[1] = _val;
|
||||||
|
}
|
||||||
|
|
||||||
|
float ewol::Padding::yButtom() const {
|
||||||
|
return m_value[3];
|
||||||
|
}
|
||||||
|
|
||||||
|
void ewol::Padding::setYButtom(float _val) {
|
||||||
|
m_value[3] = _val;
|
||||||
|
}
|
||||||
|
|
||||||
|
ewol::Padding& ewol::Padding::operator+=(const Padding& _v) {
|
||||||
|
m_value[0] += _v.m_value[0];
|
||||||
|
m_value[1] += _v.m_value[1];
|
||||||
|
m_value[2] += _v.m_value[2];
|
||||||
|
m_value[3] += _v.m_value[3];
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
ewol::Padding ewol::Padding::operator+(const Padding& _v) {
|
||||||
|
return Padding(m_value[0] + _v.m_value[0],
|
||||||
|
m_value[1] + _v.m_value[1],
|
||||||
|
m_value[2] + _v.m_value[2],
|
||||||
|
m_value[3] + _v.m_value[3]);
|
||||||
|
}
|
||||||
|
|
||||||
std::ostream& ewol::operator <<(std::ostream& _os, const ewol::Padding& _obj) {
|
std::ostream& ewol::operator <<(std::ostream& _os, const ewol::Padding& _obj) {
|
||||||
_os << "{";
|
_os << "{";
|
||||||
_os << _obj.xLeft();
|
_os << _obj.xLeft();
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
*/
|
*/
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <ewol/debug.h>
|
#include <etk/types.h>
|
||||||
|
|
||||||
namespace ewol {
|
namespace ewol {
|
||||||
/**
|
/**
|
||||||
@ -17,65 +17,26 @@ namespace ewol {
|
|||||||
private:
|
private:
|
||||||
float m_value[4]; //!< this represent the 4 padding value Left top right buttom (like css)
|
float m_value[4]; //!< this represent the 4 padding value Left top right buttom (like css)
|
||||||
public:
|
public:
|
||||||
Padding() { }
|
Padding();
|
||||||
Padding(float _xl, float _yt=0, float _xr=0, float _yb=0) {
|
Padding(float _xl, float _yt=0.0f, float _xr=0.0f, float _yb=0.0f);
|
||||||
setValue(_xl, _yt, _xr, _yb);
|
void setValue(float _xl, float _yt=0.0f, float _xr=0.0f, float _yb=0.0f);
|
||||||
}
|
float x() const;
|
||||||
void setValue(float _xl, float _yt=0, float _xr=0, float _yb=0) {
|
float y() const;
|
||||||
m_value[0] = _xl;
|
float xLeft() const;
|
||||||
m_value[1] = _yt;
|
void setXLeft(float _val);
|
||||||
m_value[2] = _xr;
|
float xRight() const;
|
||||||
m_value[3] = _yb;
|
void setXRight(float _val);
|
||||||
}
|
float yTop() const;
|
||||||
|
void setYTop(float _val);
|
||||||
float x() const {
|
float yButtom() const;
|
||||||
return m_value[0] + m_value[2];
|
void setYButtom(float _val);
|
||||||
}
|
|
||||||
float y() const {
|
|
||||||
return m_value[1] + m_value[3];
|
|
||||||
}
|
|
||||||
float xLeft() const {
|
|
||||||
return m_value[0];
|
|
||||||
}
|
|
||||||
void setXLeft(float _val) {
|
|
||||||
m_value[0] = _val;
|
|
||||||
}
|
|
||||||
float xRight() const {
|
|
||||||
return m_value[2];
|
|
||||||
}
|
|
||||||
void setXRight(float _val) {
|
|
||||||
m_value[2] = _val;
|
|
||||||
}
|
|
||||||
float yTop() const {
|
|
||||||
return m_value[1];
|
|
||||||
}
|
|
||||||
void setYTop(float _val) {
|
|
||||||
m_value[1] = _val;
|
|
||||||
}
|
|
||||||
float yButtom() const {
|
|
||||||
return m_value[3];
|
|
||||||
}
|
|
||||||
void setYButtom(float _val) {
|
|
||||||
m_value[3] = _val;
|
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* @brief Add a vector to this one
|
* @brief Add a vector to this one
|
||||||
* @param _v The vector to add to this one
|
* @param _v The vector to add to this one
|
||||||
*/
|
*/
|
||||||
Padding& operator+=(const Padding& _v) {
|
Padding& operator+=(const Padding& _v);
|
||||||
m_value[0] += _v.m_value[0];
|
|
||||||
m_value[1] += _v.m_value[1];
|
|
||||||
m_value[2] += _v.m_value[2];
|
|
||||||
m_value[3] += _v.m_value[3];
|
|
||||||
return *this;
|
|
||||||
}
|
|
||||||
//! @previous
|
//! @previous
|
||||||
Padding operator+(const Padding& _v) {
|
Padding operator+(const Padding& _v);
|
||||||
return Padding(m_value[0] + _v.m_value[0],
|
|
||||||
m_value[1] + _v.m_value[1],
|
|
||||||
m_value[2] + _v.m_value[2],
|
|
||||||
m_value[3] + _v.m_value[3]);
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
};
|
||||||
std::ostream& operator <<(std::ostream& _os, const ewol::Padding& _obj);
|
std::ostream& operator <<(std::ostream& _os, const ewol::Padding& _obj);
|
||||||
|
88
ewol/gravity.cpp
Normal file
88
ewol/gravity.cpp
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
/**
|
||||||
|
* @author Edouard DUPIN
|
||||||
|
*
|
||||||
|
* @copyright 2011, Edouard DUPIN, all right reserved
|
||||||
|
*
|
||||||
|
* @license APACHE v2.0 (see license file)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <ewol/debug.h>
|
||||||
|
#include <ewol/gravity.h>
|
||||||
|
|
||||||
|
#undef __class__
|
||||||
|
#define __class__ "gravity"
|
||||||
|
|
||||||
|
std::string ewol::gravityToString(const enum ewol::gravity _obj) {
|
||||||
|
switch(_obj) {
|
||||||
|
case ewol::gravity_center:
|
||||||
|
return "center";
|
||||||
|
case ewol::gravity_topLeft:
|
||||||
|
return "top-left";
|
||||||
|
case ewol::gravity_top:
|
||||||
|
return "top";
|
||||||
|
case ewol::gravity_topRight:
|
||||||
|
return "top-right";
|
||||||
|
case ewol::gravity_right:
|
||||||
|
return "right";
|
||||||
|
case ewol::gravity_buttomRight:
|
||||||
|
return "buttom-right";
|
||||||
|
case ewol::gravity_buttom:
|
||||||
|
return "buttom";
|
||||||
|
case ewol::gravity_buttomLeft:
|
||||||
|
return "buttom-left";
|
||||||
|
case ewol::gravity_left:
|
||||||
|
return "left";
|
||||||
|
}
|
||||||
|
return "unknow";
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ewol::gravity ewol::stringToGravity(const std::string& _obj) {
|
||||||
|
if (_obj == "center") {
|
||||||
|
return ewol::gravity_center;
|
||||||
|
} else if (_obj == "top-left") {
|
||||||
|
return ewol::gravity_topLeft;
|
||||||
|
} else if (_obj == "top") {
|
||||||
|
return ewol::gravity_top;
|
||||||
|
} else if (_obj == "top-right") {
|
||||||
|
return ewol::gravity_topRight;
|
||||||
|
} else if (_obj == "right") {
|
||||||
|
return ewol::gravity_right;
|
||||||
|
} else if (_obj == "buttom-right") {
|
||||||
|
return ewol::gravity_buttomRight;
|
||||||
|
} else if (_obj == "buttom") {
|
||||||
|
return ewol::gravity_buttom;
|
||||||
|
} else if (_obj == "buttom-left") {
|
||||||
|
return ewol::gravity_buttomLeft;
|
||||||
|
} else if (_obj == "left") {
|
||||||
|
return ewol::gravity_left;
|
||||||
|
}
|
||||||
|
return ewol::gravity_center;
|
||||||
|
}
|
||||||
|
vec2 ewol::gravityGenerateDelta(const enum ewol::gravity _gravity, const vec2& _deltas) {
|
||||||
|
vec2 out(0.0f,0.0f);
|
||||||
|
if (_deltas.x() > 0.0001f) {
|
||||||
|
if ((uint32_t(_gravity) & uint32_t(ewol::gravity_left)) != 0) {
|
||||||
|
// nothing to do
|
||||||
|
} else if ((uint32_t(_gravity) & uint32_t(ewol::gravity_right)) != 0) {
|
||||||
|
out = vec2(int32_t(_deltas.x()), 0.0f);
|
||||||
|
} else {
|
||||||
|
out = vec2(int32_t(_deltas.x()*0.5f), 0.0f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (_deltas.y() > 0.0001f) {
|
||||||
|
if ((uint32_t(_gravity) & uint32_t(ewol::gravity_buttom)) != 0) {
|
||||||
|
// nothing to do
|
||||||
|
} else if ((uint32_t(_gravity) & uint32_t(ewol::gravity_top)) != 0) {
|
||||||
|
out += vec2(0.0f, int32_t(_deltas.y()));
|
||||||
|
} else {
|
||||||
|
out += vec2(0.0f, int32_t(_deltas.y()*0.5f));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return out;
|
||||||
|
}
|
||||||
|
|
||||||
|
std::ostream& ewol::operator <<(std::ostream& _os, const enum ewol::gravity _obj) {
|
||||||
|
_os << ewol::gravityToString(_obj);
|
||||||
|
return _os;
|
||||||
|
}
|
||||||
|
|
33
ewol/gravity.h
Normal file
33
ewol/gravity.h
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
/**
|
||||||
|
* @author Edouard DUPIN
|
||||||
|
*
|
||||||
|
* @copyright 2011, Edouard DUPIN, all right reserved
|
||||||
|
*
|
||||||
|
* @license APACHE v2.0 (see license file)
|
||||||
|
*/
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <etk/types.h>
|
||||||
|
#include <etk/math/Vector2D.h>
|
||||||
|
|
||||||
|
namespace ewol {
|
||||||
|
/**
|
||||||
|
* @brief Gravity of the widget property
|
||||||
|
* @not-in-doc
|
||||||
|
*/
|
||||||
|
enum gravity {
|
||||||
|
gravity_center = 0x00, //!< gravity is in center
|
||||||
|
gravity_top = 0x01, //!< gravity is in top
|
||||||
|
gravity_buttom = 0x02, //!< gravity is in buttom
|
||||||
|
gravity_right = 0x04, //!< gravity is in right
|
||||||
|
gravity_left = 0x08, //!< gravity is in left
|
||||||
|
gravity_topRight = gravity_top|gravity_right, //!< gravity is in top-right
|
||||||
|
gravity_topLeft = gravity_top|gravity_left, //!< gravity is in top-left
|
||||||
|
gravity_buttomRight = gravity_buttom|gravity_right, //!< gravity is in buttom-right
|
||||||
|
gravity_buttomLeft = gravity_buttom|gravity_left, //!< gravity is in buttom-left
|
||||||
|
};
|
||||||
|
std::ostream& operator <<(std::ostream& _os, const enum ewol::gravity _obj);
|
||||||
|
std::string gravityToString(const enum ewol::gravity _obj);
|
||||||
|
enum ewol::gravity stringToGravity(const std::string& _obj);
|
||||||
|
vec2 gravityGenerateDelta(const enum ewol::gravity _gravity, const vec2& _deltas);
|
||||||
|
}
|
@ -14,98 +14,6 @@
|
|||||||
#include <gale/renderer/openGL/openGL-include.h>
|
#include <gale/renderer/openGL/openGL-include.h>
|
||||||
#include <ewol/context/Context.h>
|
#include <ewol/context/Context.h>
|
||||||
|
|
||||||
#undef __class__
|
|
||||||
#define __class__ "DrawProperty"
|
|
||||||
|
|
||||||
std::ostream& ewol::operator <<(std::ostream& _os, const ewol::DrawProperty& _obj) {
|
|
||||||
_os << "{ windowsSize=" << _obj.m_windowsSize << " start=" << _obj.m_origin << " stop=" << (_obj.m_origin+_obj.m_size) << "}";
|
|
||||||
return _os;
|
|
||||||
}
|
|
||||||
|
|
||||||
void ewol::DrawProperty::limit(const vec2& _origin, const vec2& _size) {
|
|
||||||
m_size += m_origin;
|
|
||||||
m_origin.setMax(_origin);
|
|
||||||
m_size.setMin(_origin+_size);
|
|
||||||
m_size -= m_origin;
|
|
||||||
}
|
|
||||||
|
|
||||||
#undef __class__
|
|
||||||
#define __class__ "gravity"
|
|
||||||
|
|
||||||
std::string ewol::gravityToString(const enum ewol::gravity _obj) {
|
|
||||||
switch(_obj) {
|
|
||||||
case ewol::gravity_center:
|
|
||||||
return "center";
|
|
||||||
case ewol::gravity_topLeft:
|
|
||||||
return "top-left";
|
|
||||||
case ewol::gravity_top:
|
|
||||||
return "top";
|
|
||||||
case ewol::gravity_topRight:
|
|
||||||
return "top-right";
|
|
||||||
case ewol::gravity_right:
|
|
||||||
return "right";
|
|
||||||
case ewol::gravity_buttomRight:
|
|
||||||
return "buttom-right";
|
|
||||||
case ewol::gravity_buttom:
|
|
||||||
return "buttom";
|
|
||||||
case ewol::gravity_buttomLeft:
|
|
||||||
return "buttom-left";
|
|
||||||
case ewol::gravity_left:
|
|
||||||
return "left";
|
|
||||||
}
|
|
||||||
return "unknow";
|
|
||||||
}
|
|
||||||
|
|
||||||
enum ewol::gravity ewol::stringToGravity(const std::string& _obj) {
|
|
||||||
if (_obj == "center") {
|
|
||||||
return ewol::gravity_center;
|
|
||||||
} else if (_obj == "top-left") {
|
|
||||||
return ewol::gravity_topLeft;
|
|
||||||
} else if (_obj == "top") {
|
|
||||||
return ewol::gravity_top;
|
|
||||||
} else if (_obj == "top-right") {
|
|
||||||
return ewol::gravity_topRight;
|
|
||||||
} else if (_obj == "right") {
|
|
||||||
return ewol::gravity_right;
|
|
||||||
} else if (_obj == "buttom-right") {
|
|
||||||
return ewol::gravity_buttomRight;
|
|
||||||
} else if (_obj == "buttom") {
|
|
||||||
return ewol::gravity_buttom;
|
|
||||||
} else if (_obj == "buttom-left") {
|
|
||||||
return ewol::gravity_buttomLeft;
|
|
||||||
} else if (_obj == "left") {
|
|
||||||
return ewol::gravity_left;
|
|
||||||
}
|
|
||||||
return ewol::gravity_center;
|
|
||||||
}
|
|
||||||
vec2 ewol::gravityGenerateDelta(const enum ewol::gravity _gravity, const vec2& _deltas) {
|
|
||||||
vec2 out(0.0f,0.0f);
|
|
||||||
if (_deltas.x() > 0.0001f) {
|
|
||||||
if ((uint32_t(_gravity) & uint32_t(ewol::gravity_left)) != 0) {
|
|
||||||
// nothing to do
|
|
||||||
} else if ((uint32_t(_gravity) & uint32_t(ewol::gravity_right)) != 0) {
|
|
||||||
out = vec2(int32_t(_deltas.x()), 0.0f);
|
|
||||||
} else {
|
|
||||||
out = vec2(int32_t(_deltas.x()*0.5f), 0.0f);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (_deltas.y() > 0.0001f) {
|
|
||||||
if ((uint32_t(_gravity) & uint32_t(ewol::gravity_buttom)) != 0) {
|
|
||||||
// nothing to do
|
|
||||||
} else if ((uint32_t(_gravity) & uint32_t(ewol::gravity_top)) != 0) {
|
|
||||||
out += vec2(0.0f, int32_t(_deltas.y()));
|
|
||||||
} else {
|
|
||||||
out += vec2(0.0f, int32_t(_deltas.y()*0.5f));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return out;
|
|
||||||
}
|
|
||||||
|
|
||||||
std::ostream& ewol::operator <<(std::ostream& _os, const enum ewol::gravity _obj) {
|
|
||||||
_os << ewol::gravityToString(_obj);
|
|
||||||
return _os;
|
|
||||||
}
|
|
||||||
|
|
||||||
#undef __class__
|
#undef __class__
|
||||||
#define __class__ "Widget"
|
#define __class__ "Widget"
|
||||||
|
|
||||||
|
@ -31,6 +31,8 @@ namespace ewol {
|
|||||||
#include <ewol/event/Time.h>
|
#include <ewol/event/Time.h>
|
||||||
#include <ewol/translate.h>
|
#include <ewol/translate.h>
|
||||||
#include <ewol/signal/Signal.h>
|
#include <ewol/signal/Signal.h>
|
||||||
|
#include <ewol/DrawProperty.h>
|
||||||
|
#include <ewol/gravity.h>
|
||||||
|
|
||||||
#define ULTIMATE_MAX_SIZE (99999999)
|
#define ULTIMATE_MAX_SIZE (99999999)
|
||||||
|
|
||||||
@ -44,60 +46,7 @@ namespace ewol {
|
|||||||
/**
|
/**
|
||||||
* @not-in-doc
|
* @not-in-doc
|
||||||
*/
|
*/
|
||||||
class DrawProperty{
|
// TODO: change position of this ...
|
||||||
/*
|
|
||||||
/--> m_windowsSize
|
|
||||||
*--------------------------------------------------*
|
|
||||||
| g |
|
|
||||||
| |
|
|
||||||
| m_size |
|
|
||||||
| / |
|
|
||||||
| o-------------------o |
|
|
||||||
| | | |
|
|
||||||
| | | |
|
|
||||||
| | | |
|
|
||||||
| | | |
|
|
||||||
| | | |
|
|
||||||
| | | |
|
|
||||||
| | | |
|
|
||||||
| | | |
|
|
||||||
| o-------------------o |
|
|
||||||
| / |
|
|
||||||
| m_origin |
|
|
||||||
| |
|
|
||||||
*--------------------------------------------------*
|
|
||||||
/
|
|
||||||
(0,0)
|
|
||||||
*/
|
|
||||||
public :
|
|
||||||
ivec2 m_windowsSize; //!< Windows compleate size
|
|
||||||
ivec2 m_origin; //!< Windows clipping upper widget (can not be <0)
|
|
||||||
ivec2 m_size; //!< Windows clipping upper widget (can not be <0 and >m_windowsSize)
|
|
||||||
void limit(const vec2& _origin, const vec2& _size);
|
|
||||||
};
|
|
||||||
std::ostream& operator <<(std::ostream& _os, const ewol::DrawProperty& _obj);
|
|
||||||
/**
|
|
||||||
* @brief Gravity of the widget property
|
|
||||||
* @not-in-doc
|
|
||||||
*/
|
|
||||||
enum gravity {
|
|
||||||
gravity_center = 0x00, //!< gravity is in center
|
|
||||||
gravity_top = 0x01, //!< gravity is in top
|
|
||||||
gravity_buttom = 0x02, //!< gravity is in buttom
|
|
||||||
gravity_right = 0x04, //!< gravity is in right
|
|
||||||
gravity_left = 0x08, //!< gravity is in left
|
|
||||||
gravity_topRight = gravity_top|gravity_right, //!< gravity is in top-right
|
|
||||||
gravity_topLeft = gravity_top|gravity_left, //!< gravity is in top-left
|
|
||||||
gravity_buttomRight = gravity_buttom|gravity_right, //!< gravity is in buttom-right
|
|
||||||
gravity_buttomLeft = gravity_buttom|gravity_left, //!< gravity is in buttom-left
|
|
||||||
};
|
|
||||||
std::ostream& operator <<(std::ostream& _os, const enum ewol::gravity _obj);
|
|
||||||
std::string gravityToString(const enum ewol::gravity _obj);
|
|
||||||
enum ewol::gravity stringToGravity(const std::string& _obj);
|
|
||||||
vec2 gravityGenerateDelta(const enum ewol::gravity _gravity, const vec2& _deltas);
|
|
||||||
/**
|
|
||||||
* @not-in-doc
|
|
||||||
*/
|
|
||||||
class EventShortCut {
|
class EventShortCut {
|
||||||
public:
|
public:
|
||||||
std::string message; //!< data link with the event
|
std::string message; //!< data link with the event
|
||||||
|
@ -38,13 +38,17 @@ def create(target, module_name):
|
|||||||
'ewol/ewol.cpp',
|
'ewol/ewol.cpp',
|
||||||
'ewol/debug.cpp',
|
'ewol/debug.cpp',
|
||||||
'ewol/Padding.cpp',
|
'ewol/Padding.cpp',
|
||||||
'ewol/translate.cpp'
|
'ewol/translate.cpp',
|
||||||
|
'ewol/DrawProperty.cpp',
|
||||||
|
'ewol/gravity.cpp'
|
||||||
])
|
])
|
||||||
my_module.add_header_file([
|
my_module.add_header_file([
|
||||||
'ewol/debug.h', # TODO : Remove this ...
|
'ewol/debug.h', # TODO : Remove this ...
|
||||||
'ewol/ewol.h',
|
'ewol/ewol.h',
|
||||||
'ewol/Padding.h',
|
'ewol/Padding.h',
|
||||||
'ewol/translate.h'
|
'ewol/translate.h',
|
||||||
|
'ewol/DrawProperty.h',
|
||||||
|
'ewol/gravity.h'
|
||||||
])
|
])
|
||||||
|
|
||||||
# compositing:
|
# compositing:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user