Expe codée
authorThomas Pietrzak <thomas.pietrzak@gmail.com>
Tue, 26 Mar 2013 15:05:29 +0000 (15:05 +0000)
committerThomas Pietrzak <thomas.pietrzak@gmail.com>
Tue, 26 Mar 2013 15:05:29 +0000 (15:05 +0000)
git-svn-id: svn+ssh://thomaspietrzak.com/var/svn/rep@109 47cf9a05-e0a8-4ed5-9e9b-101a649bc004

TactileMenus/SetupMenu.cpp [new file with mode: 0644]
TactileMenus/SetupMenu.h [new file with mode: 0644]
TactileMenus/SetupMenu.ui
TactileMenus/TMenu.cpp
TactileMenus/TMenu.h
TactileMenus/TactileMenus.cpp
TactileMenus/TactileMenus.h
TactileMenus/TactileMenus.vcxproj
TactileMenus/main.cpp
TactileMenus/tactilemenus.ui

diff --git a/TactileMenus/SetupMenu.cpp b/TactileMenus/SetupMenu.cpp
new file mode 100644 (file)
index 0000000..99f7d41
--- /dev/null
@@ -0,0 +1,28 @@
+#include "SetupMenu.h"\r
+\r
+\r
+SetupMenu::SetupMenu(QWidget *parent, Qt::WFlags flags)\r
+: QMainWindow(parent, flags)\r
+{\r
+       setupUi(this);\r
+\r
+       connect(_start, SIGNAL(clicked()), this, SLOT(init()));\r
+}\r
+\r
+\r
+SetupMenu::~SetupMenu(void)\r
+{\r
+}\r
+\r
+void SetupMenu::init()\r
+{\r
+       _tactileMenus = new TactileMenus();\r
+       _tactileMenus->init(_user->text(), _condition->currentText(), \r
+               _nbItems->value(), _repetitions->value(), \r
+               _widths->value(), _marginStep->value(), \r
+               _hoverFeedback->checkState() == Qt::Checked, \r
+               _leaveFeedback->checkState() == Qt::Checked,\r
+               _triggerFeedback->checkState() == Qt::Checked);\r
+       _tactileMenus->show();\r
+       this->hide();\r
+}
\ No newline at end of file
diff --git a/TactileMenus/SetupMenu.h b/TactileMenus/SetupMenu.h
new file mode 100644 (file)
index 0000000..3987319
--- /dev/null
@@ -0,0 +1,24 @@
+#ifndef __SETUPMENU__\r
+#define __SETUPMENU__\r
+\r
+#include <QtGui/QMainWindow>\r
+#include "ui_SetupMenu.h"\r
+\r
+#include "TactileMenus.h"\r
+\r
+class SetupMenu: public QMainWindow, public Ui::SetupMenu\r
+{\r
+       Q_OBJECT\r
+\r
+       public:\r
+               SetupMenu(QWidget *parent = NULL, Qt::WFlags flags = NULL);\r
+               ~SetupMenu();\r
+\r
+       public slots:\r
+               void init();\r
+\r
+       private:\r
+               TactileMenus *_tactileMenus;\r
+};\r
+\r
+#endif\r
index c252aaf9c4547a34efe28822b60a628e1443a03f..c49073b8ed796f873d1bd03b11a0509018c61d98 100644 (file)
@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>\r
 <ui version="4.0">\r
- <class>MainWindow</class>\r
- <widget class="QMainWindow" name="MainWindow">\r
+ <class>SetupMenu</class>\r
+ <widget class="QMainWindow" name="SetupMenu">\r
   <property name="geometry">\r
    <rect>\r
     <x>0</x>\r
     <y>0</y>\r
     <width>252</width>\r
-    <height>256</height>\r
+    <height>260</height>\r
    </rect>\r
   </property>\r
   <property name="windowTitle">\r
@@ -89,7 +89,7 @@
          <number>100</number>\r
         </property>\r
         <property name="value">\r
-         <number>10</number>\r
+         <number>2</number>\r
         </property>\r
        </widget>\r
       </item>\r
          <number>1</number>\r
         </property>\r
         <property name="value">\r
-         <number>10</number>\r
+         <number>20</number>\r
         </property>\r
        </widget>\r
       </item>\r
      </layout>\r
     </item>\r
     <item>\r
-     <widget class="QPushButton" name="pushButton">\r
+     <widget class="QPushButton" name="_start">\r
       <property name="font">\r
        <font>\r
         <pointsize>12</pointsize>\r
index c12c96202cf80f8444b72351c71351a3882c7f66..1d234c79cacbe4f3a1603da08f6c64871701cf1e 100644 (file)
@@ -4,18 +4,7 @@
 TMenu::TMenu(TactonPlayer *tactonPlayer, QWidget *parent)\r
 :QMenu(parent), _tactonPlayer(tactonPlayer)\r
 {\r
-       this->setStyleSheet(" QMenu {\\r
-                       background-color: #bbbbbb;\\r
-                       border: 1px solid black;\\r
-                       font-size: 30pt;\\r
-               }\\r
-               QMenu::item {\\r
-                       background-color: transparent;\\r
-                       padding: 10px 50px 10px 50px;\\r
-               }\\r
-               QMenu::item:selected {\\r
-                       background-color: #eeeeee;\\r
-       }");\r
+       setWidth(0);\r
 }\r
 \r
 \r
@@ -28,5 +17,28 @@ void TMenu::mouseReleaseEvent(QMouseEvent * event)
        QAction *a;\r
        if ((a = activeAction()) != NULL)\r
                a->trigger();\r
+       else\r
+               emit cancelled();\r
        close();\r
-}
\ No newline at end of file
+}\r
+\r
+void TMenu::leaveEvent (QEvent *)\r
+{\r
+       emit left();\r
+}\r
+\r
+void TMenu::setWidth(int w)\r
+{\r
+       this->setStyleSheet(" QMenu {\\r
+                       background-color: #bbbbbb;\\r
+                       border: 1px solid black;\\r
+                       font-size: 30pt;\\r
+               }\\r
+               QMenu::item {\\r
+                       background-color: transparent;\\r
+                       padding: 0px " + QString::number(w) + "px 0px " + QString::number(w) + "px;\\r
+               }\\r
+               QMenu::item:selected {\\r
+                       background-color: #eeeeee;\\r
+       }");\r
+}\r
index 28d0e8c473bf8bc4e71d36cfb30f516286f55229..5680a4616bd6a620b3a57ad8ba8fe7fdffa2daba 100644 (file)
@@ -8,11 +8,21 @@
 \r
 class TMenu : public QMenu\r
 {\r
+       Q_OBJECT\r
+\r
        public:\r
                TMenu(TactonPlayer *_tactonPlayer, QWidget *parent=NULL);\r
                ~TMenu();\r
 \r
                void mouseReleaseEvent(QMouseEvent * event);\r
+               void leaveEvent (QEvent *);\r
+\r
+               void setWidth(int w);\r
+\r
+       signals:\r
+               void left();\r
+               void cancelled();\r
+\r
 \r
        private:\r
                TactonPlayer *_tactonPlayer;\r
index 7310d1706a4b876dbda5f824e54c8b6174c025cd..941325d629e6cd4cb05d99187e84a759319cd98c 100644 (file)
@@ -2,9 +2,10 @@
 \r
 #include <QMouseEvent>\r
 #include <QDebug>\r
+#include <QDate>\r
 \r
 TactileMenus::TactileMenus(QWidget *parent, Qt::WFlags flags)\r
-       : QMainWindow(parent, flags), _menu(NULL)\r
+       : QMainWindow(parent, flags), _menu(NULL), _signalMapper(NULL), _currenttrial(0)\r
 {\r
        setupUi(this);\r
        QWidget::showMaximized();\r
@@ -18,42 +19,160 @@ TactileMenus::TactileMenus(QWidget *parent, Qt::WFlags flags)
                qDebug() << "Cannot find the touchscreen or the wristband";\r
                _tactonPlayer = NULL;\r
        }\r
+}\r
+\r
+TactileMenus::~TactileMenus()\r
+{\r
+       if (_tactonPlayer)\r
+               delete _tactonPlayer;\r
+\r
+       if (_signalMapper)\r
+               delete _signalMapper;\r
+}\r
+\r
+void TactileMenus::init(QString user, QString condition, \r
+                       int nbItems, int repetitions, \r
+                       int widths, int marginStep, \r
+                       bool hoverFeedback, bool leaveFeedback, bool triggerFeedback)\r
+{\r
+       //store values\r
+       _user = user;\r
+       _condition = condition; \r
+       _nbItems = nbItems;\r
+       _repetitions = repetitions;\r
+       _widths = widths;\r
+       _marginStep = marginStep; \r
+       _hoverFeedback = hoverFeedback;\r
+       _leaveFeedback = leaveFeedback;\r
+       _triggerFeedback = triggerFeedback;\r
 \r
-       _menu = new TMenu(_tactonPlayer, this);\r
 \r
+       //populate menu\r
+       _menu = new TMenu(_tactonPlayer, this);\r
        _signalMapper = new QSignalMapper(this);\r
 \r
-     for (int i = 1 ; i < 8 ; i++) \r
+     for (int i = 1 ; i <= nbItems ; i++) \r
         {\r
                 QAction *a = new QAction(QString::number(i), this);\r
                 _menu->addAction(a);\r
          connect(a, SIGNAL(triggered()), _signalMapper, SLOT(map()));\r
-         connect(a, SIGNAL(hovered()), this, SLOT(pouet()));\r
+\r
+                //activate hover feedback\r
+                if (hoverFeedback)\r
+                       connect(a, SIGNAL(hovered()), this, SLOT(pouet()));\r
          _signalMapper->setMapping(a, i);\r
      }\r
-\r
      connect(_signalMapper, SIGNAL(mapped(int)), this, SLOT(execute(int)));\r
-}\r
 \r
+        //log when release out of the menu\r
+        connect(_menu, SIGNAL(cancelled()), this, SLOT(menuCancel()));\r
 \r
+        //leave feedback\r
+        if (leaveFeedback)\r
+                connect(_menu, SIGNAL(left()), this, SLOT(pouet()));\r
 \r
-TactileMenus::~TactileMenus()\r
+       //create log file\r
+       QString date = QDate::currentDate().toString("yyyy-MM-dd") + "-" + QTime::currentTime().toString("HH-mm-ss");\r
+       QString logfilename = user + "-" + condition + "-" + QString::number(repetitions) + "-" + QString::number(nbItems) + "-" + QString::number(widths) + "-" + QString::number(marginStep) + "-" + date + ".csv";\r
+       _logfile = fopen(logfilename.toStdString().c_str(), "w");\r
+       qDebug() << "log: " << logfilename;\r
+       if (_logfile)\r
+               fprintf(_logfile, "TotalTime,SelectionTime,User,Condition,Block,HFeedback,LFeedback,TFeedback,Width,Item,Selected\n");\r
+\r
+\r
+       //generate the block\r
+       // /!\ currently we only manage 1 direction\r
+       for (int i = 0 ; i < repetitions ; i++)\r
+       {\r
+               QList<QPair<int, int> > temp;\r
+               //generate the block\r
+               for (int j = 1 ; j <= nbItems ; j++)\r
+                       for (int k = 0 ; k < widths ; k++)\r
+                               temp.push_back(QPair<int, int>(j, k * marginStep));\r
+               //shuffle\r
+               for (int j = 0; j < temp.count(); j++)\r
+                       temp.swap(j, (rand() % (temp.count() - j)) + j);\r
+               //add the block to the trial\r
+               _trials.append(temp);\r
+       }\r
+       _progress->setMaximum(_trials.size());\r
+\r
+       _timer.start();\r
+       _timer2.start();\r
+\r
+       runTrial();\r
+}\r
+\r
+void TactileMenus::runTrial()\r
 {\r
-       if (_tactonPlayer)\r
-               delete _tactonPlayer;\r
+       _text->setText(QString::number(_trials.at(_currenttrial).first));\r
+       _menu->setWidth(_trials.at(_currenttrial).second);\r
+       _timer.restart();\r
+       //_timer2.restart();\r
+}\r
+\r
+void TactileMenus::log(int val)\r
+{\r
+       if (_logfile)\r
+               fprintf(_logfile, "%lld,%lld,%s,%s,%d,%d,%d,%d,%d,%d,%d\n",\r
+                       _timer.elapsed(),\r
+                       _timer2.elapsed(),\r
+                       _user.toStdString().c_str(),\r
+                       _condition.toStdString().c_str(),\r
+                       _currenttrial / _repetitions,\r
+                       _hoverFeedback,\r
+                       _leaveFeedback,\r
+                       _triggerFeedback,\r
+                       _trials.at(_currenttrial).second,\r
+                       _trials.at(_currenttrial).first,\r
+                       val);\r
 }\r
 \r
 void TactileMenus::mousePressEvent(QMouseEvent *evt)\r
 {\r
        //pouet();\r
-       _menu->exec(evt->globalPos());\r
+       if (_currenttrial < _trials.size())\r
+       {\r
+               _menu->exec(evt->globalPos());\r
+               //timer2 is for selection time\r
+               _timer2.restart();\r
+       }\r
+}\r
+\r
+void TactileMenus::menuCancel()\r
+{\r
+       //log outside the menu\r
+       log(-1);\r
+//     _timer2.restart();\r
 }\r
 \r
 void TactileMenus::execute(int val)\r
 {\r
-       if (_tactonPlayer)\r
+       log(val);\r
+\r
+       //feedback?\r
+       if (_triggerFeedback && _tactonPlayer)\r
                _tactonPlayer->play(Tacton(0x0f, 15, 250, 255));\r
-       _text->setText(QString::number(val));\r
+\r
+       //No progress if it is not the right item\r
+       if (val != _trials.at(_currenttrial).first)\r
+               return;\r
+\r
+       _currenttrial++;\r
+       _progress->setValue(_currenttrial);\r
+\r
+       if (_currenttrial >= _trials.size())\r
+       {\r
+               _text->setText("Finished");\r
+               if (_logfile)\r
+               {\r
+                       fclose(_logfile);\r
+                       _logfile = NULL;\r
+               }\r
+               return;\r
+       }\r
+\r
+       runTrial();\r
 }\r
 \r
 void TactileMenus::pouet()\r
index 95935ad24c8fda1c162b0003d9cee1f2c7d3a768..61c4d38a73259f9023543dd11eab9500d2f8caa1 100644 (file)
@@ -5,6 +5,7 @@
 #include "ui_tactilemenus.h"\r
 #include "TMenu.h"\r
 #include <QSignalMApper>\r
+#include <QElapsedTimer>\r
 \r
 #include <TactonPlayer/TactonPlayer.hpp>\r
 \r
@@ -17,19 +18,43 @@ class TactileMenus : public QMainWindow, public Ui::TactileMenusClass
                ~TactileMenus();\r
 \r
                void mousePressEvent(QMouseEvent * event);\r
-               //void mouseReleaseEvent(QMouseEvent * event);\r
+               \r
+               void init(QString user, QString condition, \r
+                       int nbItems, int repetitions, \r
+                       int widths, int marginStep, \r
+                       bool hoverFeedback, bool leaveFeedback, bool triggerFeedback);\r
 \r
        public slots:\r
                void execute(int);\r
                void pouet();\r
+               void menuCancel();\r
 \r
        signals:\r
                void selected(int);\r
 \r
        private:\r
+               void runTrial();\r
+               void log(int val);\r
+\r
                TMenu *_menu;\r
                QSignalMapper *_signalMapper;\r
                TactonPlayer *_tactonPlayer;\r
+\r
+               //setup variables\r
+               QString _user;\r
+               QString _condition; \r
+               int _nbItems;\r
+               int _repetitions;\r
+               int _widths;\r
+               int _marginStep; \r
+               bool _hoverFeedback;\r
+               bool _leaveFeedback;\r
+               bool _triggerFeedback;\r
+\r
+               FILE *_logfile;\r
+               QList<QPair<int, int> > _trials;\r
+               int _currenttrial;\r
+               QElapsedTimer _timer, _timer2;\r
 };\r
 \r
 #endif // TACTILEMENUS_H\r
index 89d8b167fa57a424e211cdf8bb5bba56cd3c7355..a3911d080fdb7b2bca47fbb0cf595c608273e00a 100644 (file)
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
+    <ClCompile Include="GeneratedFiles\Debug\moc_SetupMenu.cpp">\r
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
+    </ClCompile>\r
     <ClCompile Include="GeneratedFiles\Debug\moc_TactileMenus.cpp">\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
     </ClCompile>\r
+    <ClCompile Include="GeneratedFiles\Debug\moc_TMenu.cpp">\r
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
+    </ClCompile>\r
     <ClCompile Include="GeneratedFiles\qrc_tactilemenus.cpp">\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
       </PrecompiledHeader>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
       </PrecompiledHeader>\r
     </ClCompile>\r
+    <ClCompile Include="GeneratedFiles\Release\moc_SetupMenu.cpp">\r
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
+    </ClCompile>\r
     <ClCompile Include="GeneratedFiles\Release\moc_TactileMenus.cpp">\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
     </ClCompile>\r
+    <ClCompile Include="GeneratedFiles\Release\moc_TMenu.cpp">\r
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>\r
+    </ClCompile>\r
     <ClCompile Include="main.cpp" />\r
+    <ClCompile Include="SetupMenu.cpp" />\r
     <ClCompile Include="TMenu.cpp" />\r
     <ClCompile Include="TactileMenus.cpp" />\r
   </ItemGroup>\r
     </CustomBuild>\r
   </ItemGroup>\r
   <ItemGroup>\r
+    <ClInclude Include="GeneratedFiles\ui_SetupMenu.h" />\r
     <ClInclude Include="GeneratedFiles\ui_tactilemenus.h" />\r
-    <ClInclude Include="TMenu.h" />\r
+    <CustomBuild Include="SetupMenu.h">\r
+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>\r
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Moc%27ing SetupMenu.h...</Message>\r
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>\r
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">"$(QTDIR)\bin\moc.exe"  "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp"  -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui"</Command>\r
+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>\r
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Moc%27ing SetupMenu.h...</Message>\r
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>\r
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">"$(QTDIR)\bin\moc.exe"  "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp"  -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui"</Command>\r
+    </CustomBuild>\r
+    <CustomBuild Include="TMenu.h">\r
+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>\r
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Moc%27ing TMenu.h...</Message>\r
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>\r
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">"$(QTDIR)\bin\moc.exe"  "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp"  -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui"</Command>\r
+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>\r
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Moc%27ing TMenu.h...</Message>\r
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>\r
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">"$(QTDIR)\bin\moc.exe"  "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp"  -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui"</Command>\r
+    </CustomBuild>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <CustomBuild Include="tactilemenus.qrc">\r
       <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">"$(QTDIR)\bin\rcc.exe" -name "%(Filename)" -no-compress "%(FullPath)" -o .\GeneratedFiles\qrc_%(Filename).cpp</Command>\r
     </CustomBuild>\r
   </ItemGroup>\r
+  <ItemGroup>\r
+    <CustomBuild Include="SetupMenu.ui">\r
+      <FileType>Document</FileType>\r
+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(QTDIR)\bin\uic.exe;%(AdditionalInputs)</AdditionalInputs>\r
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Uic%27ing %(Identity)...</Message>\r
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\GeneratedFiles\ui_%(Filename).h;%(Outputs)</Outputs>\r
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">"$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)"</Command>\r
+      <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(QTDIR)\bin\uic.exe;%(AdditionalInputs)</AdditionalInputs>\r
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Uic%27ing %(Identity)...</Message>\r
+      <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\GeneratedFiles\ui_%(Filename).h;%(Outputs)</Outputs>\r
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">"$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)"</Command>\r
+    </CustomBuild>\r
+  </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
index b82a5f6841b56c897422927e7b5d0f7d38e5c300..56fed6ba7c7cb721e7702d2cf99f03455b4be07d 100644 (file)
@@ -1,10 +1,10 @@
-#include "TactileMenus.h"\r
+#include "SetupMenu.h"\r
 #include <QtGui/QApplication>\r
 \r
 int main(int argc, char *argv[])\r
 {\r
        QApplication a(argc, argv);\r
-       TactileMenus w;\r
+       SetupMenu w;\r
        w.show();\r
        return a.exec();\r
 }\r
index e20d7fd1cf6245b1d7ae4c26255f9be25214c3e6..718fed1b7a5d82c518cb69b7dfbf964ed185c4c7 100644 (file)
       </property>\r
      </spacer>\r
     </item>\r
+    <item>\r
+     <widget class="QProgressBar" name="_progress">\r
+      <property name="value">\r
+       <number>0</number>\r
+      </property>\r
+     </widget>\r
+    </item>\r
    </layout>\r
   </widget>\r
  </widget>\r