private void eventLogs_ItemCheck(object sender, ItemCheckEventArgs e) {
if (ignore_change_ > 0)
return;
if (e.Index < 0)
return;
bool is_checked = e.NewValue == CheckState.Checked;
string name = eventLogs.Items[e.Index].ToString();
int pos = name.IndexOf("(");
if (pos >= 0)
name = name.Substring(0, pos).Trim();
if (is_checked) {
selectedEventLogs.Text += "\r\n" + name;
} else {
// remove it
var new_logs = selectedEventLogs.Text.Split(new string[] {"\r\n"}, StringSplitOptions.RemoveEmptyEntries).Where(x => x != name);
selectedEventLogs.Text = util.concatenate(new_logs, "\r\n");
}
}