private void mouseDown(object sender, MouseEventArgs e) { this.MouseMove += this.mouseMove; dragPos = e.Location; if (pointInPolygon(e.Location, sliderButton.ClickLocation)) { sliderButton.onClicked(e); } }
private void mouseUp(object sender, MouseEventArgs e) { this.MouseMove -= this.mouseMove; if (!dragging) { for (int i = buttons.Count - 1; i >= 0; i--) { if (pointInPolygon(e.Location, buttons[i].ClickLocation)) { buttons[i].onClicked(e); break; } } if (settingsDropped) { if (pointInPolygon(e.Location, advSettingButton.ClickLocation)) { advSettingButton.onClicked(e); } else if (pointInPolygon(e.Location, exportButton.ClickLocation)) { exportButton.onClicked(e); } } if (redditDropped) { if (pointInPolygon(e.Location, prevGenreButton.ClickLocation)) { prevGenreButton.onClicked(e); } else if (pointInPolygon(e.Location, nextGenreButton.ClickLocation)) { nextGenreButton.onClicked(e); } else { for (int i = 0; i < redditSongs[curGenre].Count; i++) { if (e.Location.X >= 3 * size / 4 && e.Location.X < 3 * size / 4 + 3 * size && e.Location.Y >= 15 * size / 16 + (i + 1) * smallFont.Size * 2 && e.Location.Y < 15 * size / 16 + (i + 2) * smallFont.Size * 2) { bool[] checks = new bool[settings.Count]; for (int j = 0; j < settings.Count; j++) { checks[j] = settings[j].isChecked(); settings[j].setChecked(false); } genre.setValue(redditSongs[curGenre][i].genre); tempo.setValue(redditSongs[curGenre][i].tempo + ""); seed.setValue(redditSongs[curGenre][i].seed + ""); loadSong(true); for (int j = 0; j < settings.Count; j++) { settings[j].setChecked(checks[j]); } break; } } } } } dragging = false; }