Skip to content

Commit 8c23f9b

Browse files
committed
* Removed dead code
* Replaced preproccessor constant with C constant * Slightly moved some code around
1 parent 720bb5f commit 8c23f9b

File tree

3 files changed

+164
-176
lines changed

3 files changed

+164
-176
lines changed

Diff for: Source/SPNarrowDownCompletion.h

-6
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,7 @@
4646
BOOL caseSensitive;
4747
BOOL dictMode;
4848
BOOL triggerMode;
49-
BOOL dbStructureMode;
5049
BOOL fuzzyMode;
51-
BOOL noFilterString;
5250
BOOL cursorMovedLeft;
5351
BOOL commaInsertionMode;
5452
BOOL autoCompletionMode;
@@ -60,7 +58,6 @@
6058
NSFont *tableFont;
6159
NSRange theCharRange;
6260
NSRange theParseRange;
63-
NSString *theDbName;
6461
NSString *theAliasName;
6562

6663
NSTimer *stateTimer;
@@ -91,12 +88,9 @@
9188
parseRange:(NSRange)parseRange
9289
inView:(id)aView
9390
dictMode:(BOOL)mode
94-
dbMode:(BOOL)theDbMode
9591
tabTriggerMode:(BOOL)tabTriggerMode
9692
fuzzySearch:(BOOL)fuzzySearch
9793
backtickMode:(NSInteger)theBackTickMode
98-
withDbName:(NSString *)dbName
99-
withTableName:(NSString *)tableName
10094
selectedDb:(NSString *)selectedDb
10195
caretMovedLeft:(BOOL)caretMovedLeft
10296
autoComplete:(BOOL)autoComplete

Diff for: Source/SPNarrowDownCompletion.m

+110-107
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@
4343
#pragma mark -
4444
#pragma mark attribute definition
4545

46-
#define kSPAutoCompletePlaceholderName @"Placeholder"
47-
#define kSPAutoCompletePlaceholderVal @"placholder"
46+
static NSString * const SPAutoCompletePlaceholderName = @"Placeholder";
47+
static NSString * const SPAutoCompletePlaceholderVal = @"placholder";
4848

4949
@interface NSTableView (MovingSelectedRow)
5050

@@ -226,12 +226,9 @@ - (id) initWithItems:(NSArray *)someSuggestions
226226
parseRange:(NSRange)parseRange
227227
inView:(id)aView
228228
dictMode:(BOOL)mode
229-
dbMode:(BOOL)theDbMode
230229
tabTriggerMode:(BOOL)tabTriggerMode
231230
fuzzySearch:(BOOL)fuzzySearch
232231
backtickMode:(NSInteger)theBackTickMode
233-
withDbName:(NSString *)dbName
234-
withTableName:(NSString *)tableName
235232
selectedDb:(NSString *)selectedDb
236233
caretMovedLeft:(BOOL)caretMovedLeft
237234
autoComplete:(BOOL)autoComplete
@@ -257,7 +254,6 @@ - (id) initWithItems:(NSArray *)someSuggestions
257254
if(fuzzyMode) [theTableView setBackgroundColor:[NSColor colorWithCalibratedRed:0.9f green:0.9f blue:0.9f alpha:1.0f]];
258255
else [theTableView setBackgroundColor:[NSColor whiteColor]];
259256

260-
dbStructureMode = theDbMode;
261257
cursorMovedLeft = caretMovedLeft;
262258
backtickMode = theBackTickMode;
263259
commaInsertionMode = NO;
@@ -268,7 +264,6 @@ - (id) initWithItems:(NSArray *)someSuggestions
268264
caseSensitive = isCaseSensitive;
269265

270266
theCharRange = initRange;
271-
noFilterString = ([aUserString length]) ? NO : YES;
272267

273268
theParseRange = parseRange;
274269

@@ -300,8 +295,6 @@ - (id) initWithItems:(NSArray *)someSuggestions
300295

301296
currentDb = selectedDb;
302297

303-
theDbName = dbName;
304-
305298
if(someAdditionalWordCharacters) [textualInputCharacters addCharactersInString:someAdditionalWordCharacters];
306299

307300
databaseStructureRetrieval = [theDatabaseStructure retain];
@@ -361,32 +354,43 @@ - (void)setupInterface
361354
[theTableView setAllowsEmptySelection:YES];
362355
[theTableView setHeaderView:nil];
363356

364-
NSTableColumn *column0 = [[[NSTableColumn alloc] initWithIdentifier:@"image"] autorelease];
365-
[column0 setDataCell:[[NSImageCell new] autorelease]];
366-
[theTableView addTableColumn:column0];
367-
[column0 setMinWidth:0];
368-
[column0 setWidth:20];
369-
370-
NSTableColumn *column1 = [[[NSTableColumn alloc] initWithIdentifier:@"name"] autorelease];
371-
[column1 setEditable:NO];
372-
[theTableView addTableColumn:column1];
373-
[column1 setWidth:170];
374-
375-
NSTableColumn *column3 = [[[NSTableColumn alloc] initWithIdentifier:@"type"] autorelease];
376-
[column3 setEditable:NO];
377-
[theTableView addTableColumn:column3];
378-
[column3 setWidth:139];
379-
380-
NSTableColumn *column2 = [[[NSTableColumn alloc] initWithIdentifier:@"list"] autorelease];
381-
[column2 setEditable:NO];
382-
[theTableView addTableColumn:column2];
383-
[column0 setMinWidth:0];
384-
[column2 setWidth:6];
385-
386-
NSTableColumn *column4 = [[[NSTableColumn alloc] initWithIdentifier:@"path"] autorelease];
387-
[column4 setEditable:NO];
388-
[theTableView addTableColumn:column4];
389-
[column4 setWidth:95];
357+
{
358+
NSTableColumn *column = [[[NSTableColumn alloc] initWithIdentifier:@"image"] autorelease];
359+
[column setDataCell:[[NSImageCell new] autorelease]];
360+
[theTableView addTableColumn:column];
361+
[column setMinWidth:0];
362+
[column setWidth:20];
363+
}
364+
365+
{
366+
NSTableColumn *column = [[[NSTableColumn alloc] initWithIdentifier:@"name"] autorelease];
367+
[column setEditable:NO];
368+
[[column dataCell] setFont:[NSFont systemFontOfSize:12]];
369+
[theTableView addTableColumn:column];
370+
[column setWidth:170];
371+
}
372+
373+
{
374+
NSTableColumn *column = [[[NSTableColumn alloc] initWithIdentifier:@"type"] autorelease];
375+
[column setEditable:NO];
376+
[theTableView addTableColumn:column];
377+
[column setWidth:139];
378+
}
379+
380+
{
381+
NSTableColumn *column = [[[NSTableColumn alloc] initWithIdentifier:@"list"] autorelease];
382+
[column setEditable:NO];
383+
[theTableView addTableColumn:column];
384+
[column setMinWidth:0];
385+
[column setWidth:6];
386+
}
387+
388+
{
389+
NSTableColumn *column = [[[NSTableColumn alloc] initWithIdentifier:@"path"] autorelease];
390+
[column setEditable:NO];
391+
[theTableView addTableColumn:column];
392+
[column setWidth:95];
393+
}
390394

391395
[theTableView setDataSource:self];
392396
[theTableView setDelegate:self];
@@ -405,7 +409,8 @@ - (NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView
405409

406410
- (NSString *)tableView:(NSTableView *)aTableView toolTipForCell:(id)aCell rect:(NSRectPointer)rect tableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex mouseLocation:(NSPoint)mouseLocation
407411
{
408-
if([[aTableColumn identifier] isEqualToString:@"image"]) {
412+
NSString *identifier = [aTableColumn identifier];
413+
if([identifier isEqualToString:@"image"]) {
409414
if(isQueryingDatabaseStructure && rowIndex == 0) {
410415
return NSLocalizedString(@"fetching database structure in progress", @"fetching database structure in progress");
411416
}
@@ -422,14 +427,14 @@ - (NSString *)tableView:(NSTableView *)aTableView toolTipForCell:(id)aCell rect:
422427
}
423428
return @"";
424429
}
425-
else if([[aTableColumn identifier] isEqualToString:@"name"]) {
430+
else if([identifier isEqualToString:@"name"]) {
426431
if(isQueryingDatabaseStructure && rowIndex == 0) {
427432
return NSLocalizedString(@"fetching database structure in progress", @"fetching database structure in progress");
428433
}
429434

430435
return [[filtered objectAtIndex:rowIndex] objectForKey:@"display"];
431436
}
432-
else if ([[aTableColumn identifier] isEqualToString:@"list"] || [[aTableColumn identifier] isEqualToString:@"type"]) {
437+
else if ([identifier isEqualToString:@"list"] || [identifier isEqualToString:@"type"]) {
433438
if(isQueryingDatabaseStructure && rowIndex == 0) {
434439
return NSLocalizedString(@"fetching database structure data in progress", @"fetching database structure data in progress");
435440
}
@@ -452,7 +457,7 @@ - (NSString *)tableView:(NSTableView *)aTableView toolTipForCell:(id)aCell rect:
452457
}
453458
}
454459
}
455-
else if ([[aTableColumn identifier] isEqualToString:@"path"]) {
460+
else if ([identifier isEqualToString:@"path"]) {
456461
if(isQueryingDatabaseStructure && rowIndex == 0) {
457462
return NSLocalizedString(@"fetching database structure in progress", @"fetching database structure in progress");
458463
}
@@ -488,32 +493,30 @@ - (NSIndexSet *)tableView:(NSTableView *)tableView selectionIndexesForProposedSe
488493

489494
- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
490495
{
491-
NSImage* image = nil;
492-
NSString* imageName = nil;
493-
494-
if([[aTableColumn identifier] isEqualToString:@"image"]) {
496+
NSString *identifier = [aTableColumn identifier];
497+
if([identifier isEqualToString:@"image"]) {
495498
if(!dictMode) {
496499
if(isQueryingDatabaseStructure && rowIndex == 0) {
497500
return [syncArrowImages objectAtIndex:currentSyncImage];
498501
}
499502
else {
500-
imageName = [[filtered objectAtIndex:rowIndex] objectForKey:@"image"];
503+
NSImage* image = nil;
504+
NSString *imageName = [[filtered objectAtIndex:rowIndex] objectForKey:@"image"];
501505
if(imageName) image = [NSImage imageNamed:imageName];
502506
return image;
503507
}
504508
}
509+
505510
return @"";
506511
}
507-
else if([[aTableColumn identifier] isEqualToString:@"name"]) {
508-
[[aTableColumn dataCell] setFont:[NSFont systemFontOfSize:12]];
509-
512+
else if([identifier isEqualToString:@"name"]) {
510513
if(isQueryingDatabaseStructure && rowIndex == 0) {
511514
return NSLocalizedString(@"fetching database structure in progress", @"fetching database structure in progress");
512515
}
513516

514517
return [[filtered objectAtIndex:rowIndex] objectForKey:@"display"];
515518
}
516-
else if ([[aTableColumn identifier] isEqualToString:@"list"]) {
519+
else if ([identifier isEqualToString:@"list"]) {
517520
if(isQueryingDatabaseStructure && rowIndex == 0) {
518521
NSPopUpButtonCell *b = [[NSPopUpButtonCell new] autorelease];
519522
[b setPullsDown:NO];
@@ -528,48 +531,47 @@ - (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColu
528531
if(dictMode) {
529532
return @"";
530533
}
534+
535+
if([[filtered objectAtIndex:rowIndex] objectForKey:@"list"]) {
536+
NSPopUpButtonCell *b = [[NSPopUpButtonCell new] autorelease];
537+
[b setPullsDown:NO];
538+
[b setAltersStateOfSelectedItem:NO];
539+
[b setControlSize:NSMiniControlSize];
540+
NSMenu *m = [[NSMenu alloc] init];
541+
NSMenuItem *aMenuItem = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"Type Declaration:", @"type declaration header") action:NULL keyEquivalent:@""] autorelease];
542+
[aMenuItem setEnabled:NO];
543+
[m addItem:aMenuItem];
544+
[m addItemWithTitle:[[filtered objectAtIndex:rowIndex] objectForKey:@"list"] action:NULL keyEquivalent:@""];
545+
[b setMenu:m];
546+
[m release];
547+
[b setPreferredEdge:NSMinXEdge];
548+
[b setArrowPosition:NSPopUpArrowAtCenter];
549+
[b setFont:[NSFont systemFontOfSize:11]];
550+
[b setBordered:NO];
551+
[aTableColumn setDataCell:b];
552+
}
531553
else {
532-
if([[filtered objectAtIndex:rowIndex] objectForKey:@"list"]) {
533-
NSPopUpButtonCell *b = [[NSPopUpButtonCell new] autorelease];
534-
[b setPullsDown:NO];
535-
[b setAltersStateOfSelectedItem:NO];
536-
[b setControlSize:NSMiniControlSize];
537-
NSMenu *m = [[NSMenu alloc] init];
538-
NSMenuItem *aMenuItem = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"Type Declaration:", @"type declaration header") action:NULL keyEquivalent:@""] autorelease];
539-
[aMenuItem setEnabled:NO];
540-
[m addItem:aMenuItem];
541-
[m addItemWithTitle:[[filtered objectAtIndex:rowIndex] objectForKey:@"list"] action:NULL keyEquivalent:@""];
542-
[b setMenu:m];
543-
[m release];
544-
[b setPreferredEdge:NSMinXEdge];
545-
[b setArrowPosition:NSPopUpArrowAtCenter];
546-
[b setFont:[NSFont systemFontOfSize:11]];
547-
[b setBordered:NO];
548-
[aTableColumn setDataCell:b];
549-
}
550-
else {
551-
[aTableColumn setDataCell:[[NSTextFieldCell new] autorelease]];
552-
}
553-
return @"";
554+
[aTableColumn setDataCell:[[NSTextFieldCell new] autorelease]];
554555
}
556+
557+
return @"";
555558
}
556-
else if([[aTableColumn identifier] isEqualToString:@"type"]) {
559+
else if([identifier isEqualToString:@"type"]) {
557560
if(isQueryingDatabaseStructure && rowIndex == 0) {
558561
return @"";
559562
}
560563

561564
if(dictMode) {
562565
return @"";
563566
}
564-
else {
565-
NSTokenFieldCell *b = [[[NSTokenFieldCell alloc] initTextCell:([[filtered objectAtIndex:rowIndex] objectForKey:@"type"]) ? [[filtered objectAtIndex:rowIndex] objectForKey:@"type"] : @""] autorelease];
566-
[b setEditable:NO];
567-
[b setAlignment:NSRightTextAlignment];
568-
[b setFont:[NSFont systemFontOfSize:11]];
569-
return b;
570-
}
567+
568+
NSTokenFieldCell *b = [[[NSTokenFieldCell alloc] initTextCell:([[filtered objectAtIndex:rowIndex] objectForKey:@"type"]) ? [[filtered objectAtIndex:rowIndex] objectForKey:@"type"] : @""] autorelease];
569+
[b setEditable:NO];
570+
[b setAlignment:NSRightTextAlignment];
571+
[b setFont:[NSFont systemFontOfSize:11]];
572+
return b;
571573
}
572-
else if ([[aTableColumn identifier] isEqualToString:@"path"]) {
574+
else if ([identifier isEqualToString:@"path"]) {
573575
if(isQueryingDatabaseStructure && rowIndex == 0) {
574576
NSPopUpButtonCell *b = [[NSPopUpButtonCell new] autorelease];
575577
[b setPullsDown:NO];
@@ -584,35 +586,36 @@ - (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColu
584586
if(dictMode) {
585587
return @"";
586588
}
587-
else {
588-
if([[filtered objectAtIndex:rowIndex] objectForKey:@"path"]) {
589-
NSPopUpButtonCell *b = [[NSPopUpButtonCell new] autorelease];
590-
[b setPullsDown:NO];
591-
[b setAltersStateOfSelectedItem:NO];
592-
[b setControlSize:NSMiniControlSize];
593-
NSMenu *m = [[NSMenu alloc] init];
594-
for(id p in [[[[[filtered objectAtIndex:rowIndex] objectForKey:@"path"] componentsSeparatedByString:SPUniqueSchemaDelimiter] reverseObjectEnumerator] allObjects]) {
595-
[m addItemWithTitle:p action:NULL keyEquivalent:@""];
596-
}
597-
if([m numberOfItems]>2) {
598-
[m removeItemAtIndex:[m numberOfItems]-1];
599-
[m removeItemAtIndex:0];
600-
}
601-
[b setMenu:m];
602-
[m release];
603-
[b setPreferredEdge:NSMinXEdge];
604-
[b setArrowPosition:([m numberOfItems]>1) ? NSPopUpArrowAtCenter : NSPopUpNoArrow];
605-
[b setFont:[NSFont systemFontOfSize:11]];
606-
[b setBordered:NO];
607-
[aTableColumn setDataCell:b];
589+
590+
if([[filtered objectAtIndex:rowIndex] objectForKey:@"path"]) {
591+
NSPopUpButtonCell *b = [[NSPopUpButtonCell new] autorelease];
592+
[b setPullsDown:NO];
593+
[b setAltersStateOfSelectedItem:NO];
594+
[b setControlSize:NSMiniControlSize];
595+
NSMenu *m = [[NSMenu alloc] init];
596+
for(id p in [[[[[filtered objectAtIndex:rowIndex] objectForKey:@"path"] componentsSeparatedByString:SPUniqueSchemaDelimiter] reverseObjectEnumerator] allObjects]) {
597+
[m addItemWithTitle:p action:NULL keyEquivalent:@""];
608598
}
609-
else {
610-
[aTableColumn setDataCell:[[NSTextFieldCell new] autorelease]];
599+
if([m numberOfItems]>2) {
600+
[m removeItemAtIndex:[m numberOfItems]-1];
601+
[m removeItemAtIndex:0];
611602
}
612-
return @"";
603+
[b setMenu:m];
604+
[m release];
605+
[b setPreferredEdge:NSMinXEdge];
606+
[b setArrowPosition:([m numberOfItems]>1) ? NSPopUpArrowAtCenter : NSPopUpNoArrow];
607+
[b setFont:[NSFont systemFontOfSize:11]];
608+
[b setBordered:NO];
609+
[aTableColumn setDataCell:b];
610+
}
611+
else {
612+
[aTableColumn setDataCell:[[NSTextFieldCell new] autorelease]];
613613
}
614+
615+
return @"";
614616
}
615-
return [filtered objectAtIndex:rowIndex];
617+
618+
[NSException raise:NSInternalInconsistencyException format:@"Requesting data for invalid table column with identifier=%@", identifier];
616619
}
617620

618621
// ======================================================================================
@@ -983,7 +986,7 @@ - (void)insertAutocompletePlaceholder
983986
// Restore the text selection location, and clearly mark the autosuggested text
984987
[theView setSelectedRange:NSMakeRange(currentSelectionPosition, 0)];
985988
NSMutableAttributedStringAddAttributeValueRange([theView textStorage], NSForegroundColorAttributeName, [[theView otherTextColor] colorWithAlphaComponent:0.3f], NSMakeRange(currentSelectionPosition, [toInsert length]));
986-
NSMutableAttributedStringAddAttributeValueRange([theView textStorage], kSPAutoCompletePlaceholderName, kSPAutoCompletePlaceholderVal, NSMakeRange(currentSelectionPosition, [toInsert length]));
989+
NSMutableAttributedStringAddAttributeValueRange([theView textStorage], SPAutoCompletePlaceholderName, SPAutoCompletePlaceholderVal, NSMakeRange(currentSelectionPosition, [toInsert length]));
987990

988991
[self checkSpaceForAllowedCharacter];
989992
}
@@ -1015,7 +1018,7 @@ - (void)removeAutocompletionPlaceholderUsingFastMethod:(BOOL)useFastMethod
10151018
if (scanPosition == currentLength) break;
10161019

10171020
// Perform a search for the attribute, capturing the range of the [non]match
1018-
if ([[theView textStorage] attribute:kSPAutoCompletePlaceholderName atIndex:scanPosition longestEffectiveRange:&attributeResultRange inRange:NSMakeRange(scanPosition, currentLength-scanPosition)]) {
1021+
if ([[theView textStorage] attribute:SPAutoCompletePlaceholderName atIndex:scanPosition longestEffectiveRange:&attributeResultRange inRange:NSMakeRange(scanPosition, currentLength-scanPosition)]) {
10191022
// A match was found - attributeResultRange contains the range of the attributed string
10201023
[theView shouldChangeTextInRange:attributeResultRange replacementString:@""];
10211024
[[theView textStorage] deleteCharactersInRange:attributeResultRange];
@@ -1027,7 +1030,7 @@ - (void)removeAutocompletionPlaceholderUsingFastMethod:(BOOL)useFastMethod
10271030

10281031
// A match was found - retrieve the location
10291032
NSUInteger matchStart = NSMaxRange(attributeResultRange);
1030-
if ([[theView textStorage] attribute:kSPAutoCompletePlaceholderName atIndex:matchStart longestEffectiveRange:&attributeResultRange inRange:NSMakeRange(matchStart, currentLength - matchStart)]) {
1033+
if ([[theView textStorage] attribute:SPAutoCompletePlaceholderName atIndex:matchStart longestEffectiveRange:&attributeResultRange inRange:NSMakeRange(matchStart, currentLength - matchStart)]) {
10311034
[theView shouldChangeTextInRange:attributeResultRange replacementString:@""];
10321035
[[theView textStorage] deleteCharactersInRange:attributeResultRange];
10331036
}

0 commit comments

Comments
 (0)