Commit graph

508 commits

Author SHA1 Message Date
Matt Rice
0412fd6a40 * EOAccess/EOSQLExpression.m
(+createTableStatementsForEntityGroup:)
        (+dropTableStatementsForEntityGroup:)
        (+primaryKeySupportStatementsForEntityGroup:)
        (+createTableStatementsForEntityGroup:): Return an empty array for
        abstract entities.
        * EOAdaptors/PostgreSQLAdaptor/PostgreSQLExpression.m
        (+dropTableStatementsForEntityGroup:): Ditto.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23653 72102866-910b-0410-8b05-ffd578937521
2006-09-28 15:25:30 +00:00
Matt Rice
9afa810960 (-selectNext): Implement.
(-selectPrevious): Ditto.
        (-enabledToSetSelectedObjectValueForKey:): Handle query mode.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23638 72102866-910b-0410-8b05-ffd578937521
2006-09-27 11:31:12 +00:00
Matt Rice
e37c39caec * EOInterface/EODisplayGroup.m
(-enabledToSetSelectedObjectValueForKey:)
        (-qualifierFromQueryValues:)
        (-equalToQueryValues:),(-setEqualToQueryValues:)
        (-greaterThanQueryValues:),(-setGreaterThanQueryValues:)
        (-lessThanQueryValues:),(-setLessThanQueryValues:)
        (-qualifyDisplayGroup),
        (-qualifyDataSource): Implement.
        (-_queryDictForOperator:): New private method.
        (-_qualifierForKey:value:defaultOperator:): Ditto.
        (-setValue:forObject:key:): Handle @query keys.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23628 72102866-910b-0410-8b05-ffd578937521
2006-09-26 15:10:35 +00:00
Matt Rice
dc494b02b0 * EOInterface/EODisplayGroup.m
(-enabledToSetSelectedObjectValueForKey:): Implement.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23596 72102866-910b-0410-8b05-ffd578937521
2006-09-22 23:59:21 +00:00
Matt Rice
f62d20d5bd update copyright.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23580 72102866-910b-0410-8b05-ffd578937521
2006-09-21 07:24:22 +00:00
Matt Rice
a41849407a * EOInterface/EOGenericControlAssociation.m (-endEditing):
Fix copy/paste error.
        * GDL2Palette/Palette.[hm]: Load bundles from GDL2PaletteBundles 
key.
        * GDL2Palette/ConnectInspector.m: Replace static map table with
        walking the list of connectors.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23579 72102866-910b-0410-8b05-ffd578937521
2006-09-21 06:46:45 +00:00
Matt Rice
b6725c1ce5 * GDL2Palette/DisplayGroupInspector.m: -revert: update local keys.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23564 72102866-910b-0410-8b05-ffd578937521
2006-09-19 21:09:56 +00:00
Matt Rice
c30d6c1913 * GDL2Palette/KeyWrapper.h: Add LocalType.
* GDL2Palette/ConnectInspector.m (_localKeysFromDisplayGroup): 
New
        method.
        (updateValues:): Add local keys.
        (_oaBrowserAction:): Enable ok button for LocalType.
        Handle relationships explicitly
        (browser:willDisplayCell:atRow:column:): Enable and set leaf for
        LocalType keys.
        * GDL2Palette/DisplayGroupInspector.[hm]: Add editor for local 
keys.
        * GDL2Palette/GDL2DisplayGroupInspector.gorm: Ditto.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23563 72102866-910b-0410-8b05-ffd578937521
2006-09-19 19:21:14 +00:00
Matt Rice
06ba08fb90 * DBModeler/SQLGenerator.m (-executeSQL:): Fix memory leak,
Remove a hack, add a FIXME.
        * EOInterface/EODisplayGroup.m (-initWithCoder:): Move fetching 
	on load to -awakeFromNib
        * GDL2Palette/DisplayGroupInspector.[hm]
        * GDL2Palette/GDL2DisplayGroupInspector.gorm: New files.
        * GDL2Palette/IB+Categories.m: Add display group Inspector.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23552 72102866-910b-0410-8b05-ffd578937521
2006-09-18 23:39:37 +00:00
Matt Rice
7c3e947f68 * DBModeler/SQLGenerator.m
* Tools/eoutil.m: change Postgres to PostgreSQL.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23547 72102866-910b-0410-8b05-ffd578937521
2006-09-17 15:41:22 +00:00
Matt Rice
4394a323d0 * EOAccess/EOModel.m (writeToFile:): Use the default permissions
on .eomodeld files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23537 72102866-910b-0410-8b05-ffd578937521
2006-09-16 21:34:10 +00:00
Matt Rice
45d6b72c04 * DBModeler/Inspectors/AttributeInspector.[hm]: Merge private
dictionarys without conflicting keys.  Replace Integer/Double
        types with a generic Number type.
        * DBModeler/Inspectors/AttributeInspector.gorm: Update interface
        for 'Number'.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23536 72102866-910b-0410-8b05-ffd578937521
2006-09-16 18:58:33 +00:00
Matt Rice
05f8a3e375 * DBModeler/Inspectors/AttributeInspector.h/m: implement
valueType
        pop-up button, and add macro to clean up some code.
        * DBModeler/Inspectors/AttributeInspector.gorm: Ditto.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23535 72102866-910b-0410-8b05-ffd578937521
2006-09-16 14:33:20 +00:00
Matt Rice
554b600357 * DBModeler/Resources/AllowsNull_Header.tiff: New file.
* DBModeler/GNUmakefile: Add new file.
        * DBModeler/DefaultColumnProvider.m: Set column header image.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23534 72102866-910b-0410-8b05-ffd578937521
2006-09-16 13:27:05 +00:00
Matt Rice
941076c761 * DBModeler/Resources/AllowsNull_On.tiff: New file.
* DBModeler/GNUmakefile: Add new file.
        * DBModeler/DefaultColumnProvider.m: Reorder table columns.
        Use new file, for allows null column.  Remove out of date comments.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23533 72102866-910b-0410-8b05-ffd578937521
2006-09-16 13:02:02 +00:00
David Ayers
081f2c530d * EOAccess/EOAttribute.[hm]: Add documentation.
(_valueTypeChar): Replace char type with ...
	(_valueTypeCharacter): ... unichar type.
	([_valueTypeCharacter): Add comment about caching issue.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23531 72102866-910b-0410-8b05-ffd578937521
2006-09-16 03:27:17 +00:00
Matt Rice
6db22cf80d * EOInterface/EODisplayGroup.m: Correct selector name.
* EOInterface/EOTableViewAssociation.m: Remove observer 
notification
        suppression.
        * DBModeler/Modeler.m: Add some debug code.
        * DBModeler/Inspectors/AttributeInspector.h/m: Implement.
        * DBModeler/Inspectors/AttributeInspector.gorm: Update 
interface.
        * DBModeler/ModelerTableEmbedibleEditor.m: Send notification on
        displayGroup:didSetValue:forObject:key.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23530 72102866-910b-0410-8b05-ffd578937521
2006-09-15 20:03:41 +00:00
Matt Rice
40fc895654 * DBModeler/Resources/ModelDrag.tiff: Update Image.
* DBModeler/Resources/DBModeler.tiff: Correct image format.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23529 72102866-910b-0410-8b05-ffd578937521
2006-09-15 14:17:01 +00:00
Matt Rice
9a603bc981 * EOAdaptors/PostgreSQLAdaptor/LoginPanel/Makefile.postamble: Remove
symlink creation/removal.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23528 72102866-910b-0410-8b05-ffd578937521
2006-09-15 14:04:42 +00:00
David Ayers
524499d170 Rename PostgreSQL Adpator directory.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23523 72102866-910b-0410-8b05-ffd578937521
2006-09-15 12:44:19 +00:00
Matt Rice
b47f3c16f8 * EOAdaptors/Postgres95/*.h/m: Rename files from Postgres95 to
Postgres.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23522 72102866-910b-0410-8b05-ffd578937521
2006-09-15 12:14:20 +00:00
Matt Rice
c54164c770 * EOAdaptors/Postgres95/{*,*/*}: Rename from Postgres95 to Postgres.
* Tools/eoutil.m: Ditto.
        * DBModeler/SQLGenerator.m: Ditto.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23521 72102866-910b-0410-8b05-ffd578937521
2006-09-15 12:05:56 +00:00
Matt Rice
dd9ac05f71 * GNUmakefile.in: Remove reference to config.make
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23514 72102866-910b-0410-8b05-ffd578937521
2006-09-14 21:31:17 +00:00
Matt Rice
726d42c448 * configure: Regenerate.
* common.make: New file.
        * config.make.in: Remove.
        * GNUmakefile: Ditto.
        * GNUmakefile.in: New file, merges config.make.in and 
GNUmakefile.
        * configure.ac: Remove config.make.in, add GNUmakefile.in.
        * EOInterface/Makefile.preamble
        * EOInterface/GNUmakefile
        * EOAccess/Makefile.preamble
        * EOAccess/GNUmakefile
        * EOControl/GNUmakefile
        * EOControl/Makefile.preamble
        * DBModeler/GNUmakefile
        * Tools/Makefile.preamble
        * EOAdaptors/Postgres95/Makefile.preamble
        * GDL2Palette/GNUmakefile
        * gdl2.make.in
        * EOModeler/GNUmakefile
        * EOModeler/Makefile.preamble: Change to compile as native 
libraries.
        * DBModeler/Inspectors/AttributeInspector.gorm/data.info:
        * DBModeler/Inspectors/AttributeInspector.gorm/data.classes:
        * DBModeler/Inspectors/AttributeInspector.gorm/objects.gorm: 
Implement
        interface.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23513 72102866-910b-0410-8b05-ffd578937521
2006-09-14 21:11:01 +00:00
David Ayers
7331d77528 * EOAdaptors/Postgres95/GNUmakefile.in:
Install into GNUSTEP_SYSTEM_ROOT by default.

	* * Update email addresses for Mirko Viviani and David Ayers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23510 72102866-910b-0410-8b05-ffd578937521
2006-09-14 16:06:21 +00:00
David Ayers
e6903b13cf * EOAdaptors/Postgres95/GNUmakefile.in:
Install into GNUSTEP_SYSTEM_ROOT by default.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23507 72102866-910b-0410-8b05-ffd578937521
2006-09-14 14:26:07 +00:00
David Ayers
32d77a66f7 * Version 0.10.1
* README: Correct modeler application name.
	* ANNOUNCE: Update to followup release.
	* NEWS: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23503 72102866-910b-0410-8b05-ffd578937521
2006-09-14 12:10:39 +00:00
David Ayers
49ce9f9320 * EOInterface/GNUmakefile
* DBModeler/Inspectors/GNUmakefile
	* DBModeler/GNUmakefile
	* EOAdaptors/Postgres95/LoginPanel/GNUmakefile
	* GDL2Palette/GNUmakefile: Add missing copyright notices.
	Install into GNUSTEP_SYSTEM_ROOT by default.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23502 72102866-910b-0410-8b05-ffd578937521
2006-09-14 11:58:24 +00:00
David Ayers
c67717ca70 * Version 0.10.0
* ANNOUNCE: New file.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23500 72102866-910b-0410-8b05-ffd578937521
2006-09-14 09:27:41 +00:00
Matt Rice
5779cc0f8b * EOControl/EOObserver.m (EOObserverCenter +_forgetObject:): New
private method.
        (+notifyObserversObjectWillChange:): Change omniscient observer
        arguments.
        * EOControl/EOEditingContext.m (NSObject -dealloc): Call
        _forgetObject:.
        * EOControl/EOPrivate.h: Add category for EOObserverCenter private
        methods.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23490 72102866-910b-0410-8b05-ffd578937521
2006-09-13 20:44:53 +00:00
David Ayers
51c4edbfd8 * README: Update dependencies. Remove reference to external
EOInterface implementation.  Update comments about DBModeler.
	* NEWS: Mention major features of current release.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23475 72102866-910b-0410-8b05-ffd578937521
2006-09-12 20:42:57 +00:00
David Ayers
7bd929705b * EOInterface/EOInterface.gsdoc: New file.
* EOInterface/GNUmakefile: Update variables to build documentation.
	* EOAccess/EOAccess.gsdoc: Specify title.
	* EOControl/EOControl.gsdoc: Ditto.
	* GDL2.gsdoc: Use sections allowed by DTD.  Remove reference to
	MulleEOInterface.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23474 72102866-910b-0410-8b05-ffd578937521
2006-09-12 20:39:43 +00:00
David Ayers
ad43813eb0 * EOAccess/EOSQLExpression.h (deleteStatementWithQualifier:entity:)
* EOAccess/EOSQLExpressionPriv.h (_aliasForRelationshipPath:)
	(_flattenRelPath:entity:, _aliasForRelatedAttribute:relationshipPath:)
	* EOAccess/EOSQLExpression.m (insertStatementForRow:entity:)
	(updateStatementForRow:qualifier:entity:)
	(deleteStatementWithQualifier:entity:)
	(selectStatementForAttributes🔒fetchSpecification:entity:)
	(_aliasForRelationshipPath:)
	* EOAccess/EORelationship.h (intermediateEntity)
	(_foreignKeyForSourceRow:)
	* EOAccess/EORelationship.m (_foreignKeyForSourceRow:, _leftSideKeyMap)
	* EOAccess/EODatabaseContext.h (databaseOperationForObject:)
	(databaseOperationForGlobalID:, recordDatabaseOperation:)
	(_openChannelWithLoginPanel:)
	* EOAccess/EODatabaseContextPriv.h (primaryKeyForObject:)
	(_currentCommittedSnapshotForObject:)
	* EOAccess/EOEntityPriv.h (_keyMapForRelationshipPath:)
	(_keyMapForIdenticalKeyRelationshipPath:, _mapAttribute:)
	(_relationshipPathIsToMany: valueForSQLExpression:)
	(_parsePropertyName:, classPropertyAttributeNames)
	(classPropertyToManyRelationshipNames)
	(classPropertyToOneRelationshipNames, dbSnapshotKeys)
	* EOAccess/EOUtilities.m (rawRowsForEntityNamed:qualifierFormat:)
	(rawRowsMatchingValue:forKey:entityNamed:)
	(rawRowsMatchingValues:entityNamed:, rawRowsWithSQL:modelNamed:)
	(rawRowsWithStoredProcedureNamed:arguments:)
	(executeStoredProcedureNamed:arguments:, databaseContextForModelNamed:)
	(primaryKeyForObject:)
	(destinationKeyForSourceObject:relationshipNamed:)
	* EOAccess/EOEntity.m
	(_mapAttribute:toDestinationAttributeInLastComponentOfRelationshipPath:)
	* EOAccess/EOAdaptor.h (adaptorWithModel:,adaptorWithName:)
	* EOAccess/EOModel.h (_classDescriptionNeeded:,_entityForClass:)
	(_addEntityWithPropertyList:)
	* EOAdaptors/Postgres95/Postgres95Channel.h
	(_evaluateExpression:withAttributes:)
	* EOControl/EOMutableKnownKeyDictionary.h/m (arrayMappingForKeys:)
	(subsetMappingForSourceDictionaryInitializer:sourceKeys:destinationKeys:)
	(subsetMappingForSourceDictionaryInitializer:)
	(setObject:forKey:, removeObjectForKey:, indexForKey:, objectForKey:)
	* EOControl/EOEditingContext.m (handleErrors:,setSharedEditingContext:)
	(faultForRawRow:entityNamed:)
	* GDL2Palette/KeyWrapper.h (setKey:, _key):
	* EOModeler/EOModelerEditor.h (selectionWithinViewedObject)
	* EOModeler/EOModelerEditor.m (initWithDocument:)
	(initWithParentEditor:)
	Correct method signatures.  Add necessary forward @class declations.

	* EOInterface/EOMasterDetailAssociation.m (establishConnection):
	* DBModeler/ModelerTableEmbedibleEditor.m
	(addDefaultTableColumnsForTableView:displayGroup:)
	* DBModeler/DefaultColumnProvider.m (setupTitleForColumn:named:)
	Cast types to avoid compiler warnings.

	* EOControl/EOCheapArray.m (dealloc): Supress compiler warning.
	* EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.m (dealloc)
	* EOModeler/EOModelerEditor.m (dealloc):
	* DBModeler/ModelerAttributeEditor.m (dealloc): Add missing call
	to super.
	* DBModeler/Preferences.m (sharedPreferences): Fix implementation for
	new compiler semantics.
	* EOControl/EOMultiReaderLock.m (init): Correct NSConditionLock
	initialization.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23472 72102866-910b-0410-8b05-ffd578937521
2006-09-12 19:36:24 +00:00
David Ayers
7b0373241f * Version: Update to 0.10.0
* GNUmakefile: Set package name for release targets.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23459 72102866-910b-0410-8b05-ffd578937521
2006-09-12 09:48:23 +00:00
Matt Rice
a2e920b01f * DBModeler/Resources/DBModeler.tiff: New file.
* DBModeler/Resources/Locking_Header.tiff: Ditto.
        * DBModeler/Resources/Key_On.tiff: Add check box background.
        * DBModeler/Resources/Info-GNUstep.plist: Update info panel copyright.
        * DBModeler/ModelerEntityEditor.m (-dealloc): Don't set the datasource
        to nil, its handled in EODisplayGroup -dealloc.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23409 72102866-910b-0410-8b05-ffd578937521
2006-09-07 16:20:38 +00:00
David Ayers
bc9cee7758 * GDL2Palette/KeyWrapper.h: New file.
* GDL2Palette/KeyWrapper.m: Ditto.
	* GDL2Palette/ConnectionInspector.h
	* GDL2Palette/ConnectionInspector.m (init): Initialize _values.
	(-awakeFromNib): Update handling of horizontal scroller.
	(-_associationClassesUsableWithObject:): Implement.
	(-setObject:): Fix assignment issues.
	(-_keysFromClassDescription:): Implement.
	(-_keysFromArray:): Ditto.
	(-updateValues): Reimplement.
	(-_oaBrowserAction:): Ditto.
	(-browser:numberOfRowsInColumn:): Refine implementation.
	(-browser:willDisplayCell:atRow:column:): Reimplement.
	(-ok:): Update associations in active document.
	* GDL2Palette/ResourceManager.m (defaultEditingContext): Try to find
	defaultEditingContext in document objects.
	(addResourcesFromPasteboard:): Reimplement.
	* GDL2Palette/Foundation+Categories.m:
	(arrayWithObjectsRespondingYesToSelector:): Fix leak.
	(arrayWithObjectsRespondingYesToSelector:withObject:): Ditto.
	* GDL2Palette/GNUmakefile: Use PALETTE_LIBS instead of
	ADDITIONAL_LDFLAGS to link libraries.  Add new files.
	* GDL2Palette/GDL2Palette.tiff: New file.
	* GDL2Palette/GDL2ConnectionInspector.gorm: New files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23398 72102866-910b-0410-8b05-ffd578937521
2006-09-05 22:39:30 +00:00
David Ayers
efecac5875 DBModeler/ConsistencyChecker.m (+modelConsistencyCheck:): Honor
validation preferences.
	DBModeler/Modeler.m (-new:): Reimplement.
	(-setAdaptor:): Bail out it adaptor cannot be located.
	(-application:openFile:): Fine tune path checking and correct return
	values.
	(-openPrefs:): Implement.
	* DBModeler/Inspectors/RelationshipInspector.m
	(-displayName): Implement.
	(-selectedEntity): Validate selected row before commencing.
	(-selectedDestinationAttribute): Reimplement.
	(-updateConnectButton): Update enabled state of connect button.
	(-refresh): Correct handling of src/destAttrib_tableView.
	(-tableViewSelectionDidChange:): Allways call updateConnectButton.
	* DBModeler/SQLGenerator.m (-openSQLGenerator:): Reimplement.
	(-executeSQL:): Handle invalid adpator or connection information.
	(-saveAs:): Handle abort correctly.
	(-generate): Handle missing expression class.
	* DBModeler/ModelerTableEmbedibleEditor.h
	* DBModeler/ModelerEntityEditor.m (initWithParentEditor:): Correct
	autoresize behavior.
	(-activate): Update selection.
	(-needToFetch:): Do not reloadData in _topTable.
	(-displayGroupDidChangeSelection:): Update selection on parent.
	* DBModeler/ModelerTableEmbedibleEditor.m
	(-addDefaultTableColumnsForTableView:displayGroup:): Call tile instead
	of sizeToFit.
	* DBModeler/EOAdditions.m: Fix leaks.
	(setIsClassProperty): Reimplement.
	(-[setIsPrimaryKey:]): Ditto.
	(-[setIsClassProperty:]): Correct call to function.
	(-[isUsedForLocking]): Implement.
	(-[setIsUsedForLocking:]): Ditto.
	* DBModeler/MainModelEditor.h
	* DBModeler/MainModelEditor.m: Update view handling.
	* DBModeler/DefaultColumnProvider.m: Update handling of properties.
	* DBModeler/ModelerAttributeEditor.m: Update general GUI interaction.
	* DBModeler/Preferences.h: New file.
	* DBModeler/Preferences.m: Ditto.
	* DBModeler/Inspectors/RelationshipInspector.tiff: New file.
	* DBModeler/Inspectors/GNUmakefile: Add new file.
	* DBModeler/Resources/Preferences.gorm: New files.
	* DBModeler/Resources/Key_Header.tiff: Ditto.
	* DBModeler/Resources/ClassProperty_Header.tiff: Ditto.
	* DBModeler/Resources/Locking_On.tiff: Ditto.
	* DBModeler/Resources/Key_On.tiff: Ditto.
	* DBModeler/GNUmakefile: Add new files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23397 72102866-910b-0410-8b05-ffd578937521
2006-09-05 22:18:35 +00:00
David Ayers
5109a54a70 * EOModeler/EOMInspector.h
* EOModeler/EOMInspector.m: Cleanups.
	(selectedObjects): Reimplement.
	(selectedObject): Return last viewed path if no selection was made.
	* EOModeler/EOModelerDocument.m: Reimplement.
	* EOModeler/EOMInspectorController.m (init): Ditto.
	(-_selectionChanged:): Ditto.
	(-_selectInspector:): Implement and renamed from selectInspector:.
	* EOModeler/EOModelerEditor.h
	* EOModeler/EOModelerEditor.m: Add documentation.
	(-initWithDocument:): Initialize instance variable.
	(-debugSelectionPath): Implement.
	(-[EOModelerCompoundEditor initWithDocument:]): Remove
	initializtation.
	(-[EOModelerCompoundEditor selectionDidChange]): Implement.
	(-[EOModelerCompoundEditor setSelectionPath:]): Call
	selectionDidChange instead of sending notifcation directly.
	(-[EOModelerCompoundEditor viewSelectedObject]): Implement.
	(-[EOModelerEmbedibleEditor dealloc]): Implement.
	(-[EOModelerEmbedibleEditor initWithParentEditor:]): Observe
	EOMSelectionChangedNotification.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23396 72102866-910b-0410-8b05-ffd578937521
2006-09-05 21:38:09 +00:00
David Ayers
bf90955152 * EOInterface/EOAssociation.m (-establishConnection): Simplify to
allow posing.
	(-canBindAspect:displayGroup:key:): Return YES by default.
	* EOInterface/EOTextAssociation.m: Minor formatting issue.  Include
	privat header:
	(-subjectChanged): Set empty string when nil/null value is set.
	* EODisplayGroup.m (-initWithCoder:): Fetch when auto fetch is enabled.
	(-setObjectArray:): Select new selected objects.
	(-redisplay): Don't call notifyObserversObjectWillChange: explicitly.
	(-setSelectionIndexes:): Implement displayGroup:didChangeSelection:
	handling.
	(-selectObjectsIdenticalTo:): Reimplement.
	(-selectObjectsIdenticalTo:selectFirstOnNoMatch:): Ditto.
	(-deleteSelection): Ditto.
	(-insertObject:atIndex:): Fix redisplay timing with respect to
	delegate.
	(-deleteObjectAtIndex:): Implement.
	(-association:failedToValidateValue:forKey:object:errorDescription:)
	Ditto.
	(-editorHasChangesForEditingContext:): Ditto.
	(-editingContextWillSaveChanges:): Ditto.
	(-setValue:forObjectAtIndex:key:): Validate index range.
	(-objectsChangedInEditingContext:): Add workaround until issues
	can be investigated.
	* EOInterface/EOMasterDetailAssociation.m (subjectChanged): Qualify
	datasource's relationship independent of selected object.
	* EOInterface/EOTableViewAssociation.m (associationClassesSuperseded):
	Implement.
	(subjectChanged): Reimplement.
	(tableViewSelectionDidChange:): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23395 72102866-910b-0410-8b05-ffd578937521
2006-09-05 21:16:56 +00:00
David Ayers
c4e21e0b55 * configure.ac (gorm-palette): Add configure option to exclude
building of palette until auto detection works reliably. 
	* config.make.in: New file.
	* configure: Regenerate.
	* GNUmakefile: Include new file.
	* Makefile.postamble: Remove generated config.make on distclean.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23394 72102866-910b-0410-8b05-ffd578937521
2006-09-05 20:42:03 +00:00
David Ayers
0904fd9b19 [Report #16429]
* EOAdaptors/Postgres95/Postgres95Private.m
	(PSQLA_postgresCalendarFormat): Change format from to include
	milliseconds suggested by: Sergey Golovin, svgol at mail dot ru.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22810 72102866-910b-0410-8b05-ffd578937521
2006-04-24 17:24:13 +00:00
David Ayers
3d705c00c4 * EOControl/EOGenericRecord.m
([_getValueForKey:selector:type:size:offset:]): Replace deprecated use
	of GSObjCGetValue with GSObjCGetVal.
	([_setValueForKey:selector:type:size:offset:]): Replace deprecated use
	of GSObjCSetValue with GSObjCSetVal.
	* EOControl/EOKeyValueCoding.m
	([NSObject takeValue:forKey:]):  Replace deprecated use	of
	GSObjCSetValue with GSObjCSetVal.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22805 72102866-910b-0410-8b05-ffd578937521
2006-04-24 06:38:15 +00:00
Matt Rice
c19aa897d7 * EOAccess/EOEntity.m (-relationships): Fix whitespace from previous
commit.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22684 72102866-910b-0410-8b05-ffd578937521
2006-03-19 18:39:38 +00:00
Matt Rice
fbedef852f * EOControl/EODetailDataSource.m (-editingContext): Return the master
data sources editing context.
* EOControl/EOGlobalID.m (-description): Correct conversion specification.
* EOAccess/EOModel.m (-referencesToProperty:): Implement.
* EOAccess/EORelationship.m (-referencesProperty:): Fix bug in or when
	sending messages to nil.
	(-validateName:): Return nil if the name is the properties current name.
* EOAccess/EOModel.m (-validateName:): Ditto.
* EOAccess/EOEntity.m (-validateName:): Ditto.
        (-relationships): Handle partially converted relationships array.
        (-addAttribute:): Remove unnecessary cast.
        (-addRelationship:): Ditto.
        (-removeAttribute): Remove property from the class properties and
        primary key attributes arrays.
        (-removeRelationship:): Remove property from the class properties
        array.
        (-_setIsEdited:): Rebuild _relationshipsByName.
* EOAdaptors/Postgres95/Postgres95SQLExpression.m: Fix warning.
* EOAdaptors/Postgres95/Postgres95Values.m: Remove c99 usage.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22681 72102866-910b-0410-8b05-ffd578937521
2006-03-19 18:03:50 +00:00
Matt Rice
5faa90d0e1 * EOAdaptors/Postgres95/Postgres95Adaptor.m: Add braces to typeNames to
avoid warnings


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22184 72102866-910b-0410-8b05-ffd578937521
2005-12-18 23:26:53 +00:00
Matt Rice
c6a1ebfb91 * EOAdaptors/Postgres95/LoginPanel/postgreslogo.tif: New file.
* EOAdaptors/Postgres95/LoginPanel/GNUmakefile: Add postgreslogo.tif
* EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.[h/m]: Show
 logo, and make the login panel more visually appealing. Switch databases
 table view to a NSComboBox.
* DBModeler/KVDataSource.m: Return nil in unimplemented methods with return
 values.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22181 72102866-910b-0410-8b05-ffd578937521
2005-12-18 22:55:23 +00:00
David Ayers
2525162b8d * EOControl/EOEditingContext.m (-[forgetObject:]: Clear registered
snapshots.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22180 72102866-910b-0410-8b05-ffd578937521
2005-12-18 22:42:03 +00:00
David Ayers
01966f05be * EOControl/EOGlobalID.m (-[EOGlobalID copyWithZone:]): Optimize
to return self as GIDs are immutable and they are used as dictionary
	keys which are generally copied.
	(-[EOTemporaryGlobalID copyWithZone:]): Remove.
	(-[EOTemporaryGlobalID description]): Implement.
	* EOControl/EOKeyGlobalID.m (-[EOKeyGlobalID copyWithZone:]): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22179 72102866-910b-0410-8b05-ffd578937521
2005-12-18 22:34:54 +00:00
David Ayers
7b47aa7c2e * EOControl/EOEvent.[hm]: New files.
* EOControl/EOEventCenter.[hm]: New files.
	* EOControl/EOControl.h: Add EOEvent.h and EOEventCenter.h.
	* EOControl/GNUmakefile: Add EOEvent.h/m and EOEventCenter.h/m.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22178 72102866-910b-0410-8b05-ffd578937521
2005-12-18 16:24:02 +00:00
David Ayers
6240fa79a7 * EOAccess/EOAttribute.m: Translate comment to avoid
non-ASCII encoding.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22177 72102866-910b-0410-8b05-ffd578937521
2005-12-18 13:47:07 +00:00
David Ayers
f4f62983ec * EOControl/EOMultiReaderLock.[h/m]: New files.
* EOControl/EOControl.h: Add EOMultiReaderLock.h.
	* EOControl/GNUmakefile: Add EOMultiReaderLock.h/m.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22176 72102866-910b-0410-8b05-ffd578937521
2005-12-18 13:35:00 +00:00
David Ayers
e69eb8938e * AUTHORS: Add Matt Rice.
* GDL2.gsdoc: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22175 72102866-910b-0410-8b05-ffd578937521
2005-12-18 13:30:49 +00:00
David Ayers
e13af57d12 * EOControl/EOQualifier.m (getKey): Fix parsing of 'nil'
EOKeyValueQualifiers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22157 72102866-910b-0410-8b05-ffd578937521
2005-12-05 20:35:08 +00:00
David Ayers
a0cdfdc4d9 * EOControl/EOQualifier.m (_isLike): Handle unichar characters.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22126 72102866-910b-0410-8b05-ffd578937521
2005-11-30 20:50:30 +00:00
David Ayers
c1a9dc7ab1 * EOControl/EOQualifier.m (cimSEL, spaceSet, alnumSet, digitSet)
(spaceCIM, alnumCIM, digitCIM): New static globals for unichar
	handling.
	([+initialize]): Initialize new variables.
	(getOperator, getKey, isNotQualifier, whichQualifier): Use
	unichar instead of char.
	([+qualifierWithQualifierFormat:varargList:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22124 72102866-910b-0410-8b05-ffd578937521
2005-11-30 15:51:31 +00:00
David Ayers
f4651ff1a7 * EOControl/EOSharedEditingContext.[hm]: New files.
* EOControl/EOEditingContext.[hm]: Use EOSharedEditingContext.
	(sharedEditingContext, setSharedEditingContext:): New methods.
	(-initWithParentObjectStore:): Handle EOSharedEditingContext.
	(-dealloc, -faultForGlobalID:editingContext:): Ditto.
	(-objectForGlobalID:, -globalIDForObject:): Ditto.
	(-initializeObject:withGlobalID:editingContext:): Ditto.
	(-refaultObject:withGlobalID:editingContext:): Ditto.
	(-_processInitializedObjectsInSharedContext:): New method.
	(-_defaultEditingContextNowInitialized:): Ditto.
	(-_objectsInitializedInSharedContext:) Ditto.
	(-_defaultSharedEditingContextWasInitialized:) Ditto.
	* EOControl/EOControl.h: Added EOSharedEditingContext.h.
	* EOControl/GNUmakefile: Added EOSharedEditingContext.[hm].


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@22117 72102866-910b-0410-8b05-ffd578937521
2005-11-28 22:10:05 +00:00
David Ayers
5714dc3fcb * EOAdaptors/Postgres95/Postgres95Adaptor.m (typeNames): Add
serial and serial8 from patch 1777 from Simon Stapleton.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21938 72102866-910b-0410-8b05-ffd578937521
2005-11-02 14:07:03 +00:00
David Ayers
42e76eae72 * EOControl/EOKeyValueCoding.h/m
(unableToSetNullForKey:): Remove deprecated -base/Foundation hook.
	(setNilValueForKey:) Override new hook to call unableToSetNilForKey:.
	(unableToSetNilForKey:): Raise exception as documented.
	(takeValue:forKey:): Implement here to avoid deprecation warning.
	(takeValue:forKeyPath:): Ditto.
	(takeValuesFromDictionary:): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21767 72102866-910b-0410-8b05-ffd578937521
2005-10-02 16:09:42 +00:00
David Ayers
a4764b2aaa * EOControl/EOAndQualifier.m,
* EOControl/EOKeyComparisonQualifier.m,
	* EOControl/EOKeyValueQualifier.m,
	* EOControl/EOOrQualifier.m: ([-description]) Make qualifiers
	user presentable like in WO.
	(-[debugDescription]): New deprecated method for old descriptions.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21766 72102866-910b-0410-8b05-ffd578937521
2005-10-02 13:56:00 +00:00
Manuel Guesdon
1ae3f10933 * EOAccess/EOSQLQualifier.m: change in EOAndQualifier and
EOOrQualifier -schemaBasedQualifierWithRootEntity to allow
nil schemaBasedQualifier.
fix in EOKeyValueQualifier -schemaBasedQualifierWithRootEntity:
to handle key like rel1.rel2.rel3 (see Testsuite
EOKeyValueQualifier01.m)
* EOAccess/EOSQLExpression.m: added NSAssert in
-sqlStringForKeyValueQualifier:
* EOAccess/EORelationship.m: added NSAssert in setDefinition:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21682 72102866-910b-0410-8b05-ffd578937521
2005-08-25 18:32:44 +00:00
Manuel Guesdon
b9ab8664ff * EOControl/EOEditingContext.m: fix _processRecentChanges
for insert+delete before saving changes (see EOEditingContext03
in Testsuite)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21673 72102866-910b-0410-8b05-ffd578937521
2005-08-24 12:00:15 +00:00
Manuel Guesdon
708bacc116 * EOAdaptors/Postgres95/Postgres95Private.m: added
PSQLA_NSDateClass initialization in PSQLA_PrivInit()
* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
fix initialized in +initialize


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21671 72102866-910b-0410-8b05-ffd578937521
2005-08-23 17:25:01 +00:00
Manuel Guesdon
d6d1029a3e * EOControl/EOGenericRecord.m: fix -willChange call (don't call
it for takeStoredValue:forKey and for -setXX method).
* EOControl/EOClassDescription.m: check if value is not
already set before adding/setting it in
_setObject:forBothSidesOfRelationshipWithKey: and
addObject:toBothSidesOfRelationshipWithKey:
* EOAccess/EOAttribute.m: log in -validateValue:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21669 72102866-910b-0410-8b05-ffd578937521
2005-08-23 14:40:44 +00:00
David Ayers
41b2d38380 * EOAccess/EODatabaseContext.m ([-dealloc], [-rollbackChanges])
([-_cleanUpAfterSave]): Guard against missing hash table.
	([-registerLockedObjectWithGlobalID:]): Reformat.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21653 72102866-910b-0410-8b05-ffd578937521
2005-08-17 21:11:40 +00:00
David Ayers
38b0f58afd * EOControl/EOEditingContext.m ([-_processRecentChanges]):
Invert logic for propagating deletes.
	([-saveChanges]): Propagate deletes if they were not
	propagated yet.
	* EOControl/EOPrivate.h (EOHashAddTable): New compatibility
	function.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21651 72102866-910b-0410-8b05-ffd578937521
2005-08-17 18:57:13 +00:00
David Ayers
9647f11503 * COPYING.LIB: Update to LGPL 2.1.
* configure: Regenerate.
	* Update FSF Address and Copyright years.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21645 72102866-910b-0410-8b05-ffd578937521
2005-08-17 08:07:57 +00:00
Matt Rice
b24ec5f814 * DBModeler/Modeler.m (_newDocumentWithModel:): Don't release the
model.
        (-new:): Release the model here.
        (-newFromDatabase:): Ditto, and add error handling.
        (-open:): Ditto.
        (-application:openFile:): New method.
        * EOModeler/EOModelerDocument.m (-saveAs:): Add error handling, and
        remove check for an existing name.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21445 72102866-910b-0410-8b05-ffd578937521
2005-07-10 19:45:21 +00:00
Matt Rice
fa5c582457 * DBModeler/GNUmakefile: Add Info-gnustep.plist to project.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21444 72102866-910b-0410-8b05-ffd578937521
2005-07-10 19:33:44 +00:00
Matt Rice
1761a012a1 * DBModeler/Resources/Info-gnustep.plist: New file.
* DBModeler/Modeler.m (-applicationWillFinishLaunching:): Rearrange
        menu layout.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21443 72102866-910b-0410-8b05-ffd578937521
2005-07-10 19:24:35 +00:00
Matt Rice
225ff5a981 * DBModeler/ConsistencyChecker.m: New variable doc.
(+endConsistencyCheck:): Use the notification object. Use unsigned for
        array iterators.
        (pass): Use the new doc variable.
        (+attributeDetailsCheck:): Use unsigned for array iterators.
        (+inheritanceCheckForModel:, +relationshipCheckForModel:): Ditto.
        (+primaryKeyCheckForModel:, +externalNameCheckForModel): Ditto.
        (+modelConsistencyCheck:): Assign doc to the notification object.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21441 72102866-910b-0410-8b05-ffd578937521
2005-07-09 18:24:57 +00:00
Matt Rice
93221c9bc9 * 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
Matt Rice
b70ec2777a * EOInterface/EOAssociation.m: New variable _objectToAssociations.
(+objectDeallocated:): New private method.
(+initialize): initialize _objectToAssociations.
(-dealloc): Discard any pending notifications.
(-establishConnection): Retain display groups we're bound to.
Retain our self and register our object for dealloc notification.
(-breakConnection): Release display groups we're bound to. Release
our self and discard any pending notifications.
(-subjectChanged): Add comment

* EOInterface/EOColumnAssociation.m (-establishConnection): Assign our
dg ivar after establishing connection.  Use the dg ivar and move 2 if
statements into one.

* EOInterface/EODisplayGroup.m: Remove debugging class/category for
emptyArray and emptyDictionary.
(-indexesForObjectsIndeticalTo:): Fix typo by renaming to
-indexesForObjectsIdenticalTo:.
(-dealloc): Remove our self as an observer for any notifications,
as an editor or message handler for our editing context, our observer
proxies as observers from the observer center. Don't release
array/dictionary ivars that are emptyArray or emptyDictionary.
(-setSelectionIndexes:): Update to reflect change in method name.
(-deleteSelection): Remove unused local var.
(-fetch:): Call -redisplay.
(-updatedObjectIndex:): Return -1 instead of 0 until this is
implemented.
(-setValue:forObject:key:): fix comment in exception handlers.

* EOInterface/EOGenericControlAssociation.m:
(-subjectChanged:): Remove unused local variable.

* EOMasterDetailAssociation.m:
(-establishConnection, -breakConnection, -subjectChanged): Implement.

* EOInterface/EOPopUpAssociation.m: Remove unused local variables.

* EOInterface/EOTableViewAssociation.m:
(-breakConnection:): Remove our NSTableView object from the map table.
(-subjectChanged:): Remove unused local variables. Release temporary
retain on selection indexes.
(+bindToTableView:displayGroup:): Don't retain the table views in the
map table.  Release the newly created association.
(-dealloc): Remove self from the tvAssociationMap.

* EOInterface/SubclassFlags.h: Fix bitmask on MatchKey1AspectMask.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21439 72102866-910b-0410-8b05-ffd578937521
2005-07-09 03:01:22 +00:00
Matt Rice
91868e3d12 * DBModeler/AdaptorsPanel.m (-init): Add parenthesis around
assignment.   Replace label with window title.
(-runAdaptorsPanel:): Remove unused variable.

* DBModeler/DefaultColumnProvider.m: Add missing braces, remove
unused ivars.
(-cellForColumnNamed:): Autorelease cells.

* DBModeler/EOAdditions.m: New EOAttribute KVC methods -allowNull and
 -setAllowNull:.

* DBModeler/GNUmakefile: Add new to project.

* DBModeler/KVDataSource.m (-createObject:): Return nil after
throwing exception.

* DBModeler/MainModelEditor.m
(-dragImageForRows:event:dragImageOffset:):: Enable drag and
drop for relationships.
(-initWithDocument:): Add parenthesis around assignment. Don't
release the document window on close.
(-ecStuff:): temporarily reload everything in the outline view when
something changes.
(-viewSelectedObject:): Remove NSLog.  Rewrite editor activation.
Fix leaks.

* DBModeler/Modeler.m (-applicationWillFinishLaunching:): Add new menu
items. Don't order our menu in.
(-new:,-open:): Move document initializition to _newDocumentWithModel:.
(-_newDocumentWithModel:,-newFromDatabase:): New methods.
(-validateMenuItem:,-generateSQL:): Ditto.

* DBModeler/ModelerAttributeEditor.m (-initWithParentEditor:):
Remove unused variables.
(-displayGroupDidChangeSelection:): return early if there is no
longer a selection.

* DBModeler/ModelerEntityEditor.m:
(-canSupportCurrentSelection): Remove NSLog.
(-displayGroupDidChangeSelection:): Ditto.
(-dealloc:): New method.
(-initWithParentEditor:): Remove unused variables.  Add parens around
assignment.  Release local variables.

* DBModeler/ModelerTableEmbedibleEditor:
(-addDefaultTableColumnsForTableView:displayGroup:): Release table
 columns.
(-addTableColumnForItem:tableView:): Ditto.

* DBModeler/Inspectors/RelationshipInspector.m:
(-selectedEntity, -selectedDestinationAttribute): New methods.
(-selectedSourceAttribute, -indexOfSourceAttribute:): Ditto.
(-indexOfDestinationAttribute:,joinWithSource:destination:): Ditto.
(-selectedJoin:,updateConnectButton,): Ditto.
(-refresh): Rewrite using new methods.
(-numberOfRowsInTableView:): Add fallback return value.
(-tableView:objectValueForTableColumn:row:): Ditto.
(-tableView:selectionDidChange:): If a source or destination
attribute is now selected, select its counterpart.
(-tableView:shouldSelectRow:): New method to disallow entity
selection if there is a destination entity.
(-tableView:willDisplayCell:forTableColumn:row:): New method,
set the cell text color to disabled text color, if we would disallow
 selection.
(-connectionChanged:): Implement disconnection.

* DBModeler/SQLGenerator.h/m: New files initial implementation.
* DBModeler/Resources/SQLGenerator.gorm: Ditto.
* DBModeler/ConsistencyChecker.h/m: Ditto.
* DBModeler/ConsistencyResults.h/m: Ditto.
* DBModeler/ConsistencyResults.gorm: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21438 72102866-910b-0410-8b05-ffd578937521
2005-07-09 02:07:42 +00:00
Matt Rice
22a14f5447 * EOAccess/EOAdaptorContext.h/m (-channels:): New method.
* EOAccess/EOSQLExpression.m
        (-_administrativeDatabaseStatementsForSelector:forEntityGroup:):
        Comment out login panel.
        * EOAccess/EOUtilities.m: Dont declare EOMoreThanOneException and
        NSObjectNotAvailableException as static.
        * EOControl/EOPrivate.h: Declare new class GDL2NonRetainingMutableArray
        and -registerAssociationForDeallocHack method.
        * EOControl/EOPrivate.m: New class GDL2NonRetainingMutableArray.
        * EOControl/EOEditingContext.m:
        (EOEditingContext -initWithParentObjectStore:): initialize _editors
        ivar with a non retaining array.
        (-dealloc): Remove the editing context as an observer for registered
        objects.
        (-[NSObject(DeallocHack) dealloc]): for associations, remove the
        association and object from the private hash table.
        (-[NSObject(DeallocHack) registerAssociationForDeallocHack]): New
        method.
        * EOControl/EOObserver.m (EOObserverCenter): Replace GSIArray usage
        with GDL2NonRetainingMutableArray.
        (+addObserver:forObject:, +removeObserver:forObject:): Ditto.
        (+initialize, +notifyObserversObjectWillChange:): Ditto.
        (+observersForObject:, +observerForObject:): Ditto.
        (+addOmniscientObserver:, +removeOmniscientObserver:): Ditto.
        (EOObserverProxy -initWithTarget:action:priority:): Don't retain
        target.
        (EOObserverProxy -dealloc:): Discard pending notifications.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21404 72102866-910b-0410-8b05-ffd578937521
2005-07-04 06:17:18 +00:00
David Ayers
73955163ff * EOControl/EODetailDataSource.m (masterClassDescription):
Only resort to EOClassDescription if _masterClassDescriptionName
        is set.  Otherwise ask the _masterDataSource for its
        classDescriptionForObjects.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21366 72102866-910b-0410-8b05-ffd578937521
2005-06-26 13:54:23 +00:00
Matt Rice
4ba78b33b4 * dev-apps/test/Testsuite/gdl2/GDL2Testing.h: Include ObjectTesting.h instead of stuff.h.
* dev-apps/test/Testsuite/gdl2/EOModel/test05.m: New test for -removeEntity:.

* dev-libs/gdl2/EOAccess/EOEntity.m (-_setModel:): Accept nil argument, comment.
* dev-libs/gdl2/EOAccess/EOModel.m (-removeEntity:): Comment.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21321 72102866-910b-0410-8b05-ffd578937521
2005-06-17 14:46:37 +00:00
Matt Rice
44d8935e49 * EOControl/EOObserver.m (EOObserverCenter): Don't retain
observers.
        Use a GSIArray instaed of NSMutableArray.
        (+addObserver:forObject:, +removeObserver:forObject:): Ditto.
        (+initialize, +notifyObserversObjectWillChange:): Ditto.
        (+observersForObject:, addOmniscientObserver:): Ditto.
        (+removeOmniscientObserver:): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21232 72102866-910b-0410-8b05-ffd578937521
2005-05-18 16:11:59 +00:00
Matt Rice
94ffb94a6c * GNUmakefile: Compile EOInterface, EOModeler, DBModeler,
GDL2Palette if gui is installed.
        * EOModeler/EOModelExtensions.h: Update copyright header.
        * EOModeler/EOModelExtensions.m: Ditto.
        * EOModeler/GNUmakefile: Make EOModeler a native-library,
	add new files.
        * EOModeler/Makefile.preamble: Change link flag to use
	FND_LIBS.
        * EOModeler/EODefines.h: New file, initial implementation.
        * EOModeler/EOMInspector.h/m: Ditto.
        * EOModeler/EOMInspectorController.h/m: Ditto.
        * EOModeler/EOModelerApp.h/m: Ditto.
        * EOModeler/EOModelerDocument.h/m: Ditto.
        * EOModeler/EOModelerEditor.h/m: Ditto.
        * DBModeler: New directory.
        * DBModeler/COPYING: New file...
        * DBModeler/AdaptorsPanel.h/m: New files.
        * DBModeler/DefaultColumnProvider.h/m: Ditto.
        * DBModeler/EOAdditions.h/m: Ditto.
        * DBModeler/KVDataSource.h/m: Ditto.
        * DBModeler/MainModelEdtior.h/m: Ditto.
        * DBModeler/Modeler.m: Ditto.
        * DBModeler/ModelerAttributeEditor.h/m: Ditto.
        * DBModeler/ModelerTableEmbedibleEditor.h/m: Ditto.
        * DBModeler/main.m: Ditto.
        * DBModeler/GNUmakefile: Ditto.
        * DBModeler/Resources: New directory.
        * DBModeler/Resources/ModelDrag.tiff: New file.
        * DBModeler/Resources/ClassProperty_On.tiff: Ditto.
        * DBModeler/Resources/Key_On.tiff: Ditto.
        * DBModeler/Inspectors: New directory.
        * DBModeler/Inspectors/RelationshipInspector.h/m: New files.
        * DBModeler/Inspectors/AttributeInspector.h/m: Ditto.
        * DBModeler/Inspectors/RelationshipInspector.gorm: New gorm
	directory.
        * DBModeler/Inspectors/AttributeInspector.gorm: Ditto.
        * GDL2Palette: New directory.
        * GDL2Palette/GNUmakefile: New file.
        * GDL2Palette/ConnectionInspector.h/m: Ditto.
        * GDL2Palette/Foundation+Categories.h/m: Ditto.
        * GDL2Palette/IB+Categories.m: Ditto.
        * GDL2Palette/Palette.h/m: Ditto.
        * GDL2Palette/ResourceManager.h/m: Ditto.
        * GDL2Palette/GDL2ConnectionInspector.gorm: Ditto.
        * GDL2Palette/GDL2Palette.tiff: Ditto
        * GDL2Palette/palette.table


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21223 72102866-910b-0410-8b05-ffd578937521
2005-05-13 00:00:56 +00:00
Matt Rice
e205cd1324 2005-05-12 Matt Rice <ratmice@yahoo.com>
* ChangeLog: Fix previous ChangeLog entry.
        * EOInterface/EOActionAssociation.m: Implemented aspects enabled and
        action.
        (-establishConnection): Implement
        (-breakConnection, -subjectChanged, -action): Ditto.
        * EOInterface/EOAssociation.m (-associationClassesForObject:): Fixed
        argument passed to -isUsableWithObject:. Assign count
        (-init): Assign self.
        (-establishConnection:): Add unused local variable to pass to
        NSNextMapEnumeratorPair instead of 0.
        (-breakConnection:): Ditto.
        (-initWithCoder:, -encodeWithCoder:): Initial implementation of
        methods.
        (-valueForAspect:,-setValue:forAspect:,-valueForAspect:atIndex:): Ditto.
        (-setValueForAspect:atIndex:): Ditto.
        * EOInterface/SubclassFlags.h: New file.
        * EOInterface/EOAspectConnector.h/m: New file and implementation.
        * EOInterface/EOColumnAssociation.m: Implemented aspects value and
        enabled
        (-objectKeysTaken): Take identifier key.
        (-establishConnection, -breakConnection, -endEditing): Implement
        methods.
        (-tableView:setObjectValueForTableColumn:row:): Ditto.
        (-tableView:objectValueForTableColumn:row:): Ditto.
        (-tableView:willDisplayCell:forTableColumn:row:): Ditto.
        (-control:didFailToFormatString:errorDescription:): Ditto.
        (-control:textShouldBeginEditing:): Ditto.
        * EOInterface/EOControlAssociation.m: (-control): Ditto
        (-editingAssociation, -establishConnection, -breakConnection): Ditto.
        * EOInterface/EOGenericControlAssociation.m: Implemented aspects value
        and enabled.
        (+objectKeysTaken): add target key.
        (-establishConnection: -breakConnection:, -subjectChanged:): Ditto.
        (-_action:, -endEditing, -control:textShouldBeginEditing:): Ditto.
        * EOInterface/EOMatrixAssociation.m: Implemented aspects image, title,
        and enabled.
        (-establishConnection, -breakConnection, -subjectChanged): Ditto.
        * EOInterface/EOPopUpAssociation.m: Implemented aspects titles,
        selectedTitle, selectedTag, selectedObject, enabled.
        (-initWithObject:, -_action:): Implemented method.
        (-establishConnection:, -breakConnection, -subjectChanged): Ditto.
        * EOInterface/EORadioMatrixAssociation.m: Implemented aspects
        selectedTag, selectedTitle, enabled.
        (NSCell -_selectCellWithTitle:): Private category.
        (-initWithObject:, -_action:): Implemented method.
        (-establishConnection:, -breakConnection, -subjectChanged): Ditto.
        * EOInterface/EOTableViewAssociation.m: Implemented aspects
	enabled, tableView.
        (-establishConnection, -breakConnection, subjectChanged): Implement
        method.
        (-bindToTableView:displayGroup:, -editingAssociation): Ditto.
        (-numberOfRowsInTableView:):
        (-tableView:setObjectValue:forTableColumn:row:): Ditto.
        (-tableView:objectValueForTableColumn:row:): Ditto.
        (-tableView:shouldEditTableColumn:row:): Ditto.
        (-tableView:willDisplayCell:forTableColumn:row:): Ditto.
        (-tableView:selectionDidChange:): Ditto.
        (-control:didFailToFormatString:errorDescription:): Ditto.
        (-control:isValidObject:, -control:textShouldBeginEditing:):
	Ditto.
        (-dealloc): Ditto.
        * EOInterface/EOTextAssociation.m: Implemented aspect value,
enabled.
        (-establishConnection): Implemented method.
        (-breakConnection, -subjectChanged, -endEditing): Ditto.
        (-control:isValidObject:,textShouldBeginEditing:): Ditto.
        (-textShouldEndEditing:): Ditto.
        * EOInterface/GNUmakefile: Make EOInterface a native-library, whitespace
        changes.
        * EOInterface/Makefile.preamble: Change linker flag to use FND_LIBS
        and GUI_LIBS variables.
        * EOInterface/EODisplayGroup.h: Comment on whether ivars are retained.
        * EOInterface/EODisplayGroup.m:
        (DG_SHOULD_CHANGE_SELECTION_TO_IDX): New macros.
        (DG_DISPLAY_ARRAY_FOR_OBJECTS, DG_SHOULD_DISPLAY_ALERT): Ditto.
        (DG_DID_FETCH_OBJECTS, DG_CREATE_OBJECT_FAILED): Ditto.
        (DG_SHOULD_INSERT_OBJECT, DG_DID_INSERT_OBJECT): Ditto.
        (DG_DID_CHANGE_SELECTION): Ditto.
        (NSArray -indexesForObjectsIdenticalTo:): Implement category method.
        (_presentAlertWithTitle:message:): New private methods.
        (-_endObserverNotification:): Implement notification observer methods.
        (-_beginObserverNotification:): Ditto.
        (-objectsInvalidatedInEditingContext:): Ditto.
        (-objectsChangedInEditingContext:): Ditto.
        (+initialize, -init, -initWithCoder:,): Implement methods.
        (-encodeWithCoder:, -setDataSource:, -fetch, -allObjects): Ditto.
        (-setObjectArray:, -redisplay, -updateDisplayedObjects): Ditto.
        (-selectionIndexes, -setSelectionIndexes, -selectObject): Ditto.
        (-selectObjectsIdenticalTo:, -clearSelection, -selectedObjects): Ditto.
        (-selectObjectsIdenticalTo:selectFirstOnNoMatch:): Ditto.
        (-setSelectedObjects, -selectedObject, -setSelectedObject:): Ditto.
        (-insertObjectAtIndex:, -insertObject:atIndex:): Ditto.
        (-setInsertedObjectDefaultValues:, -deleteSelection): Ditto.
        (-observingAssociations, -endEditing, -fetch:, -insert:): Ditto.
        (-selectionChanged, -contentsChanged, -valueForObject🔑): Ditto.
        (-selectedObjectValueForKey:, -valueForObjectAtIndex:): Ditto.
        (-setValue:forObject:key:, -setSelectedObjectValue:forKey:): Ditto.
        (-setValue:forObjectAtIndex:key:, -associationDidBeginEditing:):
	Ditto.
        (-associationDidEndEditing:): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21222 72102866-910b-0410-8b05-ffd578937521
2005-05-12 19:55:41 +00:00
Matt Rice
56ba650c5c * EOAccess/Makefile.preamble: Change link flag to use FND_LIBS
variable
        defined in base.make
        * EOControl/Makefile.preamble: Ditto.
        * EOAccess/EODatabaseDataSource.m (-entity): Look for entity with
the
        fetch specifications entity name in a model group.
        (-databaseContext): Return a registered database context.
        * EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.m: Cast
before
        calling -initWithIdentifier to remove warning with gcc 3.4
        * EOControl/EOEditingContext.m
(-encodeWithCoder:,-initWithCoder:):
        initial implementation of methods.
        * EOControl/EOClassDescription.m (-snapshot): cast 'value' to get
        thwart warnings.
        * EOControl/EOFault.m (-superClass): Implement as returning a
class.
        * Tools/gsdoc-model.m: Include headers alphabetically, include
        NSCalendarDate.h to thwart warning.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21221 72102866-910b-0410-8b05-ffd578937521
2005-05-12 19:13:34 +00:00
David Ayers
c4f61efc7b * EOControl/EOEditingContext.m (_mutableSetFromToManyArray:):
Add internal documentation.  Filter managed objects instead
        of attempting to convert gids to objects.  Reported by Manuel
        Guesdon.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21183 72102866-910b-0410-8b05-ffd578937521
2005-05-03 10:22:48 +00:00
Manuel Guesdon
dd40d225ec Fixes in EOControl/EOEditingContext.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21182 72102866-910b-0410-8b05-ffd578937521
2005-05-03 09:42:53 +00:00
Manuel Guesdon
2e0f2da446 fixed test error in EOAttribute -newValueForBytes:length:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21156 72102866-910b-0410-8b05-ffd578937521
2005-04-24 14:18:59 +00:00
Manuel Guesdon
9c4a91f7ce Fixes inEOAttribute.m and EOKeyValueARchiver.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21153 72102866-910b-0410-8b05-ffd578937521
2005-04-24 11:28:15 +00:00
Matt Rice
8bab203b96 * EOAdaptors/Postgres95/Postgres95Adaptor.m: Removed externalTypeNames
and internalTypeNames variables, replaced both with typeNames.
        (isValidQualifierType:model:): Use new variable.
        (externalToInternalTypeMap:): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21152 72102866-910b-0410-8b05-ffd578937521
2005-04-24 10:24:24 +00:00
David Ayers
d7ba99629e Fix bug reported by: jim _at_ uchicago dot edu.
* EOAccess/EOEntity.m (-primaryKeyRootName): Recurse to
	through primaryKeyRootName of parent entity.
        * EOAdaptors/Postgres95/Postgres95Channel.m
        (primaryKeyForNewRowWithEntity:): Use primaryKeyRootName to
        construct sequence name.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21126 72102866-910b-0410-8b05-ffd578937521
2005-04-19 14:14:37 +00:00
Manuel Guesdon
9d8277892a Implemeted things in EOKeyValueArchiver, put back David changes in
-adaptorValueByConvertingAttributeValue in EOAttribute.m


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21125 72102866-910b-0410-8b05-ffd578937521
2005-04-19 10:44:49 +00:00
David Ayers
4e6f3be218 Correct ChangeLog entry.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21071 72102866-910b-0410-8b05-ffd578937521
2005-04-07 09:01:26 +00:00
David Ayers
35cb784d79 * Tools/eoutil.m: Added -excludedEntities option when dumping;
added use of local autorelease pools; splitted SQL execution in
	different phases, to allow dropping then re-creating tables, in
	one shot; now fetches flattened or derived attributes; now can
	dump NSCalendarDate, NSData, NSNumber correctly; no longer tries
	to write (in db) flattened or derived or non class-property
	attributes; now ignores and log exceptions when -force option is
	used.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@21070 72102866-910b-0410-8b05-ffd578937521
2005-04-07 08:54:55 +00:00
Manuel Guesdon
8263986239 * EOControl/EOFault.m: added instanceMethodForSelector:
to temporary fix defaulting problem with
NSAutoreleasePool optimizations


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20917 72102866-910b-0410-8b05-ffd578937521
2005-03-17 14:57:28 +00:00
David Ayers
27d729bad3 * EOControl/EOKeyValueCoding: (-unableToSetNullForKey:):
Deprecate and call unableToSetNilForKey.
        (-setNilValueForKey:): Call unableToSetNilForKey.
        (-unableToSetNilForKey:): Use default implementation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20891 72102866-910b-0410-8b05-ffd578937521
2005-03-10 21:13:15 +00:00
David Ayers
c1baf1e562 * EOAccess/EORelationship.m (validateValue:): Document.
Remove unnecessary comments and code.  Handle EONulls.
        (+initialize): Implement.
        (+relationshipWithPropertyList:owner:): Move to top.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20840 72102866-910b-0410-8b05-ffd578937521
2005-03-03 17:36:16 +00:00
David Ayers
1f9afe4934 * EOAccess/EODatabaseContext.m (-forgetSnapshotForGlobalID:):
Handle deleted globalIDs correctly.
        (-forgetSnapshotsForGlobalIDs:): Ditto.
        (-_commitTransaction, -_beginTransaction): Ditto.
        (-_rollbackTransaction): Implement.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20836 72102866-910b-0410-8b05-ffd578937521
2005-03-03 14:00:42 +00:00
David Ayers
6a28dfbc6e * EOAccess/EOEntity.m (initWithPropertyList:owner:):
Reformatting for GNU coding standards.
        (-attributes): Fix memory leak.  Use global class cache.
        Handle partially converted attributes array.
        (-_attributeNameChangedFrom:to:): New privat method.
        * EOAccess/EOEntityPriv.h (-_attributeNameChangedFrom:to:):
        Declare new private method.
        * EOAccess/EOAttribute.m (setName:): Call
        -[EOEntity _attributeNameChangedFrom:to:] if attribute is in
        an EOEntity.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20835 72102866-910b-0410-8b05-ffd578937521
2005-03-03 12:17:57 +00:00
David Ayers
627c340174 * EOAccess/EOModel.m (setName:): Remove from group before
changing name and readd afterwards.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20831 72102866-910b-0410-8b05-ffd578937521
2005-03-02 15:34:57 +00:00
David Ayers
da6a07ec81 * EOControl/EOKeyValueCoding.h/m: (-setNilValueForKey:):
Override NSObject's category to invoke
        -unableToSetNullForKey:.

        * EOControl/EOSortOrdering.m: Include EONull.h instead of
        NSNull.h.

        * EOAccess/EODatabaseChannel.m: Update formatting,


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20830 72102866-910b-0410-8b05-ffd578937521
2005-03-02 14:10:36 +00:00
David Ayers
86b1325708 * EOAccess/EOAttribute.m, EOAccess/EODatabaseContext.m,
* EOAccess/EOEntity.m, EOAccess/EOSQLExpression.m
        * EOAccess/EOPrivate.h, EOAccess/EOPrivate.m,
        * EOAccess/EOSQLQualifier.m, EOAccess/EOUtilities.m
        * EOControl/EOClassDescription.m, EOControl/EOEditingContext.m
        * EOControl/EOGenericRecord.m, EOControl/EOKeyGlobalID.m
        * EOControl/EOKeyValueCoding.m,
        * EOControl/EOKeyValueQualifier.m
        * EOControl/EOMutableKnownKeyDictionary.m,
        * EOControl/EOPrivate.h, EOControl/EOPrivate.m
        Unify GDL2 identifiers with GDL2_ prefix.  Replace
        GDL2NSClass_alloc with GDL2_alloc(NSClass).  Replace
        GDL2NSClassWith* calls with
        AUTORELEASE([GDL2_alloc(NSCLass) initWith* calls]).
        Rename GDL2PrivInit to GDL2_PrivateInit.
        (GDL2_NSArray, GDL2_NSMutableArray_allocWithZoneIMP)
        (GDL2_NSMutableDictionary_allocWithZoneIMP): New globals.
        (GDL2_alloc): New macro.
        (GDL2NSString_alloc, GDL2NSDecimalNumber_alloc)
        (GDL2NSNumber_alloc, GDL2NSCalendarDate_alloc, GDL2NSData_alloc)
        (GDL2DataWithBytesAndLength, GDL2MutableArrayWithCapacity)
        (GDL2MutableArrayWithArray, GDL2MutableArray, GDL2Array)
        (GDL2MutableDictionaryWithCapacity): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20779 72102866-910b-0410-8b05-ffd578937521
2005-02-22 16:14:03 +00:00
David Ayers
e4bdd8f5dc * EOAccess/EOAdaptor.m (-hasOpenChannels): Make safe for
unsigned.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20774 72102866-910b-0410-8b05-ffd578937521
2005-02-22 12:52:46 +00:00
David Ayers
8b5a93e44e * EOAccess/EOAdaptor.m: Consistently use unsigned for array
index variables.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20767 72102866-910b-0410-8b05-ffd578937521
2005-02-20 20:58:28 +00:00
David Ayers
2fb344f062 * EOAccess/EOPrivate.h, EOAccess/EOPrivate.m,
* EOAccess/EODatabaseContext.m, EOAccess/EOSQLExpression.m,
        * EOControl/EOEditingContext.m, EOControl/EOKeyValueCoding.m,
        * EOControl/EOMutableKnownKeyDictionary.m,
        * EOControl/EOPrivate.h, EOControl/EOPrivate.m: Remove global
        selector cache.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20766 72102866-910b-0410-8b05-ffd578937521
2005-02-20 20:33:09 +00:00
David Ayers
0d24407fcf * EOControl/EOPriv.h/m: Split into...
* EOControl/EOPrivat.h/m: ... and ...
        * EOAccess/EOPrivat.h/m: ... files.
        * EOAccess/EOAdaptorChannel.m: Include new privat header.
        * EOAccess/EOAttribute.m, EOAccess/EODatabase.m,
        * EOAccess/EODatabaseChannel.m, EOAccess/EOEntity.m,
        * EOAccess/EORelationship.m, EOAccess/EOSQLExpression.m,
        * EOAccess/EOSQLQualifier.m, EOAccess/EOUtilities.m: Ditto.
        (+initialize): Call new private function.
        * EOAccess/EODatabaseContext.m: Ditto.
        (EODatabaseContext_snapshotForGlobalIDWithImpPtr)
        (EODatabaseContext_globalIDForObjectWithImpPtr): Move to
        EOPrivate.m.
        * EOAccess/EODatabaseContextPriv.h:
        (EODatabaseContext_snapshotForGlobalIDWithImpPtr)
        (EODatabaseContext_globalIDForObjectWithImpPtr): Move to
        EOPrivate.h.
        * EOAccess/GNUmakefile: Compile EOPrivate.m.

        * EOControl/EOClassDescription.m, EOControl/EOGenericRecord.m
        * EOControl/EOKeyGlobalID.m, EOControl/EOKeyValueCoding.m
        * EOControl/EOKeyValueQualifier.m, EOControl/EONSAddOns.m
        * EOControl/EOSortOrdering.m: Include new private header.
        * EOControl/EOEditingContext.h/m: Ditto.
        (EOEditingContext_objectForGlobalIDWithImpPtr)
        (EOEditingContext_recordObjectGlobalIDWithImpPtr): Move to
        EOPrivate.h/m.
        * EOControl/EOMutableKnownKeyDictionary.h/m: Include new
        private header.
        (EOMKKD_objectForKeyWithImpPtr, EOMKKD_setObjectForKeyWithImpPtr)
        (EOMKKD_removeObjectForKeyWithImpPtr, EOMKKD_hasKeyWithImpPtr)
        (EOMKKD_indexForKeyWithImpPtr)
        (EOMKKDInitializer_indexForKeyWithImpPtr): Move to EOPrivate.m
        * EOControl/EOFault.m: (+isFault:): Update comment.
        * EOControl/GNUmakefile: Build EOPrivate.m instead of EOPriv.m.
        Do not install private header.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20759 72102866-910b-0410-8b05-ffd578937521
2005-02-20 10:52:57 +00:00
David Ayers
ef8e948417 * EOAccess/EOAccessFault.m: Include NSThread.h.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20758 72102866-910b-0410-8b05-ffd578937521
2005-02-20 10:24:36 +00:00
David Ayers
3bd48d095d * EOAdaptors/Postgres95/Postgres95Values.m: Remove dependency
on EOAccess/EOAttributePriv.h and EOControl/EONSAddOns.h.
        (attrRespondsToValueClass, attrRespondsToValueTypeChar): New
        static locals.
        (+initialize, +newValueForNumberType:length:attribute:):
        Remove dependency and used static locals instead.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20751 72102866-910b-0410-8b05-ffd578937521
2005-02-19 12:37:25 +00:00
David Ayers
7c80ffaf65 * EOAdaptors/Postgres95/Postgres95Private.m/h: New files
based on EOControl/EOPriv.m/h.
        * EOAdaptors/Postgres95/GNUmakefile.in: Build
        Postgres95Private.m.
        * EOAdaptors/Postgres95/Postgres95Adaptor.m: Do not depend on
        EOControl/EOPriv.m/h but on own private files.
        (+assignExternalInfoForEntity): Use objectAtIndex: instead of
        enumerator for speed.
        * EOAdaptors/Postgres95/Postgres95Channel.m: (+initialize)
        (-lowLevelResultFieldNames:, -fetchRowWithZone:)
        (-insertRow:forEntity:, -_describeResults, -describeTableNames)
        (-updateValues:inRowsDescribedByQualifier:entity:)
        (-_describeBasicEntityWithName:forModel:)
        (-_describeForeignKeysForEntity:forModel:)
        (-primaryKeyForNewRowWithEntity:): Do not depend on
        EOControl/EOPriv.m/h but on own private files.  Improve
        optimizations.
        (pgResultDictionary): Simplify unused static local be
        reverting optimizations.
        * EOAdaptors/Postgres95/Postgres95SQLExpression.m:
        (+initialize, +formatValue:forAttribute:)
        (+sqlPatternFromShellPattern:)
        (+sqlPatternFromShellPattern:withEscapeCharacter:): Do not
        depend on EOControl/EOPriv.m/h but on own private files.  Improve
        optimizations.
        * EOAdaptors/Postgres95/Postgres95Values.h/m
        (Postgres95CalendarFormat, Postgres95ValuesClass)
        (Postgres95Values_newValueForBytesLengthAttributeSEL)
        (Postgres95Values_newValueForBytesLengthAttributeIMP)
        (Postgres95Values_newValueForBytesLengthAttribute): Remove.
        ([NSCalendarDate+setPostgres95Format:]): Remove.
        ([NSCalendarDate+postgres95Format]): Deprecate.
        (LPSQLA_StringDefaultCStringEncoding): New local static.
        (+initialize, +newValueForNumberType:length:attribute:)
        (+newValueForCharactersType:length:attribute:)
        (+newValueForDateType:length:attribute:):  Do not depend on
        EOControl/EOPriv.m/h but on own private files.  Improve
        optimizations.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20750 72102866-910b-0410-8b05-ffd578937521
2005-02-19 12:13:22 +00:00
Matt Rice
74a8e976bf Call -willChange: to support EOObserving in EOModel, EOEntity, EOAttribute,
EORelationship, EOStoredProcedure.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20745 72102866-910b-0410-8b05-ffd578937521
2005-02-18 16:46:38 +00:00
David Ayers
6b4ef319c9 * EOAccess/EODatabaseContext.m:
(recordChangesInEditingContext): Remove shadowing of local
	variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20739 72102866-910b-0410-8b05-ffd578937521
2005-02-17 12:19:38 +00:00
David Ayers
af63fd32b5 * EOAccess/EODatabaseContext.m:
(-_currentCommittedSnapshotForObject:): Fix crash in logging.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20738 72102866-910b-0410-8b05-ffd578937521
2005-02-17 09:52:14 +00:00
David Ayers
cd0f130fc7 * EOAccess/EOEntity.m: Remove unnecessary include.
(-setClassProperties:, -setPrimaryKeyAttributes:)
        (-setAttributesUsedForLocking:): Remove unnecessary casts.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20737 72102866-910b-0410-8b05-ffd578937521
2005-02-17 09:41:09 +00:00
David Ayers
11fac539ea * EOAccess/EOAccessFault.m ([EOAccessFaultHandler-init])
([EOAccessFaultHandler-dealloc])
        ([EOAccessArrayFaultHandler-dealloc]): Use GSCurrentThread
        instead of objc_thread_id.
        (-completeInitializationOfObject): Correct comment.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20735 72102866-910b-0410-8b05-ffd578937521
2005-02-16 15:48:17 +00:00
David Ayers
b9a5ba95a1 * EOControl/EOGenericRecord.m (-storedValueForKey:)
(-takeStoredValue:forKey:, -takeValue:forKey:, valueForKey):
        Use GSSelectorFromName instead of sel_get_any_uid.  Omit test
        to islower.  Format according to coding standards.
        * EOControl/EOKeyValueCoding.m (-takeValue:forKeyPath:isSmart:)
        Use unsigned for index bookkeeping.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20733 72102866-910b-0410-8b05-ffd578937521
2005-02-16 14:06:01 +00:00
David Ayers
d6075af06e * EOControl/EOMutableKnownKeyDictionary.m
([EOMKKDInitializer-arrayMappingForKeys:]): Correct call to
        GDL2ObjectAtIndexWithImp.
        ([EOMKKDInitializer-subsetMappingForSourceDictionaryInitializer:
        sourceKeys:destinationKeys:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20732 72102866-910b-0410-8b05-ffd578937521
2005-02-16 11:03:28 +00:00
David Ayers
e3a74b3562 * EOControl/EOPriv.h/m (GDL2_shellPatternCharacterSet): Remove.
(GDL2PrivInit): Remove usage of GDL2_shellPatternCharacterSet.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20731 72102866-910b-0410-8b05-ffd578937521
2005-02-16 08:28:27 +00:00
David Ayers
c16e28c931 * EOControl/EONSAddOns.h/m
([NSString-hasShellPatternCharacter]): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20730 72102866-910b-0410-8b05-ffd578937521
2005-02-16 08:11:57 +00:00
David Ayers
aff14039ef * EOControl/EOClassDescription.m ([NSObject-snapshot]):
Return valid dictionary for EONull.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20729 72102866-910b-0410-8b05-ffd578937521
2005-02-16 06:37:12 +00:00
David Ayers
1913b6dd89 * EOAdaptors/Postgres95/Postgres95SQLExpression.m
(externalNameQuoteCharacter): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20724 72102866-910b-0410-8b05-ffd578937521
2005-02-15 21:54:20 +00:00
David Ayers
901432dbe0 * EOAccess/EOAttribute.h/m (EOAdaptorUnknownType): Remove.
(protoOverride): Increase range.
        (isAttributeValueInitialized): New flag.
        (extraRefCount): Make standalone instance variable.
        (setValueClassName:): Use isAttributeValueInitialized flag
        instead of EOAdaptorUnknownType.
        (adaptorValueType): Use isAttributeValueInitialized flag
        instead of EOAdaptorUnknownType.
        * EOAdaptors/Postgres95/Postgres95Values.m
        (newValueForBytes:length:attribute:): Remove reference to
        EOAdaptorUnknownType.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20723 72102866-910b-0410-8b05-ffd578937521
2005-02-15 21:29:24 +00:00
David Ayers
7a683c1680 * EOControl/EONull.h/m ([NSObject isEONull], [NSObject isNotEONull])
(isNilOrEONull): Remove.
        * EOControl/EOPriv.h (_isNilOrEONull): Make static inline
	function.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20718 72102866-910b-0410-8b05-ffd578937521
2005-02-14 17:44:00 +00:00
David Ayers
9c3fc328b8 * EOControl/EOEditingContext.h/m (_objectBasedChangeInfoForGIDInfo:)
Only generate an entry for objects that the reciever actually
        maps.
        (-recordForGID:, -recordForObject:) Remove unused undocumented
        methods.
        (-updatedObjects, -insertedObjects, -deletedObjects):
	Reimplement.
        (-unprocessedObjects, -unprocessedInfo, -pendingInfo)
        (-hasUnprocessedChanges): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20715 72102866-910b-0410-8b05-ffd578937521
2005-02-14 15:09:34 +00:00
David Ayers
2d006a1535 * EOControl/EOClassDescription.m
(-dictionaryForInstanceProperties): Remove casts.
        ([NSObject-shallowCopy], [NSObject-snapshot])
        ([NSObject-updateFromSnapshot:]): Ditto.
        ([NSObject-validateValue:forKey:]): Correct key determination and
        use GSSelectorFromName instead of sel_get_any_uid.
        ([NSObject-addObject:toPropertyWithKey:]): Use GSSelectorFromName
        instead of sel_get_any_uid.  Minor optimization.
        ([NSObject-removeObject:fromPropertyWithKey:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20711 72102866-910b-0410-8b05-ffd578937521
2005-02-14 14:24:46 +00:00
David Ayers
985f02b360 * EOControl/EOCheapArray.h/m (-shallowCopy): Correct signature.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20710 72102866-910b-0410-8b05-ffd578937521
2005-02-14 12:24:07 +00:00
David Ayers
d30af1a4aa * EOControl/EOCheapArray.h/m (-initWithArray:): Correct
signature and only initialize instance variable if call to super init
	was successfull.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20709 72102866-910b-0410-8b05-ffd578937521
2005-02-14 12:17:26 +00:00
David Ayers
75f86142d0 * EOAccess/EOModel.m (writeToFile:): Clairfy documentation
about setting receivers name and path.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20708 72102866-910b-0410-8b05-ffd578937521
2005-02-14 12:11:49 +00:00
Manuel Guesdon
8f9ee35c5c Optimizations :
2005-02-13  Manuel Guesdon  <mguesdon@orange-concept.com>
 * EOControl/EOClassDescription.m:
  o use IMPs
  o avoid NSString build in -addObject:toPropertyWithKey:
  o avoid NSString build in -removeObject:fromPropertyWithKey:
 * EOAccess/EODatabaseContext.m:
  o added and use EODatabaseContext_globalIDForObjectWithImpPtr
  o use IMPs
 * EOAccess/EOEntity.m:
  o use IMPs
 * EOAccess/EOAttribute.m:
  o use IMPs
  o optimized -validateValue
 * EOAccess/EODatabaseContextPriv.h:
  o added EODatabaseContext_globalIDForObjectWithImpPtr
 * EOControl/EOPriv.[hm]:
  o added more helpers
 * EOControl/EOEditingContext.m:
  o use IMPs
 * EOControl/EOGenericRecord.m:
  o use IMPs in descriptions
 * EOAdaptors/Postgres95Values.m:
  o use GDL2StringDefaultCStringEncoding() in
  +newValueForCharactersType:length:attribute:
 * EOAdaptors/Postgres95Channel.m:
  o IMP optimizations
 * EOAdaptors/Postgres95Adaptor.m:
  o IMP optimizations


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20700 72102866-910b-0410-8b05-ffd578937521
2005-02-13 13:04:19 +00:00
Manuel Guesdon
bd72217067 COmmit Part 2
* EOAccess/EOAdaptor.m:
  o optimization in 'for' loops
* EOAccess/EODatabase.m:
  o include <EOCOntrol/EOPriv.h>
  o replaced isNilOrEONull() by _isNilOrEONull()
* EOAccess/EODatabaseContext.h:
  o added _snapshotForGlobalIDIMP
* EOAccess/EODatabaseContext.m:
  o commented  NSEmitTODO in
  -objectsForSourceGlobalID:relationshipName:editingContext:
  o added beter exception format in
  qualifierForLockingAttributes:primaryKeyAttributes:entity:snapshot:
  o fix compiler warning in -relayPrimaryKey:object:entity:
  o logs
  o optimizations in -objectsWithFetchSpecification:editingContext:
  o replaced isNilOrEONull() by _isNilOrEONull()
  o replace [EOFault isFault:] by _isFault()
  o use _snapshotForGlobalIDIMP
  o IMP usage optimization
* EOAccess/EOAttribute.[hm]:
  o added EOAdaptorUnknownType
  o added _adaptorValueType and avoid recomputing it each time
  o added _valueTypeChar to avoid string comparaisons
  o use EOPriv classes declarations
  o Temporary reverted David changes in
  -adaptorValueByConvertingAttributeValue
* EOAccess/EOAttributePriv.h:
  o added _valueTypeChar to avoid string comparaisons
* EOAccess/EOEntityPriv.h:
  o moved -attributeForPath: and -relationshipForPath: to
  EOEntityGDL2Additions category
* EOAccess/EOEntity.h:
  o moved private -attributeForPath: and -relationshipForPath: to
  EOEntityGDL2Additions category
* EOAccess/EOEntity.m:
  o better exception in classProperties
  o fix compiler warning in -setClassProperties:,
  -setPrimaryKeyAttributes:,
	-setAttributesUsedForLocking:
	o moved -attributeForPath: and -relationshipForPath: to
	EOEntityGDL2Additions category
	o include <EOCOntrol/EOPriv.h>
	o replaced [EONull null] by GDL2EONull
* EOAccess/EOSQLExpression.m:
  o optimization in -tableListWithRootEntity:
  o optimization in -formatSQLString:format:
  o optimization in +sqlPatternFromShellPattern:
  o optimization in +sqlPatternFromShellPattern:withEscapeCharacter:
  o fix in -sqlStringForKeyValueQualifier:
  o added log in -sqlStringForKeyValueQualifier: for not handled
  readFormat
  o added log -addInsertListAttribute:value: for not handled
  writeFormat
  o added log -addUpdateListAttribute:value: for not handled
  writeFormat
  o changed  EOFLOGObjectFnStart to EOFLOGObjectFnStartCond
  o changed  EOFLOGObjectFnStop to EOFLOGObjectFnStopCond
  o include <EOCOntrol/EOPriv.h>
  o replaced [EONull null] by GDL2EONull
* EOAccess/EOSQLQualifier.m:
  o implemented EOKeyComparisonQualifier
  -schemaBasedQualifierWithRootEntity
* EOAccess/EOUtilities.m:
  o include <EOCOntrol/EOPriv.h>
  o replaced [EONull null] by GDL2EONull
* EOControl/EOPriv.[hm]:
  o added. Contains various classes/selectors/IMPs
* EOControl/EOClassDescription.m:
  o handle EONull case in -propagateDeleteForObject:editingContext:,
    -addObject:toPropertyWithKey:, -snapshot,
    -removeObject:fromPropertyWithKey:,
	_setObject:forBothSidesOfRelationshipWithKey:,
	addObject:toBothSidesOfRelationshipWithKey:,
		-removeObject:fromBothSidesOfRelationshipWithKey:
		o fix compiler warning in
		-dictionaryForInstanceProperties, -shallowCopy,
		-updateFromSnapshot:, -snapshot
		o include <EOCOntrol/EOPriv.h>
		o replaced [EONull null] by GDL2EONull
		o replaced isNilOrEONull() by _isNilOrEONull()
		o fix in -validateForSave
		o rewritten -validateValue:forKey: selector build
* EOControl/EOEditingContext.h:
  o added -hasUnprocessedChanges
* EOControl/EOEditingContext.m:
  o added -hasUnprocessedChanges
  o added NS_DURING,... to catch exceptions
  o replace [EOFault isFault:] by _isFault()
  o IMP usage optimization
* EOControl/EOKeyGlobalID.m:
  o replaced isNilOrEONull() by _isNilOrEONull()
  o include <EOCOntrol/EOPriv.h>
* EOControl/EOGenericRecord.m:
  o partially rewritten -description
  o include <EOCOntrol/EOPriv.h>
  o replaced isNilOrEONull() by _isNilOrEONull()
  o replace [EOFault isFault:] by _isFault()
  o changed variable name type of
  _infoForInstanceVariableNamed:retType:retSize:retOffset:
  o rewritten valueForKey:,... to use cString NSKeyValueCoding
* EOControl/EOKeyValueCoding.m:
  o changed NSAssert in NSArray -valueForKey:
  o optimization in NSDictionary -takeValue:forKeyPath:isSmart:
  o optimization in NSDictionary -takeStoredValue:forKeyPath:
  o include <EOCOntrol/EOPriv.h>
  o replaced [EONull null] by GDL2EONull
  o include <EOCOntrol/EOPriv.h>
* EOControl/EOKeyValueQualifier.m:
  o fixes for EONull/nil in -evaluateWithObject:
  o replaced [EONull null] by GDL2EONull
  o include <EOCOntrol/EOPriv.h>
* EOControl/EOSortOrdering.m:
  o include <EOCOntrol/EOPriv.h>
  o replaced [EONull null] by GDL2EONull
* EOAdaptors/Postgres95SQLExpression.m:
  o float formatting in +formatValue:forAttribute:
  o added -externalNameQuoteCharacter
  o added +sqlPatternFromShellPattern:
  o added +sqlPatternFromShellPattern:withEscapeCharacter:
  o replaced isNilOrEONull() by _isNilOrEONull()
* EOAdaptors/Postgres95Channel.m:
  o logs
* EOAdaptors/Postgres95Values.m:
  o logs
  o fix in +setPostgres95Format:
  o fix calendard format to handle timezone (%z)
  o optimizations
* EOControl/EOMutableKnownKeyDictionary.m
  o removed EOMKKDArrayMapping
  +dictionaryFromDictionary:subsetMapping:
  o include <EOCOntrol/EOPriv.h>
  o replaced isNilOrEONull() by _isNilOrEONull()
* EOControl/EONSAddOns.[hm]:
  o added NSString(ShellPattern)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20688 72102866-910b-0410-8b05-ffd578937521
2005-02-11 17:37:23 +00:00
David Ayers
2cb429235f * EOControl/EOEditingContext.m (_globalIDChanged:): Make
assert more accurate.
        (-_invalidatedAllObjectsInStore:): Implement.
        (+setUsesContextRelativeEncoding:): Implement.
        (+usesContextRelativeEncoding): Implement.
        (+initialize): Set default value of
	usesContextRelativeEncoding depending on whether we are a
	gsweb application.

        * EOControl/EOObjectStoreCoordinator.m
        (_invalidatedAllObjectsInSubStore:): Implement.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20682 72102866-910b-0410-8b05-ffd578937521
2005-02-10 12:52:15 +00:00
Matt Rice
42dcaabf41 * EOControl/EOEditingContext.m (-_globalIDChanged:): Add key
to the snapshot dict before removing the temporary gid. Assert
        that the temporary gid and the new gid are not equal.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20679 72102866-910b-0410-8b05-ffd578937521
2005-02-09 15:52:38 +00:00
David Ayers
310750bd82 * EOControl/EOEditingContext.m
(-_objectBasedChangeInfoForGIDInfo:): Make a little more gdb
        friendly.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20677 72102866-910b-0410-8b05-ffd578937521
2005-02-09 12:20:17 +00:00
David Ayers
8a224e3e37 * EOAccess/EOModel.m (-init): Initialize _storedProcedures.
(-storedProcedureNames): Simplify.
        (-storedProcedureNamed:): Reimplement.
        (-storedProcedures): Simplify.
        (-writeToFile:): Call _setPath: after preliminary testing.
        Write stored procedures.
        (-initWithTableOfContentsPropertyList:path:): Reimplement
        stored procedure handling.
        (-encodeTableOfContentsIntoPropertyList:): Handle stored
        procedures.
        (-encodeIntoPropertyList:): Fix encoding title for stored
        procedures.
        (-addStoredProcedure:, -removeStoredProcedure:) Make more
        thread safe.
        (-loadAllModelObjects): Implement.
        * EOAccess/EOStoredProcedure.m (-initWithPropertyList:): Call
        awakeWithPropertyList: to finish initialization.
        (-encodeIntoPropertyList:): Implement.
        (-description): Implement.
        (-_setIsEdited): Implement.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20676 72102866-910b-0410-8b05-ffd578937521
2005-02-09 11:39:42 +00:00
Matt Rice
8eff5c7764 * EOControl/EOObjectStore.m: Assign correct key names for EOUpdatedKey,
EOInsertedKey, EODeletedKey, EOInvalidatedKey.
        * EOAccess/EODatabaseContext.m (-_objectsChanged:, -commitChanges): Use
        EOUpdatedKey, EOInsertedKey, EODeletedKey, EOInvalidatedKey, instead
        of hard coded keys.
        * EOControl/EOEditingContext.m (-didSaveChanges, pendingInfo): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20674 72102866-910b-0410-8b05-ffd578937521
2005-02-08 14:02:32 +00:00
David Ayers
cc0706bf5c * EOControl/EOObjectStoreCoordinator.m
(requestStoreForGlobalID:fetchSpecification:object):
        Add all information to the notfication.
        (-invalidateObjectsWithGlobalIDs:): Reimplement via map table.
        (-lockObjectWithGlobalID:editingContext:): Implement.
        (-isObjectLockedWithGlobalID:editingContext:): Implement.

        * EOControl/EOObserver.m (+addObserver:forObject:): Cairify
        documentation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20658 72102866-910b-0410-8b05-ffd578937521
2005-02-03 18:32:57 +00:00
David Ayers
2e4a21ae91 * EOControl/EOFetchSpecification.h/m
(allVariablesRequiredFromBindings): Rename to
        requiresAllQualifierBindingVariables.
        (-setRequiresAllQualifierBindingVariables:)
        (-requiresAllQualifierBindingVariables): Implement.
        (-setAllVariablesRequiredFromBindings:)
        (-allVariablesRequiredFromBindings): Deprecate.
        Update various setter methods to make them promotion safe.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20657 72102866-910b-0410-8b05-ffd578937521
2005-02-03 18:24:07 +00:00
David Ayers
246b40bc6a Reimplementation of processRecentChanges handling. (see ChangeLog)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20656 72102866-910b-0410-8b05-ffd578937521
2005-02-03 18:19:29 +00:00
David Ayers
556940e16b * EOAdaptors/Postgres95/Postgres95Adaptor.m
(externalTypeNames): Add new types.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20655 72102866-910b-0410-8b05-ffd578937521
2005-02-03 17:20:51 +00:00
David Ayers
ff4b08e06d * EOAccess/EODatabaseContext.h/m:(_numLocked): Removed.
(_lockedObjects): Use hash table instead of plain memory.
        (-_registerDatabaseContext:) Only attempt to retrieve entities
        with valid names.
        (-dealloc): Update _lockedObjects usage.
        (-lockObjectWithGlobalID:editingContext:): Inialize local variable.
        Fire fault if necessary to obtain snapshot and raise upon
        failure.
        (-registerLockedObjectWithGlobalID:): Use new hash table.
        (-isObjectLockedWithGlobalID:): Ditto.
        (-_cleanUpAfterSave): Ditto.
        (-invalidateAllObjects): Call -invalidateResultCache and make
        more gdb friendly.
        (-invalidateObjectsWithGlobalIDs:): Call
        forgetSnapshotsForGlobalIDs: on self instead of the _database.
        (-commitChanges): Execute the commit if a transaction is open
        to insure held locks are freed server side.
        (-snapshotForGlobalID): Move implementation to ...
        (-snapshotForGlobalID:after:): ... here and call this version
        in the _database.
        (-forgetSnapshotsForGlobalIDs:): Implement.
        (-forgetAllLocks): Ditto.
        (-forgetLocksForObjectsWithGlobalIDs:) Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20653 72102866-910b-0410-8b05-ffd578937521
2005-02-03 17:13:16 +00:00
Matt Rice
ffb09fb47b * EOAccess/EOEntity.m (-setName:): Validate the new name and remove
the checks from here.
  (-validateName): Don't check if an attribute or a relationship with
the name exist.  Check if an entity of the same name exists.
Return an exception with a valid reason in all cases.
* EOAccess/EOAttribute.m (validateName): Return an exception with a
valid reason in all cases.  Don't check if a relationship with the
name exists.
* EOAccess/EOAttribute.m (validateName): Return an exception with a
valid reason in all cases.  Don't check if a attribute with the
 name exists.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20652 72102866-910b-0410-8b05-ffd578937521
2005-02-03 13:09:50 +00:00
David Ayers
7ce3d33814 * EOAccess/EODatabase.h/m:(EODistantPastTimeInterval): Added
global variable.
        (snapshotForGlobalID:after:): Implemented.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20642 72102866-910b-0410-8b05-ffd578937521
2005-02-01 17:23:05 +00:00
David Ayers
780853a70b * EOControl/EOEditingContext.h/m
(setDefaultFetchTimestampLag:, defaultFetchTimestampLag):
        Implemented.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20625 72102866-910b-0410-8b05-ffd578937521
2005-01-27 09:31:43 +00:00
David Ayers
06b7c0bf3c * EOAccess/EOUtilities.m (NSObjectNotAvailableException):
Reactivate correct exception name.  Correct a few whitespace
        issues.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20618 72102866-910b-0410-8b05-ffd578937521
2005-01-26 14:11:31 +00:00
David Ayers
b3e33138f3 * EOAccess/EOEntity.m (-initWithPropertyList:owner:): Correct
test for file existance and reformat.
        * EOControl/EOFetchSpecification.h/m
        (-fetchSpecificationByApplyingBindings:) Remove obsolete
        method.
        (-fetchSpecificationWithQualifierBindings:) Implement.
        * EOControl/EOQualifier.m (initWithKeyValueUnarchiver:):
        Implement.
        (-encodeWithKeyValueArchiver:): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20617 72102866-910b-0410-8b05-ffd578937521
2005-01-26 13:38:47 +00:00
David Ayers
352bb53ee8 * EOControl/EOQualifer.m (getKey): Allow literal numbers
without class declarations.  Reported by Dirk Lattermann.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20595 72102866-910b-0410-8b05-ffd578937521
2005-01-22 15:04:08 +00:00
David Ayers
b8a3e8575a * EOAdaptors/Postgres95/Postgres95Channel.m
([-_describeBasicEntityWithName:forModel:]): Ignore droped
        columns.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20594 72102866-910b-0410-8b05-ffd578937521
2005-01-22 10:20:35 +00:00
Matt Rice
fbc8775435 2004-11-23 Matt Rice <ratmice@yahoo.com>
* EOControl/EOQualifier.m ([-filteredArrayUsingQualifier]): Handle
        nil qualifier argument.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20373 72102866-910b-0410-8b05-ffd578937521
2004-11-23 12:38:53 +00:00
David Ayers
2f6232368a * EOAccess/EOModelGroup.m ([+globalModelGroup]): Search for
.eomodel files as well and call -addModelWithFile: with full
        path.
        * EOAccess/EOModel.m ([-initWithContentsOfFile:]): Add assert
        if file could not be read.

        * EOControl/EOKeyGlobalID.m ([-hash]): Improve quality of hash
        values.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20294 72102866-910b-0410-8b05-ffd578937521
2004-11-04 11:08:10 +00:00
David Ayers
aad84f842f * EOAccess/EOAdaptorContext.h: Only use ASCII characters.
* EOAccess/EOSQLQualifier.m: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20285 72102866-910b-0410-8b05-ffd578937521
2004-11-03 12:03:14 +00:00
David Ayers
e9534fd2dc * GDL2.gsdoc: New file for documentation project.
* GNUmakefile: Build documentation project.
        * EOAccess/gdl2.gsdoc: Rename to ...
        * EOAccess/EOAccess.gsdoc: ... new name.
        * EOControl/gdl2control.gsdoc: Rename to ...
        * EOControl/EOControl.gsdoc: ... new name.
        * EOAccess/GNUmakefile: Update documentation project name.
        * EOControl/GNUmakefile: Ditto.
        * README: Remove reference to potentially obsolete name.

        * Tools/eomodeltemplate.gsdoc: Update encoding, DTD reference
	and minor reformatting.
        * Tools/gdl2gsdoc.gsdoc: Update DTD reference and add myself
	as coauthor.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20280 72102866-910b-0410-8b05-ffd578937521
2004-11-02 16:17:32 +00:00
David Ayers
d590199f26 * EOAccess/EODatabaseContext.h/m:
(EOStoredProcedureNameHintKey, EOCustomQueryExpressionHintKey):
        Define missing keys.
        * EOControl/EODeprecated.h: (EOPrefetchingRelationshipHintKey)
        (EOFetchLimitHintKey, EOPromptAfterFetchLimitHintKey): Ditto.
        * EOControl/EOFetchSpecification.m:
        (EOPrefetchingRelationshipHintKey, EOFetchLimitHintKey)
        (EOPromptAfterFetchLimitHintKey): Ditto.  Use globally defined
        keys instead of local strings.
        * EOAccess/EODatabaseChannel.m
        (_selectWithFetchSpecification:editingContext:) Use globally
        defined keys instead of local strings.

        * EOControl/EOQualifier.m (+[stringForOperatorSelector:]):
        Return selector name instead of nil if not given a standard
        EOQualifierOperator selector.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20279 72102866-910b-0410-8b05-ffd578937521
2004-11-02 10:43:58 +00:00
David Ayers
24fefa0924 * EOInterface/EODetailSelectionAssociation.h/m: New files.
* EOInterface/EOMasterCopyAssociation.h/m: Ditto.
        * EOInterface/EOMasterDetailAssociation.h/m: Ditto.
        * EOInterface/EOMasterPeerAssociation.m: Ditto.
        * EOInterface/EOMatrixAssociation.h/m: Ditto.
        * EOInterface/EOPickTextAssociation.h/m: Ditto.
        * EOInterface/EOPopUpAssociation.h/m: Ditto.
        * EOInterface/EORadioMatrixAssociation.h/m: Ditto.
        * EOInterface/EORecursiveBrowserAssociation.h/m: Ditto.
        * EOInterface/EOTextAssociation.h/m: Ditto.
        * EOInterface/EODeprecated.h: Ditto.
        * EOInterface/EOInterface.h: Added new header files.
        * EOInterface/GNUmakefile: Added new files.

        * EOInterface/EODisplayGroup.m: Update includes.
        (setSortOrdering:, sortOrdering): Add deprecated methods.
        * EOInterface/EOAssociation.h: Remove redundant include.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20239 72102866-910b-0410-8b05-ffd578937521
2004-10-20 21:32:06 +00:00
David Ayers
ec1b5b8321 Correct ChangeLog entries.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20233 72102866-910b-0410-8b05-ffd578937521
2004-10-17 21:10:17 +00:00
David Ayers
2854281dc9 * EOInterface/EOComboBoxAssociation.h/m: New files.
* EOInterface/EOControlAssociation.h/m: Ditto.
        * EOInterface/EOGenericControlAssociation.m: Ditto.
        * EOInterface/EOActionCellAssociation.m: Ditto.
        * EOInterface/NSImage+Additions.m: Ditto.
        * EOInterface/EOInterface.h: Added new headers.
        * EOInterface/GNUmakefile: Use new files.  Remove superfluous
        header files directory variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20232 72102866-910b-0410-8b05-ffd578937521
2004-10-17 20:27:26 +00:00
David Ayers
59d8cea7d7 * EOInterface/EOActionAssociation.h/m: New files.
* EOInterface/EOActionInsertionAssociation.h/m: Ditto.
        * EOInterface/EOColumnAssociation.h/m: Ditto.
        * EOInterface/EOTableViewAssociation.m: Ditto.
        * EOInterface/EOInterface.h: Added new headers.
        * EOInterface/GNUmakefile: Use new files.
        * EOInterface/EOAssociation.m: (-[debugDescription]): Remove
        debug method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20229 72102866-910b-0410-8b05-ffd578937521
2004-10-16 16:45:40 +00:00
David Ayers
b0c3064537 * EOInterface/EOAssociation.h/m: New files.
* EOInterface/EOInterface.h: Add EOAssocitaion.
        * EOInterface/GNUmakefile: Ditto.
        * EOInterface/EODisplayGroup.h: Add missing forward
        * declaration.
        * EOInterface/EODisplayGroup.m: ([-insertObjectAtIndex]):
        avoid warning.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20226 72102866-910b-0410-8b05-ffd578937521
2004-10-15 17:31:28 +00:00
David Ayers
271ea5171d * EOInterface: New directory.
* EOInterface/GNUmakefile: New file.
        * EOInterface/Makefile.preamble: Ditto.
        * EOInterface/EOInterface.h: Ditto.
        * EOInterface/EODisplayGroup.h: Ditto.
        * EOInterface/EODisplayGroup.m: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20223 72102866-910b-0410-8b05-ffd578937521
2004-10-14 17:34:59 +00:00
David Ayers
f4fd4ec9a6 * EOAccess/EOAttribute.m (encodeIntoPropertyList:): Encode
numeric values as stings for WO45 EOModel format compatibility.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20202 72102866-910b-0410-8b05-ffd578937521
2004-10-06 22:45:21 +00:00
David Ayers
79fee856cd * EOControl/EODebug.m (TypeToNSString): Use #ifdef to test for
_C_LNG_LNG handling.
        * EOControl/EOFault.m: Include limits.h for UINT_MAX.
        * EOControl/EOGenericRecord.m: Ditto.
        * EOControl/EONSAddOns.m: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20169 72102866-910b-0410-8b05-ffd578937521
2004-09-28 14:01:01 +00:00
David Ayers
3104ab6521 * EOControl/EOObserver.m ([EOObserverCenter observersForObject:]):
Document as final.  Return immutable copy if observers.
        ([EOObserverCenter observerForObject:ofClass:]): Revert to using
        internal map.  Avoid allocating spurious enumerator.  Update
        documentation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20168 72102866-910b-0410-8b05-ffd578937521
2004-09-28 13:34:55 +00:00
David Ayers
432a2d5ce4 * EOAccess/EOEntity.m ([EOEntityClassDescription
awakeObject:fromInsertionInEditingContext:]): Only process
        class properties.  Remove inactive code.  Document.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20166 72102866-910b-0410-8b05-ffd578937521
2004-09-28 11:09:18 +00:00
David Ayers
ffb14dffe8 * EOAccess/EOEntity.m (-[setName:]): Skip the uniqueing if the
name is the same.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20152 72102866-910b-0410-8b05-ffd578937521
2004-09-26 21:30:02 +00:00
David Ayers
2980264658 * EOControl/EOObserver.m: Update includes. Document classes
and methods.
	(+[EOObserverCenter addObserver:forObject:]): Do not retain
	object.  Add logging.
	(+[EOObserverCenter removeObserver:forObject:]): Do not
	release object.
	(+[EOObserverCenter observerForObject:]): Use
	+observersForObject:
	to obtain the observers for overriding subclasses.
	(+[EOObserverCenter enableObserverNotification]): Raise
	NSInternalInconsistencyException when called to often.
	(-[EODelayedObserver objectWillChange:]): Use the receivers
	observerQueue for overriding subclasses.
	(-[EODelayedObserver discardPendingNotification]): Ditto.
	(-[EODelayedObserverQueue enqueueObserver:]): Relocate
	assertion to safer place.
	(-[EOObserverProxy initWithTarget:action:priority:]):
	Implement.
	(-[EOObserverProxy dealloc],-[EOObserverProxy priority])
	(-[EOObserverProxy subjectChanged]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20149 72102866-910b-0410-8b05-ffd578937521
2004-09-26 18:24:25 +00:00
David Ayers
ae04f71bdf * EOControl/EOObserver.m
(-[EODelayedObserverQueue _notifyObservers:]): Fix prototype
	set queue flag.
	(-[EODelayedObserverQueue enqueueObserver:]): Fix setting of
	queue flag and registering observers.
	(-[EODelayedObserverQueue dequeueObserver:]): Break linked
	list. Correct highestNonEmptyQueue setting.  Fix setting of queue
	flag.
	(-[EODelayedObserverQueue notifyObserversUpToPriority]):
	Dequeue observers during processing.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20139 72102866-910b-0410-8b05-ffd578937521
2004-09-25 19:47:36 +00:00
David Ayers
1b24b40493 * EOAccess/EOEntity.m (-[setName:],-[setExternalName:])
(-[setExternalQuery:],-[setClassName:],-[setDocComment]): Use
        ASSIGNCOPY instead of ASSIGN to deal with mutable strings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20121 72102866-910b-0410-8b05-ffd578937521
2004-09-24 10:02:05 +00:00
David Ayers
0fd5ef9822 * config.h.in (HAVE_DECL_PQFREEMEM, HAVE_DECL_PQUNESCAPEBYTEA):
Added new test markers.
        * config/postgres.m4; Add tests for new markers.
        * configure: Regenerated.
        * EOAdaptors/Postgres95/Postgres95Compatibility.h: New file.

        * EOAdaptors/Postgres95/Postgres95Adaptor.m: Change default
	data type for NSData to bytea.
        * EOAdaptors/Postgres95/Postgres95SQLExpression.m
        ([Postgres95SQLExpression formatValue:forAttribute:])
        Format bytea data.
        * EOAdaptors/Postgres95/Postgres95Values.m
        ([Postgres95Values newValueForBytesType:length:attribute:]):
        Decode bytea data.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20042 72102866-910b-0410-8b05-ffd578937521
2004-09-09 10:40:50 +00:00
David Ayers
4590ef7618 * EOAccess/EOAttribute.m (-[copyWithZone:]): Override
implementation of GCObject as it isn't safe to copy
        EOAttributes.
        * EOAccess/EOEntity.m (-[addAttribute:]); Use NSAsserts to check
        integrity of parameters.  Insure that attribute is not used by
        other entity or stored procedure.
        (-[_setModel:]): Rename from -setModel:.  Assert that entity
        is not used by another model.
        * EOAccess/EOEntityPriv.h (-[_setModel:]): Rename from
        -setModel:.
        * EOAccess/EOModel.m (-[_addEntity:]): Use -_setModel: instead
        of -setModel:.
        (-[removeEntity:]): Ditto.
        (-[addEntity:)): Use NSAssert to insure that entity name is
        unique and that the entity is not being used by other mode.  Use
        -_setModel: instead of -setModel:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20032 72102866-910b-0410-8b05-ffd578937521
2004-09-08 13:05:25 +00:00
David Ayers
fd7890a4cf * EOAccess/EOModel.m: Include EOKeyValueCoding.h.
(-[_addEntity:]): Set model via public API.
	* EOAccess/EOEntityPriv.h (-[_setModel:]): Remove.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20027 72102866-910b-0410-8b05-ffd578937521
2004-09-07 17:20:29 +00:00
David Ayers
60f924e7ec * EOControl/EOGenericRecord.m
(-[_infoForInstanceVariableNamed:retType:retSize:retOffset:]):
        Replace usage of deprecated GSFindInstanceVariable with
        GSObjCFindVariable.
        (-[_getValueForKey:selector:type:size:offset:]): Replace
        usage of deprecated GSGetValue with GSObjCGetValue.
        (-[_setValueForKey:object:selector:type:size:offset:]):
        Replace usage of deprecated GSSetValue with GSObjCSetValue.

        * EOControl/EOFault.m (+/-[respondsToSelector:]): Replace
	usage of deprecated GSGetInstanceMethod with GSGetMethod.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20026 72102866-910b-0410-8b05-ffd578937521
2004-09-07 17:05:19 +00:00
David Ayers
d1f12d438c * EOAccess/EORelationship.m
(-[setDefinition:]): Allow definition to unset.
        (-[setEntity:]): Mark both old and new entity as edited.

        * EOAccess/EOStoredProcedure.m
        (-[initWithPropertyList:]): Make return type explicit.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20024 72102866-910b-0410-8b05-ffd578937521
2004-09-07 16:21:07 +00:00
David Ayers
87b002d68d * EOAccess/EOModel.m (-[_updateCache]): New method.
* EOAccess/EOEntity.m
        (-[EOModel _updateCache]): Declare private EOModel method.
        (-[setName:]): Insure model updates its cache.
        (-[setModel]): Set instance variable directly without
        retaining it.
        (-[_setModel]): Remove.
        (-[gcDecrementRefCountOfContainedObjects]): Do not decrement
        backward reference to owning model.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20023 72102866-910b-0410-8b05-ffd578937521
2004-09-07 16:14:23 +00:00
David Ayers
329eccc59c * EOAccess/EOAttribute.h
* EOAccess/EOAttribute.m (_parent, -[setParent:]): Do not
        retain backward reference.
        (-[setName:): Mark as editited if parent is an entity.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@20022 72102866-910b-0410-8b05-ffd578937521
2004-09-07 15:57:21 +00:00
David Ayers
dae87e4bec * EOAccess/EOAccessFault.m: Include privat headers locally.
* EOAccess/EOAdaptor.m: Ditto.
	* EOAccess/EOAdaptorChannel.m: Ditto.
	* EOAccess/EOAdaptorContext.m: Ditto.
	* EOAccess/EOAttribute.m: Ditto.
	* EOAccess/EODatabaseChannel.m: Ditto.
	* EOAccess/EODatabaseContext.m: Ditto.
	* EOAccess/EODatabaseOperation.m: Ditto.
	* EOAccess/EOModel.m: Ditto.
	* EOAccess/EORelationship.m: Ditto.
	* EOAccess/EOSQLExpression.m: Ditto.
	* EOAccess/EOSQLQualifier.m: Ditto.

	* EOAccess/EOEntity.h: Remove declarations of privat methods.
	Reorder declaraions.
	(+[entity], +[entityWithPropertyList:owner:]): Deprecate.
	(-[sharedObjectFetchSpecificationNames]): New method.
	(-[setSharedObjectFetchSpecificationsByName:]: Ditto.
	(-[addSharedObjectFetchSpecificationByName:]: Ditto.
	(-[removeSharedObjectFetchSpecificationByName:]: Ditto.
	* EOAccess/EOEntityPriv.h: Add declarations of privat methods.
	Reorder declarations.
	* EOAccess/EOEntity.m: Reorder implementations according to
	headers.  Include privat headers locally.
	(+[entity], +[entityWithPropertyList:owner:]): Deprecate.
	(-[sharedObjectFetchSpecificationNames]): New method.
	(-[setSharedObjectFetchSpecificationsByName:]: Ditto.
	(-[addSharedObjectFetchSpecificationByName:]: Ditto.
	(-[removeSharedObjectFetchSpecificationByName:]: Ditto.

	* EOAccess/EOEntity.m: Adapt usage of deprecated -[entity...]
	and privat methods.
	* EOAccess/EOModel.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95SQLExpression.m: Ditto.

	* TODO: Add comment.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19772 72102866-910b-0410-8b05-ffd578937521
2004-07-23 18:33:29 +00:00
David Ayers
c76a86efad * EOControl/EONSAddOns.h/m
(GDL2_ActivateCategory, GDL2_ActivateAllGDL2Categories)
	(GDL2_DumpMethodList): New functions.

	* EOControl/EOKeyValueCoding.m
	(initialize): Make order of initialization more thread safe.
	(NilToNull): Remove helper class.
	([NSObject -unableToSetNilForKey:]): Implement.
	([NSObject -GDL2KVCNSObjectICategoryID]): New method.
	([NSObject +load]): Ditto.
	([NSDictionary -GDL2KVCNSDictionaryICategoryID]): Ditto.
	([NSDictionary +load]): Ditto.
	([NSMutableDictionary -GDL2KVCNSDictionaryICategoryID]):
	Ditto.
	([NSMutableDictionary +load]): Ditto.

	* EOControl/EOClassDescription.m
	([NSObject -GDL2CDNSObjectICategoryID]): New method.
	([NSObject +load]): New method.
	([NSObject -validateValue:forKey:]) Introduce temporary
	variable
	to allow correct formatting.
	([NSObject -snapshot]): Reformat log string.
	([NSObject -addObject], [NSObject -removeObject])
	([NSObject _setObject], [NSObject -editingContext]): Reformat.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19760 72102866-910b-0410-8b05-ffd578937521
2004-07-21 19:01:48 +00:00
David Ayers
933ca098f5 * EOControl/EOAndQualifier.m,
* EOControl/EOKeyComparisonQualifier.m,
        * EOControl/EOOrQualifier.m:
        ([-initWithKeyValueUnarchiver]): Implement.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19455 72102866-910b-0410-8b05-ffd578937521
2004-06-04 12:01:33 +00:00
David Ayers
d664f86ff8 * EOAccess/EODatabaseContext.m: Replace EOFLOGObjectLevel and
EOFLOGObjectLevelArgs with NSDebugMLLog.  Remove some
	superfluos
	NSLogs and replace others woth NSDebugMLLogs.  Reformat.
	* EOAccess/EOEntity.m ([EOEntity primaryKeyForGlobalID:]):
	Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19343 72102866-910b-0410-8b05-ffd578937521
2004-05-15 23:58:06 +00:00
David Ayers
d4a065ec9d * EOAdaptors/Postgres95/Postgres95Values.m
(-[NSCalendarDate postgres95Format]): Return ISO date format.
	(-[NSCalendarDate setPostgres95Format:]): Deprecate method.
	* EOAdaptors/Postgres95/Postgres95Channel.m
	(-[Postgres95Channel _setDateStyle]): New method to request
	ISO date format.
	(-[Postgres95Channel openChannel]): Call -_setDateStyle to set
	ISO date fromat.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19342 72102866-910b-0410-8b05-ffd578937521
2004-05-15 21:46:38 +00:00
David Ayers
72e8d1c7b3 * EOAdaptors/Postgres95/Postgres95Channel.m
([Postgres95Channel describeModelWithTableNames:]):
	Set class properties.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19337 72102866-910b-0410-8b05-ffd578937521
2004-05-15 13:07:52 +00:00
David Ayers
145fb1dfac * EOAccess/EOAttribute.m
([EOAttribute initialize]): Implement class caching.
	([EOAttribute *]): Use cached classes.
	([EOAttribute adaptorValueByConvertingAttributeValue:]):
	Only convert attributes when necessary.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19336 72102866-910b-0410-8b05-ffd578937521
2004-05-15 12:52:48 +00:00
David Ayers
6ad890eb97 * EOControl/EOEditingContext.m
(-[EOEditingContext validateChangesForSave]):  Use processed
        changes instead of unprocessed changes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19306 72102866-910b-0410-8b05-ffd578937521
2004-05-14 10:10:34 +00:00
David Ayers
98687d8fa7 * EOControl/EOQualifier.h: Add NSMutableSet class declaration.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19295 72102866-910b-0410-8b05-ffd578937521
2004-05-12 22:16:27 +00:00
David Ayers
ef5d799d86 * EOControl/EOQualifier.h/m
([EOQualifier allQualifierKeys])
        ([EOQualifier addQualifierKeysToSet:]): Implement new methods.
        * EOControl/EOAndQualifier.m
        * EOControl/EOKeyComparisonQualifier.m
        * EOControl/EOKeyValueQualifier.m
        * EOControl/EONotQualifier.m
        * EOControl/EOOrQualifier.m
        ([EO*Qualifier addQualifierKeysToSet:]): Implement new method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19287 72102866-910b-0410-8b05-ffd578937521
2004-05-12 09:43:06 +00:00
David Ayers
d50838d4a0 * EOAccess/EOModel.m ([EOModel entityNamed:]): Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19286 72102866-910b-0410-8b05-ffd578937521
2004-05-12 09:18:21 +00:00
David Ayers
035241d4eb * EOControl/EONSAddOns.h/m
([NSString initialCapitalizedString]): New method.
        * EOControl/EOKeyValueCoding.m
        ([NSArray-valueForKey:]): Allow ommitting keys for computational
        key paths.  Correct key capitalization.  Update documentation.
        ([NSArray-valueForKeyPath]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19261 72102866-910b-0410-8b05-ffd578937521
2004-05-07 13:14:24 +00:00
David Ayers
4e4535b912 * EOAccess/EOAdaptor.m ([EOAdaptor availableAdaptorNames]):
Return unique names if multiple Adaptors are found.  Document.
        Reported by Matt Rice <ratmice@yahoo.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19173 72102866-910b-0410-8b05-ffd578937521
2004-04-23 10:28:16 +00:00
David Ayers
e182576338 * README: New file.
* INSTALL: New file.
        * NEWS: New file.
        * Version: Update to 0.9.1.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19168 72102866-910b-0410-8b05-ffd578937521
2004-04-21 16:52:01 +00:00
David Ayers
369e845d16 * EOAdaptors/Postgres95/LoginPanel/GNUmakefile
* EOAdaptors/Postgres95/LoginPanel/Makefile.postamble: Allow
        clean and distclean targets when -gui is not available.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19158 72102866-910b-0410-8b05-ffd578937521
2004-04-20 14:38:43 +00:00
David Ayers
899c64641d * EOControl/EOGlobalID.h: Correct size of _bytes.
* EOControl/EOGlobalID.m: Update includes.
	(sequence): Define plattform independently.
	(sequenceRev): Remove.
	([EOGlobalID isEqual:]): Fix declaration.
	([EOTemporaryGlobalID init]): Ditto.
	([EOTemporaryGlobalID isEqual:]): Ditto.  Remove access
	instance variable directly instead of relying on superflous
	accessor method.
	([EOTemporaryGlobalID assignGloballyUniqueBytes]): Rewrite and
	document.
	([EOTemporaryGlobalID _bytes]): Remove.
	([EOTemporaryGlobalID encodeWithCoder:]): Encode contents of
	bytes instead of pointer value.
	([EOTemporaryGlobalID decodeWithCoder:]): Decode contents of
	bytes instead of pointer value.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19144 72102866-910b-0410-8b05-ffd578937521
2004-04-18 08:16:23 +00:00
David Ayers
ab13b0f5a9 * EOAccess/EODatabase.m ([EODatabase dealloc]): Use DESTROY
in favor of release.
	* EOAccess/EOExpressionArray.m ([EOExpressionArray dealloc]):
	Ditto.
	* EOAdaptors/Postgres95/Postgres95Adaptor.m
	([Postgres95Adaptor dealloc]): Ditto.

	* EOControl/EOCheapArray.h ([EOCheapArray dealloc]) Remove
	declaration.
	* EOControl/EOKeyValueArchiver.m
	([EOKeyValueArchivingContainer dealloc]): Ditto.
	* EOControl/EOMutableKnownKeyDictionary.h
	([EOMKKDInitializer dealloc]),
	([EOMKKDKeyEnumerator dealloc]),
	([EOMKKDSubsetMapping dealloc]),
	([EOMKKDArrayMapping dealloc]),
	([EOMutableKnownKeyDictionary dealloc]) Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19137 72102866-910b-0410-8b05-ffd578937521
2004-04-17 12:41:32 +00:00
David Ayers
8003cd4cb9 * EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.m
(vfmaxf) Make static.  Reformat.
	([Postgres95LoginPanel dealloc]): Use DESTROY in favor of
	RELEASE.
	([Postgres95LoginPanel init]): Minor reformatting and more
	tempRect usage.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19136 72102866-910b-0410-8b05-ffd578937521
2004-04-17 12:08:10 +00:00
David Ayers
a5340cfeba * EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.m
(vfmaxf) New function.
	([Postgres95LoginPanel init]): Redo UI layout.
	([Postgres95LoginPanel _databaseNames]): Reformat.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19135 72102866-910b-0410-8b05-ffd578937521
2004-04-17 11:39:14 +00:00
David Ayers
6ae713bf89 * */*.h: Format declarations consistently. Add -*-objc-*
shabang line.  Replace remaining extern declarations with
	GDL2*_EXPORT.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19134 72102866-910b-0410-8b05-ffd578937521
2004-04-17 11:30:47 +00:00
David Ayers
6d8f87b9a5 * EOAccess/EOModel.m ([EOModel writeToFile:]) Set path (and
name implicitly) of the receiver.  Create backup file when
        necessary after removing the potentially existing backup file.
        Raise NSInvalidArgumentExceptions upon failures.  Add support
        for .eomodel files.  Document.
        ([EOModel _verifyBuiltEntityObject:named:]): Add support for
        .eomodel files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19129 72102866-910b-0410-8b05-ffd578937521
2004-04-16 13:10:43 +00:00
David Ayers
3403bac575 * EOAdaptors/Postgres95/Makefile.preamble: Add link flags
for Darwin.
        * EOAdaptors/Postgres95/LoginPanel/GNUmakefile: Ditto.

        * EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.m:
        Include GNUstep headers for non-*-gnu-* configurations.

        * config/postgres.m4: Generalize test for PostgreSQL.
        * configure: Regenerated.

        * Makefile.postamble: Remove autom4te.cache on distclean.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19117 72102866-910b-0410-8b05-ffd578937521
2004-04-15 14:18:50 +00:00
David Ayers
f2aa536535 * TODO: Start tracking major TODO's until formal auditing is
available.

        * EOAccess/EODatabase.m
        * EOControl/EOGlobalID.h: Added documentation about
        EOGlobalIDChangedNotification semantics.

        * EOControl/EOSortOrdering.m: Removed superfluous define.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19110 72102866-910b-0410-8b05-ffd578937521
2004-04-15 10:33:35 +00:00
David Ayers
1d1dbbe337 Correct ChangeLog dates.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19088 72102866-910b-0410-8b05-ffd578937521
2004-04-13 14:15:42 +00:00
David Ayers
648312a931 * EOAdaptors/Postgres95/LoginPanel/Makefile.postamble:
Create symlink before building.  Error reported by Ludovic
	Marcotte and Matt Rice.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@19080 72102866-910b-0410-8b05-ffd578937521
2004-04-12 12:29:20 +00:00
David Ayers
fa497e1524 * EOAccess/EOModelGroup.m ([EOModelGroup globalModelGroup]):
Create single global model group and cache it to allow
	persistant manual adding of models.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18961 72102866-910b-0410-8b05-ffd578937521
2004-03-29 19:00:45 +00:00
David Ayers
b917e5735c * EOAdaptors/Postgres95/Postgres95SQLExpression.m
([Postgres95SQLExpression columnTypeStringForAttribute:]):
	Implement special handling for text types to ignore precision
	and width as suggested by Matt Rice <ratmice@yahoo.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18952 72102866-910b-0410-8b05-ffd578937521
2004-03-29 14:40:15 +00:00
David Ayers
a601888682 * *.[hm] Use GNUSTEP in favor of NeXT_Foundation_LIBRARY
as requested by Marcus Mueller <znek@mulle-kybernetik.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18856 72102866-910b-0410-8b05-ffd578937521
2004-03-19 16:41:21 +00:00
David Ayers
2740b02407 * EOAdaptors/Postgres95/LoginPanel/GNUmakefile: Add include
directive for local GDL2 headers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18829 72102866-910b-0410-8b05-ffd578937521
2004-03-10 15:06:53 +00:00
David Ayers
4d1a41eb93 * EOAdaptors/Postgres95/LoginPanel/Makefile.postamble:
Don't remove GNUmakefile on distclean.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18828 72102866-910b-0410-8b05-ffd578937521
2004-03-10 14:59:18 +00:00
David Ayers
82ba285362 * EOAdaptors/Postgres95/Postgres95Channel.h
([Postgres95Channel describeDatabaseNames]): Declare method.
	([Postgres95Channel userNameIsAdministrative:]): Ditto.

	* EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.m
	([Postgres95LoginPanel init]): Added parentheses to assignment
	to quiet compiler warning.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18799 72102866-910b-0410-8b05-ffd578937521
2004-03-08 11:23:58 +00:00
David Ayers
c074f977ba * EOAdaptors/Postgres95/Postgres95Adaptor.m
([Postgres95Adaptor createPGconn]): Insure cleanup code gets
	executed before exception is raised.

	* EOAdaptors/Postgres95/LoginPanel/Makefile.postamble: New file
	to create symlink to be able to include local adaptor headers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18798 72102866-910b-0410-8b05-ffd578937521
2004-03-08 11:13:58 +00:00
David Ayers
16525edb69 * EOAdaptors/Postgres95/Postgres95SQLExpression.m
([Postgres95SQLExpression
	dropDatabaseStatementsForConnectionDictionary:
	administrativeConnectionDictionary:]): Remove excess quotes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18784 72102866-910b-0410-8b05-ffd578937521
2004-03-06 14:00:05 +00:00
David Ayers
f849fd9df3 * configure.ac: Replace generation of
EOAdaptors/Postgres95/Makefile.preamble with
	EOAdaptors/Postgres95/config.mak.
	* configure: Regenerate.
	* EOAdaptors/Postgres95/Makefile.postamble: Replace removal of
	EOAdaptors/Postgres95/Makefile.preamble with
	EOAdaptors/Postgres95/config.mak.
	* EOAdaptors/Postgres95/Makefile.preamble: New file replacing...
	* EOAdaptors/Postgres95/Makefile.preamble.in: ...this file.
	* EOAdaptors/Postgres95/config.mak.in: New file.

	* EOAdaptors/Postgres95/LoginPanel/GNUmakefile: Correct comment
	identifier.  Include config.mak and other potential makefiles.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18783 72102866-910b-0410-8b05-ffd578937521
2004-03-06 12:18:08 +00:00
David Ayers
bad9d9d571 * EOAccess/EOAdaptor.m
([EOAdaptor dropDatabaseWithAdministrativeConnectionDictionary:
	administrativeConnectionDictionary:]): Correct documentation.
	([EOAdaptor administrativeConnectionDictionaryForAdaptor:]):
	Documented.

	* EOAdaptors/Postgres95/GNUmakefile.in: Added LoginPanel subproject.
	* EOAdaptors/Postgres95/Postgres95Adaptor.m
	([Postgres95Adaptor assertConnectionDictionaryIsValid]): Added
	test to insure channel is open befor attempting to close.
	([Postgres95Adaptor createPGconn]): Added exception to raise.
	* EOAdaptors/Postgres95/Postgres95Channel.m
	([Postgres95/Postgres95Channel describeDatabaseNames]): Implemented
	new method.
	([Postgres95 userNameIsAdministrative]): Ditto.

	* EOAdaptors/Postgres95/LoginPanel/GNUmakefile: New file.
	* EOAdaptors/Postgres95/LoginPanel/Postgres95LoginPanel.h/m: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18782 72102866-910b-0410-8b05-ffd578937521
2004-03-06 11:12:49 +00:00
David Ayers
2603735b6d * EOControl/Makefile.preamble: Fix --disable-flattend.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18781 72102866-910b-0410-8b05-ffd578937521
2004-03-06 10:02:53 +00:00
David Ayers
925020f6e2 * Tools/EOModel+GSDoc.m: Fix include.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18677 72102866-910b-0410-8b05-ffd578937521
2004-02-26 14:32:45 +00:00
David Ayers
61eadbd04a * EOControl/EODebug.h: Include missing header for non-*-gnu-*.
* EOAccess/EOAdaptor
        ([EOAdaptor _performAdministativeStatementsForSelect:
        connectionDictionary:administrativeConnectionDictionary]):
        Add cast to silence warning.
        * EOControl/EOCheapArray.m ([EOCheapArray autorelease]):
        Replace objc_thread_id with GSCurrentThread.
        ([EOCheapArray release]): Ditto.
        ([EOCheapArray retainCount]): Ditto.
        ([EOCheapArray retain]): Ditto.
        ([EOCheapArray dealloc]): Ditto.
        ([EOCheapArray shallowCopy]): Ditto.
        * EOControl/EOFault.m: Include missing header.
        ([EOFault dealloc]): Replace objc_thread_id with GSCurrentThread.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18676 72102866-910b-0410-8b05-ffd578937521
2004-02-26 14:18:04 +00:00
David Ayers
cedceb3487 Fix typos.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18674 72102866-910b-0410-8b05-ffd578937521
2004-02-26 10:45:56 +00:00
David Ayers
05d5416eec * EOAdaptors/Postgres95/Postgres95Channel.m: Added missing
include.
        ([Postgres95Channel _describeForeignKeysForEntity:forModel:]):
        Fix typo to unsure using correct entity.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18673 72102866-910b-0410-8b05-ffd578937521
2004-02-26 10:33:10 +00:00
David Ayers
575cc162f9 * EOControl/EOCheapArray.m ([EOCheapArray dealloc]): Replace
usage of objc_thread_id with GSCurrentThread.
        * EOControl/EODebug.m: Include headers for non *-gnu-*.
        Format function headers according to GNU standards.
        (objectDescription): Make static and return something meaningfull
        on failure.
        (IVarInString, TypeToNSString, DumpIVar): Make static and format
        function headers according to GNU standards.
        (EOFLogDumpObject_, EOFLogAssertGood_): Format function headers
        according to GNU standards.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18664 72102866-910b-0410-8b05-ffd578937521
2004-02-25 14:21:47 +00:00
David Ayers
1b25abc65e Update ChangeLog.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18662 72102866-910b-0410-8b05-ffd578937521
2004-02-25 13:04:16 +00:00
David Ayers
e721e1b781 * EOAccess/EOSQLExpression.m
([EOSQLExpression foreignKeyConstraintStatementsForRelationship:]):
        Create constraint even though no inversRelationship exists.
        ([EOSQLExpression foreignKeyConstraintStatementsForEntityGroup:]):
        Create constraints for all entities in the group which have no
        parent entity.
        ([EOSQLExpression foreignKeyConstraintStatementsForEntityGroups:]):
        Reformat for source level debuging.
        ([EOSQLExpression tableListWithRootEntity:]): Honor
        EOAdaptorQuotesExternalNames.
        ([EOSQLExpression createTableStatementsForEntityGroup:]): Ditto.
        ([EOSQLExpression dropTableStatementsForEntityGroup:]): Ditto.
        ([EOSQLExpression primaryKeyConstraintStatementsForEntityGroup:]):
        Ditto.
        ([EOSQLExpression primaryKeySupportStatementsForEntityGroup]):
        Ditto.
        ([EOSQLExpression dropPrimaryKeySupportStatementsForEntityGroup:]):
        Ditto.
        ([EOSQLExpression prepareConstraintStatementForRelationship:
        sourceColumns:destinationColumns:]): Ditto.
        * EOAdaptors/Postgres95/Postgres95SQLExpression.h/m
        ([Postgres95SQLExpression externalNameQuoteCharacter]): Remove.
        ([Postgres95SQLExpression
        createDatabaseStatementsForConnectionDictionary:
        administrativeConnectionDictionary]): Honor
        EOAdaptorQuotesExternalNames.
        ([Postgres95SQLExpression
        dropDatabaseStatementsForConnectionDictionary:
        administrativeConnectionDictionary:]): Ditto.
        ([Postgres95SQLExpression dropTableStatementsForEntityGroup:]):
        Ditto.
        ([Postgres95SQLExpression tableListWithRootEntity:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18661 72102866-910b-0410-8b05-ffd578937521
2004-02-25 12:52:59 +00:00
David Ayers
5633cb666f * EOAdaptors/Postgres95/Postgres95Channel.m: Define
EOAdaptorDebugLog convinience macro and use it throughout the file.
        ([Postgres95Channel _describeResults]): Rename externalName to
        externalType. Avoid nested messages for source level debugging.
        ([Postgres95Channel _describeBasicEntityWithName:forModel:]):
        New support method derived from describeModelWithEntityNames:.
        ([Postgres95Channel _describeForeignKeysForEntity:forModel:]):
        Ditto.
        ([Postgres95Channel describeModelWithEntityNames:]): Use new
        support methods in an autotelease pool.
        ([Postgres95Channel primaryKeyForNewRowWithEntity:]): Honor
        EOAdaptorQuotesExternalNames.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18659 72102866-910b-0410-8b05-ffd578937521
2004-02-25 12:27:43 +00:00
David Ayers
2e9d82a4a6 * EOAdaptors/Postgres95/Postgres95Adaptor.m: Reorder external
type mappings to correspond to EOAdaptorValueTypes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18658 72102866-910b-0410-8b05-ffd578937521
2004-02-25 12:06:54 +00:00
David Ayers
278882edb5 EOAccess/EOModel.m ([EOModel beautifyNames]): Remove log and
reformat comments.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18657 72102866-910b-0410-8b05-ffd578937521
2004-02-25 12:01:09 +00:00
David Ayers
281ebea9b2 * EOAccess/EOAdaptor.m ([EOAdaptor sharedLoginPanelInstance]):
Maintain instances on a per class basis as reported by Matt Rice.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18639 72102866-910b-0410-8b05-ffd578937521
2004-02-23 19:57:14 +00:00
David Ayers
6154adebfd * EOAccess/EOAdaptor.h/m: New globals for GDL2 specific
administrative key handling.
	([EOAdaptor sharedLoginPanelInstance]): Implemented.
	* EOAccess/EOSQLExpression.m ([EOSQLExpression
	_administrativeDatabaseStatementsForSelector:forEntityGroup:],
	[EOSQLExpression _dropDatabaseStatementsForEntityGroups:],
	[EOSQLExpression _createDatabaseStatementsForEntityGroups:]):
	Implemented new private support methods.
	([EOSQLExpression schemaCreationStatementsForEntities:options:]):
	Added support for EODropDatabaseKey and EOCreateDatabaseKey.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18638 72102866-910b-0410-8b05-ffd578937521
2004-02-22 17:05:48 +00:00
David Ayers
b25a3800a1 * EOControl/Makefile.postamble: Remove obsolete dependency and
target.  Add dependancy and targets for target specific
        config.h file.
        * EOAccess/Makefile.preamble: Add include option for target
        specific config.h file.
        * EOAdaptors/Postgres95/Makefile.preamble.in: Ditto.
        * EOModeler/Makefile.preamble: Ditto.
        * Tools/Makefile.preamble: Ditto.
        * EOAccess/Makefile.postamble: Comment empty target.

        * EOControl/EODebug.m (EOFLogC_): Log thread in a portable
        fashion.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18628 72102866-910b-0410-8b05-ffd578937521
2004-02-19 13:45:07 +00:00
David Ayers
0ca04f4fc4 * EOAdaptors/Postgres95/Postgres95Channel.m
([Postgres95Channel describeModelWithTableNames:]):
	Implemented.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18594 72102866-910b-0410-8b05-ffd578937521
2004-02-14 02:02:15 +00:00
David Ayers
9bf2d34c65 * EOAccess/EOAdaptor.h
([EOLoginPanel administrativeConnectionDictionaryForAdaptor]):
        Correct spelling.
        ([EOLoginPanel runPanelForAdaptor:validate:]): Move to
        EODeprecated.h.
        ([EOLoginPanel runPanelForAdaptor:validate:allowsCreation:]):
        Declared.
        * EOAccess/EOAdaptor.m:
        ([EOAdaptor adaptorWithModel:]): Reformat.
        ([EOAdaptor adaptorWithName:]): Do not append EOAdaptor
        redundantly.
        ([EOAdaptor _performAdministativeStatementsForSelector:
        connectionDictionary:administrativeConnectionDictionary:]):
        Implemented.
        ([EOAdaptor
        createDatabaseWithAdministrativeConnectionDictionary:]):
        Documented and implemented.
        ([EOAdaptor
        dropDatabaseWithAdministrativeConnectionDictionary]):
        Ditto.
        ([EOAdaptor runLoginPanelAndValidateConnectionDictionary]):
        Ditto.
        ([EOAdaptor runLoginPanel]): Ditto.
        ([EOAdaptor assignExternalInfoForAttribute:]): Ditto.
        ([EOAdaptor assignExternalInfoForEntity]): Ditto.
        ([EOAdaptor assignExternalInfoForEntireModel:]): Ditto.
        ([EOAdaptor internalTypeForExternalType:model:]): Documented.
        ([EOAdaptor externalTypesWithModel]): Ditto.
        ([EOAdaptor assignExternalTypeForAttribute]): Ditto.
        ([EOLoginPanel runPanelForAdaptor:validate:allowsCreation:]):
        Implemented.
        ([EOLoginPanel runPanelForAdaptor:validate:]): Deprecated.
        * EOAccess/EODeprecated.h
        ([EOLoginPanel runPanelForAdaptor:validate:]): Deprecated.
        * EOAdaptors/Postgres95/Postgres95Adaptor.m
        ([Postgres95Adaptor
        createDatabaseWithAdministrativeConnectionDictionary:]):
        Removed.
        ([Postgres95Adaptor
        dropDatabaseWithAdministrativeConnectionDictionary:]): Ditto.
        * EOAdaptors/Postgres95/Postgres95SQLExpression.m
        ([Postgres95SQLExpression
        createDatabaseStatementsForConnectionDictionary:
        administrativeConnectionDictionary:]): Implemented.
        ([Postgres95SQLExpression
        dropDatabaseStatementsForConnectionDictionary:
        administrativeConnectionDictionary:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18589 72102866-910b-0410-8b05-ffd578937521
2004-02-12 17:09:37 +00:00
David Ayers
b6e8074c69 * EOControl/EOClassDescription.m
([EOClassDescription initialize]): Use local
        GSLazyRecursiveLock instead of old locking mechanism.
        ([EOClassDescription classDelegate]): Ditto.
        * EOControl/EOGenericRecord.m:  Use GSLazyRecursiveLock
        instead of NSRecursiveLock.
        * EOControl/EONSAddOns.h/m (GDL2GlobalLock,
        GDL2GlobalRecursiveLock) Remove.
        (GDL2GlobalLockVendor) Ditto.
        (GSUseStrictWO451Compatibility): Use local GSLazyRecursiveLock
        instead of old locking mechanism.
        * EOControl/EOFault.m: Remove superfluous include.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18587 72102866-910b-0410-8b05-ffd578937521
2004-02-12 11:07:49 +00:00
David Ayers
ed101c8d44 * EOControl/EOKeyValueQualifier.m
([EOKeyValueQualifier initWithKey:operatorSelector:value:]):
        Use EONull instance if value is nil.
        ([EOKeyValueQualifier evaluateWithObject:]): Use EONull
        instance if object is nil.
        * EOControl/EOQualifier.m (getKey): Always interpret
        'attName = nil' qualifiers as EOKeyValueQualifiers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18586 72102866-910b-0410-8b05-ffd578937521
2004-02-12 10:28:09 +00:00
David Ayers
d76b18c85f * EOControl/EODebug.h/m(EOFLogAssertGood_): Remove dependancy
on superfluous category.
        ([NSObject isa]): Remove category.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18585 72102866-910b-0410-8b05-ffd578937521
2004-02-12 09:59:17 +00:00
David Ayers
ea5a66f93c * EOAccess/EOAdaptor.m ([EOAdaptor adaptorWithName:]): Use
NSSearchPathForDirectoriesInDomains() instead of GNUstep
	specific environment variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18518 72102866-910b-0410-8b05-ffd578937521
2004-02-01 11:23:44 +00:00
David Ayers
d9aaf3a4ed Correct date of last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18514 72102866-910b-0410-8b05-ffd578937521
2004-01-31 14:08:17 +00:00
David Ayers
b2d0d8c7f5 * EOAccess/EOAccessFault.m: Add #includes for non *-gnu-*.
* EOAccess/EOAdaptorOperation.m: Ditto.
	* EOAccess/EOAttribute.m: Ditto.
	* EOAccess/EODatabaseDataSource.m: Ditto.
	* EOAccess/EODatabaseOperation.m: Ditto.
	* EOAccess/EOEntity.m: Ditto.
	* EOAccess/EOExpressionArray.m: Ditto.
	* EOAccess/EOJoin.m: Ditto.
	* EOAccess/EORelationship.m: Ditto.
	* EOAccess/EOSQLExpression.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95Adaptor.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95Channel.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95Context.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95SQLExpression.m: Ditto.
	* EOAdaptors/Postgres95/Postgres95Values.m: Ditto.
	* EOControl/EOCheapArray.m: Ditto.
	* EOControl/EODetailDataSource.m: Ditto.
	* EOControl/EOGenericRecord.m: Ditto.
	* EOControl/EOKeyComparisonQualifier.m: Ditto.
	* EOControl/EOKeyGlobalID.m: Ditto.
	* EOControl/EOKeyValueQualifier.m: Ditto.
	* EOControl/EOMutableKnownKeyDictionary.m: Ditto.
	* EOControl/EONSAddOns.m: Ditto.

	* Tools/EOModel+GSDoc.m: Remove usage of -version.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18513 72102866-910b-0410-8b05-ffd578937521
2004-01-31 13:57:38 +00:00
David Ayers
b5c8661b30 * Tools/Makefile.preamble:
Add -lgnustep-baseadd as ADDITIONAL_TOOL_LIBS for non-*-gnu-*.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18511 72102866-910b-0410-8b05-ffd578937521
2004-01-30 22:32:35 +00:00
David Ayers
f62dee1f23 * GNUmakefile: Build EOControl before EOAccess.
* EOAccess/GNUmakefile: Remove LIBRARIES_DEPEND_UPON handling.
        * EOControl/GNUmakefile: Ditto.
        * EOModeler/GNUmakefile: Ditto.
        * Tools/GNUmakefile: Ditto.
        * EOAccess/Makefile.preamble: Correct LIBRARIES_DEPEND_UPON
        handling.
        * EOControl/Makefile.preamble: Ditto.
        * EOModeler/Makefile.preamble: Ditto.
        * Tools/Makefile.preamble: Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18509 72102866-910b-0410-8b05-ffd578937521
2004-01-30 14:02:24 +00:00
David Ayers
53d93cb550 * EOAccess/EOAdaptor.m: Include GNUstep-specific headers for
non-GNUstep systems.
        * EOAccess/EOAdaptorChannel.m: Ditto.
        * EOAccess/EOAdaptorContext.m: Ditto.
        * EOAccess/EOAttribute.m: Ditto.
        * EOAccess/EODatabaseChannel.m: Ditto.
        * EOAccess/EODatabaseDataSource.m: Ditto.
        * EOAccess/EOEntity.m: Ditto.
        * EOAccess/EOModel.m: Ditto.
        * EOAccess/EOModelGroup.m: Ditto.
        * EOAccess/EORelationship.m: Ditto.
        * EOAccess/EOSQLQualifier.m: Ditto.
        * EOAccess/EOUtilities.m: Ditto.
        * EOControl/EOAndQualifier.m: Ditto.
        * EOControl/EOClassDescription.m: Ditto.
        * EOControl/EODataSource.m: Ditto.
        * EOControl/EOEditingContext.m: Ditto.
        * EOControl/EOFault.m: Ditto.
        * EOControl/EOFaultHandler.m: Ditto.
        * EOControl/EOFetchSpecification.m: Ditto.
        * EOControl/EOKeyValueArchiver.m: Ditto.
        * EOControl/EOKeyValueQualifier.m: Ditto.
        * EOControl/EOMutableKnownKeyDictionary.m: Ditto.
        * EOControl/EONSAddOns.m: Ditto.
        * EOControl/EOObjectStore.m: Ditto.
        * EOControl/EOObjectStoreCoordinator.m: Ditto.
        * EOControl/EOObserver.m: Ditto.
        * EOControl/EOOrQualifier.m: Ditto.
        * EOControl/EOQualifier.m: Ditto.
        * EOControl/EOUndoManager.m: Ditto.
        * EOModeler/EOModelExtensions.m: Ditto.

        * EOAccess/EOModel.h/m (+/-[EOModel version]) Remove.
        ([EOModel init]): Handle version internally.
        ([EOModel encodeTableOfContentsIntoPropertyList:]): Ditto.
        ([EOModel encodeIntoPropertyList:]): Ditto.
        * EOAccess/EODatabaseContext.m ([EODatabaseContext dealloc]):
        Use NSCountHashTable instead of NSCountMapTable on hash table.
        * EOAccess/EOAttribute.m ([EOAttribute
        newValueForBytes:length:]):
        Added casts to avoid warnings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18500 72102866-910b-0410-8b05-ffd578937521
2004-01-29 13:23:22 +00:00
David Ayers
bf26078ed5 * EOAccess/GNUmakefile: Test FOUNDATION_LIB to determine
whether
        to link -base or -baseadd.
        * EOControl/GNUmakefile: Ditto.
        * EOModeler/GNUmakefile: Ditto.
        * Tools/GNUmakefile: Ditto.  Update title.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18499 72102866-910b-0410-8b05-ffd578937521
2004-01-29 09:26:40 +00:00
David Ayers
5e36abd7d9 * EOControl/EOEditingContext.m/.h:
o added -setLevelsOfUndo: (for GNustepWeb)
	* EOControl/EOFetchSpecification.m/.h:
	  o implemented -encodeWithKeyValueArchiver:
	* EOControl/EOKeyValueArchiver.m:
	  o cleaned


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18228 72102866-910b-0410-8b05-ffd578937521
2003-11-28 23:02:20 +00:00
David Ayers
93e970430f * EOControl/EOClassDescription.m/h:
o added -dictionaryForProperties
	  o added EOEntityClassDescription -dictionaryForProperties
	    wich use entity -_dictionaryForProperties
	* EOControl/EOGenericRecord.m/h:
	  o use EOClassDescription  -dictionaryForProperties
	    instead of building itself it's dictionary so we can
	    always use the same EOMKKDInitializer to save (lots of)
	    memory.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18227 72102866-910b-0410-8b05-ffd578937521
2003-11-28 23:00:05 +00:00
David Ayers
ce6dc1bf92 * EOAccess/EOSQLQualifier.m
o fix in  EOOrQualifier -sqlStringForSQLExpression:
	    use sqlExpression -sqlStringForDisjoinedQualifiers:
	    (problem was missing () around expression)
	* EOControl/EOAndQualifier.m:
	  o implemented -_addBindingsToDictionary:
	  o implemented -qualifierWithBindings:requiresAllVariables:
	  o implemented -validateKeysWithRootClassDescription:
	* EOControl/EOKeyValueQualifier.m:
	  o implemented -validateKeysWithRootClassDescription:
	  o implemented -initWithKeyValueUnarchiver:
	  o removed duplicate -initWithKeyValueUnarchiver: and
	    -encodeWithKeyValueArchiver
	  o implemented -_addBindingsToDictionary:
	  o implemented -qualifierWithBindings:requiresAllVariables:
	* EOControl/EOOrQualifier.m:
	  o implemented -_addBindingsToDictionary:
	  o implemented -qualifierWithBindings:requiresAllVariables:
	  o implemented -validateKeysWithRootClassDescription:
	* EOControl/EONotQualifier.m:
	  o implemented -_addBindingsToDictionary:
	  o implemented -validateKeysWithRootClassDescription:
	  o implemented -qualifierWithBindings:requiresAllVariables:
	* EOControl/EOQualifier.m:
	  o implemented _validateKey:withRootClassDescription:
	  o implemented -validateKeysWithRootClassDescription:
	  o implemented -bindingKeys
	  o implemented -keyPathForBindingKey:
	  o added EOQualifierVariableSubstitutionException;


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18226 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:56:06 +00:00
David Ayers
565696cba9 * EOAccess/EOSQLExpression.m/.h:
o renamed _useAliases to _flags.useAliases
	  o added _flags.hasOuterJoin
	  o call qualifier -sqlStringForSQLExpression:
	    instead of switching on qualifier class
	    in -sqlStringForArrayOfQualifiers:operation:
	  o asserts
	  o fill _contextStack
	  o added outer joins checks in -_flattenRelPath:entity:
	    (Used in Postgresql)
	* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
	  o subclass joinExpression to avoid building join
	    expression (it's now build in -tableListWithRootEntity
	  o sublass -tableListWithRootEntity to add joins in it.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18225 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:50:52 +00:00
David Ayers
5f1314ddfc * EOAccess/EOEntity.m/.h:
o added _instanceDictionaryInitializer.
	    Permit to have a restricted dictionary initializer
	    (i.e. propertyDictionaryInitializer minus instance
	     object ivars).
	  o added NSObject
	    +_instanceDictionaryInitializerExcludedPropertyNames
	  o more information in log/exception in _parseRelationshipPath
	  o added -_instanceDictionaryInitializer
	  o added - _dictionaryForInstanceProperties
	  o added -_classForInstances
	* EOAccess/EOModel.m:
	  o added asserts
	  o clean warnings
	* EOAccess/EORelationship.m:
	  o asserts
	  o fix in -isReciprocalToRelationship:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18224 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:47:32 +00:00
David Ayers
ff38b6fc00 * EOAccess/EODatabaseContext.m:
o in -prepareForSaveWithCoordinator:editingContext:
	    Try harder to find primary key (for linked objects
	    with more than one attribute for PK)
	* EOAccess/EODatabaseContextPriv.h
	  o added -_primaryKeyForObject:raiseException:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18223 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:41:42 +00:00
David Ayers
1035b7a2ed * EOAccess/EOAttribute.m:
o introducing new number types:
	  ('u' for long long / int8 and 'U' for unsigned long long)
	* EOAdaptors/Postgres95/Postgres95Adaptor.m:
	  o added int8, bigint
	* EOAdaptors/Postgres95/Postgres95Channel.m:
	  o handling bigint
	  o fixed types for int2 and int8
	* EOAdaptors/Postgres95/Postgres95Values.m:
	  o added missing number types
	  o introducing new number types:
	  ('u' for long long / int8 and 'U' for unsigned long long)
	* EOControl/EONSAddOns.h/m
	  o added number accessors for NSString
	  o added NSObject
	  -performSelector:withObject:withObject:withObject:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@18221 72102866-910b-0410-8b05-ffd578937521
2003-11-28 22:30:57 +00:00
David Ayers
b536cbb410 * EOControl/EONSAddOns.h (GDL2_BUFFER): Added experimental
macro.
        * EOControl/EOQualifier.m (_isLike): New static function to
        implement -isLike: and -isCaseInsensitiveLike:.
        (-[NSString isLike:]): Implemented.
        (-[NSString isCaseInsensitiveLike:]): Ditto.
        (-[NSArray filteredArrayUsingQualifier:]): Adapted to use
        experimental GDL2_BUFFER macro.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17969 72102866-910b-0410-8b05-ffd578937521
2003-10-24 16:30:49 +00:00
David Ayers
6b82f558c1 * EOControl/EOFetchSpecification.m
(-[EOFetchSpecification fetchSpecificationNamed:entityNamed:]}:
	Implemented upon bug report by Philip Moetteli.
	* EOAccess/EOAttributePriv.h (-[EOAttribute _valueClass]):
	Declare new private method.
	* EOAccess/EOAttribute.m: Remove declaration of unsused static
	variable.  Format documentation.
	(-[EOAttribute serverTimeZone]): Remove duplicate
	implementation which is always overriden by the category
	and correct the category implementation.
	(-[EOAttribute valueClassName]): Minor optimisation.
	(-[EOAttribute externalType]): Ditto.
	(-[EOAttribute valueType]): Ditto.
	(-[EOAttribute newValueForBytes:length:]): Use -_valueClass
	method to insure correct valueClass usage.  Bug reported
	by Philip Moetteli.
	(-[EOAttribute newValueForBytes:length:encoding:]): Ditto.
	(-[EOAttribute adaptorValueType]): Ditto.
	(-[EOAttribute validateValue:]): Ditto.  Use -width method to
	insure correct usage of width with respect to prototypes.
	(-[EOAttribute _valueClass]): New private method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17960 72102866-910b-0410-8b05-ffd578937521
2003-10-23 15:06:51 +00:00
David Ayers
6b282e94ae * EOControl/EOFetchSpecification.m
(-[EOFetchSpecification
        fetchSpecificationNamed:entityNamed:]}:
        Implemented upon bug report by Philip Moetteli.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17958 72102866-910b-0410-8b05-ffd578937521
2003-10-23 10:51:49 +00:00
David Ayers
b858144228 * EOControl/EOClassDescription.m
(+[EOClassDescription initialize]): Initialize model group
	after callback tables are initilized.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17746 72102866-910b-0410-8b05-ffd578937521
2003-09-29 19:23:58 +00:00
David Ayers
283db56349 * EOControl/EOFault.m
(+[EOFault respondsToSelector:]): Use GSObjCRuntime functions
        and
        correct casts.
        (-[EOFault respondsToSelector:]): Correct casts.

        * EOControl/EOKeyComparisonQualifier.m
        * EOControl/EOKeyValueCoding.m
        * EOControl/EOKeyValueQualifier.m
        * EOControl/EOQualifier.m
        * EOControl/EOSortOrdering.m
        (-[NSObject compare:]): Add declaration to prepare for removal
        of declaration from -base.
        (-[EOKeyComparisonQualifier evaluateWithObject:]): Adapt
        * vraiables
        and casts to use correct prototype.
        (-[EOKeyValueQualifier evaluateWithObject:]): Ditto
        (-[NSArray computeMaxForKey:]): Ditto.
        (-[NSArray computeMinForKey:]): Ditto.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17651 72102866-910b-0410-8b05-ffd578937521
2003-09-10 13:35:32 +00:00
David Ayers
0135ad09da * *.h/m: Updated to new header layout.
* Tools/eoutil.m:  Added missing include.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17539 72102866-910b-0410-8b05-ffd578937521
2003-08-25 20:01:59 +00:00
David Ayers
894f3554ac * EOControl/EOKeyValueCoding.h/m: Rewritten and documented.
Declared and documented EOKeyValueCoding categories currently
	implemented by gnustep-base/Foundation in NSKeyValueCoding.
	Removed FOUNDATION_HAS_KVC conditionals as
	gnustep-base/Foundation
	implement NSKeyValueCoding.
	(-[NSObject takeStoredValuesFromDictionary:]): Added
	declaration
	reportedly missing in Apple's headers to compelte
	EOKeyValueCoding
	declarations.
	Most implementations rewritten.

	* EOControl/EONull.h/m: Define EONull to NSNull to allow
	pointer
	equality checks.  Implement EONull as NSNull subclass that
	returns
	the NSNull instance.  Remove old assertions.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17534 72102866-910b-0410-8b05-ffd578937521
2003-08-24 23:28:26 +00:00
David Ayers
9238fc1a32 * *.m: Include GNUstep.h if GNUSTEP is not defined for OS X.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17191 72102866-910b-0410-8b05-ffd578937521
2003-07-11 19:04:05 +00:00
Manuel Guesdon
cca381a47b 2003-06-26 Manuel Guesdon <mguesdon@orange-concept.com>
* config.h.in:
		o added EMIT_TODO control
	* EOAccess/EOAccessFault.m:
		o commented debug logs
	* EOAccess/EODatabaseContext.m:
		o more information in asserts
		o asserts
		o fix in -relayPrimaryKey:object:entity: for
			nil 1:1 relationship value
		o add -forgetSnapshotForGlobalID call in -refaultObject:withGlobalID:editingContext:
		o add -forgetSnapshotForGlobalID database call in  -forgetSnapshotForGlobalID:
	* EOAccess/EOEntity.m:
		o logs
		o fix in -awakeObject:fromInsertionInEditingContext: to avoid
			setting already present values
		o reverted code in -awakeObject:fromInsertionInEditingContext:
			My (old) tests show that we create 1: object not on
			mandatory property but on propagatesPrimaryKey one
			if someone has an example of EOF creating an object
			here without propagatesPrimaryKey, please send it to me.
	* EOAccess/EOModelGroup.m:
		o don't autorelease return model group in -globalModelGroup as it will crash. I haven't find why :-(
		o logs

	* EOAccess/EOSQLExpression.m:
			o fix bug in -assembleSelectStatementWithAttributes🔒qualifier:
				fetchOrder:selectString:columnList:tableList:
				whereClause:joinClause:orderByClause:lockClause:
			by  adding () around where and join clause
					o add detail in sqlStringForSelector:value: exception
	* EOAdaptors/Postgres95/PostPostgres95Channel.m:
		o add more information on exceptions
	* EOAdaptors/Postgres95/Postgres95SQLExpression.m:
		o fix escaping string in -formatValue:forAttribute:
		o fix bug in -assembleSelectStatementWithAttributes🔒qualifier:
				fetchOrder:selectString:columnList:tableList:
				whereClause:joinClause:orderByClause:lockClause:
			by  adding () around where and join clause
	* EOAdaptors/Postgres95/Postgres95Value.m:
		o Change log in +newValueForDateType:length:attribute:
	* EOControl/EOCheapArray.m
		o removed some logs
	* EOAccess/EOClassDescription.m:
		o fix in -validateForUpdate
		o logs
	* EOControl/Debug.h:
		o donditional define of NSEmitTODO()
	* EOControl/EODetailDataSource.h/.m:
		o added -setDetailKey:
	* EOControl/EOEditingContext.m
		o logs
	* EOControl/EOFetchSpecification.m
		o logs
	* EOControl/EOKeyValueCoding.m:
		o fix in computeSum, computeAverage
	* EOControl/EOQualifier.m
		o logs
	* EOControl/EOSortOrdering.m
		o use valueForKeyPath: instead of valueForKey: to allow sort on related objects
	* EOControl/EOUndoManager.h
		o protection of include


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17037 72102866-910b-0410-8b05-ffd578937521
2003-06-26 08:20:30 +00:00
David Ayers
0dadfc5e25 * EOControl/EONSAddOns.h/m:
([NSString -parsedFirstVersionSubstring]): New method.
        * EOAdaptors/Postgres95/Postgres95Adaptor.h/m: Added include of
        pg_config.h to access PG_VERSION.  Added databaseVersion to list
        of meaningful connectionDictionary keys.
        (postgresClientVersion): New function.
        * EOAdaptors/Postgres95/Postgres95Channel.h/m:  Added instance
        variable to hold the version of the database server.
        (pgResultDictionary): New static function for debuging.
        ([Postgres95Channel -_readServerVersion]): New method to set Server
        Version.
        ([Postgres95Channel -openChannel]): Call _readServerVersion method.
        ([Postgres95Channel -describeTableNames]): Adapt select statement
        according to database version.
        * Postgres95/Postgres95SQLExpression.m:
        ([Postgres95SQLExpression +dropTableStatementsForEntityGroup:]):
        Adapt select statement according to database version supplied in
        connectionDictionary of the entites model.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17013 72102866-910b-0410-8b05-ffd578937521
2003-06-24 16:27:01 +00:00
David Ayers
760c71a9b4 * EOAdaptors/Postgres95/Postgres95Channel.m
([Postgres95Channel -describeTableNames]): Removed incorrect code
	left by copy and paste action.  Reported by Markus Hitter.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@17003 72102866-910b-0410-8b05-ffd578937521
2003-06-22 16:36:40 +00:00
David Ayers
f96edf1405 * EOControl/EOFault.m ([EOFault -respondsToSelector:]): Adapt to
current GSObjCRuntime API.
	* EOControl/EOUndoManager.h: Correct includes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16998 72102866-910b-0410-8b05-ffd578937521
2003-06-22 08:47:24 +00:00
David Ayers
f56bc2c7b9 * gdl2.make.in: Set GDL2 as auxiliary preprocessor flag.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16847 72102866-910b-0410-8b05-ffd578937521
2003-06-01 17:28:00 +00:00
David Ayers
071b6ccf72 * config/postgres.m4: Added /usr/include/postgresql to include
search path.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16771 72102866-910b-0410-8b05-ffd578937521
2003-05-22 15:35:15 +00:00
David Ayers
7218919f2d * EOControl/EOClassDescription.m
([EOClassDescription +classDescriptionForClass:): Replaced
        deprecated GSObjCName() with GSNameFromClass().
        * EOControl/EOQualifier.m
        ([EOQualifier +qualifierWithQualifierFormat:varargList:]): Replaced
        deprecated GSObjCSelectorName() with GSNameFromSelector().


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@16769 72102866-910b-0410-8b05-ffd578937521
2003-05-22 14:06:35 +00:00