public DeckMatcherForm(String cname, String payload, String start, String end, Deck[] decks) { InitializeComponent(); pptInstalled = Utility.CheckPptIsInstalled(); //Don't match PPT if it is not installed this.labelStatus.Text = "Status: Idle"; restoreRegSettings(); this.textBoxSearchDir.Text = searchDir; this.cname = cname; this.start = start; this.end = end; deckMatcher = new DeckMatcher(cname, payload, start, end, pptInstalled); deckMatcher.OnAnalyzeCompleted += new DeckMatcher.analyzeCompletedHandler(deckMatcher_OnAnalyzeCompleted); deckMatcher.OnStatusReport += new DeckMatcher.statusReportHandler(OnStatusReport); deckMatcher.OnAutoMatchCompleted += new DeckMatcher.autoMatchCompletedHandler(deckMatcher_OnAutoMatchCompleted); deckMatcher.OnDeckFound += new DeckMatcher.deckFoundHandler(OnDeckFound); if (decks != null) { for (int i = 0; i < decks.Length; i++) { deckMatcher.Add(decks[i]); } foreach (Deck d in deckMatcher.Decks.Values) { this.listBoxDecks.Items.Add(d); } if (this.listBoxDecks.Items.Count > 0) { this.buttonAutoMatch.Enabled = true; } } }
protected override void Dispose(bool disposing) { if (disposing) { if (deckMatcher != null) { deckMatcher.StopThreads(); deckMatcher = null; } if (components != null) { components.Dispose(); } } base.Dispose(disposing); }