Пример #1
0
        async Task loadAndParse(IExtractor extractor)
        {
            // progress tracker
            var updater = new Progress <ExtractorProgress>();

            updater.ProgressChanged += (sender, evt) => {
                InvokeOnMainThread(() => {
                    label.StringValue = evt.Message;
                });
            };

            // task
            Dictionary <String, Session> sessions = extractor.GetSessions(updater);
            var data = extractor.SerialiseToJson(updater, sessions);

            InvokeOnMainThread(() => {
                Results.RichText = false;
                var ts           = new NSTextStorage(data);
                Results.LayoutManager.ReplaceTextStorage(ts);
                reflectState(State.LOADED);
                label.StringValue = "Done.";
            });
        }