Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » Papyrus » Undo in Multiuser Environment
Undo in Multiuser Environment [message #1735830] Thu, 23 June 2016 07:16 Go to next message
Thorsten Schlathölter is currently offline Thorsten SchlathölterFriend
Messages: 312
Registered: February 2012
Location: Düsseldorf
Senior Member
Hi,
I would like to raise the question on how to deal with undo if papyrus is used in a multi user environment as it is provided with the CDO integration.

I cannot think of any other solution than to clear the undo\redo history if delta notifications from other CDOTransactions come in.

Are there any ideas?

Regards,
Thorsten
Re: Undo in Multiuser Environment [message #1735878 is a reply to message #1735830] Thu, 23 June 2016 12:22 Go to previous messageGo to next message
Christian Damus is currently offline Christian DamusFriend
Messages: 1270
Registered: July 2009
Location: Canada
Senior Member

Hi, Thorsten,

That is exactly what I would suggest. It is probably not worth the
risk missing something in an analysis of the change-description of
every command on the undo stack to see whether it intersects with an
incoming delta notification. Besides that the API to access those
change descriptions doesn't even exist (and some commands may not have
change descriptions to look at).

In my experience, I don't think I've ever seen an on-line transactional
application that had a meaningful "undo" support (except for local
uncommitted edits in text fields and the like).

Cheers,

Christian


On 2016-06-23 07:16:19 +0000, Thorsten Schlathölter said:

> Hi, I would like to raise the question on how to deal with undo if
> papyrus is used in a multi user environment as it is provided with the
> CDO integration.
>
> I cannot think of any other solution than to clear the undo\redo
> history if delta notifications from other CDOTransactions come in.
>
> Are there any ideas?
>
> Regards,
> Thorsten
Re: Undo in Multiuser Environment [message #1735884 is a reply to message #1735878] Thu, 23 June 2016 12:42 Go to previous message
Ed Willink is currently offline Ed WillinkFriend
Messages: 7655
Registered: July 2009
Senior Member
Hi

I think it is part of the problem of maintaining the history as a
sequence of semantic primitives. Then you undo by do-ing an inverse
semantic change, not by restoring an earlier context. Successfully
do-ing the inverse semantic change must be heavily predicated by a
consistent starting state; you cannot undo a move to something that has
been refactored in the meantime.

Regards

Ed Willink


On 23/06/2016 13:22, Christian W. Damus wrote:
> Hi, Thorsten,
>
> That is exactly what I would suggest. It is probably not worth the
> risk missing something in an analysis of the change-description of
> every command on the undo stack to see whether it intersects with an
> incoming delta notification. Besides that the API to access those
> change descriptions doesn't even exist (and some commands may not have
> change descriptions to look at).
>
> In my experience, I don't think I've ever seen an on-line
> transactional application that had a meaningful "undo" support (except
> for local uncommitted edits in text fields and the like).
>
> Cheers,
>
> Christian
>
>
> On 2016-06-23 07:16:19 +0000, Thorsten Schlathölter said:
>
>> Hi, I would like to raise the question on how to deal with undo if
>> papyrus is used in a multi user environment as it is provided with
>> the CDO integration.
>>
>> I cannot think of any other solution than to clear the undo\redo
>> history if delta notifications from other CDOTransactions come in.
>>
>> Are there any ideas?
>>
>> Regards,
>> Thorsten
>
>
Previous Topic:MARTE profile example
Next Topic:How to add parameters for a trigger in state machine?
Goto Forum:
  


Current Time: Thu Apr 25 20:51:54 GMT 2024

Powered by FUDForum. Page generated in 0.02429 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top