<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <comment>
    MIDI Virtual Piano Keyboard
    Copyright (C) 2008-2024, Pedro Lopez-Cabanillas

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along
    with this program; If not, see http://www.gnu.org/licenses/
 </comment>
 <class>PreferencesClass</class>
 <widget class="QDialog" name="PreferencesClass">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>388</width>
    <height>387</height>
   </rect>
  </property>
  <property name="windowTitle">
   <string>Preferences</string>
  </property>
  <property name="windowIcon">
   <iconset resource="../data/vmpk.qrc">
    <normaloff>:/vpiano/vmpk_32x32.png</normaloff>:/vpiano/vmpk_32x32.png</iconset>
  </property>
  <layout class="QVBoxLayout" name="verticalLayout">
   <item>
    <widget class="QTabWidget" name="tabWidget">
     <property name="currentIndex">
      <number>0</number>
     </property>
     <widget class="QWidget" name="tabInput">
      <attribute name="title">
       <string>Input</string>
      </attribute>
      <layout class="QGridLayout" name="gridLayout">
       <item row="0" column="0">
        <widget class="QLabel" name="lblKmap">
         <property name="text">
          <string>Keyboard Map</string>
         </property>
         <property name="buddy">
          <cstring>txtFileKmap</cstring>
         </property>
        </widget>
       </item>
       <item row="0" column="1">
        <widget class="QLineEdit" name="txtFileKmap">
         <property name="readOnly">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="0" column="2">
        <widget class="QPushButton" name="btnKmap">
         <property name="text">
          <string>Load...</string>
         </property>
        </widget>
       </item>
       <item row="1" column="0">
        <widget class="QLabel" name="lblRawKmap">
         <property name="text">
          <string>Raw Keyboard Map</string>
         </property>
         <property name="buddy">
          <cstring>txtFileRawKmap</cstring>
         </property>
        </widget>
       </item>
       <item row="1" column="1">
        <widget class="QLineEdit" name="txtFileRawKmap">
         <property name="readOnly">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="1" column="2">
        <widget class="QPushButton" name="btnRawKmap">
         <property name="text">
          <string>Load...</string>
         </property>
        </widget>
       </item>
       <item row="2" column="0" colspan="3">
        <widget class="QCheckBox" name="chkEnableKeyboard">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Enable Computer Keyboard Input</string>
         </property>
         <property name="checked">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="3" column="0" colspan="3">
        <widget class="QCheckBox" name="chkRawKeyboard">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="whatsThis">
          <string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Check this box to use low level PC keyboard events. This system has several advantages:&lt;/p&gt;
&lt;ul style=&quot;-qt-list-indent: 1;&quot;&gt;&lt;li style=&quot; margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;It is possible to use &quot;dead keys&quot; (accent marks, diacritics)&lt;/li&gt;
&lt;li style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Mapping definitions are independent of the language (but hardware and OS specific)&lt;/li&gt;
&lt;li style=&quot; margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Faster processing&lt;/li&gt;&lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;</string>
         </property>
         <property name="text">
          <string>Raw Computer Keyboard</string>
         </property>
        </widget>
       </item>
       <item row="4" column="0" colspan="3">
        <widget class="QCheckBox" name="chkEnableMouse">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Enable Mouse Input</string>
         </property>
         <property name="checked">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="5" column="0" colspan="3">
        <widget class="QCheckBox" name="chkEnableTouch">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Enable Touch Screen Input</string>
         </property>
         <property name="checked">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="6" column="1">
        <spacer name="verticalSpacer">
         <property name="orientation">
          <enum>Qt::Vertical</enum>
         </property>
         <property name="sizeHint" stdset="0">
          <size>
           <width>20</width>
           <height>100</height>
          </size>
         </property>
        </spacer>
       </item>
      </layout>
     </widget>
     <widget class="QWidget" name="tabVisualization">
      <attribute name="title">
       <string>Visualization</string>
      </attribute>
      <layout class="QGridLayout" name="gridLayout_2">
       <item row="2" column="3">
        <widget class="QPushButton" name="btnColor">
         <property name="whatsThis">
          <string>Press this button to change the highligh color used to paint the keys that are being activated.</string>
         </property>
         <property name="text">
          <string>Colors...</string>
         </property>
        </widget>
       </item>
       <item row="7" column="0" colspan="4">
        <widget class="QCheckBox" name="chkVelocityColor">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Translate MIDI velocity to highlighting color tint</string>
         </property>
         <property name="checked">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="8" column="0" colspan="4">
        <widget class="QCheckBox" name="chkDarkMode">
         <property name="enabled">
          <bool>true</bool>
         </property>
         <property name="text">
          <string>Forced Dark Mode</string>
         </property>
        </widget>
       </item>
       <item row="0" column="2">
        <widget class="QSpinBox" name="spinNumKeys">
         <property name="whatsThis">
          <string>The number of octaves, from 1 to 10. Each octave has 12 keys: 7 white and 5 black. The MIDI standard has 128 notes, but not all instruments can play all of them.</string>
         </property>
         <property name="minimum">
          <number>1</number>
         </property>
         <property name="maximum">
          <number>121</number>
         </property>
        </widget>
       </item>
       <item row="2" column="0">
        <widget class="QLabel" name="lblKeyPressColor">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Note highlight color</string>
         </property>
         <property name="buddy">
          <cstring>cboColorPolicy</cstring>
         </property>
        </widget>
       </item>
       <item row="1" column="0" colspan="2">
        <widget class="QLabel" name="lblStartingKey">
         <property name="text">
          <string>Starting Key</string>
         </property>
         <property name="buddy">
          <cstring>cboStartingKey</cstring>
         </property>
        </widget>
       </item>
       <item row="0" column="0" colspan="2">
        <widget class="QLabel" name="lblNumKeys">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Number of keys</string>
         </property>
         <property name="buddy">
          <cstring>spinNumKeys</cstring>
         </property>
        </widget>
       </item>
       <item row="4" column="2">
        <widget class="QComboBox" name="cboOctaveName">
         <property name="currentIndex">
          <number>1</number>
         </property>
         <item>
          <property name="text">
           <string>C3</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>C4</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>C5</string>
          </property>
         </item>
        </widget>
       </item>
       <item row="5" column="0" colspan="2">
        <widget class="QLabel" name="lblDrumsChannel">
         <property name="text">
          <string>Drums Channel</string>
         </property>
         <property name="buddy">
          <cstring>cboDrumsChannel</cstring>
         </property>
        </widget>
       </item>
       <item row="1" column="2">
        <widget class="QComboBox" name="cboStartingKey"/>
       </item>
       <item row="3" column="0">
        <widget class="QLabel" name="lblFont">
         <property name="text">
          <string>Text Font</string>
         </property>
         <property name="buddy">
          <cstring>txtFont</cstring>
         </property>
        </widget>
       </item>
       <item row="4" column="0" colspan="2">
        <widget class="QLabel" name="lblOctaveNames">
         <property name="text">
          <string>Central Octave Naming</string>
         </property>
         <property name="buddy">
          <cstring>cboOctaveName</cstring>
         </property>
        </widget>
       </item>
       <item row="5" column="2">
        <widget class="QComboBox" name="cboDrumsChannel">
         <item>
          <property name="text">
           <string>None</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>1</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>2</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>3</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>4</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>5</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>6</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>7</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>8</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>9</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>10</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>11</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>12</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>13</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>14</string>
          </property>
         </item>
         <item>
          <property name="text">
           <string>15</string>
          </property>
         </item>
        </widget>
       </item>
       <item row="9" column="2">
        <spacer name="verticalSpacer_2">
         <property name="orientation">
          <enum>Qt::Vertical</enum>
         </property>
         <property name="sizeHint" stdset="0">
          <size>
           <width>20</width>
           <height>0</height>
          </size>
         </property>
        </spacer>
       </item>
       <item row="2" column="1" colspan="2">
        <widget class="QComboBox" name="cboColorPolicy"/>
       </item>
       <item row="3" column="3">
        <widget class="QPushButton" name="btnFont">
         <property name="text">
          <string>Font...</string>
         </property>
        </widget>
       </item>
       <item row="3" column="1" colspan="2">
        <widget class="QLineEdit" name="txtFont">
         <property name="readOnly">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="6" column="0">
        <widget class="QLabel" name="lblStyle">
         <property name="text">
          <string>Qt Widgets Style</string>
         </property>
        </widget>
       </item>
       <item row="6" column="1" colspan="2">
        <widget class="QComboBox" name="cboStyle"/>
       </item>
      </layout>
     </widget>
     <widget class="QWidget" name="tabBehavior">
      <attribute name="title">
       <string>Behavior</string>
      </attribute>
      <layout class="QGridLayout" name="gridLayout_3">
       <item row="0" column="0">
        <widget class="QLabel" name="lblFileInstrument">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Instruments file</string>
         </property>
         <property name="buddy">
          <cstring>txtFileInstrument</cstring>
         </property>
        </widget>
       </item>
       <item row="0" column="1">
        <widget class="QLineEdit" name="txtFileInstrument">
         <property name="minimumSize">
          <size>
           <width>120</width>
           <height>0</height>
          </size>
         </property>
         <property name="whatsThis">
          <string>The instruments definition file currently loaded</string>
         </property>
         <property name="readOnly">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="0" column="2">
        <widget class="QPushButton" name="btnInstrument">
         <property name="whatsThis">
          <string>Press this button to load an instruments definition file from disk.</string>
         </property>
         <property name="text">
          <string>Load...</string>
         </property>
        </widget>
       </item>
       <item row="1" column="0">
        <widget class="QLabel" name="lblInstrument">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Instrument</string>
         </property>
         <property name="buddy">
          <cstring>cboInstrument</cstring>
         </property>
        </widget>
       </item>
       <item row="1" column="1">
        <widget class="QComboBox" name="cboInstrument">
         <property name="whatsThis">
          <string>Change the instrument definition being currently used. Each instruments definition file may hold several instruments on it.</string>
         </property>
        </widget>
       </item>
       <item row="2" column="0" colspan="3">
        <widget class="QCheckBox" name="chkEnforceChannelState">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>MIDI channel state consistency</string>
         </property>
        </widget>
       </item>
       <item row="3" column="0" colspan="3">
        <widget class="QCheckBox" name="chkAlwaysOnTop">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="whatsThis">
          <string>Check this box to keep the keyboard window always visible, on top of other windows.</string>
         </property>
         <property name="text">
          <string>Always On Top</string>
         </property>
        </widget>
       </item>
       <item row="4" column="0" colspan="3">
        <widget class="QCheckBox" name="chkWinSnap">
         <property name="sizePolicy">
          <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
         <property name="text">
          <string>Sticky Window Snapping (Windows)</string>
         </property>
         <property name="checked">
          <bool>true</bool>
         </property>
        </widget>
       </item>
       <item row="5" column="1">
        <spacer name="verticalSpacer_3">
         <property name="orientation">
          <enum>Qt::Vertical</enum>
         </property>
         <property name="sizeHint" stdset="0">
          <size>
           <width>20</width>
           <height>130</height>
          </size>
         </property>
        </spacer>
       </item>
      </layout>
     </widget>
    </widget>
   </item>
   <item>
    <widget class="QDialogButtonBox" name="buttonBox">
     <property name="standardButtons">
      <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok|QDialogButtonBox::RestoreDefaults</set>
     </property>
    </widget>
   </item>
  </layout>
 </widget>
 <layoutdefault spacing="6" margin="11"/>
 <tabstops>
  <tabstop>spinNumKeys</tabstop>
  <tabstop>cboStartingKey</tabstop>
  <tabstop>cboColorPolicy</tabstop>
  <tabstop>btnColor</tabstop>
  <tabstop>txtFileInstrument</tabstop>
  <tabstop>btnInstrument</tabstop>
  <tabstop>cboInstrument</tabstop>
  <tabstop>txtFileKmap</tabstop>
  <tabstop>btnKmap</tabstop>
  <tabstop>txtFileRawKmap</tabstop>
  <tabstop>btnRawKmap</tabstop>
  <tabstop>cboDrumsChannel</tabstop>
  <tabstop>cboOctaveName</tabstop>
  <tabstop>txtFont</tabstop>
  <tabstop>btnFont</tabstop>
  <tabstop>chkEnforceChannelState</tabstop>
  <tabstop>chkVelocityColor</tabstop>
  <tabstop>chkAlwaysOnTop</tabstop>
  <tabstop>chkEnableKeyboard</tabstop>
  <tabstop>chkRawKeyboard</tabstop>
  <tabstop>chkEnableMouse</tabstop>
  <tabstop>chkEnableTouch</tabstop>
 </tabstops>
 <resources>
  <include location="../data/vmpk.qrc"/>
 </resources>
 <connections>
  <connection>
   <sender>buttonBox</sender>
   <signal>accepted()</signal>
   <receiver>PreferencesClass</receiver>
   <slot>accept()</slot>
   <hints>
    <hint type="sourcelabel">
     <x>234</x>
     <y>425</y>
    </hint>
    <hint type="destinationlabel">
     <x>263</x>
     <y>11</y>
    </hint>
   </hints>
  </connection>
  <connection>
   <sender>buttonBox</sender>
   <signal>rejected()</signal>
   <receiver>PreferencesClass</receiver>
   <slot>reject()</slot>
   <hints>
    <hint type="sourcelabel">
     <x>124</x>
     <y>425</y>
    </hint>
    <hint type="destinationlabel">
     <x>155</x>
     <y>14</y>
    </hint>
   </hints>
  </connection>
  <connection>
   <sender>chkEnableKeyboard</sender>
   <signal>toggled(bool)</signal>
   <receiver>chkRawKeyboard</receiver>
   <slot>setEnabled(bool)</slot>
   <hints>
    <hint type="sourcelabel">
     <x>39</x>
     <y>312</y>
    </hint>
    <hint type="destinationlabel">
     <x>44</x>
     <y>338</y>
    </hint>
   </hints>
  </connection>
 </connections>
 <designerdata>
  <property name="gridDeltaX">
   <number>10</number>
  </property>
  <property name="gridDeltaY">
   <number>10</number>
  </property>
  <property name="gridSnapX">
   <bool>true</bool>
  </property>
  <property name="gridSnapY">
   <bool>true</bool>
  </property>
  <property name="gridVisible">
   <bool>true</bool>
  </property>
 </designerdata>
</ui>
