New settings window. Custom active track color
authorNikolay Tischenko <niktischenko@gmail.com>
Thu, 11 Nov 2010 18:18:18 +0000 (00:18 +0600)
committerNikolay Tischenko <niktischenko@gmail.com>
Thu, 11 Nov 2010 18:18:18 +0000 (00:18 +0600)
17 files changed:
resources/someplayer_ru.ts
someplayer.pro
src/config.cpp
src/directoryview.h
src/mainwindow.cpp
src/mainwindow.h
src/playerform.cpp
src/playerform.h
src/settingsdialog.cpp [deleted file]
src/settingsdialog.h [deleted file]
src/settingsform.cpp [new file with mode: 0644]
src/settingsform.h [new file with mode: 0644]
src/trackrenderer.cpp
src/trackrenderer.h
src/ui/settingsdialog.ui [deleted file]
src/ui/settingsform.ui [new file with mode: 0644]
src/ui/timerdialog.ui

index 9260fde..2f47f39 100644 (file)
     <message>
         <location filename="../src/libraryform.cpp" line="263"/>
         <source>Tracks in playlist &quot;%1&quot;</source>
-        <translation>Треки плейлиста &quot;%1&quot;</translation>
+        <translation>Треки в плейлисте &quot;%1&quot;</translation>
     </message>
     <message>
         <location filename="../src/libraryform.cpp" line="421"/>
     <message>
         <location filename="../src/libraryform.cpp" line="782"/>
         <source>Search in library</source>
-        <translation>Поиск по библиотеке</translation>
+        <translation>Поиск в библиотеке</translation>
     </message>
 </context>
 <context>
     <name>MainWindow</name>
     <message>
-        <source>someplayer</source>
-        <translation type="obsolete">someplayer</translation>
-    </message>
-    <message>
         <location filename="../src/ui/mainwindow.ui" line="14"/>
         <source>SomePlayer</source>
-        <translatorcomment>SomePlayer</translatorcomment>
         <translation>SomePlayer</translation>
     </message>
     <message>
         <location filename="../src/ui/mainwindow.ui" line="40"/>
         <source>Main</source>
-        <translation>Главное</translation>
+        <translation>Основное</translation>
     </message>
     <message>
         <location filename="../src/ui/mainwindow.ui" line="47"/>
     <message>
         <location filename="../src/ui/mainwindow.ui" line="91"/>
         <source>Set timer</source>
-        <translation>Таймер выключения</translation>
+        <translation>Установить таймер</translation>
     </message>
     <message>
         <location filename="../src/ui/mainwindow.ui" line="96"/>
     <message>
         <location filename="../src/ui/managelibraryform.ui" line="231"/>
         <source>Added directories:</source>
-        <translation>Добавленные каталоги:</translation>
+        <translation>Добавленные директории:</translation>
     </message>
     <message>
         <location filename="../src/ui/managelibraryform.ui" line="295"/>
         <source>0 artitst</source>
-        <translation></translation>
+        <translation>0 исполнителей</translation>
     </message>
     <message>
         <location filename="../src/ui/managelibraryform.ui" line="302"/>
         <source>0 albums</source>
-        <translation></translation>
+        <translation>0 альбомов</translation>
     </message>
     <message>
         <location filename="../src/ui/managelibraryform.ui" line="312"/>
         <source>0 tracks</source>
-        <translation></translation>
+        <translation>0 треков</translation>
     </message>
     <message>
         <location filename="../src/managelibraryform.cpp" line="66"/>
         <source>Select directory</source>
-        <translation>Выберите директорию</translation>
+        <translation>Выбрать директорию</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/ui/playerform.ui" line="124"/>
         <source>Music off:</source>
-        <translation>Отключение через:</translation>
+        <translation>Выключение:</translation>
     </message>
     <message>
         <location filename="../src/ui/playerform.ui" line="134"/>
     </message>
     <message>
         <location filename="../src/playerform.cpp" line="90"/>
-        <location filename="../src/playerform.cpp" line="726"/>
+        <location filename="../src/playerform.cpp" line="727"/>
         <source>Clear playlist</source>
         <translation>Очистить плейлист</translation>
     </message>
     <message>
         <location filename="../src/playerform.cpp" line="91"/>
-        <location filename="../src/playerform.cpp" line="727"/>
+        <location filename="../src/playerform.cpp" line="728"/>
         <source>Delete</source>
         <translation>Удалить</translation>
     </message>
     <message>
         <location filename="../src/playerform.cpp" line="92"/>
-        <location filename="../src/playerform.cpp" line="728"/>
+        <location filename="../src/playerform.cpp" line="729"/>
         <source>Add to favorites</source>
-        <translation>В любимые</translation>
+        <translation>В избранное</translation>
     </message>
     <message>
         <location filename="../src/playerform.cpp" line="93"/>
-        <location filename="../src/playerform.cpp" line="729"/>
+        <location filename="../src/playerform.cpp" line="730"/>
         <source>Enqueue</source>
         <translation>В очередь</translation>
     </message>
     <message>
         <location filename="../src/playerform.cpp" line="94"/>
-        <location filename="../src/playerform.cpp" line="730"/>
+        <location filename="../src/playerform.cpp" line="731"/>
         <source>Add to playlists</source>
         <translation>Добавить в плейлисты</translation>
     </message>
     <message>
         <location filename="../src/playerform.cpp" line="95"/>
-        <location filename="../src/playerform.cpp" line="731"/>
+        <location filename="../src/playerform.cpp" line="732"/>
         <source>Edit tags</source>
         <translation>Редактировать теги</translation>
     </message>
     <message>
         <location filename="../src/ui/playlistdialog.ui" line="14"/>
         <source>Dialog</source>
-        <translation></translation>
+        <translation>Диалог</translation>
     </message>
 </context>
 <context>
     </message>
 </context>
 <context>
-    <name>SettingsDialog</name>
+    <name>SettingsForm</name>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="14"/>
+        <location filename="../src/ui/settingsform.ui" line="14"/>
         <source>Settings</source>
         <translation>Настройки</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="43"/>
+        <location filename="../src/ui/settingsform.ui" line="56"/>
         <source>Icons theme:</source>
         <translation>Тема иконок:</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="52"/>
+        <location filename="../src/ui/settingsform.ui" line="68"/>
         <source>White</source>
         <translation>Белые</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="59"/>
+        <location filename="../src/ui/settingsform.ui" line="75"/>
         <source>Black</source>
         <translation>Чёрные</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="77"/>
+        <location filename="../src/ui/settingsform.ui" line="99"/>
         <source>Use gradient in portrait mode:</source>
-        <translation>Использовать градиент:</translation>
+        <translation>Градиент в портретном режиме:</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="86"/>
-        <location filename="../src/ui/settingsdialog.ui" line="198"/>
+        <location filename="../src/ui/settingsform.ui" line="111"/>
+        <location filename="../src/ui/settingsform.ui" line="359"/>
         <source>Yes</source>
         <translation>Да</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="93"/>
-        <location filename="../src/ui/settingsdialog.ui" line="205"/>
+        <location filename="../src/ui/settingsform.ui" line="118"/>
+        <location filename="../src/ui/settingsform.ui" line="366"/>
         <source>No</source>
         <translation>Нет</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="114"/>
+        <location filename="../src/ui/settingsform.ui" line="142"/>
+        <source>Active track color:</source>
+        <translation>Цвет текущего трека:</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="157"/>
+        <source>blue</source>
+        <translation>голубой</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="167"/>
+        <source>magenta</source>
+        <translation>фиолетовый</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="177"/>
+        <source>red</source>
+        <translation>красный</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="187"/>
+        <source>yellow</source>
+        <translation>жёлтый</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="197"/>
+        <source>white</source>
+        <translation>белый</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="207"/>
+        <source>black</source>
+        <translation>чёрный</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="217"/>
+        <source>light</source>
+        <translation>светлый</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="227"/>
+        <source>dark</source>
+        <translation>тёмный</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/settingsform.ui" line="254"/>
         <source>Sort album:</source>
-        <translation>Сортировать альбомы:</translation>
+        <translation>Сортировка альбомов:</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="123"/>
+        <location filename="../src/ui/settingsform.ui" line="266"/>
         <source>Alphabetical</source>
         <translation>По алфавиту</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="130"/>
+        <location filename="../src/ui/settingsform.ui" line="273"/>
         <source>By date</source>
-        <translation>По году</translation>
+        <translation>По дате</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="148"/>
+        <location filename="../src/ui/settingsform.ui" line="297"/>
         <source>Orientation:</source>
         <translation>Ориентация:</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="157"/>
+        <location filename="../src/ui/settingsform.ui" line="309"/>
         <source>Landscape</source>
         <translation>Ландшафтный</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="164"/>
+        <location filename="../src/ui/settingsform.ui" line="316"/>
         <source>Portrait</source>
         <translation>Портретный</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="171"/>
+        <location filename="../src/ui/settingsform.ui" line="323"/>
         <source>Auto</source>
         <translation>Авто</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="189"/>
+        <location filename="../src/ui/settingsform.ui" line="347"/>
         <source>Show track lenght in library view:</source>
-        <translation>Показывать длину трека в библиотеке:</translation>
+        <translation>Показыать длину трека в библиотеке:</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="223"/>
+        <location filename="../src/ui/settingsform.ui" line="390"/>
         <source>Language:</source>
         <translation>Язык:</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="232"/>
+        <location filename="../src/ui/settingsform.ui" line="402"/>
         <source>English</source>
         <translation>Английский</translation>
     </message>
     <message>
-        <location filename="../src/ui/settingsdialog.ui" line="239"/>
+        <location filename="../src/ui/settingsform.ui" line="409"/>
         <source>Russian</source>
         <translation>Русский</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="32"/>
         <location filename="../src/ui/timerdialog.ui" line="158"/>
-        <location filename="../src/ui/timerdialog.ui" line="652"/>
+        <location filename="../src/ui/timerdialog.ui" line="660"/>
         <source>00</source>
-        <translation></translation>
+        <translation>00</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="40"/>
         <location filename="../src/ui/timerdialog.ui" line="166"/>
-        <location filename="../src/ui/timerdialog.ui" line="660"/>
+        <location filename="../src/ui/timerdialog.ui" line="668"/>
         <source>01</source>
-        <translation></translation>
+        <translation>01</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="48"/>
         <location filename="../src/ui/timerdialog.ui" line="174"/>
-        <location filename="../src/ui/timerdialog.ui" line="668"/>
+        <location filename="../src/ui/timerdialog.ui" line="676"/>
         <source>02</source>
-        <translation></translation>
+        <translation>02</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="56"/>
         <location filename="../src/ui/timerdialog.ui" line="182"/>
-        <location filename="../src/ui/timerdialog.ui" line="676"/>
+        <location filename="../src/ui/timerdialog.ui" line="684"/>
         <source>03</source>
-        <translation></translation>
+        <translation>03</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="64"/>
         <location filename="../src/ui/timerdialog.ui" line="190"/>
-        <location filename="../src/ui/timerdialog.ui" line="684"/>
+        <location filename="../src/ui/timerdialog.ui" line="692"/>
         <source>04</source>
-        <translation></translation>
+        <translation>04</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="72"/>
         <location filename="../src/ui/timerdialog.ui" line="198"/>
-        <location filename="../src/ui/timerdialog.ui" line="692"/>
+        <location filename="../src/ui/timerdialog.ui" line="700"/>
         <source>05</source>
-        <translation></translation>
+        <translation>05</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="80"/>
         <location filename="../src/ui/timerdialog.ui" line="206"/>
-        <location filename="../src/ui/timerdialog.ui" line="700"/>
+        <location filename="../src/ui/timerdialog.ui" line="708"/>
         <source>06</source>
-        <translation></translation>
+        <translation>06</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="88"/>
         <location filename="../src/ui/timerdialog.ui" line="214"/>
-        <location filename="../src/ui/timerdialog.ui" line="708"/>
+        <location filename="../src/ui/timerdialog.ui" line="716"/>
         <source>07</source>
-        <translation></translation>
+        <translation>07</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="96"/>
         <location filename="../src/ui/timerdialog.ui" line="222"/>
-        <location filename="../src/ui/timerdialog.ui" line="716"/>
+        <location filename="../src/ui/timerdialog.ui" line="724"/>
         <source>08</source>
-        <translation></translation>
+        <translation>08</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="104"/>
         <location filename="../src/ui/timerdialog.ui" line="230"/>
-        <location filename="../src/ui/timerdialog.ui" line="724"/>
+        <location filename="../src/ui/timerdialog.ui" line="732"/>
         <source>09</source>
-        <translation></translation>
+        <translation>09</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="112"/>
         <location filename="../src/ui/timerdialog.ui" line="238"/>
-        <location filename="../src/ui/timerdialog.ui" line="732"/>
+        <location filename="../src/ui/timerdialog.ui" line="740"/>
         <source>10</source>
-        <translation></translation>
+        <translation>10</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="120"/>
         <location filename="../src/ui/timerdialog.ui" line="246"/>
-        <location filename="../src/ui/timerdialog.ui" line="740"/>
+        <location filename="../src/ui/timerdialog.ui" line="748"/>
         <source>11</source>
-        <translation></translation>
+        <translation>11</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="128"/>
         <location filename="../src/ui/timerdialog.ui" line="254"/>
-        <location filename="../src/ui/timerdialog.ui" line="748"/>
+        <location filename="../src/ui/timerdialog.ui" line="756"/>
         <source>12</source>
-        <translation></translation>
+        <translation>12</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="141"/>
-        <location filename="../src/ui/timerdialog.ui" line="635"/>
+        <location filename="../src/ui/timerdialog.ui" line="643"/>
         <source>:</source>
-        <translation></translation>
+        <translation>:</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="150"/>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="262"/>
-        <location filename="../src/ui/timerdialog.ui" line="756"/>
+        <location filename="../src/ui/timerdialog.ui" line="764"/>
         <source>13</source>
-        <translation></translation>
+        <translation>13</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="270"/>
-        <location filename="../src/ui/timerdialog.ui" line="764"/>
+        <location filename="../src/ui/timerdialog.ui" line="772"/>
         <source>14</source>
-        <translation></translation>
+        <translation>14</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="278"/>
-        <location filename="../src/ui/timerdialog.ui" line="772"/>
+        <location filename="../src/ui/timerdialog.ui" line="780"/>
         <source>15</source>
-        <translation></translation>
+        <translation>15</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="286"/>
-        <location filename="../src/ui/timerdialog.ui" line="780"/>
+        <location filename="../src/ui/timerdialog.ui" line="788"/>
         <source>16</source>
-        <translation></translation>
+        <translation>16</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="294"/>
-        <location filename="../src/ui/timerdialog.ui" line="788"/>
+        <location filename="../src/ui/timerdialog.ui" line="796"/>
         <source>17</source>
-        <translation></translation>
+        <translation>17</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="302"/>
-        <location filename="../src/ui/timerdialog.ui" line="796"/>
+        <location filename="../src/ui/timerdialog.ui" line="804"/>
         <source>18</source>
-        <translation></translation>
+        <translation>18</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="310"/>
-        <location filename="../src/ui/timerdialog.ui" line="804"/>
+        <location filename="../src/ui/timerdialog.ui" line="812"/>
         <source>19</source>
-        <translation></translation>
+        <translation>19</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="318"/>
-        <location filename="../src/ui/timerdialog.ui" line="812"/>
+        <location filename="../src/ui/timerdialog.ui" line="820"/>
         <source>20</source>
-        <translation></translation>
+        <translation>20</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="326"/>
-        <location filename="../src/ui/timerdialog.ui" line="820"/>
+        <location filename="../src/ui/timerdialog.ui" line="828"/>
         <source>21</source>
-        <translation></translation>
+        <translation>21</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="334"/>
-        <location filename="../src/ui/timerdialog.ui" line="828"/>
+        <location filename="../src/ui/timerdialog.ui" line="836"/>
         <source>22</source>
-        <translation></translation>
+        <translation>22</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="342"/>
-        <location filename="../src/ui/timerdialog.ui" line="836"/>
+        <location filename="../src/ui/timerdialog.ui" line="844"/>
         <source>23</source>
-        <translation></translation>
+        <translation>23</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="350"/>
-        <location filename="../src/ui/timerdialog.ui" line="844"/>
+        <location filename="../src/ui/timerdialog.ui" line="852"/>
         <source>24</source>
-        <translation></translation>
+        <translation>24</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="358"/>
-        <location filename="../src/ui/timerdialog.ui" line="852"/>
+        <location filename="../src/ui/timerdialog.ui" line="860"/>
         <source>25</source>
-        <translation></translation>
+        <translation>25</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="366"/>
-        <location filename="../src/ui/timerdialog.ui" line="860"/>
+        <location filename="../src/ui/timerdialog.ui" line="868"/>
         <source>26</source>
-        <translation></translation>
+        <translation>26</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="374"/>
-        <location filename="../src/ui/timerdialog.ui" line="868"/>
+        <location filename="../src/ui/timerdialog.ui" line="876"/>
         <source>27</source>
-        <translation></translation>
+        <translation>27</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="382"/>
-        <location filename="../src/ui/timerdialog.ui" line="876"/>
+        <location filename="../src/ui/timerdialog.ui" line="884"/>
         <source>28</source>
-        <translation></translation>
+        <translation>28</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="390"/>
-        <location filename="../src/ui/timerdialog.ui" line="884"/>
+        <location filename="../src/ui/timerdialog.ui" line="892"/>
         <source>29</source>
-        <translation></translation>
+        <translation>29</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="398"/>
-        <location filename="../src/ui/timerdialog.ui" line="892"/>
+        <location filename="../src/ui/timerdialog.ui" line="900"/>
         <source>30</source>
-        <translation></translation>
+        <translation>30</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="406"/>
-        <location filename="../src/ui/timerdialog.ui" line="900"/>
+        <location filename="../src/ui/timerdialog.ui" line="908"/>
         <source>31</source>
-        <translation></translation>
+        <translation>31</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="414"/>
-        <location filename="../src/ui/timerdialog.ui" line="908"/>
+        <location filename="../src/ui/timerdialog.ui" line="916"/>
         <source>32</source>
-        <translation></translation>
+        <translation>32</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="422"/>
-        <location filename="../src/ui/timerdialog.ui" line="916"/>
+        <location filename="../src/ui/timerdialog.ui" line="924"/>
         <source>33</source>
-        <translation></translation>
+        <translation>33</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="430"/>
-        <location filename="../src/ui/timerdialog.ui" line="924"/>
+        <location filename="../src/ui/timerdialog.ui" line="932"/>
         <source>34</source>
-        <translation></translation>
+        <translation>34</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="438"/>
-        <location filename="../src/ui/timerdialog.ui" line="932"/>
+        <location filename="../src/ui/timerdialog.ui" line="940"/>
         <source>35</source>
-        <translation></translation>
+        <translation>35</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="446"/>
-        <location filename="../src/ui/timerdialog.ui" line="940"/>
+        <location filename="../src/ui/timerdialog.ui" line="948"/>
         <source>36</source>
-        <translation></translation>
+        <translation>36</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="454"/>
-        <location filename="../src/ui/timerdialog.ui" line="948"/>
+        <location filename="../src/ui/timerdialog.ui" line="956"/>
         <source>37</source>
-        <translation></translation>
+        <translation>37</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="462"/>
-        <location filename="../src/ui/timerdialog.ui" line="956"/>
+        <location filename="../src/ui/timerdialog.ui" line="964"/>
         <source>38</source>
-        <translation></translation>
-    </message>
-    <message>
-        <location filename="../src/ui/timerdialog.ui" line="470"/>
-        <location filename="../src/ui/timerdialog.ui" line="972"/>
-        <source>40</source>
-        <translation></translation>
+        <translation>38</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="478"/>
         <location filename="../src/ui/timerdialog.ui" line="980"/>
-        <source>41</source>
-        <translation></translation>
+        <source>40</source>
+        <translation>40</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="486"/>
         <location filename="../src/ui/timerdialog.ui" line="988"/>
-        <source>42</source>
-        <translation></translation>
+        <source>41</source>
+        <translation>41</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="494"/>
         <location filename="../src/ui/timerdialog.ui" line="996"/>
-        <source>43</source>
-        <translation></translation>
+        <source>42</source>
+        <translation>42</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="502"/>
         <location filename="../src/ui/timerdialog.ui" line="1004"/>
-        <source>44</source>
-        <translation></translation>
+        <source>43</source>
+        <translation>43</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="510"/>
         <location filename="../src/ui/timerdialog.ui" line="1012"/>
-        <source>45</source>
-        <translation></translation>
+        <source>44</source>
+        <translation>44</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="518"/>
         <location filename="../src/ui/timerdialog.ui" line="1020"/>
-        <source>46</source>
-        <translation></translation>
+        <source>45</source>
+        <translation>45</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="526"/>
         <location filename="../src/ui/timerdialog.ui" line="1028"/>
-        <source>47</source>
-        <translation></translation>
+        <source>46</source>
+        <translation>46</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="534"/>
         <location filename="../src/ui/timerdialog.ui" line="1036"/>
-        <source>48</source>
-        <translation></translation>
+        <source>47</source>
+        <translation>47</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="542"/>
         <location filename="../src/ui/timerdialog.ui" line="1044"/>
-        <source>49</source>
-        <translation></translation>
+        <source>48</source>
+        <translation>48</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="550"/>
         <location filename="../src/ui/timerdialog.ui" line="1052"/>
-        <source>50</source>
-        <translation></translation>
+        <source>49</source>
+        <translation>49</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="558"/>
         <location filename="../src/ui/timerdialog.ui" line="1060"/>
-        <source>51</source>
-        <translation></translation>
+        <source>50</source>
+        <translation>50</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="566"/>
         <location filename="../src/ui/timerdialog.ui" line="1068"/>
-        <source>52</source>
-        <translation></translation>
+        <source>51</source>
+        <translation>51</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="574"/>
         <location filename="../src/ui/timerdialog.ui" line="1076"/>
-        <source>53</source>
-        <translation></translation>
+        <source>52</source>
+        <translation>52</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="582"/>
         <location filename="../src/ui/timerdialog.ui" line="1084"/>
-        <source>54</source>
-        <translation></translation>
+        <source>53</source>
+        <translation>53</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="590"/>
         <location filename="../src/ui/timerdialog.ui" line="1092"/>
-        <source>55</source>
-        <translation></translation>
+        <source>54</source>
+        <translation>54</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="598"/>
         <location filename="../src/ui/timerdialog.ui" line="1100"/>
-        <source>56</source>
-        <translation></translation>
+        <source>55</source>
+        <translation>55</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="606"/>
         <location filename="../src/ui/timerdialog.ui" line="1108"/>
-        <source>57</source>
-        <translation></translation>
+        <source>56</source>
+        <translation>56</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="614"/>
         <location filename="../src/ui/timerdialog.ui" line="1116"/>
-        <source>58</source>
-        <translation></translation>
+        <source>57</source>
+        <translation>57</translation>
     </message>
     <message>
         <location filename="../src/ui/timerdialog.ui" line="622"/>
         <location filename="../src/ui/timerdialog.ui" line="1124"/>
+        <source>58</source>
+        <translation>58</translation>
+    </message>
+    <message>
+        <location filename="../src/ui/timerdialog.ui" line="630"/>
+        <location filename="../src/ui/timerdialog.ui" line="1132"/>
         <source>59</source>
-        <translation></translation>
+        <translation>59</translation>
     </message>
     <message>
-        <location filename="../src/ui/timerdialog.ui" line="644"/>
+        <location filename="../src/ui/timerdialog.ui" line="652"/>
         <source>Seconds</source>
         <translation>Секунды</translation>
     </message>
     <message>
-        <location filename="../src/ui/timerdialog.ui" line="964"/>
+        <location filename="../src/ui/timerdialog.ui" line="470"/>
+        <location filename="../src/ui/timerdialog.ui" line="972"/>
         <source>39</source>
-        <translation></translation>
+        <translation>39</translation>
     </message>
     <message>
-        <location filename="../src/ui/timerdialog.ui" line="1145"/>
+        <location filename="../src/ui/timerdialog.ui" line="1153"/>
         <source>Disable</source>
-        <translation>Отключить</translation>
+        <translation>Выключить</translation>
     </message>
 </context>
 <context>
     <message>
         <location filename="../src/ui/toolswidget.ui" line="14"/>
         <source>Form</source>
-        <translation></translation>
+        <translation>Форма</translation>
     </message>
 </context>
 </TS>
index 4a00ffa..2e1ffbd 100644 (file)
@@ -120,13 +120,13 @@ SOURCES += src/main.cpp\
     src/timerdialog.cpp \
     src/equalizerdialog.cpp \
     src/saveplaylistdialog.cpp \
-    src/settingsdialog.cpp \
     src/dbusadaptor.cpp \
     src/toolswidget.cpp \
     src/managelibraryform.cpp \
     src/directoryview.cpp \
     src/coverfinder.cpp \
-    src/clickablelabel.cpp
+    src/clickablelabel.cpp \
+    src/settingsform.cpp
 
 HEADERS  += src/mainwindow.h \
                src/player/player.h \
@@ -224,14 +224,14 @@ HEADERS  += src/mainwindow.h \
     src/timerdialog.h \
     src/equalizerdialog.h \
     src/saveplaylistdialog.h \
-    src/settingsdialog.h \
     src/abstractitemrenderer.h \
     src/dbusadaptor.h \
     src/toolswidget.h \
     src/managelibraryform.h \
     src/directoryview.h \
     src/coverfinder.h \
-    src/clickablelabel.h
+    src/clickablelabel.h \
+    src/settingsform.h
 
 FORMS    += src/ui/mainwindow.ui \
     src/ui/playerform.ui \
@@ -242,10 +242,10 @@ FORMS    += src/ui/mainwindow.ui \
     src/ui/timerdialog.ui \
     src/ui/equalizerdialog.ui \
     src/ui/saveplaylistdialog.ui \
-    src/ui/settingsdialog.ui \
     src/ui/toolswidget.ui \
     src/ui/managelibraryform.ui \
-    src/ui/directoryview.ui
+    src/ui/directoryview.ui \
+    src/ui/settingsform.ui
 
 CONFIG += mobility
 MOBILITY = 
index ea1d02e..6695510 100644 (file)
@@ -34,6 +34,8 @@ Config::Config()
                _settings->setValue("ui/gradient", "yes");
        if (_settings->value("ui/language").toString() == "")
                _settings->setValue("ui/language", "en");
+       if (_settings->value("ui/trackcolor").toString() == "")
+               _settings->setValue("ui/trackcolor", "blue");
 }
 
 Config::~Config() {
index 192279c..1f27a04 100644 (file)
@@ -42,6 +42,8 @@ class DirectoryView : public QWidget
 public:
        explicit DirectoryView(QWidget *parent = 0);
        ~DirectoryView();
+
+public slots:
        void updateIcons();
        void updateGradient();
        void lanscapeMode();
index 195e01a..5f85bdd 100644 (file)
@@ -32,7 +32,7 @@
 #include "timerdialog.h"
 #include "equalizerdialog.h"
 #include "saveplaylistdialog.h"
-#include "settingsdialog.h"
+#include "settingsform.h"
 
 using namespace SomePlayer::DataObjects;
 using namespace SomePlayer::Storage;
@@ -57,6 +57,8 @@ MainWindow::MainWindow(QWidget *parent) :
        _timer = new QTimer(this);
        _equalizer_dialog = new EqualizerDialog(this);
        _manage_library_form = new ManageLibraryForm(_library, this);
+       _settings_form = new SettingsForm(this);
+       _settings_form->hide();
        connect(_player_form, SIGNAL(library()), this, SLOT(library()));
        connect(_library_form, SIGNAL(refreshPlayer()), this, SLOT(player()));
        connect(ui->actionManageLibrary, SIGNAL(triggered()), this, SLOT(_manage_library()));
@@ -77,6 +79,16 @@ MainWindow::MainWindow(QWidget *parent) :
        connect(_directory_form, SIGNAL(addAndPlay(Track)), _player_form, SLOT(play(Track)));
        connect(_player_form, SIGNAL(dirView()), _directory_form, SLOT(show()));
        connect(_directory_form, SIGNAL(addTracks(QList<Track>)), this, SLOT(_add_tracks(QList<Track>)));
+       connect(_settings_form, SIGNAL(iconsChanged()), _player_form, SLOT(updateIcons()));
+       connect(_settings_form, SIGNAL(iconsChanged()), _library_form, SLOT(updateIcons()));
+       connect(_settings_form, SIGNAL(iconsChanged()), _manage_library_form, SLOT(updateIcons()));
+       connect(_settings_form, SIGNAL(iconsChanged()), _directory_form, SLOT(updateIcons()));
+       connect(_settings_form, SIGNAL(gradientChanged()), _player_form, SLOT(checkGradient()));
+       connect(_settings_form, SIGNAL(gradientChanged()), _library_form, SLOT(checkGradient()));
+       connect(_settings_form, SIGNAL(libraryOptionsChanged()), _library_form, SLOT(refresh()));
+       connect(_settings_form, SIGNAL(orientationChanged()), this, SLOT(_change_orientation()));
+       connect(_settings_form, SIGNAL(translationChanged()), this, SLOT(updateTranslations()));
+       connect(_settings_form, SIGNAL(trackColorChanged()), _player_form, SLOT(updateTrackColor()));
        _player_form->reload(true);
        QString mode = config.getValue("ui/orientation").toString();
        if (mode == "landscape") {
@@ -85,17 +97,20 @@ MainWindow::MainWindow(QWidget *parent) :
                _library_form->landscapeMode();
                _equalizer_dialog->landscapeMode();
                _directory_form->lanscapeMode();
+               _settings_form->landscapeMode();
        } else if (mode == "portrait") {
                setAttribute(Qt::WA_Maemo5PortraitOrientation);
                _player_form->portraitMode();
                _library_form->portraitMode();
                _equalizer_dialog->portraitMode();
                _directory_form->portraitMode();
+               _settings_form->portraitMode();
        } else if (mode == "auto") { // initialization in landscape
                _player_form->landscapeMode();
                _library_form->landscapeMode();
                _equalizer_dialog->landscapeMode();
                _directory_form->lanscapeMode();
+               _settings_form->landscapeMode();
                setAttribute(Qt::WA_Maemo5AutoOrientation);
        }
        _library_form->updateIcons();
@@ -259,10 +274,22 @@ void MainWindow::_equalizer_value_changed(int band, int val) {
 }
 
 void MainWindow::settings() {
-       SettingsDialog dialog;
-       dialog.exec();
+       _settings_form->show();
+
+//     Config config;
+//     _library_form->refresh();
+//     _player_form->updateIcons();
+//     _library_form->updateIcons();
+//     _manage_library_form->updateIcons();
+//     _player_form->checkGradient();
+//     _library_form->checkGradient();
+//     _directory_form->updateIcons();
+//     _directory_form->updateGradient();
+//     updateTranslations();
+}
+
+void MainWindow::_change_orientation() {
        Config config;
-       _library_form->refresh();
        QString mode = config.getValue("ui/orientation").toString();
        if (mode == "landscape") {
                setAttribute(Qt::WA_Maemo5LandscapeOrientation);
@@ -271,14 +298,6 @@ void MainWindow::settings() {
        } else if (mode == "auto") {
                setAttribute(Qt::WA_Maemo5AutoOrientation);
        }
-       _player_form->updateIcons();
-       _library_form->updateIcons();
-       _manage_library_form->updateIcons();
-       _player_form->checkGradient();
-       _library_form->checkGradient();
-       _directory_form->updateIcons();
-       _directory_form->updateGradient();
-       updateTranslations();
 }
 
 void MainWindow::_orientation_changed() {
@@ -288,11 +307,13 @@ void MainWindow::_orientation_changed() {
                _library_form->landscapeMode();
                _equalizer_dialog->landscapeMode();
                _directory_form->lanscapeMode();
+               _settings_form->landscapeMode();
        } else {
                _player_form->portraitMode();
                _library_form->portraitMode();
                _equalizer_dialog->portraitMode();
                _directory_form->portraitMode();
+               _settings_form->portraitMode();
        }
 }
 
@@ -324,4 +345,5 @@ void MainWindow::updateTranslations() {
        _equalizer_dialog->updateTranslations();
        _manage_library_form->updateTranslations();
        _directory_form->updateTranslations();
+       _settings_form->updateTranslations();
 }
index 9552c86..4e20950 100644 (file)
@@ -29,6 +29,7 @@
 #include "equalizerdialog.h"
 #include "managelibraryform.h"
 #include "directoryview.h"
+#include "settingsform.h"
 #include "library.h"
 #include <QTimer>
 
@@ -71,11 +72,13 @@ private slots:
        void _orientation_changed();
        void _fullscreen(bool);
        void _add_tracks(QList<Track>);
+       void _change_orientation();
 private:
        PlayerForm *_player_form;
        LibraryForm *_library_form;
        BusyWidget *_busy_widget;
        DirectoryView *_directory_form;
+       SettingsForm *_settings_form;
        Library *_library;
        QTimer *_timer;
        EqualizerDialog *_equalizer_dialog;
index 55d85ad..6309dbc 100644 (file)
@@ -97,6 +97,7 @@ PlayerForm::PlayerForm(Library* lib, QWidget *parent) :
        _track_renderer = new TrackRenderer(this);
        _track_renderer->setActiveRow(-1);
        _track_renderer->setSearchRow(-1);
+       _track_renderer->setActiveTrackColor(config.getValue("ui/trackcolor").toString());
        ui->playlistView->setItemDelegateForColumn(1, _track_renderer);
        ui->playlistView->setItemDelegateForColumn(0, _track_renderer);
 
@@ -730,3 +731,11 @@ void PlayerForm::updateTranslations() {
        __add_to_playlists->setText(tr("Add to playlists"));
        __edit_tags->setText(tr("Edit tags"));
 }
+
+void PlayerForm::updateTrackColor() {
+       Config config;
+       QString color = config.getValue("ui/trackcolor").toString();
+       _track_renderer->setActiveTrackColor(color);
+       ui->playlistView->hide();
+       ui->playlistView->show();
+}
index cd819d9..430cf07 100644 (file)
@@ -84,6 +84,7 @@ public slots:
        void showCountdown(QString);
        void hideCountdown();
        void updateTranslations();
+       void updateTrackColor();
 
 private slots:
        void _library();
diff --git a/src/settingsdialog.cpp b/src/settingsdialog.cpp
deleted file mode 100644 (file)
index f585a1a..0000000
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * SomePlayer - An alternate music player for Maemo 5
- * Copyright (C) 2010 Nikolay (somebody) Tischenko <niktischenko@gmail.com>
- *
- * 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 2
- * 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, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- */
-
-
-#include "settingsdialog.h"
-#include "ui_settingsdialog.h"
-
-using namespace SomePlayer::Storage;
-
-SettingsDialog::SettingsDialog(QWidget *parent) :
-               QDialog(parent),
-               ui(new Ui::SettingsDialog)
-{
-       ui->setupUi(this);
-       Config config;
-       QString albumSorting = config.getValue("ui/albumsorting").toString();
-       QString showTrackLenght = config.getValue("ui/showtracklenght").toString();
-       QString orientation = config.getValue("ui/orientation").toString();
-       QString icons_theme = config.getValue("ui/iconstheme").toString();
-       QString gradient = config.getValue("ui/gradient").toString();
-       QString language = config.getValue("ui/language").toString();
-       ui->albumsSortDButton->setChecked(true);        // defaule sorting
-       ui->showTrackLenghtYButton->setChecked(true);   // show by default
-       ui->orientationLButton->setChecked(true);
-       ui->iconsWButton->setChecked(true);
-       ui->gradientYButton->setChecked(true);
-       ui->engLangButton->setChecked(true);
-       if (albumSorting == "alphabet") {
-               ui->albumsSortAButton->setChecked(true);
-       }
-       if (showTrackLenght == "no") {
-               ui->showTrackLenghtNButton->setChecked(true);
-       }
-       if (orientation == "portrait") {
-               ui->orientationPButton->setChecked(true);
-       } else if (orientation == "auto") {
-               ui->orientationAButton->setChecked(true);
-       }
-       if (icons_theme == "black") {
-               ui->iconstBButton->setChecked(true);
-       }
-       if (gradient == "no") {
-               ui->gradientNButton->setChecked(true);
-       }
-       if (language == "ru") {
-               ui->ruLangButton->setChecked(true);
-       }
-       connect (ui->albumsSortAButton, SIGNAL(toggled(bool)), this, SLOT(_set_album_sorting_alphabet(bool)));
-       connect (ui->albumsSortDButton, SIGNAL(toggled(bool)), this, SLOT(_set_album_sorting_date(bool)));
-       connect (ui->showTrackLenghtNButton, SIGNAL(toggled(bool)), this, SLOT(_set_track_lenght_show_no(bool)));
-       connect (ui->showTrackLenghtYButton, SIGNAL(toggled(bool)), this, SLOT(_set_track_lenght_show_yes(bool)));
-       connect (ui->orientationAButton, SIGNAL(toggled(bool)), this, SLOT(_set_orientation_auto(bool)));
-       connect (ui->orientationLButton, SIGNAL(toggled(bool)), this, SLOT(_set_orientation_landscape(bool)));
-       connect (ui->orientationPButton, SIGNAL(toggled(bool)), this, SLOT(_set_orientation_portrait(bool)));
-       connect (ui->iconstBButton, SIGNAL(toggled(bool)), this, SLOT(_set_icons_black(bool)));
-       connect (ui->iconsWButton, SIGNAL(toggled(bool)), this, SLOT(_set_icons_white(bool)));
-       connect (ui->gradientNButton, SIGNAL(toggled(bool)), this, SLOT(_set_gradient_no(bool)));
-       connect (ui->gradientYButton, SIGNAL(toggled(bool)), this, SLOT(_set_gradient_yes(bool)));
-       connect (ui->engLangButton, SIGNAL(toggled(bool)), this, SLOT(_set_lang_en(bool)));
-       connect (ui->ruLangButton, SIGNAL(toggled(bool)), this, SLOT(_set_lang_ru(bool)));
-}
-
-SettingsDialog::~SettingsDialog()
-{
-       delete ui;
-}
-
-void SettingsDialog::_set_album_sorting_date(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/albumsorting", "date");
-}
-
-void SettingsDialog::_set_album_sorting_alphabet(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/albumsorting", "alphabet");
-}
-
-void SettingsDialog::_set_track_lenght_show_no(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/showtracklenght", "no");
-}
-
-void SettingsDialog::_set_track_lenght_show_yes(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/showtracklenght", "yes");
-}
-
-void SettingsDialog::_set_orientation_auto(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/orientation", "auto");
-}
-
-void SettingsDialog::_set_orientation_landscape(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/orientation", "landscape");
-}
-
-void SettingsDialog::_set_orientation_portrait(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/orientation", "portrait");
-}
-
-void SettingsDialog::_set_icons_black(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/iconstheme", "black");
-}
-
-void SettingsDialog::_set_icons_white(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/iconstheme", "white");
-}
-
-void SettingsDialog::_set_gradient_no(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/gradient", "no");
-}
-
-void SettingsDialog::_set_gradient_yes(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/gradient", "yes");
-}
-
-void SettingsDialog::_set_lang_en(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/language", "en");
-}
-
-void SettingsDialog::_set_lang_ru(bool checked) {
-       if (!checked) return;
-       Config config;
-       config.setValue("ui/language", "ru");
-}
-
-void SettingsDialog::updateTranslations() {
-       ui->retranslateUi(this);
-}
diff --git a/src/settingsdialog.h b/src/settingsdialog.h
deleted file mode 100644 (file)
index 681301c..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * SomePlayer - An alternate music player for Maemo 5
- * Copyright (C) 2010 Nikolay (somebody) Tischenko <niktischenko@gmail.com>
- *
- * 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 2
- * 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, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- */
-
-#ifndef SETTINGSDIALOG_H
-#define SETTINGSDIALOG_H
-
-#include <QDialog>
-#include "config.h"
-
-namespace Ui {
-       class SettingsDialog;
-}
-
-class SettingsDialog : public QDialog
-{
-       Q_OBJECT
-
-public:
-       explicit SettingsDialog(QWidget *parent = 0);
-       ~SettingsDialog();
-
-public slots:
-       void updateTranslations();
-
-private:
-       Ui::SettingsDialog *ui;
-
-private slots:
-       void _set_album_sorting_alphabet(bool);
-       void _set_album_sorting_date(bool);
-       void _set_track_lenght_show_yes(bool);
-       void _set_track_lenght_show_no(bool);
-       void _set_orientation_auto(bool);
-       void _set_orientation_portrait(bool);
-       void _set_orientation_landscape(bool);
-       void _set_icons_white(bool);
-       void _set_icons_black(bool);
-       void _set_gradient_yes(bool);
-       void _set_gradient_no(bool);
-       void _set_lang_en(bool);
-       void _set_lang_ru(bool);
-};
-
-#endif // SETTINGSDIALOG_H
diff --git a/src/settingsform.cpp b/src/settingsform.cpp
new file mode 100644 (file)
index 0000000..d8dbd18
--- /dev/null
@@ -0,0 +1,313 @@
+/*
+ * SomePlayer - An alternate music player for Maemo 5
+ * Copyright (C) 2010 Nikolay (somebody) Tischenko <niktischenko@gmail.com>
+ *
+ * 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 2
+ * 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+
+
+#include "settingsform.h"
+#include "ui_settingsform.h"
+#include <QDebug>
+
+using namespace SomePlayer::Storage;
+
+SettingsForm::SettingsForm(QWidget *parent) :
+               QWidget(parent),
+               ui(new Ui::SettingsForm)
+{
+       ui->setupUi(this);
+       Config config;
+       QString albumSorting = config.getValue("ui/albumsorting").toString();
+       QString showTrackLenght = config.getValue("ui/showtracklenght").toString();
+       QString orientation = config.getValue("ui/orientation").toString();
+       QString icons_theme = config.getValue("ui/iconstheme").toString();
+       QString gradient = config.getValue("ui/gradient").toString();
+       QString language = config.getValue("ui/language").toString();
+       QString track_color = config.getValue("ui/trackcolor").toString();
+       ui->albumsSortDButton->setChecked(true);        // defaule sorting
+       ui->showTrackLenghtYButton->setChecked(true);   // show by default
+       ui->orientationLButton->setChecked(true);
+       ui->iconsWButton->setChecked(true);
+       ui->gradientYButton->setChecked(true);
+       ui->engLangButton->setChecked(true);
+       ui->cBlueButton->setChecked(true);
+       if (albumSorting == "alphabet") {
+               ui->albumsSortAButton->setChecked(true);
+       }
+       if (showTrackLenght == "no") {
+               ui->showTrackLenghtNButton->setChecked(true);
+       }
+       if (orientation == "portrait") {
+               ui->orientationPButton->setChecked(true);
+       } else if (orientation == "auto") {
+               ui->orientationAButton->setChecked(true);
+       }
+       if (icons_theme == "black") {
+               ui->iconstBButton->setChecked(true);
+       }
+       if (gradient == "no") {
+               ui->gradientNButton->setChecked(true);
+       }
+       if (language == "ru") {
+               ui->ruLangButton->setChecked(true);
+       }
+       if (track_color == "black") {
+               ui->cBlackButton->setChecked(true);
+       } else if (track_color == "magenta") {
+               ui->cMagentaButton->setChecked(true);
+       } else if (track_color == "Red") {
+               ui->cRedButton->setChecked(true);
+       } else if (track_color == "yellow") {
+               ui->cYellowButton->setChecked(true);
+       } else if (track_color == "white") {
+               ui->cWhiteButton->setChecked(true);
+       } else if (track_color == "dark") {
+               ui->cDarkButton->setChecked(true);
+       } else if (track_color == "light") {
+               ui->cLightButton->setChecked(true);
+       }
+       connect (ui->albumsSortAButton, SIGNAL(toggled(bool)), this, SLOT(_set_album_sorting_alphabet(bool)));
+       connect (ui->albumsSortDButton, SIGNAL(toggled(bool)), this, SLOT(_set_album_sorting_date(bool)));
+       connect (ui->showTrackLenghtNButton, SIGNAL(toggled(bool)), this, SLOT(_set_track_lenght_show_no(bool)));
+       connect (ui->showTrackLenghtYButton, SIGNAL(toggled(bool)), this, SLOT(_set_track_lenght_show_yes(bool)));
+       connect (ui->orientationAButton, SIGNAL(toggled(bool)), this, SLOT(_set_orientation_auto(bool)));
+       connect (ui->orientationLButton, SIGNAL(toggled(bool)), this, SLOT(_set_orientation_landscape(bool)));
+       connect (ui->orientationPButton, SIGNAL(toggled(bool)), this, SLOT(_set_orientation_portrait(bool)));
+       connect (ui->iconstBButton, SIGNAL(toggled(bool)), this, SLOT(_set_icons_black(bool)));
+       connect (ui->iconsWButton, SIGNAL(toggled(bool)), this, SLOT(_set_icons_white(bool)));
+       connect (ui->gradientNButton, SIGNAL(toggled(bool)), this, SLOT(_set_gradient_no(bool)));
+       connect (ui->gradientYButton, SIGNAL(toggled(bool)), this, SLOT(_set_gradient_yes(bool)));
+       connect (ui->engLangButton, SIGNAL(toggled(bool)), this, SLOT(_set_lang_en(bool)));
+       connect (ui->ruLangButton, SIGNAL(toggled(bool)), this, SLOT(_set_lang_ru(bool)));
+       connect (ui->cBlackButton, SIGNAL(toggled(bool)), this, SLOT(_set_color_black(bool)));
+       connect (ui->cBlueButton, SIGNAL(toggled(bool)), this, SLOT(_set_color_blue(bool)));
+       connect (ui->cDarkButton, SIGNAL(toggled(bool)), this, SLOT(_set_color_dark(bool)));
+       connect (ui->cLightButton, SIGNAL(toggled(bool)), this, SLOT(_set_color_light(bool)));
+       connect (ui->cMagentaButton, SIGNAL(toggled(bool)), this, SLOT(_set_color_magenta(bool)));
+       connect (ui->cRedButton, SIGNAL(toggled(bool)), this, SLOT(_set_color_red(bool)));
+       connect (ui->cWhiteButton, SIGNAL(toggled(bool)), this, SLOT(_set_color_white(bool)));
+       connect (ui->cYellowButton, SIGNAL(toggled(bool)), this, SLOT(_set_color_yellow(bool)));
+       setAttribute(Qt::WA_Maemo5StackedWindow);
+       setWindowFlags(Qt::Window | windowFlags());
+}
+
+SettingsForm::~SettingsForm()
+{
+       delete ui;
+}
+
+void SettingsForm::_set_album_sorting_date(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/albumsorting", "date");
+       emit libraryOptionsChanged();
+}
+
+void SettingsForm::_set_album_sorting_alphabet(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/albumsorting", "alphabet");
+       emit libraryOptionsChanged();
+}
+
+void SettingsForm::_set_track_lenght_show_no(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/showtracklenght", "no");
+       emit libraryOptionsChanged();
+}
+
+void SettingsForm::_set_track_lenght_show_yes(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/showtracklenght", "yes");
+       emit libraryOptionsChanged();
+}
+
+void SettingsForm::_set_orientation_auto(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/orientation", "auto");
+       emit orientationChanged();
+}
+
+void SettingsForm::_set_orientation_landscape(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/orientation", "landscape");
+       emit orientationChanged();
+}
+
+void SettingsForm::_set_orientation_portrait(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/orientation", "portrait");
+       emit orientationChanged();
+}
+
+void SettingsForm::_set_icons_black(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/iconstheme", "black");
+       emit iconsChanged();
+}
+
+void SettingsForm::_set_icons_white(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/iconstheme", "white");
+       emit iconsChanged();
+}
+
+void SettingsForm::_set_gradient_no(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/gradient", "no");
+       emit gradientChanged();
+}
+
+void SettingsForm::_set_gradient_yes(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/gradient", "yes");
+       emit gradientChanged();
+}
+
+void SettingsForm::_set_color_black(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/trackcolor", "black");
+       emit trackColorChanged();
+}
+
+void SettingsForm::_set_color_blue(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/trackcolor", "blue");
+       emit trackColorChanged();
+}
+
+void SettingsForm::_set_color_dark(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/trackcolor", "dark");
+       emit trackColorChanged();
+}
+
+void SettingsForm::_set_color_light(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/trackcolor", "light");
+       emit trackColorChanged();
+}
+
+void SettingsForm::_set_color_magenta(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/trackcolor", "magenta");
+       emit trackColorChanged();
+}
+
+void SettingsForm::_set_color_red(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/trackcolor", "red");
+       emit trackColorChanged();
+}
+
+void SettingsForm::_set_color_white(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/trackcolor", "white");
+       emit trackColorChanged();
+}
+
+void SettingsForm::_set_color_yellow(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/trackcolor", "yellow");
+       emit trackColorChanged();
+}
+
+void SettingsForm::_set_lang_en(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/language", "en");
+       emit translationChanged();
+}
+
+void SettingsForm::_set_lang_ru(bool checked) {
+       if (!checked) return;
+       Config config;
+       config.setValue("ui/language", "ru");
+       emit translationChanged();
+}
+
+void SettingsForm::updateTranslations() {
+       ui->retranslateUi(this);
+}
+
+void SettingsForm::landscapeMode() {
+       ui->cButtonsLayout->removeWidget(ui->cBlueButton);
+       ui->cButtonsLayout->removeWidget(ui->cMagentaButton);
+       ui->cButtonsLayout->removeWidget(ui->cRedButton);
+       ui->cButtonsLayout->removeWidget(ui->cYellowButton);
+       ui->cButtonsLayout->removeWidget(ui->cWhiteButton);
+       ui->cButtonsLayout->removeWidget(ui->cBlackButton);
+       ui->cButtonsLayout->removeWidget(ui->cLightButton);
+       ui->cButtonsLayout->removeWidget(ui->cDarkButton);
+       ui->cButtonsLayout->addWidget(ui->cBlueButton, 0, 0);
+       ui->cButtonsLayout->addWidget(ui->cMagentaButton, 0, 1);
+       ui->cButtonsLayout->addWidget(ui->cRedButton, 0, 2);
+       ui->cButtonsLayout->addWidget(ui->cYellowButton, 0, 3);
+       ui->cButtonsLayout->addWidget(ui->cWhiteButton, 1, 0);
+       ui->cButtonsLayout->addWidget(ui->cBlackButton, 1, 1);
+       ui->cButtonsLayout->addWidget(ui->cLightButton, 1, 2);
+       ui->cButtonsLayout->addWidget(ui->cDarkButton, 1, 3);
+
+       ui->orientationGridLayout->removeWidget(ui->orientationAButton);
+       ui->orientationGridLayout->removeWidget(ui->orientationLButton);
+       ui->orientationGridLayout->removeWidget(ui->orientationPButton);
+       ui->orientationGridLayout->addWidget(ui->orientationLButton);
+       ui->orientationGridLayout->addWidget(ui->orientationAButton);
+       ui->orientationGridLayout->addWidget(ui->orientationPButton);
+}
+
+void SettingsForm::portraitMode() {
+       ui->cButtonsLayout->removeWidget(ui->cBlueButton);
+       ui->cButtonsLayout->removeWidget(ui->cMagentaButton);
+       ui->cButtonsLayout->removeWidget(ui->cRedButton);
+       ui->cButtonsLayout->removeWidget(ui->cYellowButton);
+       ui->cButtonsLayout->removeWidget(ui->cWhiteButton);
+       ui->cButtonsLayout->removeWidget(ui->cBlackButton);
+       ui->cButtonsLayout->removeWidget(ui->cLightButton);
+       ui->cButtonsLayout->removeWidget(ui->cDarkButton);
+       ui->cButtonsLayout->addWidget(ui->cBlueButton, 0, 0);
+       ui->cButtonsLayout->addWidget(ui->cMagentaButton, 0, 1);
+       ui->cButtonsLayout->addWidget(ui->cRedButton, 1, 0);
+       ui->cButtonsLayout->addWidget(ui->cYellowButton, 1, 1);
+       ui->cButtonsLayout->addWidget(ui->cWhiteButton, 2, 0);
+       ui->cButtonsLayout->addWidget(ui->cBlackButton, 2, 1);
+       ui->cButtonsLayout->addWidget(ui->cLightButton, 3, 0);
+       ui->cButtonsLayout->addWidget(ui->cDarkButton, 3, 1);
+
+       ui->orientationGridLayout->removeWidget(ui->orientationAButton);
+       ui->orientationGridLayout->removeWidget(ui->orientationLButton);
+       ui->orientationGridLayout->removeWidget(ui->orientationPButton);
+       ui->orientationGridLayout->addWidget(ui->orientationLButton, 0, 0);
+       ui->orientationGridLayout->addWidget(ui->orientationAButton, 0, 1);
+       ui->orientationGridLayout->addWidget(ui->orientationPButton, 1, 0, 1, 2);
+}
diff --git a/src/settingsform.h b/src/settingsform.h
new file mode 100644 (file)
index 0000000..e0f3b58
--- /dev/null
@@ -0,0 +1,78 @@
+/*
+ * SomePlayer - An alternate music player for Maemo 5
+ * Copyright (C) 2010 Nikolay (somebody) Tischenko <niktischenko@gmail.com>
+ *
+ * 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 2
+ * 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+
+
+#ifndef SETTINGSFORM_H
+#define SETTINGSFORM_H
+
+#include <QWidget>
+#include "config.h"
+
+namespace Ui {
+       class SettingsForm;
+}
+
+class SettingsForm : public QWidget {
+       Q_OBJECT
+
+public:
+       explicit SettingsForm(QWidget *parent = 0);
+       ~SettingsForm();
+
+public slots:
+       void updateTranslations();
+       void landscapeMode();
+       void portraitMode();
+
+signals:
+       void iconsChanged();
+       void orientationChanged();
+       void gradientChanged();
+       void libraryOptionsChanged();
+       void translationChanged();
+       void trackColorChanged();
+
+private:
+       Ui::SettingsForm *ui;
+
+private slots:
+       void _set_album_sorting_alphabet(bool);
+       void _set_album_sorting_date(bool);
+       void _set_track_lenght_show_yes(bool);
+       void _set_track_lenght_show_no(bool);
+       void _set_orientation_auto(bool);
+       void _set_orientation_portrait(bool);
+       void _set_orientation_landscape(bool);
+       void _set_icons_white(bool);
+       void _set_icons_black(bool);
+       void _set_gradient_yes(bool);
+       void _set_gradient_no(bool);
+       void _set_lang_en(bool);
+       void _set_lang_ru(bool);
+       void _set_color_blue(bool);
+       void _set_color_magenta(bool);
+       void _set_color_red(bool);
+       void _set_color_yellow(bool);
+       void _set_color_white(bool);
+       void _set_color_black(bool);
+       void _set_color_light(bool);
+       void _set_color_dark(bool);
+};
+
+#endif // SETTINGSFORM_H
index e443d3b..3a72ef8 100644 (file)
@@ -88,3 +88,25 @@ void TrackRenderer::paint(QPainter *painter, const QStyleOptionViewItem &option,
 QSize TrackRenderer::sizeHint(const QStyleOptionViewItem &/*option*/, const QModelIndex &/*index*/) const {
        return QSize(QApplication::desktop()->geometry().width(), 80);
 }
+
+void TrackRenderer::setActiveTrackColor(QString color) {
+       QColor c;
+       if (color == "blue") {
+               c = QColor::fromRgb(100, 150, 220);
+       } else if (color == "black") {
+               c = QColor::fromRgb(0, 0, 0);
+       } else if (color == "magenta") {
+               c = QColor::fromRgb(150, 80, 150);
+       } else if (color == "red") {
+               c = QColor::fromRgb(220, 100, 100);
+       } else if (color == "yellow") {
+               c = QColor::fromRgb(220, 220, 100);
+       } else if (color == "white") {
+               c = QColor::fromRgb(255, 255, 255);
+       } else if (color == "dark") {
+               c = QColor::fromRgb(70, 70, 70);
+       } else if (color == "light") {
+               c = QColor::fromRgb(200, 200, 200);
+       }
+       _spen = QPen(c);
+}
index 8909a76..ba4d73c 100644 (file)
@@ -37,6 +37,7 @@ public:
        QSize sizeHint(const QStyleOptionViewItem &option,
                                                   const QModelIndex &index) const;
        void updateIcons();
+       void setActiveTrackColor(QString);
 
 private:
        QString _icons_theme;
diff --git a/src/ui/settingsdialog.ui b/src/ui/settingsdialog.ui
deleted file mode 100644 (file)
index a6295c2..0000000
+++ /dev/null
@@ -1,271 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>SettingsDialog</class>
- <widget class="QDialog" name="SettingsDialog">
-  <property name="geometry">
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>800</width>
-    <height>480</height>
-   </rect>
-  </property>
-  <property name="windowTitle">
-   <string>Settings</string>
-  </property>
-  <layout class="QHBoxLayout" name="horizontalLayout_2">
-   <item>
-    <layout class="QVBoxLayout" name="verticalLayout">
-     <item>
-      <widget class="QScrollArea" name="scrollArea">
-       <property name="widgetResizable">
-        <bool>true</bool>
-       </property>
-       <widget class="QWidget" name="scrollAreaWidgetContents">
-        <property name="geometry">
-         <rect>
-          <x>0</x>
-          <y>-82</y>
-          <width>760</width>
-          <height>438</height>
-         </rect>
-        </property>
-        <layout class="QVBoxLayout" name="verticalLayout_6">
-         <item>
-          <widget class="QGroupBox" name="groupBox">
-           <property name="title">
-            <string/>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_2">
-            <item>
-             <widget class="QLabel" name="label">
-              <property name="text">
-               <string>Icons theme:</string>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout">
-              <item>
-               <widget class="QRadioButton" name="iconsWButton">
-                <property name="text">
-                 <string>White</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QRadioButton" name="iconstBButton">
-                <property name="text">
-                 <string>Black</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="groupBox_4">
-           <property name="title">
-            <string/>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_7">
-            <item>
-             <widget class="QLabel" name="label_5">
-              <property name="text">
-               <string>Use gradient in portrait mode:</string>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_6">
-              <item>
-               <widget class="QRadioButton" name="gradientYButton">
-                <property name="text">
-                 <string>Yes</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QRadioButton" name="gradientNButton">
-                <property name="text">
-                 <string>No</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="albumSortingGroupBox">
-           <property name="enabled">
-            <bool>true</bool>
-           </property>
-           <property name="title">
-            <string/>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_3">
-            <item>
-             <widget class="QLabel" name="label_2">
-              <property name="text">
-               <string>Sort album:</string>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_3">
-              <item>
-               <widget class="QRadioButton" name="albumsSortAButton">
-                <property name="text">
-                 <string>Alphabetical</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QRadioButton" name="albumsSortDButton">
-                <property name="text">
-                 <string>By date</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="groupBox_3">
-           <property name="title">
-            <string/>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_5">
-            <item>
-             <widget class="QLabel" name="label_4">
-              <property name="text">
-               <string>Orientation:</string>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_5">
-              <item>
-               <widget class="QRadioButton" name="orientationLButton">
-                <property name="text">
-                 <string>Landscape</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QRadioButton" name="orientationPButton">
-                <property name="text">
-                 <string>Portrait</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QRadioButton" name="orientationAButton">
-                <property name="text">
-                 <string>Auto</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="groupBox_2">
-           <property name="title">
-            <string/>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_4">
-            <item>
-             <widget class="QLabel" name="label_3">
-              <property name="text">
-               <string>Show track lenght in library view:</string>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_4">
-              <item>
-               <widget class="QRadioButton" name="showTrackLenghtYButton">
-                <property name="text">
-                 <string>Yes</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QRadioButton" name="showTrackLenghtNButton">
-                <property name="text">
-                 <string>No</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="groupBox_5">
-           <property name="title">
-            <string/>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_8">
-            <item>
-             <widget class="QLabel" name="label_6">
-              <property name="text">
-               <string>Language:</string>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_7">
-              <item>
-               <widget class="QRadioButton" name="engLangButton">
-                <property name="text">
-                 <string>English</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QRadioButton" name="ruLangButton">
-                <property name="text">
-                 <string>Russian</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-        </layout>
-       </widget>
-      </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>
-   </item>
-  </layout>
- </widget>
- <resources/>
- <connections/>
-</ui>
diff --git a/src/ui/settingsform.ui b/src/ui/settingsform.ui
new file mode 100644 (file)
index 0000000..1aec66e
--- /dev/null
@@ -0,0 +1,439 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>SettingsForm</class>
+ <widget class="QWidget" name="SettingsForm">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>480</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Settings</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <property name="spacing">
+    <number>0</number>
+   </property>
+   <property name="margin">
+    <number>0</number>
+   </property>
+   <item>
+    <widget class="QScrollArea" name="scrollArea">
+     <property name="horizontalScrollBarPolicy">
+      <enum>Qt::ScrollBarAlwaysOff</enum>
+     </property>
+     <property name="widgetResizable">
+      <bool>true</bool>
+     </property>
+     <widget class="QWidget" name="scrollAreaWidgetContents">
+      <property name="geometry">
+       <rect>
+        <x>0</x>
+        <y>-34</y>
+        <width>780</width>
+        <height>403</height>
+       </rect>
+      </property>
+      <layout class="QVBoxLayout" name="verticalLayout_6">
+       <item>
+        <widget class="QGroupBox" name="groupBox">
+         <property name="title">
+          <string/>
+         </property>
+         <layout class="QVBoxLayout" name="verticalLayout_2">
+          <property name="spacing">
+           <number>6</number>
+          </property>
+          <property name="margin">
+           <number>0</number>
+          </property>
+          <item>
+           <widget class="QLabel" name="label">
+            <property name="text">
+             <string>Icons theme:</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <layout class="QHBoxLayout" name="horizontalLayout">
+            <property name="spacing">
+             <number>0</number>
+            </property>
+            <item>
+             <widget class="QRadioButton" name="iconsWButton">
+              <property name="text">
+               <string>White</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="iconstBButton">
+              <property name="text">
+               <string>Black</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="groupBox_4">
+         <property name="title">
+          <string/>
+         </property>
+         <layout class="QVBoxLayout" name="verticalLayout_7">
+          <property name="spacing">
+           <number>6</number>
+          </property>
+          <property name="margin">
+           <number>0</number>
+          </property>
+          <item>
+           <widget class="QLabel" name="label_5">
+            <property name="text">
+             <string>Use gradient in portrait mode:</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <layout class="QHBoxLayout" name="horizontalLayout_6">
+            <property name="spacing">
+             <number>0</number>
+            </property>
+            <item>
+             <widget class="QRadioButton" name="gradientYButton">
+              <property name="text">
+               <string>Yes</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="gradientNButton">
+              <property name="text">
+               <string>No</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="groupBox_6">
+         <property name="title">
+          <string/>
+         </property>
+         <layout class="QVBoxLayout" name="verticalLayout_10">
+          <property name="spacing">
+           <number>6</number>
+          </property>
+          <property name="margin">
+           <number>0</number>
+          </property>
+          <item>
+           <widget class="QLabel" name="label_7">
+            <property name="text">
+             <string>Active track color:</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <layout class="QGridLayout" name="cButtonsLayout" rowstretch="0,0">
+            <property name="spacing">
+             <number>0</number>
+            </property>
+            <item row="0" column="0">
+             <widget class="QRadioButton" name="cBlueButton">
+              <property name="styleSheet">
+               <string notr="true">color: rgb(100, 150, 220)</string>
+              </property>
+              <property name="text">
+               <string>blue</string>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="1">
+             <widget class="QRadioButton" name="cMagentaButton">
+              <property name="styleSheet">
+               <string notr="true">color: rgb(150, 80, 150);</string>
+              </property>
+              <property name="text">
+               <string>magenta</string>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="2">
+             <widget class="QRadioButton" name="cRedButton">
+              <property name="styleSheet">
+               <string notr="true">color: rgb(220, 100, 100);</string>
+              </property>
+              <property name="text">
+               <string>red</string>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="3">
+             <widget class="QRadioButton" name="cYellowButton">
+              <property name="styleSheet">
+               <string notr="true">color: rgb(220, 220, 100);</string>
+              </property>
+              <property name="text">
+               <string>yellow</string>
+              </property>
+             </widget>
+            </item>
+            <item row="1" column="0">
+             <widget class="QRadioButton" name="cWhiteButton">
+              <property name="styleSheet">
+               <string notr="true">color: rgb(255, 255, 255);</string>
+              </property>
+              <property name="text">
+               <string>white</string>
+              </property>
+             </widget>
+            </item>
+            <item row="1" column="1">
+             <widget class="QRadioButton" name="cBlackButton">
+              <property name="styleSheet">
+               <string notr="true">color: rgb(0,0,0);</string>
+              </property>
+              <property name="text">
+               <string>black</string>
+              </property>
+             </widget>
+            </item>
+            <item row="1" column="2">
+             <widget class="QRadioButton" name="cLightButton">
+              <property name="styleSheet">
+               <string notr="true">color: rgb(200, 200, 200);</string>
+              </property>
+              <property name="text">
+               <string>light</string>
+              </property>
+             </widget>
+            </item>
+            <item row="1" column="3">
+             <widget class="QRadioButton" name="cDarkButton">
+              <property name="styleSheet">
+               <string notr="true">color: rgb(70, 70, 70);</string>
+              </property>
+              <property name="text">
+               <string>dark</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="albumSortingGroupBox">
+         <property name="enabled">
+          <bool>true</bool>
+         </property>
+         <property name="title">
+          <string/>
+         </property>
+         <layout class="QVBoxLayout" name="verticalLayout_3">
+          <property name="spacing">
+           <number>6</number>
+          </property>
+          <property name="margin">
+           <number>0</number>
+          </property>
+          <item>
+           <widget class="QLabel" name="label_2">
+            <property name="text">
+             <string>Sort album:</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <layout class="QHBoxLayout" name="horizontalLayout_3">
+            <property name="spacing">
+             <number>0</number>
+            </property>
+            <item>
+             <widget class="QRadioButton" name="albumsSortAButton">
+              <property name="text">
+               <string>Alphabetical</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="albumsSortDButton">
+              <property name="text">
+               <string>By date</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="groupBox_3">
+         <property name="title">
+          <string/>
+         </property>
+         <layout class="QVBoxLayout" name="verticalLayout_5">
+          <property name="spacing">
+           <number>6</number>
+          </property>
+          <property name="margin">
+           <number>0</number>
+          </property>
+          <item>
+           <widget class="QLabel" name="label_4">
+            <property name="text">
+             <string>Orientation:</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <layout class="QGridLayout" name="orientationGridLayout">
+            <property name="spacing">
+             <number>0</number>
+            </property>
+            <item row="0" column="0">
+             <widget class="QRadioButton" name="orientationLButton">
+              <property name="text">
+               <string>Landscape</string>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="1">
+             <widget class="QRadioButton" name="orientationPButton">
+              <property name="text">
+               <string>Portrait</string>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="2">
+             <widget class="QRadioButton" name="orientationAButton">
+              <property name="text">
+               <string>Auto</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="groupBox_2">
+         <property name="title">
+          <string/>
+         </property>
+         <layout class="QVBoxLayout" name="verticalLayout_4">
+          <property name="spacing">
+           <number>6</number>
+          </property>
+          <property name="margin">
+           <number>0</number>
+          </property>
+          <item>
+           <widget class="QLabel" name="label_3">
+            <property name="text">
+             <string>Show track lenght in library view:</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <layout class="QHBoxLayout" name="horizontalLayout_4">
+            <property name="spacing">
+             <number>0</number>
+            </property>
+            <item>
+             <widget class="QRadioButton" name="showTrackLenghtYButton">
+              <property name="text">
+               <string>Yes</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="showTrackLenghtNButton">
+              <property name="text">
+               <string>No</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="groupBox_5">
+         <property name="title">
+          <string/>
+         </property>
+         <layout class="QVBoxLayout" name="verticalLayout_8">
+          <property name="spacing">
+           <number>6</number>
+          </property>
+          <property name="margin">
+           <number>0</number>
+          </property>
+          <item>
+           <widget class="QLabel" name="label_6">
+            <property name="text">
+             <string>Language:</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <layout class="QHBoxLayout" name="horizontalLayout_7">
+            <property name="spacing">
+             <number>0</number>
+            </property>
+            <item>
+             <widget class="QRadioButton" name="engLangButton">
+              <property name="text">
+               <string>English</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QRadioButton" name="ruLangButton">
+              <property name="text">
+               <string>Russian</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+   <item>
+    <spacer name="verticalSpacer">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>0</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
index 7de7cac..56745ed 100644 (file)
          </item>
          <item>
           <property name="text">
+           <string>39</string>
+          </property>
+          <property name="textAlignment">
+           <set>AlignHCenter|AlignVCenter|AlignCenter</set>
+          </property>
+         </item>
+         <item>
+          <property name="text">
            <string>40</string>
           </property>
           <property name="textAlignment">