diff options
Diffstat (limited to 'gui/settings.ui')
| -rw-r--r-- | gui/settings.ui | 1188 | 
1 files changed, 920 insertions, 268 deletions
| diff --git a/gui/settings.ui b/gui/settings.ui index 03566c2e..cb292a35 100644 --- a/gui/settings.ui +++ b/gui/settings.ui @@ -6,8 +6,8 @@     <rect>      <x>0</x>      <y>0</y> -    <width>381</width> -    <height>603</height> +    <width>428</width> +    <height>525</height>     </rect>    </property>    <property name="windowTitle"> @@ -23,7 +23,7 @@    <property name="autoFillBackground">     <bool>false</bool>    </property> -  <layout class="QVBoxLayout" name="verticalLayout_5"> +  <layout class="QVBoxLayout" name="verticalLayout">     <item>      <widget class="QTabWidget" name="tabWidget">       <property name="currentIndex"> @@ -33,14 +33,41 @@        <attribute name="title">         <string>Shortcuts</string>        </attribute> -      <layout class="QVBoxLayout" name="verticalLayout"> -       <item> +      <layout class="QGridLayout" name="gridLayout_9"> +       <item row="2" column="0"> +        <widget class="QCheckBox" name="center_at_startup"> +         <property name="text"> +          <string>Center at startup</string> +         </property> +        </widget> +       </item> +       <item row="4" column="0"> +        <spacer name="verticalSpacer"> +         <property name="orientation"> +          <enum>Qt::Vertical</enum> +         </property> +         <property name="sizeHint" stdset="0"> +          <size> +           <width>20</width> +           <height>40</height> +          </size> +         </property> +        </spacer> +       </item> +       <item row="3" column="0"> +        <widget class="QCheckBox" name="trayp"> +         <property name="text"> +          <string>Minimize to tray</string> +         </property> +        </widget> +       </item> +       <item row="0" column="0">          <widget class="QGroupBox" name="groupBox_8">           <property name="title">            <string>Global shortcuts</string>           </property> -         <layout class="QVBoxLayout" name="verticalLayout_8"> -          <item> +         <layout class="QGridLayout" name="gridLayout_15"> +          <item row="0" column="0">             <widget class="QLabel" name="label_23">              <property name="sizePolicy">               <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> @@ -56,41 +83,21 @@              </property>             </widget>            </item> -          <item> +          <item row="1" column="0">             <widget class="QGroupBox" name="groupBox">              <property name="styleSheet">               <string notr="true">QGroupBox { border: 0; }</string>              </property>              <layout class="QGridLayout" name="gridLayout_8"> -             <item row="8" column="2"> -              <widget class="QPushButton" name="bind_stop"> -               <property name="text"> -                <string>Bind</string> -               </property> -              </widget> -             </item> -             <item row="7" column="0"> -              <widget class="QLabel" name="textLabel2_7"> -               <property name="text"> -                <string>Start tracking</string> -               </property> -               <property name="wordWrap"> -                <bool>false</bool> -               </property> -              </widget> -             </item> -             <item row="8" column="0"> -              <widget class="QLabel" name="textLabel2_8"> +             <item row="6" column="1"> +              <widget class="QLabel" name="zero_text">                 <property name="text"> -                <string>Stop tracking</string> -               </property> -               <property name="wordWrap"> -                <bool>false</bool> +                <string/>                 </property>                </widget>               </item> -             <item row="0" column="1"> -              <widget class="QLabel" name="center_text"> +             <item row="5" column="1"> +              <widget class="QLabel" name="toggle_text">                 <property name="text">                  <string/>                 </property> @@ -106,17 +113,20 @@                 </property>                </widget>               </item> -             <item row="5" column="1"> -              <widget class="QLabel" name="toggle_text"> +             <item row="0" column="2"> +              <widget class="QPushButton" name="bind_center">                 <property name="text"> -                <string/> +                <string>Bind</string>                 </property>                </widget>               </item> -             <item row="6" column="1"> -              <widget class="QLabel" name="zero_text"> +             <item row="5" column="0"> +              <widget class="QLabel" name="textLabel2_5">                 <property name="text"> -                <string/> +                <string>Toggle</string> +               </property> +               <property name="wordWrap"> +                <bool>false</bool>                 </property>                </widget>               </item> @@ -130,41 +140,44 @@                 </property>                </widget>               </item> -             <item row="0" column="2"> -              <widget class="QPushButton" name="bind_center"> +             <item row="6" column="2"> +              <widget class="QPushButton" name="bind_zero">                 <property name="text">                  <string>Bind</string>                 </property>                </widget>               </item> -             <item row="5" column="0"> -              <widget class="QLabel" name="textLabel2_5"> +             <item row="5" column="2"> +              <widget class="QPushButton" name="bind_toggle">                 <property name="text"> -                <string>Toggle</string> -               </property> -               <property name="wordWrap"> -                <bool>false</bool> +                <string>Bind</string>                 </property>                </widget>               </item> -             <item row="6" column="2"> -              <widget class="QPushButton" name="bind_zero"> +             <item row="7" column="0"> +              <widget class="QLabel" name="textLabel2_7">                 <property name="text"> -                <string>Bind</string> +                <string>Start tracking</string> +               </property> +               <property name="wordWrap"> +                <bool>false</bool>                 </property>                </widget>               </item> -             <item row="5" column="2"> -              <widget class="QPushButton" name="bind_toggle"> +             <item row="0" column="1"> +              <widget class="QLabel" name="center_text">                 <property name="text"> -                <string>Bind</string> +                <string/>                 </property>                </widget>               </item> -             <item row="7" column="2"> -              <widget class="QPushButton" name="bind_start"> +             <item row="8" column="0"> +              <widget class="QLabel" name="textLabel2_8">                 <property name="text"> -                <string>Bind</string> +                <string>Stop tracking</string> +               </property> +               <property name="wordWrap"> +                <bool>false</bool>                 </property>                </widget>               </item> @@ -178,6 +191,20 @@                 </property>                </widget>               </item> +             <item row="7" column="2"> +              <widget class="QPushButton" name="bind_start"> +               <property name="text"> +                <string>Bind</string> +               </property> +              </widget> +             </item> +             <item row="8" column="2"> +              <widget class="QPushButton" name="bind_stop"> +               <property name="text"> +                <string>Bind</string> +               </property> +              </widget> +             </item>               <item row="9" column="2">                <widget class="QPushButton" name="bind_toggle_tracking">                 <property name="text"> @@ -212,12 +239,12 @@           </layout>          </widget>         </item> -       <item> -        <widget class="QGroupBox" name="groupBox_9"> +       <item row="1" column="0"> +        <widget class="QGroupBox" name="groupBox_9111">           <property name="title">            <string>Centering method</string>           </property> -         <layout class="QGridLayout" name="gridLayout"> +         <layout class="QGridLayout" name="gridLayout111">            <item row="1" column="0">             <widget class="QLabel" name="label_26">              <property name="text"> @@ -252,140 +279,254 @@           </layout>          </widget>         </item> -       <item> -        <widget class="QCheckBox" name="center_at_startup"> -         <property name="text"> -          <string>Center at startup</string> -         </property> -        </widget> -       </item> -       <item> -        <widget class="QCheckBox" name="trayp"> -         <property name="text"> -          <string>Minimize to tray</string> -         </property> -        </widget> -       </item> -       <item> -        <spacer name="verticalSpacer"> -         <property name="orientation"> -          <enum>Qt::Vertical</enum> -         </property> -         <property name="sizeHint" stdset="0"> -          <size> -           <width>20</width> -           <height>40</height> -          </size> -         </property> -        </spacer> -       </item>        </layout>       </widget>       <widget class="QWidget" name="tab_3">        <attribute name="title">         <string>Camera</string>        </attribute> -      <layout class="QVBoxLayout" name="verticalLayout_3"> +      <layout class="QVBoxLayout" name="verticalLayout_10">         <item> -        <widget class="QGroupBox" name="groupBox_5"> +        <widget class="QGroupBox" name="groupBox_9">           <property name="title"> -          <string>Camera offset</string> +          <string>Device</string>           </property> -         <layout class="QGridLayout" name="gridLayout_6"> +         <layout class="QGridLayout" name="gridLayout">            <item row="2" column="0"> -           <widget class="QLabel" name="label_17"> +           <widget class="QLabel" name="label_32">              <property name="text"> -             <string><html><head/><body><p>Specify an angle for off-center camera as a basis for which direction is which, avoiding axis interconnect. Also see <a href="https://github.com/opentrack/opentrack/wiki/choosing-camera-offset"><span style=" text-decoration: underline; color:#0000ff;">description on wiki</span></a>.</p></body></html></string> +             <string>Dynamic pose resolution</string>              </property> -            <property name="alignment"> -             <set>Qt::AlignJustify|Qt::AlignVCenter</set> +           </widget> +          </item> +          <item row="2" column="1"> +           <widget class="QCheckBox" name="dynamic_pose"> +            <property name="text"> +             <string/>              </property> -            <property name="wordWrap"> -             <bool>true</bool> +           </widget> +          </item> +          <item row="0" column="1"> +           <widget class="QComboBox" name="camera_mode"> +            <item> +             <property name="text"> +              <string>640x480, 75 Hz</string> +             </property> +            </item> +            <item> +             <property name="text"> +              <string>640x480, 60 Hz</string> +             </property> +            </item> +            <item> +             <property name="text"> +              <string>320x240, 189 Hz</string> +             </property> +            </item> +            <item> +             <property name="text"> +              <string>320x240, 120 Hz</string> +             </property> +            </item> +           </widget> +          </item> +          <item row="0" column="0"> +           <widget class="QLabel" name="label_2511"> +            <property name="text"> +             <string>Mode</string>              </property> -            <property name="margin"> -             <number>2</number> +           </widget> +          </item> +          <item row="1" column="1"> +           <widget class="QComboBox" name="camera_fov"> +            <item> +             <property name="text"> +              <string>56°</string> +             </property> +            </item> +            <item> +             <property name="text"> +              <string>75°</string> +             </property> +            </item> +           </widget> +          </item> +          <item row="1" column="0"> +           <widget class="QLabel" name="label_2"> +            <property name="text"> +             <string>Field of view</string>              </property> -            <property name="openExternalLinks"> -             <bool>true</bool> +           </widget> +          </item> +          <item row="3" column="0"> +           <widget class="QLabel" name="label_33"> +            <property name="text"> +             <string>Dynamic pose timeout</string>              </property>             </widget>            </item> -          <item row="3" column="0" alignment="Qt::AlignLeft"> -           <widget class="QGroupBox" name="groupBox_3"> -            <property name="styleSheet"> -             <string notr="true">QGroupBox -{ -	border: 0; -}</string> +          <item row="3" column="1"> +           <widget class="QSpinBox" name="init_phase_timeout"> +            <property name="suffix"> +             <string> ms</string>              </property> -            <layout class="QGridLayout" name="gridLayout_7"> -             <item row="2" column="0"> -              <widget class="QLabel" name="label_21"> -               <property name="text"> -                <string>Roll</string> +            <property name="minimum"> +             <number>1</number> +            </property> +            <property name="maximum"> +             <number>10000</number> +            </property> +           </widget> +          </item> +         </layout> +        </widget> +       </item> +       <item> +        <widget class="QGroupBox" name="groupBox_6"> +         <property name="title"> +          <string>Point extraction</string> +         </property> +         <layout class="QVBoxLayout" name="verticalLayout_3"> +          <property name="topMargin"> +           <number>4</number> +          </property> +          <property name="bottomMargin"> +           <number>4</number> +          </property> +          <item> +           <widget class="QFrame" name="frame_2"> +            <property name="frameShape"> +             <enum>QFrame::NoFrame</enum> +            </property> +            <property name="frameShadow"> +             <enum>QFrame::Plain</enum> +            </property> +            <property name="lineWidth"> +             <number>0</number> +            </property> +            <layout class="QGridLayout" name="gridLayout_10"> +             <property name="topMargin"> +              <number>2</number> +             </property> +             <property name="bottomMargin"> +              <number>2</number> +             </property> +             <property name="verticalSpacing"> +              <number>6</number> +             </property> +             <item row="1" column="1"> +              <widget class="QSlider" name="threshold_slider"> +               <property name="toolTip"> +                <string>Intensity threshold for point extraction</string> +               </property> +               <property name="maximum"> +                <number>255</number> +               </property> +               <property name="pageStep"> +                <number>1</number> +               </property> +               <property name="value"> +                <number>127</number> +               </property> +               <property name="orientation"> +                <enum>Qt::Horizontal</enum> +               </property> +               <property name="tickPosition"> +                <enum>QSlider::TicksBothSides</enum> +               </property> +               <property name="tickInterval"> +                <number>25</number>                 </property>                </widget>               </item> -             <item row="2" column="1"> -              <widget class="QSpinBox" name="camera_roll"> -               <property name="minimumSize"> -                <size> -                 <width>80</width> -                 <height>0</height> -                </size> +             <item row="1" column="0"> +              <widget class="QLabel" name="label"> +               <property name="text"> +                <string>Threshold</string>                 </property> -               <property name="minimum"> -                <number>-180</number> +               <property name="buddy"> +                <cstring>threshold_slider</cstring>                 </property> -               <property name="maximum"> -                <number>180</number> +              </widget> +             </item> +             <item row="0" column="0"> +              <widget class="QLabel" name="label_38"> +               <property name="text"> +                <string>Automatic threshold</string>                 </property>                </widget>               </item>               <item row="0" column="1"> -              <widget class="QSpinBox" name="camera_yaw"> -               <property name="minimumSize"> -                <size> -                 <width>80</width> -                 <height>0</height> -                </size> +              <widget class="QCheckBox" name="auto_threshold"> +               <property name="text"> +                <string>Enable, slider sets point size</string>                 </property> -               <property name="minimum"> -                <number>-180</number> +              </widget> +             </item> +            </layout> +           </widget> +          </item> +          <item> +           <widget class="QFrame" name="frame"> +            <property name="frameShape"> +             <enum>QFrame::NoFrame</enum> +            </property> +            <property name="frameShadow"> +             <enum>QFrame::Raised</enum> +            </property> +            <layout class="QGridLayout" name="gridLayout_3"> +             <property name="topMargin"> +              <number>0</number> +             </property> +             <property name="bottomMargin"> +              <number>0</number> +             </property> +             <property name="verticalSpacing"> +              <number>0</number> +             </property> +             <item row="0" column="0"> +              <widget class="QLabel" name="label_29"> +               <property name="text"> +                <string>Min size</string>                 </property> -               <property name="maximum"> -                <number>180</number> +               <property name="buddy"> +                <cstring>mindiam_spin</cstring>                 </property>                </widget>               </item> -             <item row="1" column="0"> -              <widget class="QLabel" name="label_19"> +             <item row="0" column="2"> +              <widget class="QLabel" name="label_22">                 <property name="text"> -                <string>Pitch</string> +                <string>Max size</string> +               </property> +               <property name="buddy"> +                <cstring>maxdiam_spin</cstring>                 </property>                </widget>               </item> -             <item row="1" column="1"> -              <widget class="QSpinBox" name="camera_pitch"> -               <property name="minimumSize"> -                <size> -                 <width>80</width> -                 <height>0</height> -                </size> +             <item row="0" column="3"> +              <widget class="QDoubleSpinBox" name="maxdiam_spin"> +               <property name="toolTip"> +                <string>Maximum point diameter</string>                 </property> -               <property name="minimum"> -                <number>-180</number> +               <property name="suffix"> +                <string> px</string>                 </property> -               <property name="maximum"> -                <number>180</number> +               <property name="decimals"> +                <number>1</number>                 </property>                </widget>               </item> -             <item row="0" column="0"> -              <widget class="QLabel" name="label_18"> -               <property name="text"> -                <string>Yaw</string> +             <item row="0" column="1"> +              <widget class="QDoubleSpinBox" name="mindiam_spin"> +               <property name="toolTip"> +                <string>Minimum point diameter</string> +               </property> +               <property name="suffix"> +                <string> px</string> +               </property> +               <property name="decimals"> +                <number>1</number>                 </property>                </widget>               </item> @@ -396,179 +537,341 @@          </widget>         </item>         <item> -        <widget class="QGroupBox" name="groupBox_6"> +        <widget class="QGroupBox" name="groupBox_11">           <property name="title"> -          <string>Center pose offset</string> +          <string>Status</string>           </property> -         <layout class="QVBoxLayout" name="verticalLayout_6"> +         <layout class="QHBoxLayout" name="horizontalLayout">            <item> -           <widget class="QLabel" name="label_22"> +           <widget class="QLabel" name="caminfo_label">              <property name="text"> -             <string>Alter the centered position sent to games by a fixed amount.</string> -            </property> -            <property name="wordWrap"> -             <bool>true</bool> -            </property> -            <property name="margin"> -             <number>2</number> +             <string>Not running</string>              </property>             </widget>            </item>            <item> -           <widget class="QGroupBox" name="groupBox_7"> -            <property name="styleSheet"> -             <string notr="true">QGroupBox { -	border: 0; -}</string> -            </property> -            <property name="title"> +           <widget class="QLabel" name="pointinfo_label"> +            <property name="text">               <string/>              </property> -            <property name="alignment"> -             <set>Qt::AlignCenter</set> +           </widget> +          </item> +         </layout> +        </widget> +       </item> +       <item> +        <spacer name="verticalSpacer_2"> +         <property name="orientation"> +          <enum>Qt::Vertical</enum> +         </property> +         <property name="sizeHint" stdset="0"> +          <size> +           <width>20</width> +           <height>40</height> +          </size> +         </property> +        </spacer> +       </item> +      </layout> +     </widget> +     <widget class="QWidget" name="tab_2"> +      <attribute name="title"> +       <string>Model</string> +      </attribute> +      <layout class="QVBoxLayout" name="verticalLayout_2"> +       <item> +        <widget class="QGroupBox" name="groupBox_6111"> +         <property name="sizePolicy"> +          <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> +           <horstretch>0</horstretch> +           <verstretch>0</verstretch> +          </sizepolicy> +         </property> +         <property name="styleSheet"> +          <string notr="true">QFrame { border: 0; }</string> +         </property> +         <layout class="QGridLayout" name="gridLayout_17"> +          <property name="leftMargin"> +           <number>31</number> +          </property> +          <property name="topMargin"> +           <number>4</number> +          </property> +          <item row="0" column="1"> +           <widget class="QComboBox" name="model_used"> +            <property name="sizeAdjustPolicy"> +             <enum>QComboBox::AdjustToMinimumContentsLength</enum>              </property> -            <property name="flat"> -             <bool>false</bool> +            <property name="iconSize"> +             <size> +              <width>32</width> +              <height>32</height> +             </size>              </property> -            <property name="checkable"> -             <bool>false</bool> +            <item> +             <property name="text"> +              <string>Cap</string> +             </property> +             <property name="icon"> +              <iconset resource="ui-res.qrc"> +               <normaloff>:/images/trackhat-hat.png</normaloff>:/images/trackhat-hat.png</iconset> +             </property> +            </item> +            <item> +             <property name="text"> +              <string>Clip</string> +             </property> +             <property name="icon"> +              <iconset resource="ui-res.qrc"> +               <normaloff>:/images/trackhat-clip-right.png</normaloff>:/images/trackhat-clip-right.png</iconset> +             </property> +            </item> +            <item> +             <property name="text"> +              <string>Clip left-handed</string> +             </property> +             <property name="icon"> +              <iconset resource="ui-res.qrc"> +               <normaloff>:/images/trackhat-clip-left.png</normaloff>:/images/trackhat-clip-left.png</iconset> +             </property> +            </item> +           </widget> +          </item> +          <item row="0" column="0"> +           <widget class="QLabel" name="label_31"> +            <property name="text"> +             <string>Model used</string>              </property> -            <layout class="QGridLayout" name="gridLayout_3"> -             <item row="2" column="1"> -              <widget class="QDoubleSpinBox" name="pos_rz"> -               <property name="suffix"> -                <string> deg.</string> -               </property> -               <property name="decimals"> -                <number>3</number> -               </property> -               <property name="minimum"> -                <double>-180.000000000000000</double> +           </widget> +          </item> +         </layout> +        </widget> +       </item> +       <item> +        <widget class="QGroupBox" name="groupBox_10"> +         <property name="sizePolicy"> +          <sizepolicy hsizetype="Preferred" vsizetype="Maximum"> +           <horstretch>0</horstretch> +           <verstretch>0</verstretch> +          </sizepolicy> +         </property> +         <property name="title"> +          <string>Model position calibration</string> +         </property> +         <layout class="QGridLayout" name="gridLayout_11"> +          <item row="0" column="0"> +           <widget class="QFrame" name="frame_3"> +            <property name="frameShape"> +             <enum>QFrame::NoFrame</enum> +            </property> +            <property name="frameShadow"> +             <enum>QFrame::Raised</enum> +            </property> +            <layout class="QGridLayout" name="gridLayout_12"> +             <item row="0" column="0"> +              <widget class="QLabel" name="label_61"> +               <property name="sizePolicy"> +                <sizepolicy hsizetype="Maximum" vsizetype="Preferred"> +                 <horstretch>0</horstretch> +                 <verstretch>0</verstretch> +                </sizepolicy>                 </property> -               <property name="maximum"> -                <double>180.000000000000000</double> +               <property name="text"> +                <string>x:</string>                 </property>                </widget>               </item> -             <item row="2" column="3"> -              <widget class="QDoubleSpinBox" name="pos_tz"> +             <item row="0" column="1"> +              <widget class="QSpinBox" name="tx_spin">                 <property name="suffix"> -                <string> cm</string> -               </property> -               <property name="decimals"> -                <number>3</number> +                <string> mm</string>                 </property>                 <property name="minimum"> -                <double>-100.000000000000000</double> +                <number>-65535</number>                 </property>                 <property name="maximum"> -                <double>100.000000000000000</double> +                <number>65536</number>                 </property>                </widget>               </item> -             <item row="0" column="2"> -              <widget class="QLabel" name="label_4"> +             <item row="1" column="0"> +              <widget class="QLabel" name="label_62"> +               <property name="sizePolicy"> +                <sizepolicy hsizetype="Maximum" vsizetype="Preferred"> +                 <horstretch>0</horstretch> +                 <verstretch>0</verstretch> +                </sizepolicy> +               </property>                 <property name="text"> -                <string>TX</string> +                <string>y:</string>                 </property>                </widget>               </item> -             <item row="0" column="3"> -              <widget class="QDoubleSpinBox" name="pos_tx"> +             <item row="1" column="1"> +              <widget class="QSpinBox" name="ty_spin">                 <property name="suffix"> -                <string> cm</string> -               </property> -               <property name="decimals"> -                <number>3</number> +                <string> mm</string>                 </property>                 <property name="minimum"> -                <double>-100.000000000000000</double> +                <number>-65535</number>                 </property>                 <property name="maximum"> -                <double>100.000000000000000</double> +                <number>65536</number>                 </property>                </widget>               </item> -             <item row="1" column="0"> -              <widget class="QLabel" name="label"> -               <property name="text"> -                <string>RY</string> +             <item row="2" column="0"> +              <widget class="QLabel" name="label_66"> +               <property name="sizePolicy"> +                <sizepolicy hsizetype="Maximum" vsizetype="Preferred"> +                 <horstretch>0</horstretch> +                 <verstretch>0</verstretch> +                </sizepolicy>                 </property> -              </widget> -             </item> -             <item row="1" column="2"> -              <widget class="QLabel" name="label_5">                 <property name="text"> -                <string>TY</string> +                <string>z:</string>                 </property>                </widget>               </item> -             <item row="1" column="1"> -              <widget class="QDoubleSpinBox" name="pos_ry"> +             <item row="2" column="1"> +              <widget class="QSpinBox" name="tz_spin">                 <property name="suffix"> -                <string> deg.</string> -               </property> -               <property name="decimals"> -                <number>3</number> +                <string> mm</string>                 </property>                 <property name="minimum"> -                <double>-180.000000000000000</double> +                <number>-65535</number>                 </property>                 <property name="maximum"> -                <double>180.000000000000000</double> +                <number>65536</number>                 </property>                </widget>               </item> -             <item row="2" column="2"> -              <widget class="QLabel" name="label_6"> +            </layout> +           </widget> +          </item> +          <item row="0" column="1"> +           <widget class="QLabel" name="label_59"> +            <property name="text"> +             <string><html><head/><body><p>Only pitch and yaw during calibration.</p><p>Don't roll and don't translate.</p></body></html></string> +            </property> +           </widget> +          </item> +          <item row="2" column="1"> +           <widget class="QPushButton" name="tcalib_button"> +            <property name="enabled"> +             <bool>false</bool> +            </property> +            <property name="text"> +             <string>Toggle calibration</string> +            </property> +            <property name="checkable"> +             <bool>true</bool> +            </property> +           </widget> +          </item> +         </layout> +        </widget> +       </item> +       <item> +        <widget class="QGroupBox" name="groupBox_5"> +         <property name="title"> +          <string>Camera offset</string> +         </property> +         <layout class="QGridLayout" name="gridLayout_6"> +          <item row="2" column="0"> +           <widget class="QLabel" name="label_17"> +            <property name="text"> +             <string><html><head/><body><p>Specify an angle for off-center camera as a basis for which direction is which, avoiding axis interconnect. Also see <a href="https://github.com/opentrack/opentrack/wiki/choosing-camera-offset"><span style=" text-decoration: underline; color:#0000ff;">description on wiki</span></a>.</p></body></html></string> +            </property> +            <property name="alignment"> +             <set>Qt::AlignJustify|Qt::AlignVCenter</set> +            </property> +            <property name="wordWrap"> +             <bool>true</bool> +            </property> +            <property name="margin"> +             <number>2</number> +            </property> +            <property name="openExternalLinks"> +             <bool>true</bool> +            </property> +           </widget> +          </item> +          <item row="3" column="0" alignment="Qt::AlignLeft"> +           <widget class="QGroupBox" name="groupBox_3"> +            <property name="styleSheet"> +             <string notr="true">QGroupBox +{ +	border: 0; +}</string> +            </property> +            <layout class="QGridLayout" name="gridLayout_7"> +             <item row="2" column="0"> +              <widget class="QLabel" name="label_21">                 <property name="text"> -                <string>TZ</string> +                <string>Roll</string>                 </property>                </widget>               </item> -             <item row="2" column="0"> -              <widget class="QLabel" name="label_3"> -               <property name="text"> -                <string>RZ</string> +             <item row="2" column="1"> +              <widget class="QSpinBox" name="camera_roll"> +               <property name="minimumSize"> +                <size> +                 <width>80</width> +                 <height>0</height> +                </size> +               </property> +               <property name="minimum"> +                <number>-180</number> +               </property> +               <property name="maximum"> +                <number>180</number>                 </property>                </widget>               </item> -             <item row="1" column="3"> -              <widget class="QDoubleSpinBox" name="pos_ty"> -               <property name="suffix"> -                <string> cm</string> -               </property> -               <property name="decimals"> -                <number>3</number> +             <item row="0" column="1"> +              <widget class="QSpinBox" name="camera_yaw"> +               <property name="minimumSize"> +                <size> +                 <width>80</width> +                 <height>0</height> +                </size>                 </property>                 <property name="minimum"> -                <double>-100.000000000000000</double> +                <number>-180</number>                 </property>                 <property name="maximum"> -                <double>100.000000000000000</double> +                <number>180</number>                 </property>                </widget>               </item> -             <item row="0" column="0"> -              <widget class="QLabel" name="label_2"> +             <item row="1" column="0"> +              <widget class="QLabel" name="label_19">                 <property name="text"> -                <string>RX</string> +                <string>Pitch</string>                 </property>                </widget>               </item> -             <item row="0" column="1"> -              <widget class="QDoubleSpinBox" name="pos_rx"> -               <property name="suffix"> -                <string> deg.</string> -               </property> -               <property name="decimals"> -                <number>3</number> +             <item row="1" column="1"> +              <widget class="QSpinBox" name="camera_pitch"> +               <property name="minimumSize"> +                <size> +                 <width>80</width> +                 <height>0</height> +                </size>                 </property>                 <property name="minimum"> -                <double>-180.000000000000000</double> +                <number>-180</number>                 </property>                 <property name="maximum"> -                <double>180.000000000000000</double> +                <number>180</number> +               </property> +              </widget> +             </item> +             <item row="0" column="0"> +              <widget class="QLabel" name="label_18"> +               <property name="text"> +                <string>Yaw</string>                 </property>                </widget>               </item> @@ -579,14 +882,14 @@          </widget>         </item>         <item> -        <spacer name="verticalSpacer_2"> +        <spacer name="verticalSpacer_5">           <property name="orientation">            <enum>Qt::Vertical</enum>           </property>           <property name="sizeHint" stdset="0">            <size>             <width>20</width> -           <height>40</height> +           <height>10</height>            </size>           </property>          </spacer> @@ -655,7 +958,7 @@           </layout>          </widget>         </item> -       <item alignment="Qt::AlignTop"> +       <item>          <widget class="QGroupBox" name="groupBox_4">           <property name="maximumSize">            <size> @@ -1090,6 +1393,345 @@         </item>        </layout>       </widget> +     <widget class="QWidget" name="tab_6"> +      <attribute name="title"> +       <string>Filter</string> +      </attribute> +      <layout class="QVBoxLayout" name="verticalLayout_6"> +       <item> +        <widget class="QFrame" name="frame_4"> +         <property name="frameShape"> +          <enum>QFrame::NoFrame</enum> +         </property> +         <property name="frameShadow"> +          <enum>QFrame::Raised</enum> +         </property> +         <layout class="QGridLayout" name="gridLayout_14"> +          <item row="1" column="3"> +           <widget class="QSlider" name="rotation_slider"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy> +            </property> +            <property name="minimumSize"> +             <size> +              <width>0</width> +              <height>24</height> +             </size> +            </property> +            <property name="maximum"> +             <number>99</number> +            </property> +            <property name="pageStep"> +             <number>5</number> +            </property> +            <property name="orientation"> +             <enum>Qt::Horizontal</enum> +            </property> +            <property name="tickPosition"> +             <enum>QSlider::TicksAbove</enum> +            </property> +            <property name="tickInterval"> +             <number>24</number> +            </property> +           </widget> +          </item> +          <item row="1" column="0"> +           <widget class="QLabel" name="lblSensYaw_6"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Preferred" vsizetype="Minimum"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy> +            </property> +            <property name="text"> +             <string>Rotation sensitivity</string> +            </property> +           </widget> +          </item> +          <item row="0" column="0"> +           <widget class="QLabel" name="label_6"> +            <property name="text"> +             <string>Smoothing</string> +            </property> +           </widget> +          </item> +          <item row="0" column="1"> +           <widget class="QLabel" name="ewma_label"> +            <property name="minimumSize"> +             <size> +              <width>48</width> +              <height>0</height> +             </size> +            </property> +            <property name="text"> +             <string>0 ms</string> +            </property> +           </widget> +          </item> +          <item row="1" column="1"> +           <widget class="QLabel" name="rot_gain"> +            <property name="text"> +             <string>0°</string> +            </property> +           </widget> +          </item> +          <item row="0" column="3"> +           <widget class="QSlider" name="ewma_slider"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy> +            </property> +            <property name="minimumSize"> +             <size> +              <width>0</width> +              <height>24</height> +             </size> +            </property> +            <property name="maximum"> +             <number>100</number> +            </property> +            <property name="singleStep"> +             <number>10</number> +            </property> +            <property name="pageStep"> +             <number>25</number> +            </property> +            <property name="orientation"> +             <enum>Qt::Horizontal</enum> +            </property> +            <property name="tickPosition"> +             <enum>QSlider::TicksAbove</enum> +            </property> +            <property name="tickInterval"> +             <number>24</number> +            </property> +           </widget> +          </item> +          <item row="6" column="0"> +           <widget class="QLabel" name="label_27"> +            <property name="text"> +             <string>Translation deadzone</string> +            </property> +           </widget> +          </item> +          <item row="4" column="0"> +           <widget class="QLabel" name="label_28"> +            <property name="text"> +             <string>Rotation deadzone</string> +            </property> +           </widget> +          </item> +          <item row="4" column="3"> +           <widget class="QSlider" name="rot_dz_slider"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy> +            </property> +            <property name="minimumSize"> +             <size> +              <width>0</width> +              <height>24</height> +             </size> +            </property> +            <property name="maximum"> +             <number>100</number> +            </property> +            <property name="orientation"> +             <enum>Qt::Horizontal</enum> +            </property> +            <property name="tickPosition"> +             <enum>QSlider::TicksAbove</enum> +            </property> +            <property name="tickInterval"> +             <number>24</number> +            </property> +           </widget> +          </item> +          <item row="4" column="1"> +           <widget class="QLabel" name="rot_dz"> +            <property name="text"> +             <string>0°</string> +            </property> +           </widget> +          </item> +          <item row="6" column="3"> +           <widget class="QSlider" name="trans_dz_slider"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy> +            </property> +            <property name="minimumSize"> +             <size> +              <width>0</width> +              <height>24</height> +             </size> +            </property> +            <property name="maximum"> +             <number>100</number> +            </property> +            <property name="orientation"> +             <enum>Qt::Horizontal</enum> +            </property> +            <property name="tickPosition"> +             <enum>QSlider::TicksAbove</enum> +            </property> +            <property name="tickInterval"> +             <number>24</number> +            </property> +           </widget> +          </item> +          <item row="6" column="1"> +           <widget class="QLabel" name="trans_dz"> +            <property name="text"> +             <string>0mm</string> +            </property> +           </widget> +          </item> +          <item row="5" column="0"> +           <widget class="QLabel" name="label_30"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Preferred" vsizetype="Minimum"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy> +            </property> +            <property name="text"> +             <string>Translation sensitivity</string> +            </property> +           </widget> +          </item> +          <item row="5" column="1"> +           <widget class="QLabel" name="trans_gain"> +            <property name="text"> +             <string>0mm</string> +            </property> +           </widget> +          </item> +          <item row="5" column="3"> +           <widget class="QSlider" name="translation_slider"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy> +            </property> +            <property name="minimumSize"> +             <size> +              <width>0</width> +              <height>24</height> +             </size> +            </property> +            <property name="maximum"> +             <number>99</number> +            </property> +            <property name="pageStep"> +             <number>5</number> +            </property> +            <property name="orientation"> +             <enum>Qt::Horizontal</enum> +            </property> +            <property name="tickPosition"> +             <enum>QSlider::TicksAbove</enum> +            </property> +            <property name="tickInterval"> +             <number>24</number> +            </property> +           </widget> +          </item> +         </layout> +        </widget> +       </item> +       <item> +        <widget class="QGroupBox" name="groupBox_12"> +         <property name="title"> +          <string/> +         </property> +         <layout class="QGridLayout" name="gridLayout_13"> +          <item row="0" column="1"> +           <widget class="QLabel" name="label_26111"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Maximum" vsizetype="Maximum"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy> +            </property> +            <property name="font"> +             <font> +              <pointsize>7</pointsize> +             </font> +            </property> +            <property name="frameShape"> +             <enum>QFrame::NoFrame</enum> +            </property> +            <property name="text"> +             <string><html><head/><body><p align="justify"><br/><span style=" font-size:10pt;">Accela by </span><a href="https://github.com/sthalik"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Stanisław Halik</span></a><span style=" font-size:10pt;"><br/>Thanks to </span><a href="https://github.com/dbaarda"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Donovan Baarda</span></a></p><p align="right"><span style=" font-size:10pt;">2012-2015</span></p></body></html></string> +            </property> +            <property name="textFormat"> +             <enum>Qt::RichText</enum> +            </property> +            <property name="scaledContents"> +             <bool>false</bool> +            </property> +            <property name="alignment"> +             <set>Qt::AlignCenter</set> +            </property> +            <property name="wordWrap"> +             <bool>true</bool> +            </property> +            <property name="margin"> +             <number>0</number> +            </property> +            <property name="indent"> +             <number>0</number> +            </property> +            <property name="openExternalLinks"> +             <bool>true</bool> +            </property> +            <property name="textInteractionFlags"> +             <set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set> +            </property> +           </widget> +          </item> +          <item row="0" column="0"> +           <widget class="QLabel" name="label_5"> +            <property name="text"> +             <string><html><head/><body><p>Visit <a href="https://github.com/opentrack/opentrack/wiki/Accela-in-opentrack-2.3"><span style=" text-decoration: underline; color:#0000ff;">our wiki</span></a> for description of the settings.</p></body></html></string> +            </property> +            <property name="openExternalLinks"> +             <bool>true</bool> +            </property> +           </widget> +          </item> +         </layout> +        </widget> +       </item> +       <item> +        <spacer name="verticalSpacer_4"> +         <property name="orientation"> +          <enum>Qt::Vertical</enum> +         </property> +         <property name="sizeType"> +          <enum>QSizePolicy::Expanding</enum> +         </property> +         <property name="sizeHint" stdset="0"> +          <size> +           <width>0</width> +           <height>0</height> +          </size> +         </property> +        </spacer> +       </item> +      </layout> +     </widget>       <widget class="QWidget" name="tab_5">        <attribute name="title">         <string>Game detection</string> @@ -1101,9 +1743,6 @@            <string>Game detection</string>           </property>           <layout class="QGridLayout" name="gridLayout_2"> -          <item row="1" column="0"> -           <widget class="process_detector" name="game_detector" native="true"/> -          </item>            <item row="0" column="0">             <widget class="QLabel" name="label_24">              <property name="sizePolicy"> @@ -1120,6 +1759,9 @@              </property>             </widget>            </item> +          <item row="1" column="0"> +           <widget class="process_detector" name="game_detector" native="true"/> +          </item>           </layout>          </widget>         </item> @@ -1147,15 +1789,6 @@    <tabstop>tabWidget</tabstop>    <tabstop>center_at_startup</tabstop>    <tabstop>trayp</tabstop> -  <tabstop>camera_yaw</tabstop> -  <tabstop>camera_pitch</tabstop> -  <tabstop>camera_roll</tabstop> -  <tabstop>pos_rx</tabstop> -  <tabstop>pos_ry</tabstop> -  <tabstop>pos_rz</tabstop> -  <tabstop>pos_tx</tabstop> -  <tabstop>pos_ty</tabstop> -  <tabstop>pos_tz</tabstop>    <tabstop>tcomp_enable</tabstop>    <tabstop>tcomp_rz</tabstop>    <tabstop>src_yaw</tabstop> @@ -1171,8 +1804,27 @@    <tabstop>src_z</tabstop>    <tabstop>invert_z</tabstop>   </tabstops> - <resources/> + <resources> +  <include location="ui-res.qrc"/> + </resources>   <connections/> + <designerdata> +  <property name="gridDeltaX"> +   <number>5</number> +  </property> +  <property name="gridDeltaY"> +   <number>5</number> +  </property> +  <property name="gridSnapX"> +   <bool>true</bool> +  </property> +  <property name="gridSnapY"> +   <bool>true</bool> +  </property> +  <property name="gridVisible"> +   <bool>true</bool> +  </property> + </designerdata>   <slots>    <slot>startEngineClicked()</slot>    <slot>stopEngineClicked()</slot> | 
