[29840] users/rhwood/Pallet
source_changes at macosforge.org
source_changes at macosforge.org
Thu Oct 11 15:47:28 PDT 2007
Revision: 29840
http://trac.macosforge.org/projects/macports/changeset/29840
Author: rhwood at macports.org
Date: 2007-10-11 15:47:27 -0700 (Thu, 11 Oct 2007)
Log Message:
-----------
Use MPIndex for the port index. (Includes a few statements for dewbugging purposes)
Modified Paths:
--------------
users/rhwood/Pallet/PortAuthority.h
users/rhwood/Pallet/PortAuthority.m
Modified: users/rhwood/Pallet/PortAuthority.h
===================================================================
--- users/rhwood/Pallet/PortAuthority.h 2007-10-11 22:44:45 UTC (rev 29839)
+++ users/rhwood/Pallet/PortAuthority.h 2007-10-11 22:47:27 UTC (rev 29840)
@@ -55,7 +55,7 @@
// id <MPAgentProtocol> agent;
BOOL agentIsBusy;
- NSMutableArray *portIndex;
+ NSMutableArray *portsListIndex;
NSMutableArray *taskQueue;
BOOL portIsRunning;
@@ -71,6 +71,7 @@
NSMutableDictionary *dependencies;
NSMutableArray *operations;
+ MPIndex *portsIndex;
MPMacPorts *macPorts;
}
@@ -91,11 +92,7 @@
- (IBAction)macPortsSite:(id)sender;
- (IBAction)palletSite:(id)sender;
-- (void)populatePortIndex;
-
- (void)launchExecutableWithArguments:(NSMutableArray *)args;
- (void)launchAuthorizedExecutableWithArguments:(NSMutableArray *)args;
-- (void)parsePortIndex:(NSString *)portIndex intoIndexObject:(id)indexObject;
-
@end
Modified: users/rhwood/Pallet/PortAuthority.m
===================================================================
--- users/rhwood/Pallet/PortAuthority.m 2007-10-11 22:44:45 UTC (rev 29839)
+++ users/rhwood/Pallet/PortAuthority.m 2007-10-11 22:47:27 UTC (rev 29840)
@@ -46,6 +46,7 @@
{
// Get a MacPorts Interpeter
macPorts = [[MPMacPorts alloc] init];
+ NSLog([[macPorts search:@"goocanvas"] description]);
// Load/set preferences/defaults
if (![[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey:@"synchronizePortsListOnStartup"]) {
NSString *userDefaultsValuesPath;
@@ -80,6 +81,8 @@
// UI Tweaks
[[portsList headerView] setMenu:portsListHeaderMenu];
[[portsList cornerView] setMenu:portsListHeaderMenu];
+ // setup the displayed index
+ portsListIndex = [[NSMutableArray alloc] init];
// TESTING TESTING TESTING
}
@@ -105,118 +108,25 @@
[self syncPortsList:nil];
}
// List ports
- [self populatePortIndex];
+ [progressIndicator startAnimation:nil];
+ [status setStringValue:[NSString stringWithFormat:
+ NSLocalizedStringWithDefaultValue(@"statusPopulatePortIndex",
+ @"Localizable",
+ [NSBundle mainBundle],
+ @"Reading list of ports...",
+ @"Status for [MPAuthority populatePortIndex] method")
+ ]];
+ portsIndex = [[MPIndex alloc] init];
+ [portIndexController setContent:[portsIndex allValues]];
+ NSLog(@"%i items in the index.", [portsIndex count]);
+ [status setStringValue:@""];
+ [progressIndicator stopAnimation:nil];
+ NSLog([[portsIndex valueForKey:@"goocanvas"] description]);
}
+/*
#pragma mark PORT INDEX
-- (void)parsePortIndex:(NSString *)index intoIndexObject:(id)indexObject
-{
- NSString *file;
- NSArray *lines;
- NSMutableArray *arrays;
- NSMutableDictionary *port;
- NSArray *array;
- NSEnumerator *indexEnumerator;
- int counter;
- int tclCount;
- int tclResult;
- const char **tclElements;
- NSStringEncoding encoding;
- NSString *key;
- id value;
- NSMutableArray *values;
- NSEnumerator *valuesEnumerator;
- int valuesCount;
- int valuesCounter;
- const char **valuesElements;
- id line;
- arrays = [[NSMutableArray alloc] init];
- file = [[NSString alloc] initWithContentsOfFile:index];
- lines = [file componentsSeparatedByString:@"\n"];
- indexEnumerator = [lines objectEnumerator];
- // throw away the lines that contain only two words (the portname and a number)
- while (line = [indexEnumerator nextObject]) {
- array = [line componentsSeparatedByString:@" "];
- if ([array count] > 2) {
- [arrays addObject:line];
- }
- }
- indexEnumerator = [arrays objectEnumerator];
- encoding = [NSString defaultCStringEncoding];
- while (line = [indexEnumerator nextObject]) {
- port = [[NSMutableDictionary alloc] init];
- tclResult = Tcl_SplitList(NULL, [line cString], &tclCount, &tclElements);
- if (tclResult == TCL_OK && !(tclCount % 2)) {
- for (counter = 0; counter < tclCount; counter+=2) {
- key = [[NSString alloc] initWithCString:tclElements[counter] encoding:encoding];
- if ([key isEqualToString:@"maintainers"] ||
- [key isEqualToString:@"depends_lib"] ||
- [key isEqualToString:@"categories"] ||
- [key isEqualToString:@"depends_build"]) {
- tclResult = Tcl_SplitList(NULL, tclElements[counter + 1], &valuesCount, &valuesElements);
- if (tclResult == TCL_OK) {
- values = [[NSMutableArray alloc] initWithCapacity:valuesCount];
- for (valuesCounter = 0; valuesCounter < valuesCount; valuesCounter++) {
- [values addObject:[[NSString alloc] initWithCString:valuesElements[valuesCounter] encoding:encoding]];
- }
- } else {
- values = [[NSArray alloc] init];
- }
- value = [[NSArray alloc] initWithArray:values];
- // create a string containing all the tokens so that it can be rapidly and easily searched
- [port setValue:[[NSString alloc] initWithCString:tclElements[counter + 1] encoding:encoding] forKey:[key stringByAppendingString:@"_as_string"]];
- } else {
- value = [[NSString alloc] initWithCString:tclElements[counter + 1] encoding:encoding];
- }
- [port setValue:value forKey:key];
- //NSLog(@"%@: %@\n", key, value);
- }
- if ([port valueForKey:@"depends_lib"]) {
- values = [[NSMutableArray alloc] initWithArray:[port valueForKey:@"depends_lib"]];
- valuesCount = [values count];
- for (valuesCounter = 0; valuesCounter < valuesCount; valuesCounter++) {
- value = [[[values objectAtIndex:valuesCounter] componentsSeparatedByString:@":"] lastObject];
- [values replaceObjectAtIndex:valuesCounter withObject:value];
- }
- [port setValue:[[NSArray alloc] initWithArray:values] forKey:@"depends_lib"];
- }
- if ([port valueForKey:@"depends_build"]) {
- values = [[NSMutableArray alloc] initWithArray:[port valueForKey:@"depends_build"]];
- valuesCount = [values count];
- for (valuesCounter = 0; valuesCounter < valuesCount; valuesCounter++) {
- value = [[[values objectAtIndex:valuesCounter] componentsSeparatedByString:@":"] lastObject];
- [values replaceObjectAtIndex:valuesCounter withObject:value];
- }
- [port setValue:[[NSArray alloc] initWithArray:values] forKey:@"depends_build"];
- }
- @try {
- if ([[port valueForKey:@"long_description"] characterAtIndex:0] == '{') {
- [port setValue:[port valueForKey:@"description"] forKey:@"long_description"];
- }
- }
- @catch (NSException *e) {
- [port setValue:[NSString stringWithFormat:
- NSLocalizedStringWithDefaultValue(@"parsePortIndexDescreiptionError",
- @"Localizable",
- [NSBundle mainBundle],
- @"Port has an invalid desciption or long_description key.",
- @"Error statement for exception raised when testing long_description.")]
- forKey:@"long_description"];
- }
- // generate a composite version string: version_revision
- [port setValue:[[[port valueForKey:@"version"] stringByAppendingString:@"_"] stringByAppendingString:[port valueForKey:@"revision"]] forKey:@"compositeVersion"];
- // set the status flag to unknown
- [port setValue:[NSNumber numberWithInt:portStatusUnknown] forKey:@"status"];
- [indexObject addObject:port];
- } else {
- NSLog(@"Line \"%@\" from index %@ is bad.\n", line, index);
- }
- }
- //NSLog(@"Parsed %d ports from index %@\n", [ports count], index);
- Tcl_Free((char *)tclElements);
-}
-
- (void)populatePortIndex
{
NSEnumerator *indexEnumerator;
@@ -226,26 +136,13 @@
}
indexEnumerator = [[macPorts sources] objectEnumerator];
while (index = [indexEnumerator nextObject]) {
- [progressIndicator startAnimation:nil];
- [status setStringValue:@"Listing ports in all indexes..."];
- [status setStringValue:[NSString stringWithFormat:
- NSLocalizedStringWithDefaultValue(@"statusPopulatePortIndex",
- @"Localizable",
- [NSBundle mainBundle],
- @"Listing ports in index %@",
- @"Status for [MPAuthority populatePortIndex] method"),
- index]];
- [self parsePortIndex:[macPorts pathToPortIndex:index] intoIndexObject:portIndexController];
- }
- [status setStringValue:@""];
- [progressIndicator stopAnimation:nil];
}
- (void)indexPortsInThread
{
}
-
+*/
#pragma mark PORT COMMANDS
- (void)defaultAction:(id)items
@@ -396,7 +293,7 @@
[columns setValue:[fields objectAtIndex:0] forKey:@"name"];
[columns setValue:[fields objectAtIndex:1] forKey:@"version"];
[columns setValue:[fields objectAtIndex:2] forKey:@"categories"];
- [portIndex addObject:columns];
+ [portsListIndex addObject:columns];
[portsList reloadData];
}
@@ -405,9 +302,9 @@
- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex
{
NSLog(@"request for row %@ column %@\n", [NSNumber numberWithInt:rowIndex], [aTableColumn identifier]);
- NSParameterAssert(rowIndex >= 0 && rowIndex < [portIndex count]);
+ NSParameterAssert(rowIndex >= 0 && rowIndex < [portsListIndex count]);
if ([[[aTableColumn identifier] stringValue] isEqualToString:@"status"]) {
- switch ([[[portIndex objectAtIndex:rowIndex] objectForKey:[aTableColumn identifier]] intValue]) {
+ switch ([[[portsListIndex objectAtIndex:rowIndex] objectForKey:[aTableColumn identifier]] intValue]) {
case portStatusInstalled:
return nil;
break;
@@ -421,12 +318,12 @@
return nil;
}
}
- return [[portIndex objectAtIndex:rowIndex] objectForKey:[aTableColumn identifier]];
+ return [[portsListIndex objectAtIndex:rowIndex] objectForKey:[aTableColumn identifier]];
}
- (int)numberOfRowsInTableView:(NSTableView *)aTableView
{
- return [portIndex count];
+ return [portsListIndex count];
}
#pragma mark MENU ITEMS
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20071011/d570eb71/attachment.html
More information about the macports-changes
mailing list