]> err.no Git - sope/commitdiff
added ivar to WOComponent
authorhelge <helge@e4a50df8-12e2-0310-a44c-efbce7f8a7e3>
Thu, 26 Aug 2004 14:29:46 +0000 (14:29 +0000)
committerhelge <helge@e4a50df8-12e2-0310-a44c-efbce7f8a7e3>
Thu, 26 Aug 2004 14:29:46 +0000 (14:29 +0000)
git-svn-id: http://svn.opengroupware.org/SOPE/trunk@61 e4a50df8-12e2-0310-a44c-efbce7f8a7e3

sope-appserver/NGObjWeb/ChangeLog
sope-appserver/NGObjWeb/NGObjWeb/WOComponent.h
sope-appserver/NGObjWeb/SoObjects/GNUmakefile
sope-appserver/NGObjWeb/SoObjects/WOComponent+SoObjects.m [new file with mode: 0644]
sope-appserver/NGObjWeb/SoObjects/WOContext+SoObjects.m
sope-appserver/NGObjWeb/SoObjects/WODirectAction+SoObjects.m
sope-appserver/NGObjWeb/Version
sope-appserver/NGObjWeb/WOComponent.m
sope-appserver/WEExtensions/GNUmakefile.preamble
sope-appserver/WOExtensions/GNUmakefile.preamble
sope-appserver/WOExtensions/JSModalWindow.m

index 1db2d7a6eb3ed3e7ad5a708c94d947838a2fc917..55035d781fae66ba696cf8a45f91f41135b8772c 100644 (file)
@@ -1,10 +1,12 @@
 2004-08-26  Helge Hess  <helge.hess@skyrix.com>
 
+       * WOComponent: added ivar for clientObject, _without_ increasing class
+         version (so that we don't need to touch every component in OGo :-| ),
+         moved SoObjects methods to own category file in SoObjects (v4.3.16)
+       
        * WOComponentScript.m, WOComponentScriptPart.m: removed dependency on
          NGScripting (disables WOx scripting due to missing backend) (v4.3.15)
 
-2004-08-26  Helge Hess  <helge.hess@opengroupware.org>
-
        * v4.3.14
 
        * WOComponent.m, WOContext.m: added ivar for _ODCycleCtx, _without_
index bcdf6953de41e12e8532fed105acefbdc7eca398..903edfc82b7c22dd0e49c9257f687506a9c6f807 100644 (file)
@@ -51,6 +51,7 @@
   
   NSURL *wocBaseURL;
   id    cycleContext; // was: _ODCycleCtx
+  id    wocClientObject;
 }
 
 - (id)initWithContext:(WOContext *)_ctx;
index 49462f60042ae16222edf1c9b2aab74e517212a5..fedd674a2c25bdd6ffcb389205ebfd53f1c26b23 100644 (file)
@@ -1,4 +1,4 @@
-# $Id$
+# $Id: GNUmakefile 1 2004-08-20 10:08:27Z znek $
 
 include $(GNUSTEP_MAKEFILES)/common.make
 
@@ -66,6 +66,7 @@ SoObjects_OBJC_FILES = \
        SoLookupAssociation.m           \
        WOContext+SoObjects.m           \
        WODirectAction+SoObjects.m      \
+       WOComponent+SoObjects.m         \
        WODirectActionRequestHandler+SoObjects.m\
        WORequest+So.m                  \
        SoTemplateRenderer.m            \
diff --git a/sope-appserver/NGObjWeb/SoObjects/WOComponent+SoObjects.m b/sope-appserver/NGObjWeb/SoObjects/WOComponent+SoObjects.m
new file mode 100644 (file)
index 0000000..da5259d
--- /dev/null
@@ -0,0 +1,42 @@
+/*
+  Copyright (C) 2002-2004 SKYRIX Software AG
+
+  This file is part of OpenGroupware.org.
+
+  OGo is free software; you can redistribute it and/or modify it under
+  the terms of the GNU Lesser General Public License as published by the
+  Free Software Foundation; either version 2, or (at your option) any
+  later version.
+
+  OGo is distributed in the hope that it will be useful, but WITHOUT ANY
+  WARRANTY; without even the implied warranty of MERCHANTABILITY or
+  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
+  License for more details.
+
+  You should have received a copy of the GNU Lesser General Public
+  License along with OGo; see the file COPYING.  If not, write to the
+  Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+  02111-1307, USA.
+*/
+
+#include <NGObjWeb/WOComponent.h>
+#include "WOContext+SoObjects.h"
+#include "common.h"
+
+@implementation WOComponent(SoObjects)
+
+static BOOL debugOn = NO;
+
+- (void)setClientObject:(id)_client {
+  if (debugOn) [self debugWithFormat:@"set client: %@", _client];
+  ASSIGN(self->wocClientObject, _client);
+}
+- (id)clientObject {
+  if (self->wocClientObject != nil)
+    /* an explicit client object is set */
+    return self->wocClientObject;
+  
+  return [[self context] clientObject];
+}
+
+@end /* WOComponent(SoObjects) */
index aa5458ccb273be7af98fdeaed4e04f8885d205d6..0d52e86b4f9d73090091f78d89d655d0ee765e7e 100644 (file)
@@ -18,7 +18,6 @@
   Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA.
 */
-// $Id: WOContext+SoObjects.m 4 2004-08-20 17:04:31Z helge $
 
 #include "WOContext+SoObjects.h"
 #include "SoObjectRequestHandler.h"
@@ -127,28 +126,3 @@ static BOOL debugOn = NO;
 }
 
 @end /* WOContext(SoObjectRequestHandler) */
-
-@implementation WOComponent(SoObjects)
-
-- (void)setClientObject:(id)_client {
-  if (debugOn) [self debugWithFormat:@"set client: %@", _client];
-  [self setObject:_client forKey:@"__soclient"];
-}
-- (id)clientObject {
-  id client;
-  
-  if ((client = [self objectForKey:@"__soclient"]))
-    return client;
-  
-  return [[self context] clientObject];
-}
-
-@end /* WOComponent(SoObjects) */
-
-@implementation WODirectAction(SoObjects)
-
-- (id)clientObject {
-  return [[(id)self context] clientObject];
-}
-
-@end /* WODirectAction(SoObjects) */
index 8379c2f7be04857ef6e14af06a4dd220d1c6a10b..3c877d20ddc28b5fe9334c44bedbf62be75dca5c 100644 (file)
@@ -1,7 +1,7 @@
 /*
-  Copyright (C) 2000-2003 SKYRIX Software AG
+  Copyright (C) 2002-2004 SKYRIX Software AG
 
-  This file is part of OGo
+  This file is part of OpenGroupware.org.
 
   OGo is free software; you can redistribute it and/or modify it under
   the terms of the GNU Lesser General Public License as published by the
@@ -18,9 +18,9 @@
   Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA.
 */
-// $Id$
 
 #include <NGObjWeb/WODirectAction.h>
+#include "WOContext+SoObjects.h"
 #include "SoObject.h"
 #include "common.h"
 
 
 @implementation WODirectAction(SoObjectRequestHandler)
 
+- (id)clientObject {
+  return [[(id)self context] clientObject];
+}
+
 - (id)lookupName:(NSString *)_name inContext:(id)_ctx acquire:(BOOL)_flag {
   WODirectActionPubInvocation *inv;
   NSString *daName;
index 8a2dee4da303b87d7f4c07d77b71dfeeb408f1ad..0f609cfb3ea51ddfe254b19600779291b4267f06 100644 (file)
@@ -1,6 +1,6 @@
 # version file
 
-SUBMINOR_VERSION:=15
+SUBMINOR_VERSION:=16
 
 # v4.2.413 requires libSaxObjC      v4.2.33
 # v4.2.341 requires libNGExtensions v4.2.77
index b81edcd1fbe922a9fd0708f8b5f987762cab9086..c366e58319114470847586c2d81960ecad771c68 100644 (file)
@@ -147,6 +147,7 @@ static BOOL  wakeupPageOnCreation              = NO;
                         withObject:nil];
   [self->subcomponents release];
   
+  [self->wocClientObject release];
   [self->wocBindings   release];
   [self->wocVariables  release];
   [self->wocName       release];
index 710e232468394baf3d22033073d67969995f4db8..5bc1ff2e948115d34561f367dc6872acaba8d9b5 100644 (file)
@@ -23,8 +23,9 @@ endif
 libWEExtensions_SOVERSION=$(MAJOR_VERSION).$(MINOR_VERSION)
 
 libWEExtensions_LIBRARIES_DEPEND_UPON += \
-       -lNGObjWeb \
-       -lNGMime -lNGStreams -lNGExtensions -lEOControl \
+       -lNGObjWeb      \
+       -lNGMime        \
+       -lNGStreams -lNGExtensions -lEOControl \
        -lXmlRpc -lDOM -lSaxObjC
 
 ifneq ($(GNUSTEP_BUILD_DIR),)
@@ -58,6 +59,7 @@ endif
 
 WEExtensions_BUNDLE_LIBS   += -lWEExtensions
 WEExtensions_WOBUNDLE_LIBS += $(WEExtensions_BUNDLE_LIBS)
+
 ifneq ($(GNUSTEP_BUILD_DIR),)
 WEExtensions_LIB_DIRS      += -L$(GNUSTEP_OBJ_DIR)
 else
index 098d6a5f6eb813d97c864e45bc31431d5d1de46a..2958345b7073a46d3e8cbd77b52f4bb435bbb350 100644 (file)
@@ -24,6 +24,7 @@ libWOExtensions_LIBRARIES_DEPEND_UPON += \
 
 ifneq ($(GNUSTEP_BUILD_DIR),)
 RELBUILD_DIR_APPSERVER=$(GNUSTEP_BUILD_DIR)/..
+RELBUILD_DIR_MIME=$(GNUSTEP_BUILD_DIR)/../../sope-mime
 RELBUILD_DIR_SxCore=$(GNUSTEP_BUILD_DIR)/../../sope-core
 RELBUILD_DIR_SxXml=$(GNUSTEP_BUILD_DIR)/../../sope-xml
 
@@ -31,7 +32,7 @@ ADDITIONAL_LIB_DIRS += \
        -L$(GNUSTEP_OBJ_DIR)                                            \
         -L$(RELBUILD_DIR_APPSERVER)/WEExtensions/$(GNUSTEP_OBJ_DIR_NAME)\
         -L$(RELBUILD_DIR_APPSERVER)/NGObjWeb/$(GNUSTEP_OBJ_DIR_NAME)   \
-        -L$(RELBUILD_DIR_SxCore)/NGMime/$(GNUSTEP_OBJ_DIR_NAME)        \
+        -L$(RELBUILD_DIR_MIME)/$(GNUSTEP_OBJ_DIR_NAME)                 \
         -L$(RELBUILD_DIR_SxCore)/NGStreams/$(GNUSTEP_OBJ_DIR_NAME)      \
         -L$(RELBUILD_DIR_SxCore)/NGExtensions/$(GNUSTEP_OBJ_DIR_NAME)   \
         -L$(RELBUILD_DIR_SxCore)/EOControl/$(GNUSTEP_OBJ_DIR_NAME)             \
index 3a0b632f1a79631082a0d84d5ae9ab2b091faff1..2e98c8560df4756aa5e7d62f4c3d04b6cc6f0db7 100644 (file)
@@ -18,7 +18,6 @@
   Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA.
 */
-// $Id$
 
 #include <NGObjWeb/WODynamicElement.h>