Browse Source

timeline behaves more responsively, performance increase

master
Victor Giers 1 year ago
parent
commit
5398c31943
2 changed files with 23 additions and 6 deletions
  1. 22
    5
      Interaction.pde
  2. 1
    1
      data/save.sav

+ 22
- 5
Interaction.pde View File

@@ -9,25 +9,34 @@ void mousePressed() {
}
}
void mouseReleased() {
timeline.clicked = false;
}
int currentYear;
void mouseDragged() {
if (timeline.clicked) {
timeline.clicked = false;
timelinectrl();
}
}
int currentYear;
void timelinectrl() {
if (interactiveTimeline && displayTimeline) {
int toYear = (int)constrain(map(mouseX, timeline.x, timeline.x + timeline.l, 1966, 2012), 1966, 2012);
if (toYear != currentYear) {
timeline.cursorPos = constrain(mouseX, timeline.x, timeline.x +timeline.l);
boolean succ = false;
for (int i = 0; i < notebooks.size(); i ++) {
if (notebooks.get(i).year == toYear) {
nextSlide(i, 0);
succ = true;
break;
}
}
if (!succ) {
for (int i = 0; i < notebooks.size(); i ++) {
if (notebooks.get(i).year == toYear-1 || notebooks.get(i).year == toYear+1) {
nextSlide(i, 0);
succ = true;
break;
}
}
}
}
}
}
@@ -54,7 +63,15 @@ class Timeline { //currently timeline has to be from left to right to work
stroke(255, 127);
strokeWeight(4);
line(x, y, l+x, y);
if (clicked) {
cursorPos = (int)constrain(mouseX, x, x+l);
}
ellipse(cursorPos, height-30, 20, 20);
if (displayText) text(notebooks.get(currentNotebookNo).year, cursorPos, y-20);
if (displayText){
String labelText;
if(!clicked) labelText = str(notebooks.get(currentNotebookNo).year);
else labelText = str((int)constrain(map(mouseX, timeline.x, timeline.x + timeline.l, 1966, 2012), 1966, 2012));
text(labelText, cursorPos, y-20);
}
}
}

+ 1
- 1
data/save.sav View File

@@ -1,2 +1,2 @@
95
0
0

Loading…
Cancel
Save