1
0
mirror of https://github.com/arsenetar/dupeguru.git synced 2025-03-10 05:34:36 +00:00

Create the extra fairware reminder on-the-fly rather than on launch time.

--HG--
branch : objp
This commit is contained in:
Virgil Dupras 2012-01-15 17:31:15 -05:00
parent baa2177439
commit 1b571f6fd2
6 changed files with 11 additions and 10 deletions

View File

@ -211,7 +211,7 @@ http://www.hardcoded.net/licenses/bsd_license
/* model --> view */ /* model --> view */
- (void)showExtraFairwareReminder - (void)showExtraFairwareReminder
{ {
ExtraFairwareReminder *dialog = [[ExtraFairwareReminder alloc] initWithPyRef:[model extraFairwareReminder]]; ExtraFairwareReminder *dialog = [[ExtraFairwareReminder alloc] initWithApp:model];
[dialog start]; [dialog start];
[NSApp runModalForWindow:[dialog window]]; [NSApp runModalForWindow:[dialog window]];
[dialog close]; [dialog close];

View File

@ -8,6 +8,7 @@ http://www.hardcoded.net/licenses/bsd_license
#import <Cocoa/Cocoa.h> #import <Cocoa/Cocoa.h>
#import "PyExtraFairwareReminder.h" #import "PyExtraFairwareReminder.h"
#import "PyDupeGuru.h"
@interface ExtraFairwareReminder : NSWindowController @interface ExtraFairwareReminder : NSWindowController
{ {
@ -16,7 +17,7 @@ http://www.hardcoded.net/licenses/bsd_license
PyExtraFairwareReminder *model; PyExtraFairwareReminder *model;
NSTimer *timer; NSTimer *timer;
} }
- (id)initWithPyRef:(PyObject *)aPyRef; - (id)initWithApp:(PyDupeGuru *)aApp;
- (PyExtraFairwareReminder *)model; - (PyExtraFairwareReminder *)model;
- (void)start; - (void)start;

View File

@ -10,12 +10,12 @@ http://www.hardcoded.net/licenses/bsd_license
#import "Utils.h" #import "Utils.h"
@implementation ExtraFairwareReminder @implementation ExtraFairwareReminder
- (id)initWithPyRef:(PyObject *)aPyRef - (id)initWithApp:(PyDupeGuru *)aApp
{ {
self = [super initWithWindowNibName:@"ExtraFairwareReminder"]; self = [super initWithWindowNibName:@"ExtraFairwareReminder"];
[self window]; [self window];
[continueButton setEnabled:NO]; [continueButton setEnabled:NO];
model = [[PyExtraFairwareReminder alloc] initWithModel:aPyRef]; model = [[PyExtraFairwareReminder alloc] initWithApp:[aApp pyRef]];
[model bindCallback:createCallback(@"ExtraFairwareReminderView", self)]; [model bindCallback:createCallback(@"ExtraFairwareReminderView", self)];
return self; return self;
} }

View File

@ -40,9 +40,6 @@ class PyDupeGuruBase(PyFairware):
def directoryTree(self) -> pyref: def directoryTree(self) -> pyref:
return self.model.directory_tree return self.model.directory_tree
def extraFairwareReminder(self) -> pyref:
return self.model.extra_fairware_reminder
def problemDialog(self) -> pyref: def problemDialog(self) -> pyref:
return self.model.problem_dialog return self.model.problem_dialog

View File

@ -1,5 +1,6 @@
from objp.util import dontwrap from objp.util import pyref, dontwrap
from cocoa.inter import PyGUIObject from cocoa.inter import PyGUIObject
from core.gui.extra_fairware_reminder import ExtraFairwareReminder
class ExtraFairwareReminderView: class ExtraFairwareReminderView:
def startTimer(self): pass def startTimer(self): pass
@ -8,6 +9,10 @@ class ExtraFairwareReminderView:
def enableButton(self): pass def enableButton(self): pass
class PyExtraFairwareReminder(PyGUIObject): class PyExtraFairwareReminder(PyGUIObject):
def __init__(self, app: pyref):
model = ExtraFairwareReminder(app.model)
PyGUIObject.__init__(self, model)
def start(self): def start(self):
self.model.start() self.model.start()

View File

@ -26,7 +26,6 @@ from hscommon.trans import tr
from . import directories, results, scanner, export, fs from . import directories, results, scanner, export, fs
from .gui.details_panel import DetailsPanel from .gui.details_panel import DetailsPanel
from .gui.directory_tree import DirectoryTree from .gui.directory_tree import DirectoryTree
from .gui.extra_fairware_reminder import ExtraFairwareReminder
from .gui.problem_dialog import ProblemDialog from .gui.problem_dialog import ProblemDialog
from .gui.stats_label import StatsLabel from .gui.stats_label import StatsLabel
@ -107,7 +106,6 @@ class DupeGuru(RegistrableApplication, Broadcaster):
self.selected_dupes = [] self.selected_dupes = []
self.details_panel = DetailsPanel(self) self.details_panel = DetailsPanel(self)
self.directory_tree = DirectoryTree(self) self.directory_tree = DirectoryTree(self)
self.extra_fairware_reminder = ExtraFairwareReminder(self)
self.problem_dialog = ProblemDialog(self) self.problem_dialog = ProblemDialog(self)
self.stats_label = StatsLabel(self) self.stats_label = StatsLabel(self)
self.result_table = self._create_result_table() self.result_table = self._create_result_table()