2005-05-13 00:00:56 +00:00
|
|
|
/**
|
|
|
|
EOModelerApp.m <title>EOModelerApp Class</title>
|
|
|
|
|
|
|
|
Copyright (C) 2005 Free Software Foundation, Inc.
|
|
|
|
|
2007-01-05 16:17:04 +00:00
|
|
|
Author: Matt Rice <ratmice@gmail.com>
|
2005-05-13 00:00:56 +00:00
|
|
|
Date: April 2005
|
|
|
|
|
|
|
|
This file is part of the GNUstep Database Library.
|
|
|
|
|
|
|
|
<license>
|
|
|
|
This library is free software; you can redistribute it and/or
|
|
|
|
modify it under the terms of the GNU Lesser General Public
|
|
|
|
License as published by the Free Software Foundation; either
|
2007-07-12 06:39:22 +00:00
|
|
|
version 3 of the License, or (at your option) any later version.
|
2005-05-13 00:00:56 +00:00
|
|
|
|
|
|
|
This library is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
Lesser General Public License for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU Lesser General Public
|
|
|
|
License along with this library; if not, write to the Free Software
|
|
|
|
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
|
|
</license>
|
|
|
|
**/
|
|
|
|
|
2008-05-09 20:32:12 +00:00
|
|
|
#ifdef NeXT_Foundation_LIBRARY
|
|
|
|
#include <Foundation/Foundation.h>
|
|
|
|
#else
|
* EOControl/EOAndQualifier.m,
* EOControl/EOFault.m,
* EOControl/EOFaultHandler.m,
* EOControl/EOKeyComparisonQualifier.m,
* EOControl/EOKeyValueArchiver.m,
* EOControl/EOKeyValueCoding.m,
* EOControl/EOKeyValueCodingBase.m,
* EOControl/EOMutableKnownKeyDictionary.h,
* EOControl/EONotQualifier.m,
* EOControl/EOOrQualifier.m,
* EOControl/EOQualifier.m,
* EOAccess/EOAdaptor.m,
* EOAccess/EOAdaptorContext.m,
* EOAccess/EOAttribute.m,
* EOAccess/EODatabase.m,
* EOAccess/EODatabaseContext.m,
* EOAccess/EOExpressionArray.m,
* EOAccess/EOJoin.m,
* EOAccess/EOModel.m,
* EOAccess/EOModelGroup.m,
* EOAccess/EORelationship.m,
* EOAccess/EOSQLExpression.m,
* EOAccess/EOSQLQualifier.m,
* EOAccess/EOSchemaGeneration.m,
* EOAccess/EOStoredProcedure.m,
* EOAdaptors/PostgreSQLAdaptor/PostgreSQLAdaptor.m,
* EOAdaptors/PostgreSQLAdaptor/PostgreSQLChannel.m,
* EOAdaptors/PostgreSQLAdaptor/PostgreSQLExpression.m,
* EOAdaptors/SQLiteAdaptor/SQLite3Adaptor.m,
* EOAdaptors/SQLiteAdaptor/SQLite3Channel.m,
* EOInterface/EOTableViewAssociation.m,
* EOModeler/EOModelExtensions.m,
* EOModeler/EOModelerApp.m,
* DBModeler/ModelerAttributeEditor.m,
* DBModeler/ModelerEntityEditor.m: Remove references to NSUtilities.h.
Add includes for missing header references.
* DBModeler/Modeler.m (-[showEditor:]): Add cast to avoid compiler
warning.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@25994 72102866-910b-0410-8b05-ffd578937521
2008-01-22 13:57:07 +00:00
|
|
|
#include <Foundation/NSArray.h>
|
|
|
|
#include <Foundation/NSDictionary.h>
|
2008-05-09 20:32:12 +00:00
|
|
|
#endif
|
2005-05-13 00:00:56 +00:00
|
|
|
|
|
|
|
#include <EOAccess/EOModel.h>
|
|
|
|
#include <EOAccess/EOModelGroup.h>
|
* EOControl/EOAndQualifier.m,
* EOControl/EOFault.m,
* EOControl/EOFaultHandler.m,
* EOControl/EOKeyComparisonQualifier.m,
* EOControl/EOKeyValueArchiver.m,
* EOControl/EOKeyValueCoding.m,
* EOControl/EOKeyValueCodingBase.m,
* EOControl/EOMutableKnownKeyDictionary.h,
* EOControl/EONotQualifier.m,
* EOControl/EOOrQualifier.m,
* EOControl/EOQualifier.m,
* EOAccess/EOAdaptor.m,
* EOAccess/EOAdaptorContext.m,
* EOAccess/EOAttribute.m,
* EOAccess/EODatabase.m,
* EOAccess/EODatabaseContext.m,
* EOAccess/EOExpressionArray.m,
* EOAccess/EOJoin.m,
* EOAccess/EOModel.m,
* EOAccess/EOModelGroup.m,
* EOAccess/EORelationship.m,
* EOAccess/EOSQLExpression.m,
* EOAccess/EOSQLQualifier.m,
* EOAccess/EOSchemaGeneration.m,
* EOAccess/EOStoredProcedure.m,
* EOAdaptors/PostgreSQLAdaptor/PostgreSQLAdaptor.m,
* EOAdaptors/PostgreSQLAdaptor/PostgreSQLChannel.m,
* EOAdaptors/PostgreSQLAdaptor/PostgreSQLExpression.m,
* EOAdaptors/SQLiteAdaptor/SQLite3Adaptor.m,
* EOAdaptors/SQLiteAdaptor/SQLite3Channel.m,
* EOInterface/EOTableViewAssociation.m,
* EOModeler/EOModelExtensions.m,
* EOModeler/EOModelerApp.m,
* DBModeler/ModelerAttributeEditor.m,
* DBModeler/ModelerEntityEditor.m: Remove references to NSUtilities.h.
Add includes for missing header references.
* DBModeler/Modeler.m (-[showEditor:]): Add cast to avoid compiler
warning.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@25994 72102866-910b-0410-8b05-ffd578937521
2008-01-22 13:57:07 +00:00
|
|
|
|
|
|
|
#include "EOModeler/EODefines.h"
|
|
|
|
#include "EOModeler/EOModelerApp.h"
|
|
|
|
#include "EOModeler/EOModelerDocument.h"
|
2005-05-13 00:00:56 +00:00
|
|
|
|
2008-05-09 20:32:12 +00:00
|
|
|
#include <GNUstepBase/GNUstep.h>
|
|
|
|
|
2005-05-13 00:00:56 +00:00
|
|
|
EOModelerApp *EOMApp;
|
|
|
|
NSString *EOMSelectionChangedNotification = @"EOModelerSelectionChanged";
|
|
|
|
NSString *EOMPropertyPboardType = @"EOModelProperty";
|
|
|
|
|
|
|
|
static EOModelerDocument *_activeDocument;
|
|
|
|
|
|
|
|
@implementation EOModelerApp : NSApplication
|
|
|
|
|
|
|
|
- (id) init
|
|
|
|
{
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
if ((self = [super init]))
|
2005-05-13 00:00:56 +00:00
|
|
|
{
|
|
|
|
EOMApp = (EOModelerApp*)NSApp;
|
|
|
|
_documents = [[NSMutableArray alloc] init];
|
|
|
|
_columnsByClass = [[NSMutableDictionary alloc] init];
|
|
|
|
}
|
|
|
|
|
|
|
|
return self;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (NSArray *)allPasteboardTypes
|
|
|
|
{
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
return [NSArray arrayWithObject:EOMPropertyPboardType];
|
2005-05-13 00:00:56 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
- (EOModelerEditor *)currentEditor;
|
|
|
|
{
|
|
|
|
return _currentEditor;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void) setCurrentEditor:(EOModelerEditor *)newEditor
|
|
|
|
{
|
|
|
|
_currentEditor = newEditor;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void)addDocument:(EOModelerDocument *)document
|
|
|
|
{
|
|
|
|
[_documents addObject: document];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void)removeDocument:(EOModelerDocument *)document
|
|
|
|
{
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
if (_activeDocument == document)
|
|
|
|
_activeDocument = nil;
|
2005-05-13 00:00:56 +00:00
|
|
|
[_documents removeObject: document];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (NSArray *)documents
|
|
|
|
{
|
|
|
|
return [NSArray arrayWithArray: _documents];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (EOModelerDocument *)activeDocument
|
|
|
|
{
|
|
|
|
//TODO
|
|
|
|
return _activeDocument;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (EOModelerDocument *)loadDocumentAtPath:(NSString *)path
|
|
|
|
{
|
|
|
|
EOModel *loadedModel = [[EOModel alloc] initWithContentsOfFile:path];
|
|
|
|
[[EOModelGroup defaultGroup] addModel:loadedModel];
|
|
|
|
EOModelerDocument *loadedDocument = [[EOModelerDocument alloc] initWithModel: loadedModel];
|
|
|
|
[self addDocument: loadedDocument];
|
|
|
|
RELEASE(loadedDocument);
|
|
|
|
return loadedDocument;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (EOModelerDocument *)documentWithPath:(NSString *)path
|
|
|
|
{
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
unsigned i = 0;
|
2005-05-13 00:00:56 +00:00
|
|
|
for (i=0; i < [_documents count]; i++)
|
|
|
|
{
|
|
|
|
if ([[[_documents objectAtIndex:i] documentPath] isEqual: path])
|
|
|
|
return [_documents objectAtIndex:i];
|
|
|
|
}
|
|
|
|
return nil;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void)registerColumnName:(NSString *)name
|
|
|
|
forClass:(Class)class
|
|
|
|
provider:(id <EOMColumnProvider>)provider
|
|
|
|
{
|
|
|
|
NSMutableDictionary *classDict = [_columnsByClass objectForKey: class];
|
|
|
|
if (!classDict)
|
|
|
|
{
|
|
|
|
classDict = [[NSMutableDictionary alloc] init];
|
|
|
|
[_columnsByClass setObject:classDict forKey:class];
|
|
|
|
RELEASE(classDict);
|
|
|
|
}
|
|
|
|
[classDict setObject:provider forKey:name];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (void)registerColumnNames:(NSArray *)names
|
|
|
|
forClass:(Class)class
|
|
|
|
provider:(id <EOMColumnProvider>)provider
|
|
|
|
{
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
unsigned i,count = [names count];
|
2005-05-13 00:00:56 +00:00
|
|
|
NSMutableDictionary *classDict = [_columnsByClass objectForKey: class];
|
|
|
|
|
|
|
|
if (!classDict)
|
|
|
|
{
|
|
|
|
classDict = [[NSMutableDictionary alloc] init];
|
|
|
|
[_columnsByClass setObject:classDict forKey:class];
|
|
|
|
RELEASE(classDict);
|
|
|
|
}
|
|
|
|
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
for (i = 0; i < count; i++)
|
2005-05-13 00:00:56 +00:00
|
|
|
{
|
|
|
|
[classDict setObject:provider forKey:[names objectAtIndex:i]];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
- (NSArray *)columnNamesForClass:(Class)class
|
|
|
|
{
|
|
|
|
return [[_columnsByClass objectForKey:class] allKeys];
|
|
|
|
}
|
|
|
|
|
|
|
|
- (id <EOMColumnProvider>)providerForName:(NSString *)name class:(Class)class
|
|
|
|
{
|
|
|
|
return [[_columnsByClass objectForKey:class] objectForKey:name];
|
|
|
|
}
|
|
|
|
|
|
|
|
+ (EOModel *)modelWithPath:(NSString *)path
|
|
|
|
{
|
|
|
|
id _eom = [[EOModel alloc] initWithContentsOfFile:path];
|
|
|
|
[[EOModelGroup defaultGroup] addModel: _eom];
|
|
|
|
return _eom;
|
|
|
|
}
|
|
|
|
|
|
|
|
+ (EOModel *)modelContainingFetchSpecification:(EOFetchSpecification *)fs
|
|
|
|
{
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
/* TODO */
|
|
|
|
return nil;
|
2005-05-13 00:00:56 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
+ (NSString *)nameForFetchSpecification:(EOFetchSpecification *)fs
|
|
|
|
{
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
/* TODO */
|
|
|
|
return nil;
|
2005-05-13 00:00:56 +00:00
|
|
|
}
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
|
2005-05-13 00:00:56 +00:00
|
|
|
-(void)_setActiveDocument:(EOModelerDocument*)ad
|
|
|
|
{
|
|
|
|
_activeDocument = ad;
|
|
|
|
}
|
* EOModeler/EOMInspectorController.m (-init): Don't release the window
on close.
(_selectionChanged:): Fix view swapping. Set view as needing display.
* EOModeler/EOModelExtensions.m:
(+mutableAttributedStringWithBoldSubstitutionsWithFormat:): Implement.
* EOModeler/EOModelerApp.h: Add -removeDocument:, -documentAtPath:,
and -loadDocumentAtPath: methods.
* EOModeler/EOModelerApp.m (-init:): Add parentheses around
assignment.
(-allPasteboardTypes): Initial implementation.
(-removeDocument:): If removing the active document, set the active
document to nil.
(-documentWithPath:): Change array iterators to unsigned.
(-registerColumNames:forClass:provider:): Ditto.
(-modelContainingFetchSpecification:): Temporarily return nil.
(-nameForFetchSpecification:): Ditto.
* EOModeler/EOModelerDocument.h: Declare consistency check
notification constants. Add -adaptor, -appendConsistencyCheckErrorText:,
-appendConsistencyCheckSuccessText:, -addEntity:, -addRelationship,
-addAttribute and -delete.
* EOModeler/EOModelerDocument.m: Add consistency check notification
constants. Add private category interface.
(-firstSelectionOfClass:): Change array iterators to unsigned.
Remove debugging logs.
(-validateMenuItem:): Initial implementation.
(-initWithModel:): Add parentheses around assignment. Add the model
to the default model group.
(-dealloc, -delete:): Initial implementation.
(-isDirty, -prepareToSave,-checkCloseDocument): Return no temporarily
until implemented.
(-saveToPath:): Break long messages into separate lines.
(-addDefaultEditor:, -addEntity:, -addAttribute:): Ditto.
(-addRelationship:, ):
(-activate): Remove commented out code.
(-closeEditor:, -checkCloseEditor:): Add comments.
(-canFlattenSelectedAttribute): Add temporary return value.
(-windowWillClose:): Remove self from the open documents.
(-checkConsistency:): Implement.
(-appendConsistencyCheckErrorText:): Ditto.
(-appendConsistencyCheckSuccessText:): Ditto.
* EOModeler/EOModelerEditor.m (-initWithDocument:): Add parentheses
around assignment. Don't retain our document.
(-selectionPath:, -viewedObjectPath): Return nil.
(-[EOModelerCompoundEditor dealloc]): Implement.
(-[EOModelerCompoundEditor initWithParentObject:): Add parentheses
around assignment.
(-[EOModelerEmbedibleEditor pathViewPreferenceHint:): Return nil.
* EOModeler/GNUmakefile: Remove extra whitespace.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21440 72102866-910b-0410-8b05-ffd578937521
2005-07-09 17:44:40 +00:00
|
|
|
|
2005-05-13 00:00:56 +00:00
|
|
|
@end
|