using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using EchoChamber.Library; namespace EchoChamber.Win { public partial class Generator : Form { public Generator() { InitializeComponent(); } private void Generator_Load(object sender, EventArgs e) { LoadFiles(); } private void loadButton_Click(object sender, EventArgs e) { LoadFiles(); } private void LoadFiles() { OpenFileDialog ofd = new OpenFileDialog(); ofd.Multiselect = true; ofd.Title = "Select Index Files"; if (ofd.ShowDialog() != DialogResult.OK) { return; } foreach (string filename in ofd.FileNames) { Indexer indexer = Indexer.Load(filename); sourceList.Items.Add(indexer); } } private void generateButton_Click(object sender, EventArgs e) { List sourceIndexers = new List(); foreach (Indexer selectedIndexer in sourceList.SelectedItems) { sourceIndexers.Add(selectedIndexer); } if (sourceIndexers.Count == 0) { return; } Indexer generationIndexer; if (sourceIndexers.Count == 1) { generationIndexer = sourceIndexers[0]; } else { generationIndexer = Indexer.Merge(sourceIndexers.ToArray()); sourceList.Items.Add(generationIndexer); sourceList.SelectedItems.Clear(); sourceList.SelectedItem = generationIndexer; } outputBox.Text = generationIndexer.Generate(int.Parse(maxTermsBox.Text), int.Parse(prefixLengthBox.Text), initialText.Text); } } }