From 0499dfc3b843d97503ba24682a0fb34abc2f5c8d Mon Sep 17 00:00:00 2001 From: bci Date: Fri, 4 Sep 2020 14:48:10 +0200 Subject: [PATCH] WIP Add questionnaire --- .gitignore | 3 ++ __pycache__/questionnaire.cpython-38.pyc | Bin 0 -> 11536 bytes app.py | 43 ++++++++++++++--------- 3 files changed, 30 insertions(+), 16 deletions(-) create mode 100644 .gitignore create mode 100644 __pycache__/questionnaire.cpython-38.pyc diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..796ab18 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +__pycache__\ +questions +questionnaire.py \ No newline at end of file diff --git a/__pycache__/questionnaire.cpython-38.pyc b/__pycache__/questionnaire.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..297e407731f55f30633497189302d56e71a7afae GIT binary patch literal 11536 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 DCp$1L literal 0 HcmV?d00001 diff --git a/app.py b/app.py index ed56448..cd2345c 100644 --- a/app.py +++ b/app.py @@ -7,12 +7,13 @@ Created on Fri Sep 4 11:36:24 2020 from tkinter import * import tkinter.font as tkFont -import os import subprocess # own code: # from questionnaire import quest +# TODO Eventuell updatefunktion über git pull mit einbauen! + ################################################## # Config Beginn # Folgende Strings bitte an jeweiligen PC anpassen @@ -28,6 +29,8 @@ pathTactileBciFilter = r'C:\Users\bci\Desktop\Qt Filter Program\build-TactileBCI pathP300Classifier = r'C:\Users\bci\Desktop\Igor\PythonBCIgui_v0.2\bin' # TODO Config in txt file verlagern oder sogar Config Einstellung!!! +# tk_chooseDirectory +# tk_getOpenFile # Config Ende ################################################## @@ -72,7 +75,8 @@ class App: self.BtacCal = makeBtnSmall(self, "2. Kalibrierung", "lightgreen", self.btn_tacCal, TOP) self.Bp300 = makeBtnSmall(self, "3. P300 Klassifizierung", "orange", self.btn_p300, TOP) self.BtacCopy = makeBtnSmall(self, "4. Freies Buchstabieren", "lightblue", self.btn_tacCopy, TOP) - # self.BtacQuest = makeBtnSmall(self, "5. Fragebogen", "pink", self.btn_tacQuest, TOP) + self.BtacSimul = makeBtnSmall(self, "5. Rollstuhlsimulator", "pink", self.btn_tacSimul, TOP) + # self.BtacQuest = makeBtnSmall(self, "6. Fragebogen", "green", self.btn_tacQuest, TOP) self.BtacSettings = makeBtnSmall(self, "Einstellungen", "gray", self.btn_settings, TOP) frame.rowconfigure((0,1), weight=1) # make buttons stretch when @@ -99,14 +103,22 @@ class App: print('Starte P300Classifier.exe') subprocess.Popen(pathP300Classifier + '\P300Classifier.exe') - # 3. COPYSPELL ########################### + # 4. COPYSPELL ########################### def btn_tacCopy(self): print('Starte taktilen Copyspeller') - # os.system('bin\WT-tacCopy.bat') subprocess.Popen([pathBci2000 + '\prog\Operator.exe', '--OnConnect', '-LOAD PARAMETERFILE TactileCopy.prm']) subprocess.Popen([pathBci2000 + '\prog\gUSBampSource.exe', '127.0.0.1']) subprocess.Popen([pathBci2000 + '\prog\P3SignalProcessing.exe', '127.0.0.1']) subprocess.Popen([pathBci2000 + '\prog\P3Speller.exe', '127.0.0.1']) + + # 5. WHEELCHAIR SIMULATOR ########################### + def btn_tacSimul(self): + print('Starte Wheelchair Simulator') + # TODO Starte Wheelchair Simulator Programm + subprocess.Popen([pathBci2000 + '\prog\Operator.exe', '--OnConnect', '-LOAD PARAMETERFILE TactileDrive.prm']) + subprocess.Popen([pathBci2000 + '\prog\gUSBampSource.exe', '127.0.0.1']) + subprocess.Popen([pathBci2000 + '\prog\P3SignalProcessing.exe', '127.0.0.1']) + subprocess.Popen([pathBci2000 + '\prog\P3Speller.exe', '127.0.0.1']) # QUESTIONNAIRE PROMPT ########################### # def btn_visQuest(self): @@ -114,23 +126,22 @@ class App: # root.destroy() # self.startQuestions("Visual") # def btn_tacQuest(self): - # root.destroy() - # self.startQuestions("Tactile") + #root.destroy() + # self.startQuestions("Tactile") # def btn_audQuest(self): # root.destroy() # self.startQuestions("Auditory") # def startQuestions(self, para): - # print('starte Fragebogen') - # # TODO - # # q = quest(para) - # # q.qSatisfaction() - # # q.qExhaustion() - # # q.qSubjControl() - # # q.qCtrlChange() - # # q.save() - - # 3. P300 Classifier ######################### + # print('Starte Fragebogen') + # q = quest(para) + # q.qSatisfaction() + # q.qExhaustion() + # q.qSubjControl() + # q.qCtrlChange() + # q.save() + + # X. Settings ######################### def btn_settings(self): print('Einstellungen')