[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/session.php on line 583: sizeof(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/session.php on line 639: sizeof(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4516: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3262)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4516: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3262)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4516: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3262)
Gephi forums •Undo, please
Page 1 of 1

Undo, please

Posted: 29 Aug 2011 12:01
by bentwonk
Showing gephi to some new users one thing they were soon looking for was an 'undo' button. What better way for people to learn that experimenting? However without undo the user can be servery punished for this. Plus we all make mistakes from time to time. Any editor that is beyond trivial needs an undo, for we are mere mortals.

Re: Undo, please

Posted: 29 Aug 2011 16:19
by mbastian
I agree undo is very important but unfortunately it's also very difficult to implement and could cause serious performance issues. An undo system introduces the abstraction of an action and all modules needs to use it to be consistent, which is quite hard in a modular architecture like Gephi. To do it right all modules would have to modify the way they do things and declare their action to a central undo system and provide a way to revert their action. The issue is that it's not possible to revert all actions when you manipulate a graph structure. If I delete nodes or change the color and I want to undo these actions, significant amount of memory needs to be used to store states. For instance having undo for the layout means ou have to store the positions of all nodes. So eventually I'm afraid we won't be able to do undo on all actions which would make the system awkward to use. It's not an impossible task though but we need to do it right. We need a good API and action implementation, as lightweight as possible for modules. We also need an implementation that can control the amount of memory it uses and possibly use the disk to serialize objects. Maybe it could be a proposal for next's year GSoC?

Re: Undo, please

Posted: 29 Aug 2011 22:29
by bentwonk
Would it be possible to have a rolling auto-save in the background? I know its not a true undo, but it could allow the user to jump back a few steps without needing to be integrated into every module.

Re: Undo, please

Posted: 05 Nov 2014 14:21
by CaseSensitive
Are there any updates on this topic? Is the suggestion made by Bentwonk viable? The lack of a similar function is a great inconvenience, and not only to new users.

Re: Undo, please

Posted: 04 Dec 2014 13:08
by Kéfren Cezar
Excellent idea, however is a lot of work to implement the logic of undo. My supervisor of my scientific initiative, it is common User is complicated for her most of the time, it was pretty hard to convince her to drop other tools for graphs and start using gephi. We set up the development environment here in my lab machine, I am implementing a way to export large-scale graphs in vectorized images. When finished I try to make this logic unwinding.