Author: ericwa
Date: Mon Mar 24 01:18:30 2014
New Revision: 10621
URL: http://svn.gna.org/viewcvs/etoile?rev=10621&view=rev
Log:
ProjectDemo: outliner: ugly hack to auto-expand items when sharing
Modified:
trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/EWDocumentWindowController.m
trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/OutlineController.m
Modified:
trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/EWDocumentWindowController.m
URL:
http://svn.gna.org/viewcvs/etoile/trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/EWDocumentWindowController.m?rev=10621&r1=10620&r2=10621&view=diff
==============================================================================
---
trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/EWDocumentWindowController.m
(original)
+++
trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/EWDocumentWindowController.m
Mon Mar 24 01:18:30 2014
@@ -28,6 +28,11 @@
name: COPersistentRootDidChangeNotification
object: _persistentRoot];
+ [[NSNotificationCenter defaultCenter] addObserver: self
+
selector: @selector(objectGraphContextDidChange:)
+
name: COObjectGraphContextObjectsDidChangeNotification
+
object: self.objectGraphContext];
+
return self;
}
@@ -50,6 +55,11 @@
name: COPersistentRootDidChangeNotification
object: _persistentRoot];
+ [[NSNotificationCenter defaultCenter] addObserver: self
+
selector: @selector(objectGraphContextDidChange:)
+
name: COObjectGraphContextObjectsDidChangeNotification
+
object: self.objectGraphContext];
+
return self;
}
@@ -97,7 +107,14 @@
}
if (pinnedBranch != _pinnedBranch)
{
+ [[NSNotificationCenter defaultCenter] removeObserver: self
name: COObjectGraphContextObjectsDidChangeNotification object: _pinnedBranch];
+
_pinnedBranch = pinnedBranch;
+
+ [[NSNotificationCenter defaultCenter] addObserver: self
+
selector: @selector(objectGraphContextDidChange:)
+
name: COObjectGraphContextObjectsDidChangeNotification
+
object: self.objectGraphContext];
[self resetBranchesMenu];
[self resetBranchesCheckbox];
@@ -134,6 +151,13 @@
[self resetTitle];
[self objectGraphDidChange];
+}
+
+- (void) objectGraphContextDidChange: (NSNotification *)notif
+{
+ NSLog(@"object graph context did change: %@", [notif userInfo]);
+
+
}
- (void)dealloc
Modified:
trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/OutlineController.m
URL:
http://svn.gna.org/viewcvs/etoile/trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/OutlineController.m?rev=10621&r1=10620&r2=10621&view=diff
==============================================================================
--- trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/OutlineController.m
(original)
+++ trunk/Etoile/Frameworks/CoreObject/Samples/ProjectDemo/OutlineController.m
Mon Mar 24 01:18:30 2014
@@ -26,8 +26,25 @@
- (void) objectGraphDidChange
{
+ // FIXME: Merge this and the next method!
+
//NSLog(@"Reloading outline for %@", doc);
[outlineView reloadData];
+}
+
+- (void) objectGraphContextDidChange: (NSNotification *)notif
+{
+ // FIXME: Merge this and the previous method!
+
+ NSLog(@"object graph context did change: %@", [notif userInfo]);
+
+ [outlineView reloadData];
+
+ for (ETUUID *updated in notif.userInfo[COUpdatedObjectsKey])
+ {
+ COObject *updatedObject = [self.objectGraphContext
loadedObjectForUUID: updated];
+ [outlineView expandItem: updatedObject];
+ }
}
- (Document *)projectDocument
_______________________________________________
Etoile-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-cvs