added @implementation EOCustomObject (AssociationsHack)
re-added registerAssociationForDeallocHack
* EOControl/*: ported to new runtime and OS X
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@30244 72102866-910b-0410-8b05-ffd578937521
of GS_INITIALIZED_LOCK.
* EOControl/EOPrivate.h/m (GDL2_AssignAtomicallyIfNil): New convenience
function for initializing variables in multithreaded environments.
Reported by: Tim Kack
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@30078 72102866-910b-0410-8b05-ffd578937521
to BUILD_libEOControl_DLL.
* EOControl/EOGlobalID.m: include limits.h.
* EOControl/EOPrivate.m: implement -copyWithZone: and
-mutableCopyWithZone: in GDL2NonRetainingArray.
* EOAccess/EODefines.h: switch BUILD_libgnustep-db2_DLL define to
BUILD_libEOAccess_DLL.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@27724 72102866-910b-0410-8b05-ffd578937521
* EOAccess/EOPrivate.m (GDL2_AccessPrivateInit): Set initialized to YES.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@26601 72102866-910b-0410-8b05-ffd578937521
GNUmakefile.
* gdl2.make.in (ADDITIONAL_NATIVE_LIBS): Don't force
linking of any GDL2 libraries just to get the version.
[API Change].
* variable-processing.make: Remove file (functionality
is now supplied by -make).
* EOInterface/GNUmakefile, EOAccess/EOModelGroup.m,
EOAccess/GNUmakefile, EOControl/GNUmakefile,
DBModeler/GNUmakefile, Tools/GNUmakefile,
GDL2Palette/GNUmakefile, EOModeler/GNUmakefile,
EOAdaptors/SQLiteAdaptor/LoginPanel/GNUmakefile,
EOAdaptors/PostgreSQLAdaptor/LoginPanel/GNUmakefile:
Remove reference to variable-processing.make.
* EOControl/EOGenericRecord.m
([-_infoForInstanceVariableNamed:stringName:retType:retSize:retOffset:]):
Use marker that matches underlying type signedness.
([-_getValueForKey:selector:type:size:offset:],
[-_setValueForKey:selector:type:size:offset:]):
Match 'offset' with underlying type signedness and update
marker.
([-storedValueForKey:],[-takeStoredValue:forKey:],
[-takeValue:forKey:]): Update signedness of offset to avoid
compiler warnings.
* EOControl/EOClassDescription.m
([NSObject-validateValue:forKey:]): Correct signedness of 'buf'.
* EOControl/EOPrivate.m (GDL2_PrivateInit): Fix assignemnt of
GDL2_EOEditingContext_recordObjectGlobalIDIMP.
* EOAccess/EOModelGroup.m
([EOObjectStoreCoordinator-modelGroup]): Correct method
signature to avoid compiler warnings.
* DBModeler/EntityView.m ([-mouseDown:]): Match class
with return type of initializer method to avoid
compiler warnings and unnecessary cast.
* EOAdaptors/SQLiteAdaptor/SQLite3Channel.m (newNumberValue):
Change type of 'data' to match usage.
([-fetchRowWithZone:]): Cast return type of sqlite3_column_text
to match expected usage to avoid compiler warnings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@25545 72102866-910b-0410-8b05-ffd578937521
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
* 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