Browse Source

Pause function added

main
Cailean 4 weeks ago
parent
commit
45a58ef745
  1. 30
      src/ofTeleprompter.cpp
  2. 3
      src/ofTeleprompter.h

30
src/ofTeleprompter.cpp

@ -104,6 +104,7 @@ void ofTeleprompter::setupGUI() {
gui.add(useLLMOnly.setup("Use LLM Only", false)); gui.add(useLLMOnly.setup("Use LLM Only", false));
gui.add(useTextOnly.setup("Use Text Only", false)); gui.add(useTextOnly.setup("Use Text Only", false));
gui.add(useContempTextOnly.setup("Use Contept Text Only", false)); gui.add(useContempTextOnly.setup("Use Contept Text Only", false));
gui.add(usePauseFunction.setup("Toggle Pause (Fn)", true));
gui.add(useGeneratedFeedback.setup("Use LLM Feedback", false)); gui.add(useGeneratedFeedback.setup("Use LLM Feedback", false));
gui.add(nextLine.setup("Next Line")); gui.add(nextLine.setup("Next Line"));
gui.add(reset.setup("Reset Script")); gui.add(reset.setup("Reset Script"));
@ -287,10 +288,33 @@ void ofTeleprompter::toggleOffText(bool & val) {
} }
void ofTeleprompter::toggleContempScript(bool & val) { void ofTeleprompter::toggleContempScript(bool & val) {
if (val) {
activeScript = &scriptContemporary; // Only save/restore line if pauseOnSwitch is enabled
if (usePauseFunction) {
if (activeScript == &script) {
currentLineScript = currentLine;
} else {
currentLineContemporary = currentLine;
}
if (val) {
activeScript = &scriptContemporary;
currentLine = currentLineContemporary;
} else {
activeScript = &script;
currentLine = currentLineScript;
}
} else { } else {
activeScript = &script; // Always start from line 0 if not pausing
if (val) {
activeScript = &scriptContemporary;
} else {
activeScript = &script;
}
// Set both script line trackers to the same value
currentLine = 0;
currentLineScript = currentLine;
currentLineContemporary = currentLine;
} }
ofLog() << "Script Size:" + (*activeScript).size(); ofLog() << "Script Size:" + (*activeScript).size();

3
src/ofTeleprompter.h

@ -41,6 +41,7 @@ class ofTeleprompter: public ofBaseApp{
ofxToggle useTextOnly; ofxToggle useTextOnly;
ofxToggle useContempTextOnly; ofxToggle useContempTextOnly;
ofxToggle useGeneratedFeedback; ofxToggle useGeneratedFeedback;
ofxToggle usePauseFunction;
ofxButton reset; ofxButton reset;
ofxLabel currentLineIndex; ofxLabel currentLineIndex;
@ -63,6 +64,8 @@ class ofTeleprompter: public ofBaseApp{
/* scrolling text */ /* scrolling text */
int currentLetterIndex = 0; int currentLetterIndex = 0;
int currentLineScript = 0;
int currentLineContemporary = 0;
std::string currentSentence; std::string currentSentence;
uint64_t lastWordTime = 0; uint64_t lastWordTime = 0;
uint64_t wordDelay = 20; uint64_t wordDelay = 20;

Loading…
Cancel
Save