I haven't even written what the problem with cloning of groups is. Basically I can't get undo/redo-functionality working with the design. The old design, I should write, as I have started today to rework it. The design was stupid, it didn't take advantage of the structure of my program. I can quite easily combine multiple command objects to a bigger one.
So instead of one command which tries to do the right thing, I have defined a virtual function which is supposed to create the command object. Currently it creates the same command as before, so it has the same problem. But now I can add code so that it can recognize that a group has to be cloned and ask the group for a command object just to do its own part. Or to be correct, the base class of all objects will get a new function to return that command object to not make the same error again. That way I can add the necessary stuff to other objects when it is needed and have the general case handled by one function.
The nice property of this solution is, that I can implement the whole process incrementally, the group does not need to know how to clone its contained objects, it can just ask each and everyone for their command object to do the cloning and combine them to one compound command. That will even work correctly for groups containing other groups.
A bit late this month, but I didn't feel like it. But here goes the review of November. Small ChangesI have a bit of a problem to find a good headline for this section. I worked on some of the modifiers and often added only a small feature. First I c
Tracked: Dec 06, 21:22