|
|
1.1 ! root 1: #import "drawundo.h" ! 2: ! 3: @interface MoveGraphicsChange(PrivateMethods) ! 4: ! 5: - (BOOL)subsumeIdenticalChange:change; ! 6: ! 7: @end ! 8: ! 9: @implementation MoveGraphicsChange ! 10: ! 11: - initGraphicView:aGraphicView vector:(const NXPoint *)aVector ! 12: { ! 13: [super initGraphicView:aGraphicView]; ! 14: redoVector.x = aVector->x; ! 15: redoVector.y = aVector->y; ! 16: undoVector.x = -redoVector.x; ! 17: undoVector.y = -redoVector.y; ! 18: ! 19: return self; ! 20: } ! 21: ! 22: - (const char *)changeName ! 23: { ! 24: return NXLocalStringFromTable("Operations", "Move", NULL, "The operation of moving a graphical entity."); ! 25: } ! 26: ! 27: - changeDetailClass ! 28: { ! 29: return [MoveChangeDetail class]; ! 30: } ! 31: ! 32: - (const NXPoint *)undoVector ! 33: { ! 34: return &undoVector; ! 35: } ! 36: ! 37: - (const NXPoint *)redoVector ! 38: { ! 39: return &redoVector; ! 40: } ! 41: ! 42: - (BOOL)subsumeIdenticalChange:change ! 43: { ! 44: MoveGraphicsChange *moveChange; ! 45: ! 46: moveChange = (MoveGraphicsChange *)change; ! 47: undoVector.x += moveChange->undoVector.x; ! 48: undoVector.y += moveChange->undoVector.y; ! 49: redoVector.x += moveChange->redoVector.x; ! 50: redoVector.y += moveChange->redoVector.y; ! 51: ! 52: return YES; ! 53: } ! 54: ! 55: @end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.