Commit graph

395 commits

Author SHA1 Message Date
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