// // FileSystemWatcher.h // Pulse // // Created by Matt Attaway on 1/9/14. // Copyright (c) 2014 Zen of the Monkey. All rights reserved. // #import <Foundation/Foundation.h> @class PLSFileEvent; @protocol FileSystemWatcherDelegate <NSObject> @required - (void)fileEvent:(PLSFileEvent*)event; @end @interface FileSystemWatcher : NSObject { @private FSEventStreamRef stream; NSObject< FileSystemWatcherDelegate >* listener; } - (void)dealloc; - (void)watchPath:(NSString*)path target:(NSObject< FileSystemWatcherDelegate > *)target; - (void)fileEvent:(PLSFileEvent*)event; - (void)startWatching; - (void)pauseWatching; - (void)stopWatching; @end
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#4 | 8706 | Matt Attaway |
Infrastructure work to more intelligently handle FSEvents Prior to this change all file system events were equal; chown-ing a file was considered the same as changing the content. With this change we: 1) bundle all of the file events into one operation instead or doing it one file at a time 2) ignore any file events that are not create/delete/modify/rename The interfaces are all in place, but the Overseers are still not taking advantage of this information, so there’s no user visible change at this time. (hopefully) Infrastructure only change |
||
#3 | 8522 | Matt Attaway |
Clean up the behavior of the connections dialog All of the Overseers are now paused while the connection dialog is up so that the user can fiddle with their settings in peace. |
||
#2 | 8509 | Matt Attaway |
Add support for loading multiple connections The code is rough, but Pulse can now load up and start watching multiple paths, each associated with a separate Perforce server. Also cleaned up some white space and normalized the ‘*’ used to denote pointers. |
||
#1 | 8502 | Matt Attaway |
Initial checkin of Pulse, a lightweight Perforce client for the Mac This is a sketch of what a Perforce client inspired by the UX of cloud synchronization software would look like. I’m not trying to build something production worthy yet; at this point I’m just trying to get something up and running as fast as possible so I can play with the UX. At this point I can monitor a directory and kick off ‘p4 info’ calls anytime a file changes. It is the polar opposite of useful. Do note I’ve never written code in Objective-C before. Here be ugly, malformed dragons. |