// Handler events coming in from the inputHandler // void ImageViewer::handleEvent(uint32 event) { DEBUG_ENTER_FUNC(); switch (event) { case EVENT_HIDE: setVisible(false); break; case EVENT_SHOW: setVisible(true); break; case EVENT_ZOOM_IN: modifyZoom(true); break; case EVENT_ZOOM_OUT: modifyZoom(false); break; case EVENT_MOVE_LEFT: case EVENT_MOVE_UP: case EVENT_MOVE_RIGHT: case EVENT_MOVE_DOWN: case EVENT_MOVE_STOP: _movement = (Event)event; break; case EVENT_NEXT_IMAGE: loadNextImage(); break; case EVENT_LAST_IMAGE: loadLastImage(); break; default: PSP_ERROR("Unknown event %d\n", event); break; } }
void SlideShow::logic(float t, float dt) { dt = std::min(1.0f/60.0f, dt); if(image == 0 || alpha <= 0.0 && elapsed >= duration ) { //dont loop. if this is the last image, we will stop if(image != 0 && image_index==0) { appFinished=true; return; } bool success = loadNextImage(); if(!success) { appFinished = true; return; } elapsed = 0.0; } if(elapsed >= duration) { alpha = std::max(0.0f, alpha - dt); } else { alpha = std::min(1.0f, alpha + dt); elapsed += dt; } }
void SlideShow::logic(float t, float dt) { dt = std::min(1.0f/60.0f, dt); if(image == 0 || alpha <= 0.0 && elapsed >= duration ) { bool success = loadNextImage(); if(!success) { appFinished = true; return; } elapsed = 0.0; } if(elapsed >= duration) { alpha = std::max(0.0f, alpha - dt); } else { alpha = std::min(1.0f, alpha + dt); elapsed += dt; } }