[38424] branches/gsoc08-framework/MacPorts_Framework

armahg at macports.org armahg at macports.org
Sat Jul 19 15:57:50 PDT 2008


Revision: 38424
          http://trac.macosforge.org/projects/macports/changeset/38424
Author:   armahg at macports.org
Date:     2008-07-19 15:57:50 -0700 (Sat, 19 Jul 2008)
Log Message:
-----------
Removed external notifications code. Removed comments and scratch code in Framework classes

Modified Paths:
--------------
    branches/gsoc08-framework/MacPorts_Framework/MPInterpreter.m
    branches/gsoc08-framework/MacPorts_Framework/MPInterpreterTest.h
    branches/gsoc08-framework/MacPorts_Framework/MPMacPorts.m
    branches/gsoc08-framework/MacPorts_Framework/MPMacPortsTest.h
    branches/gsoc08-framework/MacPorts_Framework/MPMacPortsTest.m
    branches/gsoc08-framework/MacPorts_Framework/MPNotifications.h
    branches/gsoc08-framework/MacPorts_Framework/MPNotifications.m
    branches/gsoc08-framework/MacPorts_Framework/MPPort.h
    branches/gsoc08-framework/MacPorts_Framework/MPReceipt.h
    branches/gsoc08-framework/MacPorts_Framework/MPReceipt.m
    branches/gsoc08-framework/MacPorts_Framework/MPRegistry.h
    branches/gsoc08-framework/MacPorts_Framework/MacPorts.Framework.xcodeproj/Armahg.mode1v3

Removed Paths:
-------------
    branches/gsoc08-framework/MacPorts_Framework/Makefile
    branches/gsoc08-framework/MacPorts_Framework/notifications.m

Modified: branches/gsoc08-framework/MacPorts_Framework/MPInterpreter.m
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPInterpreter.m	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPInterpreter.m	2008-07-19 22:57:50 UTC (rev 38424)
@@ -39,7 +39,7 @@
 
 #pragma mark Notifications Code 
 int Notifications_Send(int objc, Tcl_Obj *CONST objv[], int global, Tcl_Interp *interpreter) {
-	//NSLog(@" INSIDE Notifications_Send METHOD");
+
 	NSString *name;
 	NSMutableString *msg;
 	NSMutableDictionary *info = nil;

Modified: branches/gsoc08-framework/MacPorts_Framework/MPInterpreterTest.h
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPInterpreterTest.h	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPInterpreterTest.h	2008-07-19 22:57:50 UTC (rev 38424)
@@ -43,8 +43,8 @@
 
 - (void)testInitialization;
 - (void)testGetVariableAsArray;
-- (void)testMutableDictionaryFromTclListAsString;
-- (void)testEvaluateStringAsString;
+//- (void)testMutableDictionaryFromTclListAsString;
+//- (void)testEvaluateStringAsString;
 
 
 @end

Modified: branches/gsoc08-framework/MacPorts_Framework/MPMacPorts.m
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPMacPorts.m	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPMacPorts.m	2008-07-19 22:57:50 UTC (rev 38424)
@@ -234,7 +234,6 @@
 
 -(void) respondToLocalNotification:(NSNotification *)notification {
 	id sentDict = [notification userInfo];
-	//NSLog(@" INSIDE respondToLocalNotification METHOD");
 	
 	//Just NSLog it for now
 	if(sentDict == nil)

Modified: branches/gsoc08-framework/MacPorts_Framework/MPMacPortsTest.h
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPMacPortsTest.h	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPMacPortsTest.h	2008-07-19 22:57:50 UTC (rev 38424)
@@ -39,13 +39,10 @@
 
 @interface MPMacPortsTest : SenTestCase {
 	MPMacPorts *testPort;
-	
-	//Create a Notifications Listener run tests then destroy it afterwards
-	//MPNotifications *testListener;
+
 }
 
-//-(void) listenForPortSync;
-//-(void) actOnPortSync:(NSNotification *)notificiation;
+
 -(void) testPortCreation;
 -(void) testPrefix;
 -(void) testSources;

Modified: branches/gsoc08-framework/MacPorts_Framework/MPMacPortsTest.m
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPMacPortsTest.m	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPMacPortsTest.m	2008-07-19 22:57:50 UTC (rev 38424)
@@ -39,13 +39,10 @@
 @implementation MPMacPortsTest
 - (void) setUp {
 	testPort = [MPMacPorts sharedInstance];
-	//testListener = [[MPNotifications alloc] init];
-	//[self listenForPortSync];
 }
 
 - (void) tearDown {
 	[testPort release];
-	//[testListener release];
 }
 
 
@@ -64,13 +61,11 @@
 -(void) testSources{	
 	NSArray *sourcesArray = [testPort sources];
 	STAssertNotNil(sourcesArray, @"Sources array should not be nil");
-	//NSLog(@"STUFF IS %@, %d",[sourcesArray objectAtIndex:0], [sourcesArray count]);
 }
 
 //Ask Randall about what exactly port tree path is
 -(void) testPathToPortIndex {
 	NSURL *pindex = [testPort pathToPortIndex:@"file:///Users/Armahg/macportsbuild/build1/"];
-	//NSLog(@"%@ MORE STUFF IS!", [pindex path]);
 	STAssertNotNil(pindex, @"URL for port index should not be nil");
 }
 
@@ -81,9 +76,6 @@
 
 
 -(void) testSync {
-	//The only way to test this that I know of is to listen for the posted notifications
-	//and take actions as appropriate
-	//NSLog(@"TESTING SYNC");
 	[testPort sync];
 }
 
@@ -94,25 +86,6 @@
 	[testPort selfUpdate];
 	
 }
-
--(void) listenForPortSync {
-	[[NSDistributedNotificationCenter defaultCenter] addObserver:self 
-														selector:@selector(actOnPortSync:) 
-															name:@"MacPortsSyncStarted"
-														  object:nil];
-	
-	[[NSDistributedNotificationCenter defaultCenter] addObserver:self
-														selector:@selector(actOnPortSync:) 
-															name:@"MacPortsSyncFinished" 
-														  object:nil];
-}
-
--(void) actOnPortSync:(NSNotification *)notification {
-	if ([[notification name] isEqualToString:@"MacPortsSyncStarted"]) 
-		NSLog(@"MacPortsSyncStarted");
-	else
-		NSLog(@"MacPortsSyncFinished"); 
-}	
 */
 
 -(void) testVersion {

Modified: branches/gsoc08-framework/MacPorts_Framework/MPNotifications.h
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPNotifications.h	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPNotifications.h	2008-07-19 22:57:50 UTC (rev 38424)
@@ -33,6 +33,27 @@
  *	POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*!
+ @header
+ The MPNotifications class aids in handling notifications of port activity that are to be
+ sent to Framework clients. The following constants MPMSG, MPINFO, MPWARN, MPERROR, MPDEBUG
+ define the names of notifications that Framework clients can register for.
+ 
+ THERE IS A REASON I'M NOT INCLUDING MPALL AS ONE OF THE POSSIBLE NOTIFICATIONS TO REGISTER FOR.
+ HOW IS THE FRAMEWORK SUPPOSE TO KNOW THAT SOMEONE HAS REGISTERED FOR ALL NOTIFICATIONS? THE ONLY
+ WAY TO DO THAT THAT I CAN SEE IS FORCING CLIENTS TO USE A CUSTOM METHOD (THAT UPDATES SOME
+ INTERNAL VARIABLE) OTHER THAN THE COCOA NSNOTIFICATION METHODS FOR REGISTERING ... I DON'T
+ WANT TO DO THAT.
+ 
+ SO CLIENTS CAN BOTH REGISTER FOR AND BLOCK CERTAIN NOTIFICATIONS FROM BEING SENT ... IS THIS
+ TOO MUCH FLEXIBILITY? WILL THIS GET CONFUSING? IF I WAS A FRAMEWORK USER I WOULD JUST
+ REGISTER FOR THE NOTIFICATIONS I'M INTERESTED IN AND NOT CARE ABOUT THE REST. BUT ON THE
+ FRAMEWORK SIDE I DON'T WANT TO GO THROUGH OVERHEAD OF SENDING A NOTIFICATION OF THE CLIENT
+ IS DEFINITELY NOT GOING TO USE IT ....
+ 
+ OK DISCUSS WITH RANDALL.
+ */
+
 #import <Cocoa/Cocoa.h>
 
 #define MPMSG @"MPMsgNotification"
@@ -43,21 +64,57 @@
 #define MPALL @"MPAllNotification"
 
 
-/*This class's main purpose is to test the implementation of
- NSNotifications from within the MacPorts Tcl API
+/*!
+ @class MPNotifications
+ @abstract A class to handle notifying Framework clients of port activity
+ @discussion This class aids in sending NSNotifications to Framework clients for various messages
+ that would usually be logged to stdout. It also allows for filtering of messages based on
+ message priority.
  */
 
 @interface MPNotifications : NSObject {
 	NSString * performingTclCommand;
 	NSMutableDictionary * blockOptions;
 }
+
+/*!
+ @brief Return singleton shared MPNotifications instance
+ @discussion Should I make this per thread as Randall did with MPInterpreter
+ and MPMacPorts?
+ */
 + (MPNotifications *)sharedListener;
 
+/*!
+ @brief Returns YES if notification has been blocked and NO if it has not.
+ @param option The priority level of the checked notification. Can be one of MPMSG, MPINFO, MPWARN, MPERROR, MPDEBUG OR MPALL.
+ @discussion The above constants for option correspond to msg, info, warn, error, debug
+ and all console messages respectively. If calling this function with MPALL
+ returns true then all notifications will be blocked. 
+ 
+ SHOULD I ALLOW FOR CUSTOM PRIOTIRITIES?
+ */
 -(BOOL)checkIfNotificationBlocked:(NSString *)option;
+
+/*!
+ @brief Blocks notifications having priority corresponding to option from being sent
+ @param option The priority level of the notification to be blocked. Can be one of MPMSG, MPINFO, MPWARN, MPERROR, MPDEBUG OR MPALL.
+ @discussion This method does nothing if notification has already been blocked.
+ 
+ SHOULD I RETURN SOME SORT OF VALUE FOR A SUCCESSFUL BLOCKING ... OR OTHERWISE?
+ */
 -(void)blockNotification:(NSString *)option;
+
+/*!
+ @brief Unblocks notifications having priority corresponding to option parameter.
+ @param option The priority level of the notification to be unblocked. Can be one of MPMSG, MPINFO, MPWARN, MPERROR, MPDEBUG OR MPALL.
+ @discussion This method does nothing if notification has not been already blocked.
+ 
+ SHOULD I RETURN SOME SORT OF VALUE FOR A SUCCESSFUL BLOCKING ... OR OTHERWISE?
+ */
 -(void)unblockNotification:(NSString *)option;
 
 
+//These methods aren't for the public ... yet ...
 -(void)setPerformingTclCommand:(NSString *)string;
 -(NSString *)performingTclCommand;
 

Modified: branches/gsoc08-framework/MacPorts_Framework/MPNotifications.m
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPNotifications.m	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPNotifications.m	2008-07-19 22:57:50 UTC (rev 38424)
@@ -39,24 +39,20 @@
 
 @implementation MPNotifications
 
-static MPNotifications *sharedMPListener = nil;
-
-
-
 + (MPNotifications *)sharedListener {
 	@synchronized(self) {
-		if (sharedMPListener == nil) {
+		if ([[[NSThread currentThread] threadDictionary] objectForKey:@"sharedMPListener"] == nil) {
 			[[self alloc] init];
 		}
 	}
-	return sharedMPListener;
+	return [[[NSThread currentThread] threadDictionary] objectForKey:@"sharedMPListener"];
 }
 
 + (id)allocWithZone:(NSZone *)zone {
 	@synchronized(self) {
-		if (sharedMPListener == nil) {
-			sharedMPListener = [super allocWithZone:zone];
-			return sharedMPListener;
+		if ([[[NSThread currentThread] threadDictionary] objectForKey:@"sharedMPListener"] == nil) {
+			[[[NSThread currentThread] threadDictionary] setObject:[super allocWithZone:zone] forKey:@"sharedMPListener"];
+			return [[[NSThread currentThread] threadDictionary] objectForKey:@"sharedMPListener"];
 		}
 	}
 	return nil;
@@ -105,9 +101,7 @@
 		[performingTclCommand release];
 		performingTclCommand = [tclString copy];
 	}
-	
-	//[[NSNotificationCenter defaultCenter] postNotificationName:@"testMacPortsNotification" 
-	//												   object:self];
+
 }
 
 - (NSString *) performingTclCommand {

Modified: branches/gsoc08-framework/MacPorts_Framework/MPPort.h
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPPort.h	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPPort.h	2008-07-19 22:57:50 UTC (rev 38424)
@@ -104,7 +104,7 @@
  the following dependency types: depend_libs, depend_run and depend_build. The
  NSArray returned contains all of these dependencies in a single Array.
  
- ISN'T INFORMATION LOST BY JUST CREATING A SINGLE ARAY WITH ALL OF THESE DEPENDENCIES?
+ ISN'T INFORMATION LOST BY JUST CREATING A SINGLE ARRAY WITH ALL OF THESE DEPENDENCIES?
  PERHAPS A DIFFERENT DATA STRUCTURE CAN BE USED THAT LETS US REMEMBER WHAT TYPE OF
  DEPENDENCY EACH DEPENDENCY IS?
  */

Modified: branches/gsoc08-framework/MacPorts_Framework/MPReceipt.h
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPReceipt.h	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPReceipt.h	2008-07-19 22:57:50 UTC (rev 38424)
@@ -61,7 +61,8 @@
  @param array An NSArray object containing the values for initializing this MPReceipt.
  @discussion 
  The MPReceipt object contains an internal dictionary whose keys are the following strings: name, version, revision, variants,
- active, whatIsThis. The values for these keys are provided by the initializing array parameter.
+ active, whatIsThis (the long description of the corresponding port). 
+ The values for these keys are provided by the initializing array parameter.
  */
 - (id)initWithContentsOfArray:(NSArray *)array;
 

Modified: branches/gsoc08-framework/MacPorts_Framework/MPReceipt.m
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPReceipt.m	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPReceipt.m	2008-07-19 22:57:50 UTC (rev 38424)
@@ -1,5 +1,5 @@
 /*
- *	$Id:$
+ *	$Id$
  *	MacPorts.Framework
  *
  *	Authors:
@@ -72,11 +72,11 @@
 }
 
 - (Class)classForKeyedArchiver {
-	return [MPPort class];
+	return [MPReceipt class];
 }
 
 + (Class)classForKeyedUnarchiver {
-	return [MPPort class];
+	return [MPReceipt class];
 }
 
 @end

Modified: branches/gsoc08-framework/MacPorts_Framework/MPRegistry.h
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MPRegistry.h	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MPRegistry.h	2008-07-19 22:57:50 UTC (rev 38424)
@@ -49,9 +49,7 @@
  @abstract The registry of installed ports.
  */
 @interface MPRegistry : NSObject {
-
 	MPInterpreter *interpreter;
-
 }
 
 + (MPRegistry *)sharedRegistry;

Modified: branches/gsoc08-framework/MacPorts_Framework/MacPorts.Framework.xcodeproj/Armahg.mode1v3
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/MacPorts.Framework.xcodeproj/Armahg.mode1v3	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/MacPorts.Framework.xcodeproj/Armahg.mode1v3	2008-07-19 22:57:50 UTC (rev 38424)
@@ -197,48 +197,7 @@
 	<key>Notifications</key>
 	<array/>
 	<key>OpenEditors</key>
-	<array>
-		<dict>
-			<key>Content</key>
-			<dict>
-				<key>PBXProjectModuleGUID</key>
-				<string>6E7DBED30E3246530056CCBD</string>
-				<key>PBXProjectModuleLabel</key>
-				<string>MPPort.m</string>
-				<key>PBXSplitModuleInNavigatorKey</key>
-				<dict>
-					<key>Split0</key>
-					<dict>
-						<key>PBXProjectModuleGUID</key>
-						<string>6E7DBED40E3246530056CCBD</string>
-						<key>PBXProjectModuleLabel</key>
-						<string>MPPort.m</string>
-						<key>_historyCapacity</key>
-						<integer>0</integer>
-						<key>bookmark</key>
-						<string>6E7DBF560E3290D60056CCBD</string>
-						<key>history</key>
-						<array>
-							<string>6E7DBEBC0E323CFF0056CCBD</string>
-						</array>
-					</dict>
-					<key>SplitCount</key>
-					<string>1</string>
-				</dict>
-				<key>StatusBarVisibility</key>
-				<true/>
-			</dict>
-			<key>Geometry</key>
-			<dict>
-				<key>Frame</key>
-				<string>{{0, 20}, {853, 532}}</string>
-				<key>PBXModuleWindowStatusBarHidden2</key>
-				<false/>
-				<key>RubberWindowFrame</key>
-				<string>260 201 853 573 0 0 1152 778 </string>
-			</dict>
-		</dict>
-	</array>
+	<array/>
 	<key>PerspectiveWidths</key>
 	<array>
 		<integer>-1</integer>
@@ -323,13 +282,13 @@
 							<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
 							<array>
 								<array>
-									<integer>16</integer>
-									<integer>12</integer>
+									<integer>29</integer>
+									<integer>28</integer>
 									<integer>0</integer>
 								</array>
 							</array>
 							<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
-							<string>{{0, 0}, {231, 453}}</string>
+							<string>{{0, 403}, {231, 456}}</string>
 						</dict>
 						<key>PBXTopSmartGroupGIDs</key>
 						<array/>
@@ -341,14 +300,14 @@
 					<key>GeometryConfiguration</key>
 					<dict>
 						<key>Frame</key>
-						<string>{{0, 0}, {248, 471}}</string>
+						<string>{{0, 0}, {248, 474}}</string>
 						<key>GroupTreeTableConfiguration</key>
 						<array>
 							<string>MainColumn</string>
 							<real>231</real>
 						</array>
 						<key>RubberWindowFrame</key>
-						<string>36 261 1004 512 0 0 1152 778 </string>
+						<string>70 259 1072 515 0 0 1152 778 </string>
 					</dict>
 					<key>Module</key>
 					<string>PBXSmartGroupTreeModule</string>
@@ -366,7 +325,7 @@
 								<key>PBXProjectModuleGUID</key>
 								<string>1CE0B20306471E060097A5F4</string>
 								<key>PBXProjectModuleLabel</key>
-								<string>MPInterpreter.m</string>
+								<string>init.tcl</string>
 								<key>PBXSplitModuleInNavigatorKey</key>
 								<dict>
 									<key>Split0</key>
@@ -374,16 +333,14 @@
 										<key>PBXProjectModuleGUID</key>
 										<string>1CE0B20406471E060097A5F4</string>
 										<key>PBXProjectModuleLabel</key>
-										<string>MPInterpreter.m</string>
+										<string>init.tcl</string>
 										<key>_historyCapacity</key>
 										<integer>0</integer>
 										<key>bookmark</key>
-										<string>6E7DBF550E3290D60056CCBD</string>
+										<string>6E7DBFF30E32A82D0056CCBD</string>
 										<key>history</key>
 										<array>
 											<string>6E1AE7F20E22E34900F6D7BC</string>
-											<string>6EF2D9CB0E254F6900D896EC</string>
-											<string>6EF2DA130E25763E00D896EC</string>
 											<string>6EF2DAC00E26BBD500D896EC</string>
 											<string>6EF2DB550E290E2C00D896EC</string>
 											<string>6EEB11E70E2A945400BFEC81</string>
@@ -392,25 +349,27 @@
 											<string>6EEB14340E2CAF3600BFEC81</string>
 											<string>6E449FF70E2DAC0D007DE8EC</string>
 											<string>6E44A01A0E2DB6C0007DE8EC</string>
-											<string>6E44A04D0E2E80A9007DE8EC</string>
-											<string>6E44A04E0E2E80A9007DE8EC</string>
 											<string>6E44A0920E2F3842007DE8EC</string>
 											<string>6E49B3CF0E30857700CF6B97</string>
-											<string>6E49B42D0E30EEF900CF6B97</string>
-											<string>6E49B42E0E30EEF900CF6B97</string>
 											<string>6E49B42F0E30EEF900CF6B97</string>
 											<string>6EE7EC520E31382400D3ABC9</string>
 											<string>6E7DBEC40E3246530056CCBD</string>
-											<string>6E7DBEDD0E324DF60056CCBD</string>
-											<string>6E7DBEDE0E324DF60056CCBD</string>
-											<string>6E7DBEDF0E324DF60056CCBD</string>
 											<string>6E7DBEF80E3278C70056CCBD</string>
-											<string>6E7DBEF90E3278C70056CCBD</string>
-											<string>6E7DBF460E3290D60056CCBD</string>
-											<string>6E7DBF470E3290D60056CCBD</string>
-											<string>6E7DBF480E3290D60056CCBD</string>
-											<string>6E7DBF490E3290D60056CCBD</string>
-											<string>6E7DBF4A0E3290D60056CCBD</string>
+											<string>6E7DBF7E0E329FA00056CCBD</string>
+											<string>6E7DBFB60E32A5890056CCBD</string>
+											<string>6E7DBFB70E32A5890056CCBD</string>
+											<string>6E7DBFB80E32A5890056CCBD</string>
+											<string>6E7DBFB90E32A5890056CCBD</string>
+											<string>6E7DBFBA0E32A5890056CCBD</string>
+											<string>6E7DBFBB0E32A5890056CCBD</string>
+											<string>6E7DBFBC0E32A5890056CCBD</string>
+											<string>6E7DBFBD0E32A5890056CCBD</string>
+											<string>6E7DBFBE0E32A5890056CCBD</string>
+											<string>6E7DBFBF0E32A5890056CCBD</string>
+											<string>6E7DBFC00E32A5890056CCBD</string>
+											<string>6E7DBFDE0E32A6170056CCBD</string>
+											<string>6E7DBFE40E32A6240056CCBD</string>
+											<string>6E7DBFE60E32A6240056CCBD</string>
 										</array>
 										<key>prevStack</key>
 										<array>
@@ -443,45 +402,7 @@
 											<string>6EEB130A0E2BFA7900BFEC81</string>
 											<string>6EEB132A0E2C021C00BFEC81</string>
 											<string>6E44A01E0E2DB6C0007DE8EC</string>
-											<string>6E7DBEC90E3246530056CCBD</string>
-											<string>6E7DBECB0E3246530056CCBD</string>
-											<string>6E7DBECC0E3246530056CCBD</string>
-											<string>6E7DBECD0E3246530056CCBD</string>
-											<string>6E7DBECE0E3246530056CCBD</string>
-											<string>6E7DBECF0E3246530056CCBD</string>
-											<string>6E7DBED00E3246530056CCBD</string>
-											<string>6E7DBED10E3246530056CCBD</string>
-											<string>6E7DBED80E324C800056CCBD</string>
-											<string>6E7DBED90E324C800056CCBD</string>
-											<string>6E7DBEDA0E324C800056CCBD</string>
-											<string>6E7DBEE10E324DF60056CCBD</string>
-											<string>6E7DBEE20E324DF60056CCBD</string>
-											<string>6E7DBEE30E324DF60056CCBD</string>
-											<string>6E7DBEE40E324DF60056CCBD</string>
-											<string>6E7DBEE50E324DF60056CCBD</string>
-											<string>6E7DBEE60E324DF60056CCBD</string>
-											<string>6E7DBEFC0E3278C70056CCBD</string>
-											<string>6E7DBEFD0E3278C70056CCBD</string>
-											<string>6E7DBEFF0E3278C70056CCBD</string>
-											<string>6E7DBF010E3278C70056CCBD</string>
 											<string>6E7DBF2D0E32897B0056CCBD</string>
-											<string>6E7DBF2E0E32897B0056CCBD</string>
-											<string>6E7DBF2F0E32897B0056CCBD</string>
-											<string>6E7DBF300E32897B0056CCBD</string>
-											<string>6E7DBF370E328B8B0056CCBD</string>
-											<string>6E7DBF380E328B8B0056CCBD</string>
-											<string>6E7DBF390E328B8B0056CCBD</string>
-											<string>6E7DBF3A0E328B8B0056CCBD</string>
-											<string>6E7DBF4B0E3290D60056CCBD</string>
-											<string>6E7DBF4C0E3290D60056CCBD</string>
-											<string>6E7DBF4D0E3290D60056CCBD</string>
-											<string>6E7DBF4E0E3290D60056CCBD</string>
-											<string>6E7DBF4F0E3290D60056CCBD</string>
-											<string>6E7DBF500E3290D60056CCBD</string>
-											<string>6E7DBF510E3290D60056CCBD</string>
-											<string>6E7DBF520E3290D60056CCBD</string>
-											<string>6E7DBF530E3290D60056CCBD</string>
-											<string>6E7DBF540E3290D60056CCBD</string>
 										</array>
 									</dict>
 									<key>SplitCount</key>
@@ -493,14 +414,14 @@
 							<key>GeometryConfiguration</key>
 							<dict>
 								<key>Frame</key>
-								<string>{{0, 0}, {751, 411}}</string>
+								<string>{{0, 0}, {819, 414}}</string>
 								<key>RubberWindowFrame</key>
-								<string>36 261 1004 512 0 0 1152 778 </string>
+								<string>70 259 1072 515 0 0 1152 778 </string>
 							</dict>
 							<key>Module</key>
 							<string>PBXNavigatorGroup</string>
 							<key>Proportion</key>
-							<string>411pt</string>
+							<string>414pt</string>
 						</dict>
 						<dict>
 							<key>ContentConfiguration</key>
@@ -513,9 +434,9 @@
 							<key>GeometryConfiguration</key>
 							<dict>
 								<key>Frame</key>
-								<string>{{0, 416}, {751, 55}}</string>
+								<string>{{0, 419}, {819, 55}}</string>
 								<key>RubberWindowFrame</key>
-								<string>36 261 1004 512 0 0 1152 778 </string>
+								<string>70 259 1072 515 0 0 1152 778 </string>
 							</dict>
 							<key>Module</key>
 							<string>XCDetailModule</string>
@@ -524,7 +445,7 @@
 						</dict>
 					</array>
 					<key>Proportion</key>
-					<string>751pt</string>
+					<string>819pt</string>
 				</dict>
 			</array>
 			<key>Name</key>
@@ -539,9 +460,9 @@
 			</array>
 			<key>TableOfContents</key>
 			<array>
-				<string>6E7DBEB50E323A300056CCBD</string>
+				<string>6E7DBFF00E32A63C0056CCBD</string>
 				<string>1CE0B1FE06471DED0097A5F4</string>
-				<string>6E7DBEB60E323A300056CCBD</string>
+				<string>6E7DBFF10E32A63C0056CCBD</string>
 				<string>1CE0B20306471E060097A5F4</string>
 				<string>1CE0B20506471E060097A5F4</string>
 			</array>
@@ -675,12 +596,11 @@
 	<integer>5</integer>
 	<key>WindowOrderList</key>
 	<array>
-		<string>6E7DBED30E3246530056CCBD</string>
 		<string>6E1AE7FA0E22E34900F6D7BC</string>
 		<string>/Users/Armahg/gsoc08/MacPorts_Framework/MacPorts.Framework.xcodeproj</string>
 	</array>
 	<key>WindowString</key>
-	<string>36 261 1004 512 0 0 1152 778 </string>
+	<string>70 259 1072 515 0 0 1152 778 </string>
 	<key>WindowToolsV3</key>
 	<array>
 		<dict>
@@ -701,7 +621,7 @@
 								<key>PBXProjectModuleGUID</key>
 								<string>1CD0528F0623707200166675</string>
 								<key>PBXProjectModuleLabel</key>
-								<string>RunPlatformUnitTests.include</string>
+								<string></string>
 								<key>StatusBarVisibility</key>
 								<true/>
 							</dict>
@@ -710,7 +630,7 @@
 								<key>Frame</key>
 								<string>{{0, 0}, {933, 131}}</string>
 								<key>RubberWindowFrame</key>
-								<string>644 161 933 559 0 0 1152 778 </string>
+								<string>0 -48 933 559 0 0 1152 778 </string>
 							</dict>
 							<key>Module</key>
 							<string>PBXNavigatorGroup</string>
@@ -723,7 +643,7 @@
 							<key>ContentConfiguration</key>
 							<dict>
 								<key>PBXBuildLogShowsTranscriptDefaultKey</key>
-								<string>{{0, 250}, {933, 132}}</string>
+								<string>{{0, 214}, {933, 168}}</string>
 								<key>PBXProjectModuleGUID</key>
 								<string>XCMainBuildResultsModuleGUID</string>
 								<key>PBXProjectModuleLabel</key>
@@ -738,7 +658,7 @@
 								<key>Frame</key>
 								<string>{{0, 136}, {933, 382}}</string>
 								<key>RubberWindowFrame</key>
-								<string>644 161 933 559 0 0 1152 778 </string>
+								<string>0 -48 933 559 0 0 1152 778 </string>
 							</dict>
 							<key>Module</key>
 							<string>PBXBuildResultsModule</string>
@@ -761,14 +681,14 @@
 			<key>TableOfContents</key>
 			<array>
 				<string>6E1AE7FA0E22E34900F6D7BC</string>
-				<string>6E7DBEB70E323A300056CCBD</string>
+				<string>6E7DBFF20E32A63C0056CCBD</string>
 				<string>1CD0528F0623707200166675</string>
 				<string>XCMainBuildResultsModuleGUID</string>
 			</array>
 			<key>ToolbarConfiguration</key>
 			<string>xcode.toolbar.config.buildV3</string>
 			<key>WindowString</key>
-			<string>644 161 933 559 0 0 1152 778 </string>
+			<string>0 -48 933 559 0 0 1152 778 </string>
 			<key>WindowToolGUID</key>
 			<string>6E1AE7FA0E22E34900F6D7BC</string>
 			<key>WindowToolIsVisible</key>
@@ -1519,7 +1439,7 @@
 								<key>Frame</key>
 								<string>{{0, 0}, {919, 668}}</string>
 								<key>RubberWindowFrame</key>
-								<string>156 37 919 709 0 0 1152 778 </string>
+								<string>77 69 919 709 0 0 1152 778 </string>
 								<key>XCRefactoringSplitViewLowerHeight</key>
 								<real>288</real>
 								<key>XCRefactoringSplitViewTotalHeight</key>
@@ -1546,11 +1466,11 @@
 			<key>TableOfContents</key>
 			<array>
 				<string>6E49B4150E30EC7700CF6B97</string>
-				<string>6E49B4160E30EC7700CF6B97</string>
+				<string>6E7DBF710E3299A20056CCBD</string>
 				<string>6E49B4140E30EC7700CF6B97</string>
 			</array>
 			<key>WindowString</key>
-			<string>156 37 919 709 0 0 1152 778 </string>
+			<string>77 69 919 709 0 0 1152 778 </string>
 			<key>WindowToolGUID</key>
 			<string>6E49B4150E30EC7700CF6B97</string>
 			<key>WindowToolIsVisible</key>

Deleted: branches/gsoc08-framework/MacPorts_Framework/Makefile
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/Makefile	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/Makefile	2008-07-19 22:57:50 UTC (rev 38424)
@@ -1,33 +0,0 @@
-MKDIR = /bin/mkdir -p -m 0755
-RM = /bin/rm -f
-RMDIR = /bin/rm -fr
-INSTALL = /usr/bin/install -m 0644
-TCLSH = /usr/bin/tclsh
-
-DESTDIR = 
-PREFIX = /Library/Tcl/notifications1.0
-
-OBJS = notifications.o MPNotifications.o
-TARGET = notifications.dylib
-
-CC = gcc
-CFLAGS = -Wall -DUSE_TCL_STUBS
-FRAMEWORKS = -framework Cocoa -framework Tcl -ltclstub8.4
-LDFLAGS = -dynamiclib -install_name $(PREFIX)/$(TARGET)
-
-all: $(TARGET)
-
-$(TARGET): $(OBJS)
-	$(CC) $(LDFLAGS) $(FRAMEWORKS) $(OBJS) -o $@
-
-clean:
-	$(RM) $(OBJS) $(TARGET)
-
-install: all
-	$(MKDIR) "$(DESTDIR)$(PREFIX)"
-	$(INSTALL) "$(TARGET)" "$(DESTDIR)$(PREFIX)"
-	echo pkg_mkIndex "$(DESTDIR)$(PREFIX)" | $(TCLSH)
-
-uninstall:
-	$(RMDIR) "$(DESTDIR)$(PREFIX)"
-	

Deleted: branches/gsoc08-framework/MacPorts_Framework/notifications.m
===================================================================
--- branches/gsoc08-framework/MacPorts_Framework/notifications.m	2008-07-19 21:36:10 UTC (rev 38423)
+++ branches/gsoc08-framework/MacPorts_Framework/notifications.m	2008-07-19 22:57:50 UTC (rev 38424)
@@ -1,142 +0,0 @@
-/*
- *	$Id$ 
- *	Authors:
- * 	Randall H. Wood <rhwood at macports.org>
- *
- *	Copyright (c) 2007 Randall H. Wood <rhwood at macports.org>
- *	All rights reserved.
- *
- *	Redistribution and use in source and binary forms, with or without
- *	modification, are permitted provided that the following conditions
- *	are met:
- *	1.	Redistributions of source code must retain the above copyright
- *		notice, this list of conditions and the following disclaimer.
- *	2.	Redistributions in binary form must reproduce the above copyright
- *		notice, this list of conditions and the following disclaimer in the
- *		documentation and/or other materials provided with the distribution.
- *	3.	Neither the name of the copyright owner nor the names of contributors
- *		may be used to endorse or promote products derived from this software
- *		without specific prior written permission.
- * 
- *	THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- *	AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- *	IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- *	ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- *	LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- *	CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- *	SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- *	INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- *	CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- *	ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- *	POSSIBILITY OF SUCH DAMAGE.
- */
-
-
-
-
-
-#import "notifications.h"
-
-int Notifications_Send(int objc, Tcl_Obj *CONST objv[], int global, Tcl_Interp *interpreter) {
-	NSString *name , *msg;
-	NSMutableDictionary *info = nil;
-	//MPNotifications *mln = [MPNotifications sharedListener];
-	
-	int tclCount;
-	int tclResult;
-	int i;
-	const char **tclElements;
-	
-	name = [NSString stringWithUTF8String:Tcl_GetString(*objv)];
-	++objv; --objc;
-	
-	tclResult = Tcl_SplitList(interpreter, Tcl_GetString(*objv), &tclCount, &tclElements);
-	if (tclResult == TCL_OK) {
-		
-		/*/For now we return a single element dictionary containing the ui_* log message
-		 info = [NSMutableDictionary dictionaryWithCapacity:1];
-		 [info setObject:[NSString stringWithUTF8String:Tcl_GetString(*objv)] forKey:[NSString stringWithString:@"ui_notification"]];
-		 
-		 //Afaik local notifications don't work. I'm keeping code for it in case we find a work around
-		 if (global != 0) {
-		 [[NSDistributedNotificationCenter defaultCenter] postNotificationName:name object:nil userInfo:info];
-		 } else {
-		 [[NSNotificationCenter defaultCenter] postNotificationName:name object:nil userInfo:info];
-		 }*/
-		
-		
-		
-		//I don't understand what Randall's original intent was for parsing the ui_msg as an NSDictionary.
-		//I'll keep this code here till further notice.
-		
-		info = [NSMutableDictionary dictionaryWithCapacity:(tclCount / 2)];
-		for (i = 0; i < tclCount; i +=2) {
-			[info setObject:[NSString stringWithUTF8String:tclElements[i + 1]] forKey:[NSString stringWithUTF8String:tclElements[i]]];
-		}
-		
-		//Get ui_* message separately 
-		++objv; --objc;
-		if(objv != NULL) {
-			msg = [NSString stringWithUTF8String:Tcl_GetString(*objv)];
-			[info setObject:msg forKey:[NSString stringWithString:@"Message"]];
-			//[mln setValue:name forKey:@"performingTclCommand"];
-			//[mln setperformingTclCommand:name];
-		}
-		
-		if (global != 0) {
-			[[NSDistributedNotificationCenter defaultCenter] postNotificationName:name object:nil userInfo:info];
-		} else {
-			[[NSNotificationCenter defaultCenter] postNotificationName:name object:nil userInfo:info];
-		}
-		
-		
-	} else {
-		return TCL_ERROR;
-	}
-	
-	return TCL_OK;
-}
-
-int Notifications_Command(ClientData clientData, Tcl_Interp *interpreter, int objc, Tcl_Obj *CONST objv[]) {
-	NSAutoreleasePool *pool = [NSAutoreleasePool new];
-	NSString *action = nil;
-	int returnCode = TCL_ERROR;
-	
-	++objv, --objc;
-	
-	if (objc) {
-		action = [NSString stringWithUTF8String:Tcl_GetString(*objv)];
-		++objv, --objc;
-		if ([action isEqualToString:@"send"]) {
-			if ([[NSString stringWithUTF8String:Tcl_GetString(*objv)] isEqualToString:@"global"]) {
-				++objv, --objc;
-				returnCode = Notifications_Send(objc, objv, 1, interpreter);				
-			} else {
-				returnCode = Notifications_Send(objc, objv, 0, interpreter);
-			}
-		}
-	}
-	
-	[pool release];
-	return returnCode;
-}
-
-int Notifications_Init(Tcl_Interp *interpreter) {
-	
-	if (Tcl_InitStubs(interpreter, "8.4", 0) == NULL) {
-		return TCL_ERROR;
-	}
-	
-	Tcl_CreateObjCommand(interpreter, "notifications", Notifications_Command, NULL, NULL);
-	
-	if (Tcl_PkgProvide(interpreter, "notifications", "1.0") != TCL_OK) {
-		return TCL_ERROR;
-	}
-	
-	return TCL_OK;
-}
-
-int Notifications_SafeInit(Tcl_Interp *interpreter) {
-	
-	return Notifications_Init(interpreter);
-}
\ No newline at end of file
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20080719/49511225/attachment-0001.html 


More information about the macports-changes mailing list