private void btnDown_Click(object sender, EventArgs e)
        {
            if (listActions.SelectedIndex > listActions.Items.Count - 2)
            {
                return;
            }
            ZoneAction a = cAction;

            actions[listActions.SelectedIndex]     = actions[listActions.SelectedIndex + 1];
            actions[listActions.SelectedIndex + 1] = a;
            // Update display
            listActions.Items[listActions.SelectedIndex]     = cAction.getStr();
            listActions.Items[listActions.SelectedIndex + 1] = a.getStr();
            listActions.SelectedIndex += 1;
        }
        // Move action up/down list
        private void btnUp_Click(object sender, EventArgs e)
        {
            if (listActions.SelectedIndex < 1)
            {
                return;
            }
            ZoneAction a = cAction;

            actions[listActions.SelectedIndex]     = actions[listActions.SelectedIndex - 1];
            actions[listActions.SelectedIndex - 1] = a;
            // Update display
            listActions.Items[listActions.SelectedIndex]     = cAction.getStr();
            listActions.Items[listActions.SelectedIndex - 1] = a.getStr();
            listActions.SelectedIndex -= 1;
        }
        // Place a zone
        private void btnAddZone_Click(object sender, EventArgs e)
        {
            if (listZones.SelectedIndex == -1)
            {
                MessageBox.Show("Select a zone to place!"); return;
            }

            ZoneAction a = new ZoneAction();

            a.zone    = cZone;
            a.placeAt = (int)numPlaceStart.Value;
            a.replace = chkReplace.Checked;

            actions.Add(a);
            listActions.Items.Add(a.getStr());
        }