ObjectData plugin Undo()



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/07/2007 at 10:13, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:    
    Platform:      
    Language(s) :

    ---------
    me again,

    I'm at the point where I want to be able to do undos.

    I have a GeDynamicArray where I store the map points, I want to be able to undo changes in this array, but when I call
    doc->AddUndo(UNDO_CHANGE, (void* )this); I crash??
    any ideas?

    I don't think C4D knows about this array within my class, so how do I go about adding this data to an undo?

      
    Bool AIMap::AddLink(BaseDocument* doc, Real mx, Real my, BaseDraw* bd) {  
    doc->AddUndo(UNDO_CHANGE, (void* )this);  
    return AddLink(doc, linkSelection.index[0], linkSelection.index[1]);  
    }  
    

    best, Julio



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/07/2007 at 11:35, xxxxxxxx wrote:

    Can't do it. Undos are basically limited to BaseList2D derived objects (the docs really should be updated to mention what can be added for undo and what cannot - hint). You'll need to store the object in these cases: doc->AddUndo(UNDO_CHANGE, op). And I'm not certain that'll track changes to your GeDynamicArray so you'll need to see if it updates consistently.


Log in to reply