diff --git a/Sources/libewol/ewol/widget/List.cpp b/Sources/libewol/ewol/widget/List.cpp index 52f3aad8..23e44f73 100644 --- a/Sources/libewol/ewol/widget/List.cpp +++ b/Sources/libewol/ewol/widget/List.cpp @@ -171,7 +171,10 @@ void ewol::List::OnRegenerateDisplay(void) drawClipping.y = 0; drawClipping.w = m_size.x - (2*m_paddingSizeX); drawClipping.h = m_size.y; - + // remove all the positions : + m_lineSize.Clear(); + // add the default position raw : + m_lineSize.PushBack(0); for(int32_t iii=startRaw; iiiText(textPos/*, drawClipping*/, myTextToWrite); + // add the raw position to remember it ... + m_lineSize.PushBack(tmpOriginY); AddOObject(tmpText); tmpOriginY += minHeight + 2* m_paddingSizeY; } + //m_lineSize.PushBack(tmpOriginY); AddOObject(BGOObjects, 0); // call the herited class... @@ -217,16 +223,18 @@ bool ewol::List::OnEventInput(ewol::inputType_te type, int32_t IdInput, eventInp // nothing to do ... done on upper widet ... return true; } - // TODO : Rework this ... - /* - int32_t fontId = GetDefaultFontId(); - //int32_t minWidth = ewol::GetWidth(fontId, m_label.c_str()); - int32_t minHeight = ewol::GetHeight(fontId); - */ - int32_t minHeight =20; + // parse all the loged row position to find the good one... + int32_t rawID = -1; + for(int32_t iii=0; iii=m_lineSize[iii] + && relativePos.y m_listOObject; //!< generic element to display... + etk::Vector m_lineSize; public: void AddOObject(ewol::OObject* newObject, int32_t pos=-1); void ClearOObjectList(void);