void InitializeFSEventStream()
        {
            if (eventStream != null)
            {
                eventStream.Events -= OnFSEventStreamEvents;
                eventStream.Dispose();
                eventStream = null;
            }

            if (Directory.Exists(currentWatchPath))
            {
                Console.WriteLine("Creating new FSEventStream: latency={0}, path={1}", eventLatency, currentWatchPath);

                eventStreamIsRunning = false;

                eventStream = new FSEventStream(new [] { currentWatchPath },
                                                eventLatency, FSEventStreamCreateFlags.FileEvents);
                eventStream.Events += OnFSEventStreamEvents;
                eventStream.ScheduleWithRunLoop(NSRunLoop.Current);

                EventStreamView.DataSource = eventsDataSource = new FSEventDataSource();

                ToggleFSEventStream();
            }
        }
		void InitializeFSEventStream ()
		{
			if (eventStream != null) {
				eventStream.Events -= OnFSEventStreamEvents;
				eventStream.Dispose ();
				eventStream = null;
			}

			if (Directory.Exists (currentWatchPath)) {
				Console.WriteLine ("Creating new FSEventStream: latency={0}, path={1}", eventLatency, currentWatchPath);

				eventStreamIsRunning = false;

				eventStream = new FSEventStream (new [] { currentWatchPath },
					eventLatency, FSEventStreamCreateFlags.FileEvents);
				eventStream.Events += OnFSEventStreamEvents;
				eventStream.ScheduleWithRunLoop (NSRunLoop.Current);

				EventStreamView.DataSource = eventsDataSource = new FSEventDataSource ();

				ToggleFSEventStream ();
			}
		}