From 6be559f890820ce41c3e5275c1d05e808c255410 Mon Sep 17 00:00:00 2001 From: Gregory John Casamento Date: Fri, 17 Dec 2004 10:49:01 +0000 Subject: [PATCH] Minor refactorization. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/gorm/trunk@20461 72102866-910b-0410-8b05-ffd578937521 --- ChangeLog | 8 ++++++++ GormDocument.m | 13 +------------ GormObjectEditor.m | 16 ++++++++++++++++ GormPrivate.h | 7 ++++--- 4 files changed, 29 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1bf1c821..d53083e6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2004-12-17 05:48 Gregory John Casamento + + * GormDocument.m: Changed implementation here to call the one + on the object editor. + * GormObjectEditor.m: Added implementation for + removeAllInstancesOfClass: + * GormPrivate.h: Added declaration for removeAllInstancesOfClass: + 2004-12-16 05:32 Gregory John Casamento * GormClassEditor.m: added call to removeAllInstancesOfClass: in diff --git a/GormDocument.m b/GormDocument.m index 3111a68d..791aaf33 100644 --- a/GormDocument.m +++ b/GormDocument.m @@ -1590,18 +1590,7 @@ static NSImage *fileImage = nil; - (void) removeAllInstancesOfClass: (NSString *)className { - NSArray *objects = [objectsView objects]; - NSEnumerator *en = [objects objectEnumerator]; - id object = nil; - - while((object = [en nextObject]) != nil) - { - NSString *clsForObj = [classManager classNameForObject: object]; - if([className isEqual: clsForObj]) - { - [objectsView removeObject: object]; - } - } + [objectsView removeAllInstancesOfClass: className]; } - (void) selectClass: (NSString *)className diff --git a/GormObjectEditor.m b/GormObjectEditor.m index a2754edf..2208484f 100644 --- a/GormObjectEditor.m +++ b/GormObjectEditor.m @@ -196,6 +196,22 @@ static NSMapTable *docMap = 0; } } +- (void) removeAllInstancesOfClass: (NSString *)className +{ + GormClassManager *classManager = [(GormDocument *)document classManager]; + NSEnumerator *en = [objects objectEnumerator]; + id object = nil; + + while((object = [en nextObject]) != nil) + { + NSString *clsForObj = [classManager classNameForObject: object]; + if([className isEqual: clsForObj]) + { + [self removeObject: object]; + } + } +} + /* * Dragging source protocol implementation */ diff --git a/GormPrivate.h b/GormPrivate.h index 94f87e93..4956389a 100644 --- a/GormPrivate.h +++ b/GormPrivate.h @@ -237,7 +237,7 @@ extern NSString *GormResizeCellNotification; - (id) changeSelection: (id)sender; @end -@interface GormObjectEditor : GormGenericEditor +@interface GormObjectEditor : GormGenericEditor { } + (void) setEditor: (id)editor forDocument: (id)aDocument; @@ -246,9 +246,10 @@ extern NSString *GormResizeCellNotification; - (BOOL) acceptsTypeFromArray: (NSArray*)types; - (void) makeSelectionVisible: (BOOL)flag; - (void) resetObject: (id)anObject; +- (void) removeAllInstancesOfClass: (NSString *)className; @end -@interface GormSoundEditor : GormGenericEditor +@interface GormSoundEditor : GormGenericEditor { } + (GormSoundEditor*) editorForDocument: (id)aDocument; @@ -256,7 +257,7 @@ extern NSString *GormResizeCellNotification; - (unsigned int) draggingSourceOperationMaskForLocal: (BOOL)flag; @end -@interface GormImageEditor : GormGenericEditor +@interface GormImageEditor : GormGenericEditor { } - (void) draggedImage: (NSImage*)i endedAt: (NSPoint)p deposited: (BOOL)f;