[SOLVED] MultiList::setSubItemNameAt(0, index, "")

qwertzui11

14-03-2009 21:09:53

Hi all

I set

m_pGUIGames->setSubItemNameAt(0, index, "");

then happens:

void MultiList::setSubItemNameAt(size_t _column, size_t _index, const Ogre::UTFString & _name)
{
MYGUI_ASSERT_RANGE(_column, mVectorColumnInfo.size(), "MultiList::setSubItemAt");
MYGUI_ASSERT_RANGE(_index, mVectorColumnInfo.begin()->list->getItemCount(), "MultiList::setSubItemAt");

size_t index = BiIndexBase::convertToBack(_index);
mVectorColumnInfo[_column].list->setItemNameAt(index, _name);

// если мы попортили список с активным сортом, надо пересчитывать
if (_column == mSortColumnIndex) setDirtySort(); // GETS IN HERE!
}


void MultiList::setDirtySort()
{
if (mIsDirtySort) return;
Gui::getInstance().eventFrameStart += newDelegate(this, &MultiList::frameEntered); // GETS IN HERE
mIsDirtySort = true;
}


MYGUI_C_MULTI_DELEGATE MYGUI_TEMPLATE_ARGS & operator+=(IDelegate* _delegate)
{
MYGUI_TYPENAME std::list<IDelegate *>::iterator iter;
for (iter=mListDelegates.begin(); iter!=mListDelegates.end(); ++iter) {
if ((*iter) && (*iter)->compare(_delegate)) {
MYGUI_ASSERT(false, "dublicate delegate"); // !!!!!!!!!!!FAILS HERE!!!!!!!!!!!
}
}
mListDelegates.push_back(_delegate);
return *this;
}



The SubItem already exists, I just wanted to reset the SubItemText. Without everythings works fine. The special about it, is that it only happens at "_column = 0" (there r 2), only at "_name = "" ".

Markus

Altren

18-03-2009 22:22:21

Probably fixed, update from svn.

qwertzui11

04-04-2009 13:09:25

Works! thx!

Markus