Moin Max,

On 08/31/08 19:32, Maximilian Odendahl wrote:

I'm loading all notes after document loading with an iterator:


SwFieldType* pType = mpView->GetDocShell()->GetDoc()->GetFldType(RES_POSTITFLD, aEmptyStr,false); SwClientIter aIter( *pType );
SwClient * pFirst = aIter.GoStart();
while(pFirst)
{
    .......
    pFirst = aIter++;
}

If I have three notes directly behind each other(let's call them 1,2,3), I get 1,3,2 returned instead by the iterator.

I understand that they all have the same visual cursor rect position, but still we know they are behind each other by node position or similar black writer core magic ;-)

If I remember correctly, a SwModify has a linear list which contains the Clients. Therefore the SwClientIter returns the clients in the order of their insertion. So you cannot rely on the order the iterator lists the SwClients. Why not first collect them in a vector and then sort them according to their SwPosition?

Best regards,

Frank

--
Frank Meies (fme) - Co-lead OpenOffice.org Writer
OpenOffice.org Engineering at Sun: http://blogs.sun.com/GullFOSS

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to