[DEV] add sprite correct diaplsy and input maximum number segfault error
This commit is contained in:
parent
47ea209279
commit
d2d8b6fca1
@ -20,16 +20,27 @@ ewol::Sprite::Sprite(const etk::UString& _imageName, const ivec2& _nbSprite) :
|
|||||||
m_nbSprite(_nbSprite),
|
m_nbSprite(_nbSprite),
|
||||||
m_unitarySpriteSize(0,0)
|
m_unitarySpriteSize(0,0)
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
vec2 imageSize = GetRealSize();
|
vec2 imageSize = GetRealSize();
|
||||||
m_unitarySpriteSize.setValue(imageSize.x()/(float)m_nbSprite.x(),
|
m_unitarySpriteSize.setValue(imageSize.x()/(float)m_nbSprite.x(),
|
||||||
imageSize.y()/(float)m_nbSprite.y());
|
imageSize.y()/(float)m_nbSprite.y());
|
||||||
|
*/
|
||||||
|
m_unitarySpriteSize.setValue(1.0/(float)m_nbSprite.x(),
|
||||||
|
1.0/(float)m_nbSprite.y());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void ewol::Sprite::PrintSprite(const ivec2& _spriteID, const vec2& _size)
|
void ewol::Sprite::PrintSprite(const ivec2& _spriteID, const vec2& _size)
|
||||||
{
|
{
|
||||||
|
if( _spriteID.x()<0
|
||||||
|
|| _spriteID.y()<0
|
||||||
|
|| _spriteID.x()>=m_nbSprite.x()
|
||||||
|
|| _spriteID.y()>=m_nbSprite.y()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
PrintPart(_size, vec2((float)(_spriteID.x() )*m_unitarySpriteSize.x(), (float)(_spriteID.y() )*m_unitarySpriteSize.y()),
|
||||||
|
vec2((float)(_spriteID.x()+1)*m_unitarySpriteSize.x(), (float)(_spriteID.y()+1)*m_unitarySpriteSize.y()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -217,6 +217,10 @@ int32_t ewol::eSystemInput::localGetDestinationId(ewol::keyEvent::type_te type,
|
|||||||
// note if id<0 ==> the it was finger event ...
|
// note if id<0 ==> the it was finger event ...
|
||||||
void ewol::eSystemInput::Motion(ewol::keyEvent::type_te type, int pointerID, vec2 pos)
|
void ewol::eSystemInput::Motion(ewol::keyEvent::type_te type, int pointerID, vec2 pos)
|
||||||
{
|
{
|
||||||
|
if (MAX_MANAGE_INPUT<=pointerID) {
|
||||||
|
// reject pointer ==> out of IDs...
|
||||||
|
return;
|
||||||
|
}
|
||||||
InputPoperty_ts *eventTable = NULL;
|
InputPoperty_ts *eventTable = NULL;
|
||||||
if (type == ewol::keyEvent::typeMouse) {
|
if (type == ewol::keyEvent::typeMouse) {
|
||||||
eventTable = m_eventMouseSaved;
|
eventTable = m_eventMouseSaved;
|
||||||
@ -306,6 +310,11 @@ void ewol::eSystemInput::Motion(ewol::keyEvent::type_te type, int pointerID, vec
|
|||||||
|
|
||||||
void ewol::eSystemInput::State(ewol::keyEvent::type_te type, int pointerID, bool isDown, vec2 pos)
|
void ewol::eSystemInput::State(ewol::keyEvent::type_te type, int pointerID, bool isDown, vec2 pos)
|
||||||
{
|
{
|
||||||
|
if (MAX_MANAGE_INPUT<=pointerID) {
|
||||||
|
// reject pointer ==> out of IDs...
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
EWOL_DEBUG("event pointerId=" << pointerID);
|
||||||
// convert position in Open-GL coordonates ...
|
// convert position in Open-GL coordonates ...
|
||||||
InputPoperty_ts *eventTable = NULL;
|
InputPoperty_ts *eventTable = NULL;
|
||||||
inputLimit_ts localLimit;
|
inputLimit_ts localLimit;
|
||||||
|
@ -44,7 +44,7 @@ namespace ewol
|
|||||||
inputLimit_ts m_eventInputLimit;
|
inputLimit_ts m_eventInputLimit;
|
||||||
inputLimit_ts m_eventMouseLimit;
|
inputLimit_ts m_eventMouseLimit;
|
||||||
void CalculateLimit(void);
|
void CalculateLimit(void);
|
||||||
#define MAX_MANAGE_INPUT (10)
|
#define MAX_MANAGE_INPUT (15)
|
||||||
InputPoperty_ts m_eventInputSaved[MAX_MANAGE_INPUT];
|
InputPoperty_ts m_eventInputSaved[MAX_MANAGE_INPUT];
|
||||||
InputPoperty_ts m_eventMouseSaved[MAX_MANAGE_INPUT];
|
InputPoperty_ts m_eventMouseSaved[MAX_MANAGE_INPUT];
|
||||||
void AbortElement(InputPoperty_ts *eventTable, int32_t idInput, ewol::keyEvent::type_te _type);
|
void AbortElement(InputPoperty_ts *eventTable, int32_t idInput, ewol::keyEvent::type_te _type);
|
||||||
|
@ -38,13 +38,15 @@ ewol::TextureFile::TextureFile(etk::UString genName, etk::UString tmpfileName, i
|
|||||||
if (false == m_element.IsLoadOk()) {
|
if (false == m_element.IsLoadOk()) {
|
||||||
EWOL_ERROR("Error To load SVG file " << tmpName );
|
EWOL_ERROR("Error To load SVG file " << tmpName );
|
||||||
} else {
|
} else {
|
||||||
|
/*
|
||||||
if (size.x()>0 && size.y()>0) {
|
if (size.x()>0 && size.y()>0) {
|
||||||
// generate the texture
|
// generate the texture
|
||||||
m_element.GenerateAnImage(size, m_data);
|
m_element.GenerateAnImage(size, m_data);
|
||||||
} else {
|
} else {
|
||||||
|
*/
|
||||||
// generate the texture
|
// generate the texture
|
||||||
m_element.GenerateAnImage(m_data);
|
m_element.GenerateAnImage(m_data);
|
||||||
}
|
//}
|
||||||
}
|
}
|
||||||
} else if (true == tmpName.EndWith(".png") ) {
|
} else if (true == tmpName.EndWith(".png") ) {
|
||||||
// generate the texture
|
// generate the texture
|
||||||
|
Loading…
x
Reference in New Issue
Block a user