Commit graph

1496 commits

Author SHA1 Message Date
Dominik Riebeling
2c3b8bd1e2 Factor out executable based TTS engines to separate subclasses.
Similar as done with SAPI / MSSP make the current implementation for executable
based TTS engines a base class and create derived classes for each supported
TTS. Removes the need for the implementation to know about the individual TTS
engines.

Add support for speaking directly (i.e. without going through a temporary wave
file, currently only used by espeak).

Change-Id: I59bbbd6ee4c2c009b2a8d8e0ab4a9b39ea723d6e
2012-10-06 13:53:09 +02:00
Dominik Riebeling
7f76bb48b3 Don't assume success for TTS object creation.
While the current implementation of getTTS() will always return an object this
might change later. Check the returned object before using it to be on the safe
side.

Change-Id: Ic949cae7cfbe6f3086dee6aab741b0acafe14640
2012-10-06 13:53:09 +02:00
Dominik Riebeling
a2dd1625bc Check selection before trying to create talk files.
This prevents users from accidentially trying to create talk files for nothing.

Change-Id: I92eae0e0dc14a772c786bcdad67f404fe3786376
2012-10-06 13:53:09 +02:00
Dominik Riebeling
4d96b4c7b0 Fix a couple of warnings and remove an unused variable.
Change-Id: I1617ef882e9bcaaaafe58a932fadd803851ec88f
2012-10-06 13:53:09 +02:00
Dominik Riebeling
c659f9979a Allow USB IDs to be non-unique.
When retrieving USB IDs create a list of players matching to a USB ID instead
of assuming only one player.  This prevents non-unique IDs overwriting each
other and will be used for improved autodetection later.

Currently only the first ID is used during detection, and no additional IDs
have been added yet.

Change-Id: Ieac5594108bae708e364bd2c8df88f61fcdcbdcd
2012-10-06 13:53:09 +02:00
Daniel Kluz
9ee396b846 Polish translation update for Rockbox Utility.
Change-Id: Iaaa06d5e56651c2ba51371344dabf42add0d1e7c
2012-10-06 10:30:01 +02:00
Alexander Levin
fb6e4b9d0e Fix grammar of the German translation (add some missing commas)
Change-Id: I286bc6ced9ffe5e0a3faec2ae405061f31b14456
Reviewed-on: http://gerrit.rockbox.org/323
Reviewed-by: Dominik Riebeling <Dominik.Riebeling@gmail.com>
2012-10-06 10:18:43 +02:00
Dominik Riebeling
1c975eefd3 Support "eject" on OS X.
Change-Id: I103587f2fad2b8b31a1bc53afbd107bf55f62c93
2012-09-16 21:08:18 +02:00
Dominik Riebeling
f902bbe07e Make backup dialog modal.
Change-Id: I488dcca6719970e77f9c3afd17a89f3295cf5210
2012-09-16 21:08:18 +02:00
Dominik Riebeling
80297e8ed8 Fix error in german translation.
Change-Id: Ib9c93d123195bc38223980e78fa719d5fe475146
2012-09-09 12:07:54 +02:00
Dominik Riebeling
a1b780e670 Add support for Microsoft Speech Platform.
MSSP is accessible via vbs by simply changing the object to be used (both
SAPI5 and MSSP use the ISpVoice COM interface). Add command line parameter to
sapi_voice.vbs to switch the COM object used, and add the necessary
implementation of the SAPI class to Rockbox Utility.

Important: you will need to install the Speech Runtime separately and install
the version matching the bitsize of Rockbox Utility. I.e. you will need to
install the x86 version even on a x64 machine (unless you build a 64bit binary
of Rockbox Utility).

Change-Id: If760cd69c556c17a2ae539965d0941d16fdc10e1
2012-09-09 12:07:53 +02:00
Dominik Riebeling
469a614349 Add derived SAPI4 class.
Based on the previous change add a derived class for SAPI4 support. Note that
SAPI4 support had been disabled, so it's also disabled to not show in the
selection dialog for now.

Change-Id: Iffda7daafd9327ef8821c4fe4b1b0fc581607f49
2012-09-09 12:07:52 +02:00
Dominik Riebeling
6be7dabdd9 Make SAPI implementation more parametrizable.
Move command line template for listing voices and generation into protected
member variables and initialize them in the constructor. This allows derived
classes to overwrite these, allowing to change the command line call. Make the
name used for storing the classes values to the configuration parametrize at
all.

Remove SAPI4 support, this will be handled in a derived class later.

Change-Id: Ib5a261c56cdf93a44fffdfa6edea409d89fd84ba
2012-09-09 12:07:51 +02:00
Dominik Riebeling
4a9ba12ca7 Add icons to some buttons in the main installation dialog.
Change-Id: I82f4f68af00ea10191403ee716e3835c1e151319
2012-09-08 21:02:37 +02:00
Dominik Riebeling
9e2eb6243f Change sapi_voice.vbs voice list separation character.
The currently used comma for separating voices for the /listvoices command is
used by Speech Platform based voices. Change the character to a semicolon
which isn't used by voices.

Change-Id: I1a7e6e4229f864f56635143e864dadf38cdd7e73
2012-09-08 20:46:20 +02:00
Dominik Riebeling
328ff6d979 Add "Eject" button to main window.
Since especially Windows puts the eject functionality behind an icon in the
systray which is usually hidden and doesn't complain if a USB drive is
unplugged without ejecting it first ejecting such a device might not be
obvious to everyone. Add a button to the main window allowing to eject the
selected player.

Currently only implemented for Windows.

Change-Id: I785ac1482cda03a1379cf6d0fd0d9a0ff8130092
2012-09-08 20:34:36 +02:00
Dominik Riebeling
4f99dd4264 Fix manual URLs not getting updated properly on device change.
Change-Id: I5aaf62b5b7eb298e4d10fc8d854594dce051b2b6
2012-09-05 22:40:15 +02:00
Dominik Riebeling
05caadbca3 Correctly construct the path for talkfile generation.
While TalkFileCreator uses the current mountpoint for writing logging
information it does not use it for constructing the correct path to generate
talkfiles for.

Since there is not much point in generating talkfiles for files that are not on
the player (and the UI limits the paths that can get selected to folders on the
player) make TalkFileCreator use the mountpoint for creating correct paths.
Fixes FS#12748.

Change-Id: Id682a3738649e4167556255599553edc6e2acd48
2012-09-05 20:21:59 +02:00
Dominik Riebeling
1e8eb4752b Fix bootloader installation always being enable for Archos devices.
Archos devices don't need a bootloader, but the automatic enabling of the
bootloader installation didn't handle this case, making a first time
installation impossible. Fix this by respecting the "none" bootloader case
separately.

Change-Id: I9b06348401f525c5447cf4ce061f2463083c0e61
2012-09-02 22:30:19 +02:00
Dominik Riebeling
1ef14474c9 Rockbox Utility: bump version to 1.3.0
Change-Id: I41db53976e4c0cb01e91f574277dcc90e68a6998
2012-09-02 20:19:23 +02:00
Dominik Riebeling
55690ea5bf Update german Rockbox Utility translation.
Change-Id: Ie6600e0c8a67c65705a73c03cbbbd750ff54671a
2012-09-02 20:16:35 +02:00
Dominik Riebeling
7453cb487c Remove string from translation list that doesn't make sense translating.
Change-Id: Ieddeaa35e75b5b9661ade3a715358e031c1d695d
2012-09-02 20:15:31 +02:00
Amaury Pouly
8abdd9b86d rbutilqt: finish french translation
Change-Id: Ia518d9cd242fd7678500f75d87832524c9820a2d
2012-09-02 10:37:54 +02:00
Amaury Pouly
b4e25d1ead rbutilqt: frenc translation
Change-Id: Ic007f1c82ef6cda6f6179d1c949dcd324f62d72f
2012-09-01 20:08:12 +02:00
Amaury Pouly
a04bbd3636 rbutilqt: french translation
Change-Id: I78b2901516caf94ffe198a6534588106b18e5933
2012-09-01 12:11:04 +02:00
Amaury Pouly
91c5023791 rbutilqt: french translation
Change-Id: I8a84ed91318e3cedf844ad6f27f15c74f0c8ba45
2012-08-31 23:32:32 +02:00
Dominik Riebeling
39396cc707 Themes Window: do not download themes information multiple times.
Change-Id: Ic8011ec3f45d4313436a5a49a3a0f604f8931840
2012-08-19 11:04:54 +02:00
Dominik Riebeling
ca1bbc08b3 Check environment before starting installation.
The environment needs to be correct for other installations than main Rockbox
as well.

Change-Id: Icf626de63b58ba40f600fd095a254b6e7e9e46ee
2012-08-19 11:04:54 +02:00
Bertrik Sikken
a28106dc26 Add support for clip+ firmware 1.02.18 to mkamsboot (tested by me)
Change-Id: Ic7d1860c59291e6e5c55b3f91d86de447e53cf66
2012-08-08 19:59:29 +02:00
Frank Gevaerts
9a84bcfe4b Add quotes around APPVERSION to avoid issues when it has spaces.
Change-Id: If281c0e37f56f81cb5dd57e264f82fb32bc08d3b
2012-07-27 14:55:03 +02:00
Bertrik Sikken
f09bf021c9 Dutch (nl) translation update of RockboxUtility
Change-Id: Iebe5253dae409377432d1fd9653294bbcb537e88
2012-07-07 12:32:59 +02:00
Frank Gevaerts
8aa3832382 Mark "unfinished" but OK strings as finished for Dutch rbutil translation.
Change-Id: I9edba3458d62b8c0f66e11420b15da1f9799725b
2012-07-03 23:18:27 +02:00
Dominik Riebeling
707e9d8945 Update german translation.
lupdate all other translations and drop obsolete string.

Change-Id: I74d2ae8dd3c973aeaf35a41f8d32081729c13298
2012-07-03 21:52:49 +02:00
Dominik Riebeling
e3cddc2e3c Fix Ipod Classic target name.
Change-Id: I8647f67daa000c889dcf0ec07368130498e3b8ea
2012-07-01 21:09:08 +02:00
Dominik Riebeling
644b83e0b4 Add version information to Windows file properties.
Windows can show the version in the file properties. This requires an
additional entry in its resource. Restructure global version defines since the
former requires a different format than used previously.

Change-Id: I2bf261a02ea8e0af6dc081568960debfb779d396
2012-07-01 19:06:34 +02:00
Dominik Riebeling
c3a2b20ef2 Remove Ipod Classic from list of unsupported targets.
The classic is now a disabled target. Add the missing USB ID as well.

Change-Id: Ic10d1c2602e6b00d0d92614d12072ef911cc7e22
2012-07-01 19:05:28 +02:00
Dominik Riebeling
e7fdf80c17 Do some minor cleanup.
- Move a GUI-only implementation class around.
- Make some strings non-translatable which don't make sense translating.
- Rename internal state in installation class. There is no current build
  anymore.

Change-Id: I7384c5601de36bc48f858fe5c7b009653d439d94
2012-07-01 15:02:32 +02:00
Dominik Riebeling
b7931594f9 Handle no selected themes properly.
When installing themes without any themes selected show a notice in the log and
continue instead of stopping.

Change-Id: Ieeb03e4656b041ce1dda25b2c44b6b6f0aa0ca80
2012-07-01 14:58:39 +02:00
Dominik Riebeling
d0f7a8181b Be more specific on bootloader uninstallation errors.
When Rockbox Utility can't figure if the installed bootloader is a Rockbox
bootloader don't tell the user that it can't uninstall the bootloader but be
more specific stating that no Rockbox bootloader has been found.

Change-Id: I8e1eae4bdba30da87d10d2dc11fb9d48e176de2a
2012-07-01 12:34:59 +02:00
Dominik Riebeling
bf1c491c2b Move check for existing bootloader to ipodpatcher.
Bootloader handling is different on nano2g compared to the other supported Ipod
models. Since ipodpatcher handles this internally make ipodpatcher also provide
a way to check this when using from Rockbox Utility to avoid duplicating the
(already existing) checks in the latter.

Fixes wrong "bootloader already installed" message on nano2g.

Change-Id: Ibc658d775fbac7cf9a7e329d445fe97828a455d8
2012-07-01 12:34:59 +02:00
Dominik Riebeling
d8f5a00fc1 Install widget: fallback to development build.
If neither an old selected build nor a release is available fallback to
selecting the development build.

Remove some old code that was not supposed to be be kept.

Change-Id: I883535bd8e7981e68bc3fac3bcd5f375e1237242
2012-07-01 12:34:59 +02:00
Dominik Riebeling
a455f5901a Fix nano2g bootloader uninstallation.
Check the correct image when looking for the Ipod firmware version. On nano2g
this is a different image.

Change-Id: Ic7981363399d44e03247a81277522bc1d271090a
2012-07-01 12:34:59 +02:00
Dominik Riebeling
bed847a655 Backup dialog: check if the backup file already exists.
Give the user a chance to cancel the backup if the selected file already
exists. Since the filename is automatically generated from the installation
version information this can happen when trying to create a second backup of
the installation.

Change-Id: Iee34e576c4b3b94a4ccf99836741806b52a8affd
2012-06-30 11:58:45 +02:00
Dominik Riebeling
6db53f4ef8 Handle language change events in widgets.
Change-Id: I54265e8c5da03e7d13217118f233effa8837f007
2012-06-30 10:51:15 +02:00
Dominik Riebeling
fa17cb904c Rework Installation and remove Quick Start tab.
The Quick Start tab turned out to be used a lot but not explaining what its
functionality actually does, leading to various amount of confusion. The Quick
Start tab and its functionality have been completely removed.

As replacement the reworked Installation tab now includes both the entries from
the old Installation tab (Bootloader and Rockbox) and the Extras tab (Fonts,
Themes, Game files). Each of the items can be enabled or disabled individually,
and the selection is saved in the configuration. The only exception is the
bootloader option, since installing the bootloader is only needed once. To help
with this the bootloader checkbox is automatically enabled if no Rockbox
installation is found, and disabled if one is found. While it would be nicer to
check if the bootloader is actually installed this is not possible for various
players so the implementation simply relies on a Rockbox installation.

This should also make it much easier to update an existing installation.

Current limitations:
- the selected themes are not saved.
- it is not possible to detect if the target has the plugins that require
  additional game files prior to installation. Thus the "Game files" option is
  available for all targets but simply skipped if the plugins are not found.

Change-Id: I1929bb7045e382fcbba431cca057d3121607d3a9
2012-06-26 20:11:41 +02:00
Dominik Riebeling
9b783bc105 Separate select and install parts in themes install window.
Allow using the themes installation dialog as selection dialog separately from
installing themes. For this the installation is now triggered separately and
can be told to not to do the installation on Ok button. In this case the dialog
is selection only, and the Ok button is changed to Select. The installation
itself is still done in the class but started by calling the install() method
separately.

Change-Id: I856db8204788302b2b539e6d8283f73cb354f033
2012-06-26 18:30:27 +02:00
Dominik Riebeling
f419128a6b Show player picture left of device configuration.
After shrinking the size of the Rockbox logo shown and making the selected
device display two lines there is now enough room to also show an icon of the
player. The icon is scaled depending on the application font size, so for
setups configured with a larger font it still should show up in a reasonable
size.

Change-Id: I8f62f3292c62f820309157db73741b57fd6371ef
2012-06-26 18:30:27 +02:00
Dominik Riebeling
40e306ba37 Make Rockbox logo smaller and move device information up.
The original way of including the Rockbox logo wastes quite a bit of space.
Make it smaller and move it to the left, so the information about the
configured device can go next to it.

Change-Id: I790ffc423135e02e28cc963b0b565284b75bf98c
2012-06-26 18:30:27 +02:00
Dominik Riebeling
362f447ede Create dedicated backup dialog.
The "Installation" dialog allows backing up the current installation by
creating a zip file from the .rockbox folder since quite a while. However, this
has the drawback that you need to update your build to create a backup, but
creating a backup might be desireable in other cases as well (before updating
themes, or just for backup reasons). Since the functionality is somewhat hidden
it's also not obvious to users such a functionality exists (most users are
likely to use the "Quick Start" instead).

Implement backup functionality as dedicated dialog placed on the Uninstall tab.
Rename the Uninstall tab to accommodate this.

Change-Id: I1d2c6c8f646672d1b66bb442408fbfc2eeec700d
2012-06-26 18:30:27 +02:00
Dominik Riebeling
8cc46fb01c Add Ipod Classic (6G) as disabled target.
Change-Id: I35dbe8333c38b200e9b1e6e056f0382538ee91a1
2012-06-26 18:30:27 +02:00