mirror of
https://github.com/arsenetar/dupeguru.git
synced 2025-03-09 21:24:36 +00:00
Fixed a bug where the details panel would sometimes not be updated. Also, pushed the details toggling mechanism in dgbase.
--HG-- extra : convert_revision : svn%3Ac306627e-7827-47d3-bdf0-9a457c9553a1/trunk%40239
This commit is contained in:
parent
eb3645d493
commit
13dc9ff76d
@ -10,6 +10,7 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
#import "RecentDirectories.h"
|
||||
#import "PyDupeGuru.h"
|
||||
#import "ResultWindow.h"
|
||||
#import "DetailsPanel.h"
|
||||
|
||||
@interface AppDelegateBase : NSObject
|
||||
{
|
||||
@ -19,9 +20,11 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
IBOutlet ResultWindowBase *result;
|
||||
|
||||
NSString *_appName;
|
||||
DetailsPanelBase *_detailsPanel;
|
||||
}
|
||||
- (IBAction)unlockApp:(id)sender;
|
||||
|
||||
- (PyDupeGuruBase *)py;
|
||||
- (RecentDirectories *)recentDirectories;
|
||||
- (DetailsPanelBase *)detailsPanel; // Virtual
|
||||
@end
|
||||
|
@ -35,6 +35,7 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
|
||||
- (PyDupeGuruBase *)py { return py; }
|
||||
- (RecentDirectories *)recentDirectories { return recentDirectories; }
|
||||
- (DetailsPanelBase *)detailsPanel { return nil; } // Virtual
|
||||
|
||||
/* Delegate */
|
||||
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
|
||||
|
@ -18,6 +18,7 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
- (id)initWithPy:(PyApp *)aPy;
|
||||
|
||||
- (void)refresh;
|
||||
- (void)toggleVisibility;
|
||||
|
||||
/* Notifications */
|
||||
- (void)duplicateSelectionChanged:(NSNotification *)aNotification;
|
||||
|
@ -24,6 +24,17 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
[detailsTable reloadData];
|
||||
}
|
||||
|
||||
- (void)toggleVisibility
|
||||
{
|
||||
if ([[self window] isVisible])
|
||||
[[self window] close];
|
||||
else
|
||||
{
|
||||
[self refresh]; // selection might have changed since last time
|
||||
[[self window] orderFront:nil];
|
||||
}
|
||||
}
|
||||
|
||||
/* Notifications */
|
||||
- (void)duplicateSelectionChanged:(NSNotification *)aNotification
|
||||
{
|
||||
|
@ -8,7 +8,6 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "Outline.h"
|
||||
#import "DirectoryPanel.h"
|
||||
#import "PyDupeGuru.h"
|
||||
|
||||
@interface MatchesView : OutlineView
|
||||
@ -56,6 +55,7 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
- (IBAction)showPreferencesPanel:(id)sender;
|
||||
- (IBAction)switchSelected:(id)sender;
|
||||
- (IBAction)toggleColumn:(id)sender;
|
||||
- (IBAction)toggleDetailsPanel:(id)sender;
|
||||
- (IBAction)togglePowerMarker:(id)sender;
|
||||
|
||||
/* Notifications */
|
||||
|
@ -346,6 +346,11 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
}
|
||||
}
|
||||
|
||||
- (IBAction)toggleDetailsPanel:(id)sender
|
||||
{
|
||||
[[(AppDelegateBase *)app detailsPanel] toggleVisibility];
|
||||
}
|
||||
|
||||
- (IBAction)togglePowerMarker:(id)sender
|
||||
{
|
||||
if ([pmSwitch selectedSegment] == 1)
|
||||
|
@ -11,6 +11,7 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
#import "cocoalib/RegistrationInterface.h"
|
||||
#import "cocoalib/Utils.h"
|
||||
#import "cocoalib/ValueTransformers.h"
|
||||
#import "DetailsPanel.h"
|
||||
#import "Consts.h"
|
||||
|
||||
@implementation AppDelegate
|
||||
@ -62,6 +63,14 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
_directoryPanel = [[DirectoryPanel alloc] initWithParentApp:self];
|
||||
return _directoryPanel;
|
||||
}
|
||||
|
||||
- (DetailsPanelBase *)detailsPanel
|
||||
{
|
||||
if (!_detailsPanel)
|
||||
_detailsPanel = [[DetailsPanel alloc] initWithPy:py];
|
||||
return _detailsPanel;
|
||||
}
|
||||
|
||||
- (PyDupeGuru *)py { return (PyDupeGuru *)py; }
|
||||
|
||||
//Delegate
|
||||
|
@ -9,7 +9,6 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import "cocoalib/Outline.h"
|
||||
#import "dgbase/ResultWindow.h"
|
||||
#import "DetailsPanel.h"
|
||||
#import "DirectoryPanel.h"
|
||||
|
||||
@interface ResultWindow : ResultWindowBase
|
||||
@ -17,7 +16,6 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
IBOutlet NSSearchField *filterField;
|
||||
|
||||
NSString *_lastAction;
|
||||
DetailsPanel *_detailsPanel;
|
||||
NSMutableIndexSet *_deltaColumns;
|
||||
}
|
||||
- (IBAction)clearIgnoreList:(id)sender;
|
||||
@ -37,5 +35,4 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
- (IBAction)revealSelected:(id)sender;
|
||||
- (IBAction)startDuplicateScan:(id)sender;
|
||||
- (IBAction)toggleDelta:(id)sender;
|
||||
- (IBAction)toggleDetailsPanel:(id)sender;
|
||||
@end
|
||||
|
@ -18,7 +18,6 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
- (void)awakeFromNib
|
||||
{
|
||||
[super awakeFromNib];
|
||||
_detailsPanel = nil;
|
||||
_displayDelta = NO;
|
||||
_powerMode = NO;
|
||||
_deltaColumns = [[NSMutableIndexSet indexSetWithIndexesInRange:NSMakeRange(2,4)] retain];
|
||||
@ -200,16 +199,6 @@ http://www.hardcoded.net/licenses/hs_license
|
||||
[self changeDelta:sender];
|
||||
}
|
||||
|
||||
- (IBAction)toggleDetailsPanel:(id)sender
|
||||
{
|
||||
if (!_detailsPanel)
|
||||
_detailsPanel = [[DetailsPanel alloc] initWithPy:py];
|
||||
if ([[_detailsPanel window] isVisible])
|
||||
[[_detailsPanel window] close];
|
||||
else
|
||||
[[_detailsPanel window] orderFront:nil];
|
||||
}
|
||||
|
||||
/* Public */
|
||||
- (void)initResultColumns
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user