Hi zusammen,
ich habe mir für mein Einstellungs-Fenster ein NSWindowController gesubclasst (mit Hilfe von diesem Control: mere-mortal-software.com/blog/details.php?d=2007-03-11). Alle Einstellungen werden über Bindings in die Shares User Defaults geschrieben.
Soweit so gut, nun möchte ich jedoch nach dem Schließen des Einstellungen-Fensters, dass einige Variablen sich die Daten neu holen usw. Problem ist jedoch, dass ich nicht weiß, wann das Fenster geschlossen wird. Folgendes funktioniert natürlich nicht, zeigt aber was ich eigentlich vor habe:
Alles anzeigen
Ich hab in der Cocoa Referenz geguckt, aber keine Nachricht gefunden, die irgendwie verschickt wird, wenn das Fenster geschlossen wird (weder der Sender, noch die subgeclasste Klasse selber).
Hab ich was übersehen oder gibt es da einen kleinen Trick?
Chris
ich habe mir für mein Einstellungs-Fenster ein NSWindowController gesubclasst (mit Hilfe von diesem Control: mere-mortal-software.com/blog/details.php?d=2007-03-11). Alle Einstellungen werden über Bindings in die Shares User Defaults geschrieben.
Soweit so gut, nun möchte ich jedoch nach dem Schließen des Einstellungen-Fensters, dass einige Variablen sich die Daten neu holen usw. Problem ist jedoch, dass ich nicht weiß, wann das Fenster geschlossen wird. Folgendes funktioniert natürlich nicht, zeigt aber was ich eigentlich vor habe:
Quellcode
- - (IBAction)openPreferencesWindow:(id)sender
- {
- [[PrefWindowController sharedPrefsWindowController] showWindow:nil];
- // Einstellungen setzen
- serverHostname = [[NSUserDefaults standardUserDefaults] valueForKey:@"ServerHostname"];
- serverPort = [[NSUserDefaults standardUserDefaults] integerForKey:@"ServerPort"];
- // Ab dafür
- [trackTimer fire];
- // Bitte auch die Fenster-Transparenz setzen
- [mainWindow setAlphaValue:[[NSUserDefaults standardUserDefaults] floatForKey:@"AlphaValue"]];
- }
Ich hab in der Cocoa Referenz geguckt, aber keine Nachricht gefunden, die irgendwie verschickt wird, wenn das Fenster geschlossen wird (weder der Sender, noch die subgeclasste Klasse selber).
Hab ich was übersehen oder gibt es da einen kleinen Trick?
Chris

Wobei es auch mal interessant ist ganz "back to the roots" zurück auf die WinAPI zu gehen. Für größere Projekte ist das aber definitiv nichts.