Thanks for your answer. I had the misconception that the undo stack was related with the repeat command. I realized it isn't.
I have a jscript command that gives me the weights array to work it on my python plugin because getting the array in Python is like 3 times slower. I use this command to refresh my weights GUI so not being able to undo it shouldn't give any problems since it isn't changing anything. So I use another command like paste weights and then my refresh command run automatically and I can't repeat my paste weights command because the last command was the Jscript GetWeights. Martin Sent from my iPhone > On 13 Jan 2017, at 19:42, Matt Lind <speye...@hotmail.com> wrote: > > First question is - why on earth do you need to not leave a trace in the > undo stack? What are you doing that requires this line of thinking in > execution? > > To answer your question - only the Softimage developers know for sure, but I > don't think it's possible. If it were, I would think it would open a big > can of worms leading to lots of problems you really don't want to deal with > as you're basically asking Softimage to selectively ignore something while > still going about it's business as if nothing happened. > > The problem is anything you do in the application has many dependencies > which are linked and synchronized. If you have to undo operations, that > dependency chain gets all messed up as undoing operations will lead to a > situation where the 'undo' will create a scenario that never existed in the > first place. For example, create a cube, subdivide it with the dice option, > extrude one polygon with 10 subdivisions, delete one of the subdivisions, > then smooth the mesh. Oh, and tell Softimage to remove the dice operation > from the undo stack as if it never happened, but keep the results it > produced. The minute you undo past the extrude operation, you'll > essentially rewrite history of the scene because the extrusion is dependent > on the outcome of the dice operation to know which polygon to extrude. If > the polygon chosen has an index greater than 5, then it's not physically > possible to undo the extrude because a cube only has 6 polygons in range > [0...5]. Softimage would likely freak out trying to resolve this problem > and crash. If it survived, I'm pretty sure you wouldn't want to the data as > it would likely be very corrupted. A host of other issues are possible too. > > The commands you found only address whether the execution of a command > appears in the script history log, or whether they can be undone by a single > key stroke vs. multiple key strokes. That is not the same as the undo stack > which records the state of the scene. > >> From experience I'll say if you ever have to consider undo as a necessary > step in your workflow, then something is very, very wrong with your plan. > > Matt > > > > > Date: Thu, 12 Jan 2017 17:44:52 +0900 > From: Martin Yara <furik...@gmail.com> > Subject: Executing a Command without undo (Scripting) > To: "softimage@listproc.autodesk.com" > > Hi, > > Is it possible, in Scripting, to execute a command without leaving a trace > in the undo stack? > > I want to execute 2 commands a() and b() in that order, but I want to be > able to use Repeat to use a() again, not b(). > > b() command is only a command to get data so it shouldn't break anything if > I skip that command when undoing or repeating. > > I've found 'TermUndoRedo' in the SDK manual but it is only for C++ API. > > Thanks > > Martin > > > ------ > Softimage Mailing List. > To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com with > "unsubscribe" in the subject, and reply to confirm.
------ Softimage Mailing List. To unsubscribe, send a mail to softimage-requ...@listproc.autodesk.com with "unsubscribe" in the subject, and reply to confirm.