static void setSessionEntry (void) { describeScreen(&scr); if (scr.number == -1) scr.number = userVirtualTerminal(0); { typedef enum {SAME, DIFFERENT, FIRST} State; State state = (!ses)? FIRST: (scr.number == ses->number)? SAME: DIFFERENT; if (state != SAME) { ses = getSessionEntry(scr.number); if (state == FIRST) { pushCommandEnvironment("main", preprocessCommand, postprocessCommand); pushCommandHandler("unhandled", KTB_CTX_DEFAULT, handleUnhandledCommand, NULL); #ifdef ENABLE_SPEECH_SUPPORT pushCommandHandler("speech", KTB_CTX_DEFAULT, handleSpeechCommand, NULL); #endif /* ENABLE_SPEECH_SUPPORT */ pushCommandHandler("navigation", KTB_CTX_DEFAULT, handleNavigationCommand, NULL); pushCommandHandler("screen", KTB_CTX_DEFAULT, handleScreenCommand, NULL); } } } }
int addSpeechCommands (void) { #ifdef ENABLE_SPEECH_SUPPORT return pushCommandHandler("speech", KTB_CTX_DEFAULT, handleSpeechCommands, NULL, NULL); #else /* ENABLE_SPEECH_SUPPORT */ return 0; #endif /* ENABLE_SPEECH_SUPPORT */ }
int addPreferencesCommands (void) { return pushCommandHandler("preferences", KTB_CTX_DEFAULT, handlePreferencesCommands, NULL, NULL); }
int addCustomCommands (void) { return pushCommandHandler("custom", KTB_CTX_DEFAULT, handleCustomCommands, NULL, NULL); }
int addToggleCommands (void) { return pushCommandHandler("toggle", KTB_CTX_DEFAULT, handleToggleCommands, NULL, NULL); }
int addLearnCommands (void) { return pushCommandHandler("learn", KTB_CTX_DEFAULT, handleLearnCommands, NULL, NULL); }