benoitrigolleau@262
|
1
|
benoitrigolleau@262
|
2 #include "SpeechRecognitionUI.h"
|
benoitrigolleau@262
|
3
|
benoitrigolleau@262
|
4 #include <QGridLayout>
|
benoitrigolleau@263
|
5 #include <QVBoxLayout>
|
benoitrigolleau@263
|
6 #include <QLabel>
|
benoitrigolleau@262
|
7
|
benoitrigolleau@262
|
8 #include "../sv/main/MainWindow.h"
|
benoitrigolleau@262
|
9 #include "../sv/main/EasaierSessionManager.h"
|
benoitrigolleau@262
|
10
|
benoitrigolleau@262
|
11
|
benoitrigolleau@262
|
12
|
benoitrigolleau@262
|
13
|
benoitrigolleau@262
|
14 SpeechRecognitionUI::SpeechRecognitionUI(QWidget *parent) : QWidget(parent){
|
benoitrigolleau@262
|
15
|
benoitrigolleau@262
|
16 _audioRecorder = new AudioRecording();
|
benoitrigolleau@262
|
17
|
benoitrigolleau@262
|
18 connect(this, SIGNAL(startRect()),_audioRecorder, SLOT(rect()));
|
benoitrigolleau@262
|
19 connect(this, SIGNAL(stopRect()),_audioRecorder, SLOT(stopRect()));
|
benoitrigolleau@262
|
20
|
benoitrigolleau@262
|
21 _bRect = new QPushButton;
|
benoitrigolleau@262
|
22 _bPlay = new QPushButton;
|
benoitrigolleau@262
|
23 _bSend = new QPushButton;
|
benoitrigolleau@262
|
24
|
benoitrigolleau@262
|
25
|
benoitrigolleau@262
|
26 _bRect->setMaximumSize(24,24);
|
benoitrigolleau@262
|
27 _bPlay->setMaximumSize(24,24);
|
benoitrigolleau@262
|
28 _bSend->setMaximumSize(24,24);
|
benoitrigolleau@262
|
29
|
benoitrigolleau@262
|
30 _bPlay->setEnabled(false);
|
benoitrigolleau@262
|
31 _bSend->setEnabled(false);
|
benoitrigolleau@262
|
32
|
benoitrigolleau@262
|
33 _bRect->setIcon(QIcon(":icons/rect.png"));
|
benoitrigolleau@262
|
34 _bPlay->setIcon(QIcon(":icons/playpause.png"));
|
benoitrigolleau@262
|
35 _bSend->setIcon(QIcon(":icons/addToLayer.png"));
|
benoitrigolleau@262
|
36
|
benoitrigolleau@262
|
37
|
benoitrigolleau@262
|
38
|
benoitrigolleau@262
|
39 _textEdit = new QTextEdit();
|
benoitrigolleau@262
|
40 _textEdit->setMinimumWidth(200);
|
benoitrigolleau@262
|
41
|
benoitrigolleau@263
|
42
|
benoitrigolleau@263
|
43 QVBoxLayout *truc = new QVBoxLayout();
|
benoitrigolleau@263
|
44 truc->addWidget(new QLabel);
|
benoitrigolleau@263
|
45 truc->addStretch();
|
benoitrigolleau@263
|
46
|
benoitrigolleau@263
|
47
|
benoitrigolleau@262
|
48 QGridLayout *layout = new QGridLayout;
|
benoitrigolleau@262
|
49 this->setLayout(layout);
|
benoitrigolleau@263
|
50 layout->addWidget(new QLabel(tr("Speech Recognition")),1,1,1,2,Qt::AlignTop);
|
benoitrigolleau@263
|
51 layout->addWidget(_bRect,2,1,1,1,Qt::AlignTop);
|
benoitrigolleau@263
|
52 //layout->addWidget(_bPlay,2,1,1,1,Qt::AlignTop);
|
benoitrigolleau@262
|
53 layout->addWidget(_bSend,3,1,1,1,Qt::AlignTop);
|
benoitrigolleau@263
|
54 layout->addLayout(truc,4,1,1,1,Qt::AlignTop);
|
benoitrigolleau@263
|
55 layout->addWidget(_textEdit,2,2,3,1);
|
benoitrigolleau@262
|
56
|
benoitrigolleau@262
|
57
|
benoitrigolleau@262
|
58 //SLOTs end SIGNALs
|
benoitrigolleau@262
|
59
|
benoitrigolleau@262
|
60 connect(_bRect, SIGNAL(pressed ()), this,SLOT(rect()));
|
benoitrigolleau@262
|
61 connect(_bSend, SIGNAL(pressed ()), this,SLOT(sendQuery()));
|
benoitrigolleau@262
|
62
|
benoitrigolleau@262
|
63 }
|
benoitrigolleau@262
|
64
|
benoitrigolleau@262
|
65
|
benoitrigolleau@262
|
66 SpeechRecognitionUI::~SpeechRecognitionUI(){
|
benoitrigolleau@262
|
67
|
benoitrigolleau@262
|
68 }
|
benoitrigolleau@262
|
69
|
benoitrigolleau@262
|
70
|
benoitrigolleau@262
|
71 void SpeechRecognitionUI::play(){
|
benoitrigolleau@262
|
72
|
benoitrigolleau@262
|
73 }
|
benoitrigolleau@262
|
74
|
benoitrigolleau@262
|
75 void SpeechRecognitionUI::rect(){
|
benoitrigolleau@262
|
76 if(_audioRecorder->isRecording()){
|
benoitrigolleau@262
|
77 emit(stopRect());
|
benoitrigolleau@262
|
78 _bRect->setIcon(QIcon(":icons/rect.png"));
|
benoitrigolleau@262
|
79 _bPlay->setEnabled(true);
|
benoitrigolleau@262
|
80 _bSend->setEnabled(true);
|
benoitrigolleau@262
|
81
|
benoitrigolleau@262
|
82 }else{
|
benoitrigolleau@262
|
83 emit(startRect());
|
benoitrigolleau@262
|
84 _bRect->setIcon(QIcon(":icons/stop.png"));
|
benoitrigolleau@262
|
85 _bPlay->setEnabled(false);
|
benoitrigolleau@262
|
86 _bSend->setEnabled(false);
|
benoitrigolleau@262
|
87 }
|
benoitrigolleau@262
|
88 }
|
benoitrigolleau@262
|
89
|
benoitrigolleau@262
|
90 void SpeechRecognitionUI::sendQuery(){
|
benoitrigolleau@262
|
91 MainWindow::instance()->getEasaierSessionManager()->speechRecognition("SpeechRecognition");
|
benoitrigolleau@263
|
92 }
|
benoitrigolleau@263
|
93
|
benoitrigolleau@263
|
94 void SpeechRecognitionUI::setResult(const QString &result){
|
benoitrigolleau@263
|
95 _textEdit->setText(result);
|
benoitrigolleau@262
|
96 } |