- (void)awakeFromNib
{
[self changeCategory:nil];
+
+ [self.shipController fetchWithRequest:nil merge:YES error:NULL];
+
+ NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
+ id data = [ud objectForKey:@"powerupsupportsortdecriptor"];
+ id sortDescriptors = [NSKeyedUnarchiver unarchiveObjectWithData:data];
+ if(sortDescriptors) {
+ [self.shipController setSortDescriptors:sortDescriptors];
+ }
+
+ [self.shipController addObserver:self
+ forKeyPath:NSSortDescriptorsBinding
+ options:0
+ context:NULL];
}
+- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
+{
+ if([keyPath isEqualToString:NSSortDescriptorsBinding]) {
+ NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
+ id sortDescriptors = [self.shipController sortDescriptors];
+ id data = [NSKeyedArchiver archivedDataWithRootObject:sortDescriptors];
+ [ud setObject:data forKey:@"powerupsupportsortdecriptor"];
+
+ return;
+ }
+
+ [super observeValueForKeyPath:keyPath ofObject:object change:change context:context];
+}
+
- (NSManagedObjectContext *)managedObjectContext
{
- (void)awakeFromNib
{
self.currentTableView = self.expTableView;
+
+
+ [self.shipController fetchWithRequest:nil merge:YES error:NULL];
+
+ NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
+ id data = [ud objectForKey:@"shipviewsortdescriptor"];
+ id sortDescriptors = [NSKeyedUnarchiver unarchiveObjectWithData:data];
+ if(sortDescriptors) {
+ [self.shipController setSortDescriptors:sortDescriptors];
+ }
+
+ [self.shipController addObserver:self
+ forKeyPath:NSSortDescriptorsBinding
+ options:0
+ context:NULL];
+}
+- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
+{
+ if([keyPath isEqualToString:NSSortDescriptorsBinding]) {
+ NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
+ id sortDescriptors = [self.shipController sortDescriptors];
+ id data = [NSKeyedArchiver archivedDataWithRootObject:sortDescriptors];
+ [ud setObject:data forKey:@"shipviewsortdescriptor"];
+
+ return;
+ }
+
+ [super observeValueForKeyPath:keyPath ofObject:object change:change context:context];
}
- (NSManagedObjectContext *)managedObjectContext
{
@interface HMSlotItemWindowController : NSWindowController
@property (readonly) NSManagedObjectContext *managedObjectContext;
+
+@property (nonatomic, strong) IBOutlet NSArrayController *slotItemController;
@end
return self;
}
+- (void)awakeFromNib
+{
+ [self.slotItemController fetchWithRequest:nil merge:YES error:NULL];
+
+ NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
+ id data = [ud objectForKey:@"slotItemSortKey"];
+ id sortDescriptors = [NSKeyedUnarchiver unarchiveObjectWithData:data];
+ if(sortDescriptors) {
+ [self.slotItemController setSortDescriptors:sortDescriptors];
+ }
+
+ [self.slotItemController addObserver:self
+ forKeyPath:NSSortDescriptorsBinding
+ options:0
+ context:NULL];
+}
+- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
+{
+ if([keyPath isEqualToString:NSSortDescriptorsBinding]) {
+ NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
+ id sortDescriptors = [self.slotItemController sortDescriptors];
+ id data = [NSKeyedArchiver archivedDataWithRootObject:sortDescriptors];
+ [ud setObject:data forKey:@"slotItemSortKey"];
+
+ return;
+ }
+
+ [super observeValueForKeyPath:keyPath ofObject:object change:change context:context];
+}
+
- (NSManagedObjectContext *)managedObjectContext
{
return [HMServerDataStore defaultManager].managedObjectContext;
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="5053" systemVersion="13C64" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="5056" systemVersion="13C1021" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
- <deployment version="1070" defaultVersion="1080" identifier="macosx"/>
- <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="5053"/>
+ <deployment version="1070" defaultVersion="1090" identifier="macosx"/>
+ <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="5056"/>
</dependencies>
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="HMPowerUpSupportViewController">
<arrayController mode="entity" entityName="Ship" editable="NO" automaticallyPreparesContent="YES" automaticallyRearrangesObjects="YES" id="b8v-Gn-JZD" userLabel="Ship">
<connections>
<binding destination="-2" name="managedObjectContext" keyPath="managedObjectContext" id="mMh-Jt-CpI"/>
- <binding destination="O24-QT-DRL" name="sortDescriptors" keyPath="values.powerupsupportsortdecriptor" id="KVq-5k-1KQ">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSKeyedUnarchiveFromData</string>
- </dictionary>
- </binding>
</connections>
</arrayController>
<userDefaultsController representsSharedInstance="YES" id="O24-QT-DRL"/>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="5053" systemVersion="13C64" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="5056" systemVersion="13C1021" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
<dependencies>
- <deployment version="1070" defaultVersion="1080" identifier="macosx"/>
- <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="5053"/>
+ <deployment version="1070" defaultVersion="1090" identifier="macosx"/>
+ <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="5056"/>
</dependencies>
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="HMShipViewController">
<arrayController mode="entity" entityName="Ship" editable="NO" automaticallyPreparesContent="YES" automaticallyRearrangesObjects="YES" id="b8v-Gn-JZD" userLabel="Ship">
<connections>
<binding destination="-2" name="managedObjectContext" keyPath="managedObjectContext" id="mMh-Jt-CpI"/>
- <binding destination="Ai5-X2-MeM" name="sortDescriptors" keyPath="values.shipviewsortdescriptor" id="YcO-8D-TfY">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSKeyedUnarchiveFromData</string>
- </dictionary>
- </binding>
</connections>
</arrayController>
<userDefaultsController representsSharedInstance="YES" id="Ai5-X2-MeM"/>
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="HMSlotItemWindowController">
<connections>
+ <outlet property="slotItemController" destination="ceg-Ko-EOy" id="Dhw-8P-VMR"/>
<outlet property="window" destination="F0z-JX-Cv5" id="gIp-Ho-8D9"/>
</connections>
</customObject>
<rect key="frame" x="1" y="427" width="687" height="16"/>
<autoresizingMask key="autoresizingMask"/>
</scroller>
- <scroller key="verticalScroller" hidden="YES" verticalHuggingPriority="750" doubleValue="37" horizontal="NO" id="W9i-6l-gQT">
+ <scroller key="verticalScroller" hidden="YES" verticalHuggingPriority="750" doubleValue="1" horizontal="NO" id="W9i-6l-gQT">
<rect key="frame" x="-15" y="17" width="16" height="0.0"/>
<autoresizingMask key="autoresizingMask"/>
</scroller>
<arrayController mode="entity" entityName="SlotItem" editable="NO" automaticallyPreparesContent="YES" automaticallyRearrangesObjects="YES" id="ceg-Ko-EOy">
<connections>
<binding destination="-2" name="managedObjectContext" keyPath="managedObjectContext" id="gmN-zL-8kd"/>
- <binding destination="zv1-TV-Khy" name="sortDescriptors" keyPath="values.slotItemSortKey" id="57p-Co-Ax4">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSKeyedUnarchiveFromData</string>
- </dictionary>
- </binding>
</connections>
</arrayController>
<userDefaultsController representsSharedInstance="YES" id="zv1-TV-Khy"/>