Git commit 65f39aeaa8380ed330603dbef4339701a03b2cc1 by Thomas Eschenbacher.
Committed on 07/04/2015 at 20:13.
Pushed by eschenbacher into branch 'master'.

handbook: added documentation of plugins 'samplerate' ... 'zero'

stringenter plugin: added optional parameter with preset string

renamed screenshots of sonagram and volume plugin

M  +4    -3    LICENSES
M  +463  -67   doc/en/index.docbook
M  +-    --    doc/en/kwave-plugin-noise.png
A  +-    --    doc/en/kwave-plugin-saveblocks.png
R  +-    --    doc/en/kwave-plugin-sonagram-setup.png [from: 
doc/en/kwave-sonagram-setup.png - 100% similarity]
R  +-    --    doc/en/kwave-plugin-sonagram-window.png [from: 
doc/en/kwave-sonagram.png - 100% similarity]
A  +-    --    doc/en/kwave-plugin-stringenter.png
R  +-    --    doc/en/kwave-plugin-volume.png [from: doc/en/kwave-volume.png - 
100% similarity]
M  +1    -1    plugins/selectrange/SelectRangePlugin.cpp
M  +7    -1    plugins/stringenter/StringEnterDialog.cpp
M  +2    -1    plugins/stringenter/StringEnterDialog.h
M  +4    -2    plugins/stringenter/StringEnterPlugin.cpp
M  +47   -15   scripts/screenshots.kwave

http://commits.kde.org/kwave/65f39aeaa8380ed330603dbef4339701a03b2cc1

diff --git a/LICENSES b/LICENSES
index 669b842..5d03b40 100644
--- a/LICENSES
+++ b/LICENSES
@@ -171,9 +171,10 @@ COMPLETE LIST OF FILES AND THEIR LICENSE
        doc/en/kwave-plugin-pitch_shift.png             (should be FDL)
        doc/en/kwave-plugin-playback.png                (should be FDL)
        doc/en/kwave-plugin-record.png                  (should be FDL)
-       doc/en/kwave-sonagram.png                       (should be FDL)
-       doc/en/kwave-sonagram-setup.png                 (should be FDL)
-       doc/en/kwave-volume.png                         (should be FDL)
+       doc/en/kwave-plugin-selectrange.png             (should be FDL)
+       doc/en/kwave-plugin-sonagram-setup.png          (should be FDL)
+       doc/en/kwave-plugin-sonagram-window.png         (should be FDL)
+       doc/en/kwave-plugin-volume.png                  (should be FDL)
        doc/en/light_off.png                            LGPL2 (crystal project) 
[derived from greenled.png]
        doc/en/light_on.png                             LGPL2 (crystal project) 
[derived from greenled.png]
 #      doc/en/nonlinear.png                            ??? UNKNOWN ??? (arrow 
only)
diff --git a/doc/en/index.docbook b/doc/en/index.docbook
index 4491b63..e23adc7 100644
--- a/doc/en/index.docbook
+++ b/doc/en/index.docbook
@@ -2842,7 +2842,8 @@
        &kwave; since its first version uses an internal text command language.
        This command language is used internally for menu handling, GUI control,
        builtin effects and plugin invocations. The commands will be described
-       later in the section <link linkend="kwave_commands">Command 
Reference</link>.
+       later in the section
+       <link linkend="kwave_commands" endterm="title_kwave_commands" />.
     </para>
 
     <sect1><title>General Syntax</title>
@@ -3097,7 +3098,7 @@
 <!-- +++ Section: Command Reference                                     +++ -->
 <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
 
-    <sect1 id="kwave_commands"><title>Command Reference</title>
+    <sect1 id="kwave_commands"><title id="title_kwave_commands">Command 
Reference</title>
        <index><title>Alphabetical Index</title>
            &no-i18n-tag;
            <!-- @COMMAND_INDEX_START@ -->
@@ -6836,19 +6837,8 @@
     </variablelist>
     </sect1>
 
-    <!-- @PLUGIN@ samplerate (TODO) -->
+    <!-- @PLUGIN@ samplerate -->
     <sect1 id="plugin_sect_samplerate"><title 
id="plugin_title_samplerate">&no-i18n-plugin_samplerate; (Sample Rate 
Conversion)</title>
-    <!-- <screenshot>
-       <screeninfo>Screenshot</screeninfo>
-       <mediaobject>
-           <imageobject>
-               <imagedata fileref="kwave-plugin-samplerate.png" format="PNG"/>
-           </imageobject>
-           <textobject>
-               <phrase>Screenshot of the Sample Rate Conversion Plugin</phrase>
-           </textobject>
-       </mediaobject>
-    </screenshot> -->
     <variablelist>
        <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_internal_name;</emphasis></term>
@@ -6862,31 +6852,45 @@
            <term><emphasis 
role="bold">&i18n-plugin_lbl_description;</emphasis></term>
            <listitem>
            <para>
-               TODO: description of what the Sample Rate Conversion plugin 
does...
+               Changes the sample rate of the current selection or the whole
+               signal.
            </para>
            </listitem>
        </varlistentry>
-       <!-- varlistentry>
+       <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_parameters;</emphasis>:</term>
            <listitem>
                <variablelist>
                    <varlistentry>
-                       <term><replaceable>operation</replaceable></term>
+                       <term><replaceable>new rate</replaceable></term>
                        <listitem>
                            <para>
-                               description of the parameter
+                               The new sample rate in samples per second
+                               (floating point value).
+                           </para>
+                       </listitem>
+                   </varlistentry>
+                   <varlistentry>
+                       <term><replaceable>mode</replaceable> (optional)</term>
+                       <listitem>
+                           <para>
+                               If this parameter is used and set to the
+                               value "<literal>all</literal>", then this
+                               effect will be applied to the whole signal.
+                               Otherwise it will be applied to the current
+                               selection only.
                            </para>
                        </listitem>
                    </varlistentry>
                </variablelist>
            </listitem>
-       </varlistentry -->
+       </varlistentry>
     </variablelist>
     </sect1>
 
-    <!-- @PLUGIN@ saveblocks (TODO) -->
+    <!-- @PLUGIN@ saveblocks -->
     <sect1 id="plugin_sect_saveblocks"><title 
id="plugin_title_saveblocks">&no-i18n-plugin_saveblocks; (Save Blocks)</title>
-    <!-- <screenshot>
+    <screenshot>
        <screeninfo>Screenshot</screeninfo>
        <mediaobject>
            <imageobject>
@@ -6896,7 +6900,7 @@
                <phrase>Screenshot of the Save Blocks Plugin</phrase>
            </textobject>
        </mediaobject>
-    </screenshot> -->
+    </screenshot>
     <variablelist>
        <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_internal_name;</emphasis></term>
@@ -6910,31 +6914,166 @@
            <term><emphasis 
role="bold">&i18n-plugin_lbl_description;</emphasis></term>
            <listitem>
            <para>
-               TODO: description of what the Save Blocks plugin does...
+               Saves all sections between markers, each into a separate file.
+               Each file is given a name that can be customized by using
+               a pattern that can contain the original file name, an index
+               and the number of sections.
            </para>
            </listitem>
        </varlistentry>
-       <!-- varlistentry>
+       <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_parameters;</emphasis>:</term>
            <listitem>
                <variablelist>
                    <varlistentry>
-                       <term><replaceable>operation</replaceable></term>
+                       <term><replaceable>name</replaceable></term>
                        <listitem>
                            <para>
-                               description of the parameter
+                               The name of the original file, will be used as
+                               base name for the file names.
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>pattern</replaceable></term>
+                       <listitem>
+                           <para>
+                               A pattern that will be used for creating the
+                               names of the files. It can contain the
+                               following wildcards which will be replaced
+                               by the corresponding content when creating
+                               the final file name:
+                               <informaltable frame='all'>
+                                   <tgroup cols='2'>
+                                       <thead>
+                                           <row>
+                                               <entry 
align='left'>wildcard</entry>
+                                               <entry 
align='left'>description</entry>
+                                           </row>
+                                       </thead>
+                                       <tbody>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>[%nr]</command></entry>
+                                               <entry>
+                                                   Will be replaced with the 
current index of the
+                                                   file to save.
+                                               </entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>[%count]</command></entry>
+                                               <entry>
+                                                   Will be replaced with the 
number of sections that
+                                                   will be saved.
+                                               </entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>[%total]</command></entry>
+                                               <entry>
+                                                   Will be replaced with the 
index of the last file
+                                                   to save.
+                                               </entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>[%filename]</command></entry>
+                                               <entry>
+                                                   Will be replaced with the 
base file name,
+                                                   without path and without 
extension.
+                                               </entry>
+                                           </row>
+                                       </tbody>
+                                   </tgroup>
+                               </informaltable>
+                               All numeric wildcards can also contain a 
numerical argument after the
+                               "<literal>%</literal>" and the identifier, to 
force a certain number
+                               of digits. If the number is preceded by a 
<literal>0</literal> then
+                               it will contain leading zeroes, otherwise it 
will contain leading
+                               spaces.
+
+                               Example: 
<command><literal>[%04nr]</literal></command> produces a
+                               number between 0001 and 9999.
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>numbering mode</replaceable></term>
+                       <listitem>
+                           <para>
+                               Determines where the numbering should start.
+                               <informaltable frame='all'>
+                                   <tgroup cols='2'>
+                                       <thead>
+                                           <row>
+                                               <entry 
align='left'>value</entry>
+                                               <entry 
align='left'>description</entry>
+                                           </row>
+                                       </thead>
+                                       <tbody>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>0</command></entry>
+                                               <entry>
+                                                   Continue after the index of 
the highest
+                                                   index that already exists, 
this avoids
+                                                   overwriting existing files.
+                                               </entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>1</command></entry>
+                                               <entry>
+                                                   Always start with index 1, 
with the risk
+                                                   of overwriting existing 
files.
+                                               </entry>
+                                           </row>
+                                       </tbody>
+                                   </tgroup>
+                               </informaltable>
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>selection only</replaceable></term>
+                       <listitem>
+                           <para>
+                               <informaltable frame='all'>
+                                   <tgroup cols='2'>
+                                       <thead>
+                                           <row>
+                                               <entry 
align='left'>value</entry>
+                                               <entry 
align='left'>description</entry>
+                                           </row>
+                                       </thead>
+                                       <tbody>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>0</command></entry>
+                                               <entry>
+                                                   Save all sections of the 
whole file.
+                                               </entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>1</command></entry>
+                                               <entry>
+                                                   Save only the sections that 
are within the
+                                                   current selection. If 
nothing is selected,
+                                                   the whole file will be 
saved.
+                                               </entry>
+                                           </row>
+                                       </tbody>
+                                   </tgroup>
+                               </informaltable>
                            </para>
                        </listitem>
                    </varlistentry>
                </variablelist>
            </listitem>
-       </varlistentry -->
+       </varlistentry>
     </variablelist>
     </sect1>
 
-    <!-- @PLUGIN@ selectrange (TODO) -->
+    <!-- @PLUGIN@ selectrange -->
     <sect1 id="plugin_sect_selectrange"><title 
id="plugin_title_selectrange">&no-i18n-plugin_selectrange; (Select 
Range)</title>
-    <!-- <screenshot>
+    <screenshot>
        <screeninfo>Screenshot</screeninfo>
        <mediaobject>
            <imageobject>
@@ -6944,7 +7083,7 @@
                <phrase>Screenshot of the Select Range Plugin</phrase>
            </textobject>
        </mediaobject>
-    </screenshot> -->
+    </screenshot>
     <variablelist>
        <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_internal_name;</emphasis></term>
@@ -6958,41 +7097,118 @@
            <term><emphasis 
role="bold">&i18n-plugin_lbl_description;</emphasis></term>
            <listitem>
            <para>
-               TODO: description of what the Select Range plugin does...
+               Shows a dialog to select a range of samples. The start and the
+               length of the selection can be set either by a time in 
milliseconds,
+               in samples, or as a percentage of the total length of the file.
            </para>
            </listitem>
        </varlistentry>
-       <!-- varlistentry>
+       <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_parameters;</emphasis>:</term>
            <listitem>
                <variablelist>
                    <varlistentry>
-                       <term><replaceable>operation</replaceable></term>
+                       <term id="select_range_start_mode"><replaceable>start 
mode</replaceable></term>
                        <listitem>
                            <para>
-                               description of the parameter
+                               Determines the units in which the
+                               <emphasis>start</emphasis> of the selection
+                               will be given.
+                               <informaltable frame='all'>
+                                   <tgroup cols='2'>
+                                       <thead>
+                                           <row>
+                                               <entry 
align='left'>value</entry>
+                                               <entry 
align='left'>description</entry>
+                                           </row>
+                                       </thead>
+                                       <tbody>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>0</command></entry>
+                                               <entry>milliseconds</entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>1</command></entry>
+                                               <entry>samples</entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>2</command></entry>
+                                               <entry>percentage of the length 
of the file</entry>
+                                           </row>
+                                       </tbody>
+                                   </tgroup>
+                               </informaltable>
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>range mode</replaceable></term>
+                       <listitem>
+                           <para>
+                               Determines the units in which the
+                               <emphasis>length</emphasis> of
+                               the selection will be given. See the description
+                               if the parameter
+                               <parameter>start mode</parameter>
+                               for a list of possible values.
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>start</replaceable></term>
+                       <listitem>
+                           <para>
+                               The start of the selection, in milliseconds,
+                               samples or percentage of the length of the
+                               file, depending on the parameter
+                               <parameter>range mode</parameter>.
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>length</replaceable></term>
+                       <listitem>
+                           <para>
+                               The length of the selection, in milliseconds,
+                               samples or percentage of the length of the
+                               file, depending on the parameter
+                               <parameter>range mode</parameter>.
                            </para>
                        </listitem>
                    </varlistentry>
                </variablelist>
            </listitem>
-       </varlistentry -->
+       </varlistentry>
     </variablelist>
     </sect1>
 
-    <!-- @PLUGIN@ sonagram (TODO) -->
+    <!-- @PLUGIN@ sonagram -->
     <sect1 id="plugin_sect_sonagram"><title 
id="plugin_title_sonagram">&no-i18n-plugin_sonagram; (Sonagram)</title>
-    <!-- <screenshot>
+    <screenshot>
        <screeninfo>Screenshot</screeninfo>
        <mediaobject>
            <imageobject>
-               <imagedata fileref="kwave-plugin-sonagram.png" format="PNG"/>
+               <imagedata fileref="kwave-plugin-sonagram-setup.png" 
format="PNG"/>
            </imageobject>
            <textobject>
-               <phrase>Screenshot of the Sonagram Plugin</phrase>
+               <phrase>Screenshot of the setup dialog of the Sonagram 
Plugin</phrase>
            </textobject>
        </mediaobject>
-    </screenshot> -->
+    </screenshot>
+    <screenshot>
+       <screeninfo>Screenshot</screeninfo>
+       <mediaobject>
+           <imageobject>
+               <imagedata fileref="kwave-plugin-sonagram-window.png" 
format="PNG"/>
+           </imageobject>
+           <textobject>
+               <phrase>Screenshot of the Sonagram Window</phrase>
+           </textobject>
+       </mediaobject>
+    </screenshot>
     <variablelist>
        <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_internal_name;</emphasis></term>
@@ -7006,31 +7222,121 @@
            <term><emphasis 
role="bold">&i18n-plugin_lbl_description;</emphasis></term>
            <listitem>
            <para>
-               TODO: description of what the Sonagram plugin does...
+               Evaluates the current selection by generating a
+               <emphasis>sonagram</emphasis>. A sonagram is an evaluation
+               of a signal over time (x axis), frequency (y axis) and
+               intensity (color).
            </para>
            </listitem>
        </varlistentry>
-       <!-- varlistentry>
+       <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_parameters;</emphasis>:</term>
            <listitem>
                <variablelist>
                    <varlistentry>
-                       <term><replaceable>operation</replaceable></term>
+                       <term><replaceable>FFT points</replaceable></term>
+                       <listitem>
+                           <para>
+                               Number of points of the FFT, a whole number
+                               between 4 and 32767 which determines the
+                               frequency resolution.
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>window function</replaceable></term>
+                       <listitem>
+                           <para>
+                               The window function used for the FFT 
calculation,
+                               supported values are:
+                               <informaltable frame='all'>
+                                   <tgroup cols='2'>
+                                       <thead>
+                                           <row>
+                                               <entry 
align='left'>value</entry>
+                                               <entry 
align='left'>description</entry>
+                                           </row>
+                                       </thead>
+                                       <tbody>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>none</command></entry>
+                                               <entry>no window 
function</entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>hamming</command></entry>
+                                               <entry>
+                                                   <personname>
+                                                       
<surname>Hamming</surname>
+                                                   </personname> window
+                                               </entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>hanning</command></entry>
+                                               <entry>
+                                                   <personname>
+                                                       
<surname>Hanning</surname>
+                                                   </personname> window
+                                               </entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>blackman</command></entry>
+                                               <entry>
+                                                   <personname>
+                                                       
<surname>Blackman</surname>
+                                                   </personname> window
+                                               </entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>triangular</command></entry>
+                                               <entry>Triangular window</entry>
+                                           </row>
+                                       </tbody>
+                                   </tgroup>
+                               </informaltable>
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>use colors</replaceable></term>
+                       <listitem>
+                           <para>
+                               If set to non-zero, generate use colors.
+                               If set to zero use grayscales for intensity.
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>track changes</replaceable></term>
+                       <listitem>
+                           <para>
+                               If set to non-zero, the sonagram will be updated
+                               when the area that was evaluated has changed.
+                               If set to zero it will never be updated.
+                           </para>
+                       </listitem>
+                   </varlistentry>
+
+                   <varlistentry>
+                       <term><replaceable>follow selection</replaceable></term>
                        <listitem>
                            <para>
-                               description of the parameter
+                               Not yet implemented, use zero for this 
parameter.
                            </para>
                        </listitem>
                    </varlistentry>
+
                </variablelist>
            </listitem>
-       </varlistentry -->
+       </varlistentry>
     </variablelist>
     </sect1>
 
-    <!-- @PLUGIN@ stringenter (TODO) -->
+    <!-- @PLUGIN@ stringenter -->
     <sect1 id="plugin_sect_stringenter"><title 
id="plugin_title_stringenter">&no-i18n-plugin_stringenter; (Enter 
Command)</title>
-    <!-- <screenshot>
+    <screenshot>
        <screeninfo>Screenshot</screeninfo>
        <mediaobject>
            <imageobject>
@@ -7040,7 +7346,7 @@
                <phrase>Screenshot of the Enter Command Plugin</phrase>
            </textobject>
        </mediaobject>
-    </screenshot> -->
+    </screenshot>
     <variablelist>
        <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_internal_name;</emphasis></term>
@@ -7054,31 +7360,36 @@
            <term><emphasis 
role="bold">&i18n-plugin_lbl_description;</emphasis></term>
            <listitem>
            <para>
-               TODO: description of what the Enter Command plugin does...
+               A small dialog window that allows to enter a &kwave; text 
command.
+               Please refer to the chapter
+               <link linkend="kwave_commands" endterm="title_kwave_commands"/> 
in
+               this manual.
            </para>
            </listitem>
        </varlistentry>
-       <!-- varlistentry>
+       <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_parameters;</emphasis>:</term>
            <listitem>
                <variablelist>
                    <varlistentry>
-                       <term><replaceable>operation</replaceable></term>
+                       <term><replaceable>preset</replaceable> 
(optional)</term>
                        <listitem>
                            <para>
-                               description of the parameter
+                               A text that is shown in the dialog. This 
parameter
+                               is optional, if omitted the edit field of the
+                               dialog will be empty at start.
                            </para>
                        </listitem>
                    </varlistentry>
                </variablelist>
            </listitem>
-       </varlistentry -->
+       </varlistentry>
     </variablelist>
     </sect1>
 
-    <!-- @PLUGIN@ volume (TODO) -->
+    <!-- @PLUGIN@ volume -->
     <sect1 id="plugin_sect_volume"><title 
id="plugin_title_volume">&no-i18n-plugin_volume; (Volume)</title>
-    <!-- <screenshot>
+    <screenshot>
        <screeninfo>Screenshot</screeninfo>
        <mediaobject>
            <imageobject>
@@ -7088,7 +7399,7 @@
                <phrase>Screenshot of the Volume Plugin</phrase>
            </textobject>
        </mediaobject>
-    </screenshot> -->
+    </screenshot>
     <variablelist>
        <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_internal_name;</emphasis></term>
@@ -7102,29 +7413,74 @@
            <term><emphasis 
role="bold">&i18n-plugin_lbl_description;</emphasis></term>
            <listitem>
            <para>
-               TODO: description of what the Volume plugin does...
+               With this plugin you can change the volume of the current 
selection
+               by a constant factor. The corresponding dialog allows to enter
+               this factor as a
+               <emphasis>numeric factor</emphasis> given as a floating point
+               value between 0.10 and 10.0,
+               a <emphasis>percentage</emphasis> between 1 and 1000,
+               or in <emphasis>decibel</emphasis> between -21 and +21.
+           </para>
+           <para>
+               Use a factor above 1.0 (or percentage below 100 or more than 0 
dB)
+               if the file is too silent, or a factor below 1.0
+               (percentage below 100 or less than 0 dB)
+               if the file is too loud.
            </para>
            </listitem>
        </varlistentry>
-       <!-- varlistentry>
+       <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_parameters;</emphasis>:</term>
            <listitem>
                <variablelist>
                    <varlistentry>
-                       <term><replaceable>operation</replaceable></term>
+                       <term><replaceable>factor</replaceable></term>
                        <listitem>
                            <para>
-                               description of the parameter
+                               A floating point value with the amplification
+                               factor.
+                           </para>
+                       </listitem>
+                   </varlistentry>
+                   <varlistentry>
+                       <term><replaceable>mode</replaceable></term>
+                       <listitem>
+                           <para>
+                               <informaltable frame='all'>
+                                   <tgroup cols='2'>
+                                       <thead>
+                                           <row>
+                                               <entry 
align='left'>value</entry>
+                                               <entry 
align='left'>description</entry>
+                                           </row>
+                                       </thead>
+                                       <tbody>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>0</command></entry>
+                                               <entry>factor</entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>1</command></entry>
+                                               <entry>percentage</entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>1</command></entry>
+                                               <entry>decibel</entry>
+                                           </row>
+                                       </tbody>
+                                   </tgroup>
+                               </informaltable>
+
                            </para>
                        </listitem>
                    </varlistentry>
                </variablelist>
            </listitem>
-       </varlistentry -->
+       </varlistentry>
     </variablelist>
     </sect1>
 
-    <!-- @PLUGIN@ zero (TODO) -->
+    <!-- @PLUGIN@ zero -->
     <sect1 id="plugin_sect_zero"><title 
id="plugin_title_zero">&no-i18n-plugin_zero; (Zero Generator)</title>
     <variablelist>
        <varlistentry>
@@ -7139,25 +7495,65 @@
            <term><emphasis 
role="bold">&i18n-plugin_lbl_description;</emphasis></term>
            <listitem>
            <para>
-               TODO: description of what the Zero Generator plugin does...
+               This plugin has two modes of operation. If used without 
parameters
+               it wipes the current selection by overwriting it with silence.
+               When used with two parameters, it inserts some
+               amount of silence at the start of the current selection.
            </para>
            </listitem>
        </varlistentry>
-       <!-- varlistentry>
+       <varlistentry>
            <term><emphasis 
role="bold">&i18n-plugin_lbl_parameters;</emphasis>:</term>
            <listitem>
                <variablelist>
                    <varlistentry>
-                       <term><replaceable>operation</replaceable></term>
+                       <term><replaceable>length mode</replaceable></term>
+                       <listitem>
+                           <para>
+                               Determines the units in which the
+                               <emphasis>length</emphasis> of the inserted 
silence
+                               will be given.
+                               <informaltable frame='all'>
+                                   <tgroup cols='2'>
+                                       <thead>
+                                           <row>
+                                               <entry 
align='left'>value</entry>
+                                               <entry 
align='left'>description</entry>
+                                           </row>
+                                       </thead>
+                                       <tbody>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>0</command></entry>
+                                               <entry>milliseconds</entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>1</command></entry>
+                                               <entry>samples</entry>
+                                           </row>
+                                           <row>
+                                               
<entry>&no-i18n-tag;<command>2</command></entry>
+                                               <entry>percentage of the length 
of the file</entry>
+                                           </row>
+                                       </tbody>
+                                   </tgroup>
+                               </informaltable>
+                           </para>
+                       </listitem>
+                   </varlistentry>
+                   <varlistentry>
+                       <term><replaceable>length</replaceable></term>
                        <listitem>
                            <para>
-                               description of the parameter
+                               Length of the silence to insert, in 
milliseconds,
+                               samples or percentage of the length of the
+                               file, depending on the parameter
+                               <parameter>length mode</parameter>.
                            </para>
                        </listitem>
                    </varlistentry>
                </variablelist>
            </listitem>
-       </varlistentry -->
+       </varlistentry>
     </variablelist>
     </sect1>
 
diff --git a/doc/en/kwave-plugin-noise.png b/doc/en/kwave-plugin-noise.png
index d743b92..e58b489 100644
Binary files a/doc/en/kwave-plugin-noise.png and 
b/doc/en/kwave-plugin-noise.png differ
diff --git a/doc/en/kwave-plugin-saveblocks.png 
b/doc/en/kwave-plugin-saveblocks.png
new file mode 100644
index 0000000..34cd21b
Binary files /dev/null and b/doc/en/kwave-plugin-saveblocks.png differ
diff --git a/doc/en/kwave-sonagram-setup.png 
b/doc/en/kwave-plugin-sonagram-setup.png
similarity index 100%
rename from doc/en/kwave-sonagram-setup.png
rename to doc/en/kwave-plugin-sonagram-setup.png
diff --git a/doc/en/kwave-sonagram.png b/doc/en/kwave-plugin-sonagram-window.png
similarity index 100%
rename from doc/en/kwave-sonagram.png
rename to doc/en/kwave-plugin-sonagram-window.png
diff --git a/doc/en/kwave-plugin-stringenter.png 
b/doc/en/kwave-plugin-stringenter.png
new file mode 100644
index 0000000..d8acb3c
Binary files /dev/null and b/doc/en/kwave-plugin-stringenter.png differ
diff --git a/doc/en/kwave-volume.png b/doc/en/kwave-plugin-volume.png
similarity index 100%
rename from doc/en/kwave-volume.png
rename to doc/en/kwave-plugin-volume.png
diff --git a/plugins/selectrange/SelectRangePlugin.cpp 
b/plugins/selectrange/SelectRangePlugin.cpp
index 742fca3..f7890e8 100644
--- a/plugins/selectrange/SelectRangePlugin.cpp
+++ b/plugins/selectrange/SelectRangePlugin.cpp
@@ -52,7 +52,7 @@ Kwave::SelectRangePlugin::~SelectRangePlugin()
 //***************************************************************************
 QStringList *Kwave::SelectRangePlugin::setup(QStringList &previous_params)
 {
-    // try to interprete the previous parameters
+    // try to interpret the previous parameters
     interpreteParameters(previous_params);
 
     // create the setup dialog
diff --git a/plugins/stringenter/StringEnterDialog.cpp 
b/plugins/stringenter/StringEnterDialog.cpp
index d45c396..0695450 100644
--- a/plugins/stringenter/StringEnterDialog.cpp
+++ b/plugins/stringenter/StringEnterDialog.cpp
@@ -32,7 +32,8 @@
 #define CONFIG_WIDTH "width"
 
 //***************************************************************************
-Kwave::StringEnterDialog::StringEnterDialog(QWidget *parent)
+Kwave::StringEnterDialog::StringEnterDialog(QWidget *parent,
+                                            const QString &preset)
     :QDialog(parent), Ui::StringEnterDlg(), m_command()
 {
     setupUi(this);
@@ -46,6 +47,11 @@ Kwave::StringEnterDialog::StringEnterDialog(QWidget *parent)
     int          w      = result.toUInt(&ok);
     if (ok && (w > sizeHint().width()))
        resize(w, height());
+
+    if (preset.length()) {
+       edCommand->setText(preset);
+       m_command = preset;
+    }
 }
 
 //***************************************************************************
diff --git a/plugins/stringenter/StringEnterDialog.h 
b/plugins/stringenter/StringEnterDialog.h
index 127d874..d3bc101 100644
--- a/plugins/stringenter/StringEnterDialog.h
+++ b/plugins/stringenter/StringEnterDialog.h
@@ -38,8 +38,9 @@ namespace Kwave
        /**
         * Constructor.
         * @param parent the parent widget the dialog belongs to
+        * @param preset initial text of the line edit field
         */
-       explicit StringEnterDialog(QWidget *parent);
+       explicit StringEnterDialog(QWidget *parent, const QString &preset);
 
        /** Destructor */
        virtual ~StringEnterDialog();
diff --git a/plugins/stringenter/StringEnterPlugin.cpp 
b/plugins/stringenter/StringEnterPlugin.cpp
index b71e27c..7c7efda 100644
--- a/plugins/stringenter/StringEnterPlugin.cpp
+++ b/plugins/stringenter/StringEnterPlugin.cpp
@@ -54,11 +54,13 @@ void Kwave::StringEnterPlugin::load(QStringList &params)
 //***************************************************************************
 QStringList *Kwave::StringEnterPlugin::setup(QStringList &previous_params)
 {
-    Q_UNUSED(previous_params);
+    QString preset = QString();
+    if (previous_params.count() == 1)
+       preset = previous_params[0];
 
     // create the setup dialog
     QPointer<Kwave::StringEnterDialog> dialog =
-       new Kwave::StringEnterDialog(parentWidget());
+       new Kwave::StringEnterDialog(parentWidget(), preset);
     Q_ASSERT(dialog);
     if (!dialog) return 0;
 
diff --git a/scripts/screenshots.kwave b/scripts/screenshots.kwave
index bca7684..e5939ad 100644
--- a/scripts/screenshots.kwave
+++ b/scripts/screenshots.kwave
@@ -119,8 +119,8 @@ main:
     view:zoom_all()
     plugin:execute(selectrange,2,2,25,10)
     expandtolabel()
-    delayed(1500,window:mousemove(Kwave::TrackView,350,80))
-    delayed(1500,window:screenshot(Kwave::TopWidget, 
/var/tmp/screenshots/${LANG}/kwave-main.png))
+    delayed(1000,window:mousemove(Kwave::TrackView,350,80))
+    delayed(1000,window:screenshot(Kwave::TopWidget, 
/var/tmp/screenshots/${LANG}/kwave-main.png))
     sync()
 
 #
@@ -136,7 +136,7 @@ plugin-about:
 #
 plugin-amplifyfree:
     selectall()
-    delayed(2000,window:resize(Kwave::AmplifyFreeDialog, 400, 300))
+    delayed(1000,window:resize(Kwave::AmplifyFreeDialog, 400, 300))
     delayed(500,window:click(Kwave::CurveWidget, 120, 50))
     delayed(500,window:screenshot(Kwave::AmplifyFreeDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-amplifyfree.png))
     delayed(100,window:close(Kwave::AmplifyFreeDialog))
@@ -167,7 +167,7 @@ plugin-codec_mp3:
 # screenshot of the File Info dialog
 #
 plugin-fileinfo:
-    delayed(2000,window:screenshot(Kwave::FileInfoDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-fileinfo.png))
+    delayed(1000,window:screenshot(Kwave::FileInfoDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-fileinfo.png))
     delayed(100,window:close(Kwave::FileInfoDialog))
     plugin:setup(fileinfo)
     sync()
@@ -176,7 +176,7 @@ plugin-fileinfo:
 # screenshot of the Goto plugin
 #
 plugin-goto:
-    delayed(2000,window:screenshot(Kwave::GotoDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-goto.png))
+    delayed(1000,window:screenshot(Kwave::GotoDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-goto.png))
     delayed(100,window:close(Kwave::GotoDialog))
     plugin:setup(goto, 2, 42)
     sync()
@@ -185,7 +185,7 @@ plugin-goto:
 # screenshot of the Insert At plugin
 #
 plugin-insert_at:
-    delayed(2000,window:screenshot(Kwave::GotoDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-insert_at.png))
+    delayed(1000,window:screenshot(Kwave::GotoDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-insert_at.png))
     delayed(100,window:close(Kwave::GotoDialog))
     plugin:setup(insert_at, 2, 42)
     sync()
@@ -195,7 +195,7 @@ plugin-insert_at:
 #
 plugin-lowpass:
     selectall()
-    delayed(2000,window:screenshot(Kwave::LowPassDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-lowpass.png))
+    delayed(1000,window:screenshot(Kwave::LowPassDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-lowpass.png))
     delayed(100,window:close(Kwave::LowPassDialog))
     plugin:setup(lowpass, 2342)
     sync()
@@ -205,7 +205,7 @@ plugin-lowpass:
 #
 plugin-noise:
     selectall()
-    delayed(2000,window:screenshot(Kwave::NoiseDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-noise.png))
+    delayed(1000,window:screenshot(Kwave::NoiseDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-noise.png))
     delayed(100,window:close(Kwave::NoiseDialog))
     plugin:setup(noise, 0.22, 1)
     sync()
@@ -233,7 +233,7 @@ plugin-newsignal:
 #
 plugin-notch_filter:
     selectall()
-    delayed(2000,window:screenshot(Kwave::NotchFilterDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-notch_filter.png))
+    delayed(1000,window:screenshot(Kwave::NotchFilterDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-notch_filter.png))
     delayed(100,window:close(Kwave::NotchFilterDialog))
     plugin:setup(notch_filter, 880, 230)
     sync()
@@ -243,7 +243,7 @@ plugin-notch_filter:
 #
 plugin-pitch_shift:
     selectall()
-    delayed(2000,window:screenshot(Kwave::PitchShiftDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-pitch_shift.png))
+    delayed(1000,window:screenshot(Kwave::PitchShiftDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-pitch_shift.png))
     delayed(100,window:close(Kwave::PitchShiftDialog))
     plugin:setup(pitch_shift,1.23, 4, 1)
     sync()
@@ -252,7 +252,7 @@ plugin-pitch_shift:
 # screenshot of the Playback Setup dialog
 #
 plugin-playback:
-    delayed(2000,window:screenshot(Kwave::PlayBackDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-playback.png))
+    delayed(1000,window:screenshot(Kwave::PlayBackDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-playback.png))
     delayed(100,window:close(Kwave::PlayBackDialog))
     plugin:setup(playback, 2,"null sink|sound_card||Null 
Output|sound_note",2,0,16)
     sync()
@@ -261,12 +261,35 @@ plugin-playback:
 # screenshot of the Record dialog
 #
 plugin-record:
-    delayed(2000,window:screenshot(Kwave::RecordDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-record.png))
+    delayed(1000,window:screenshot(Kwave::RecordDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-record.png))
     delayed(100,window:close(Kwave::RecordDialog))
     
plugin:setup(record,2,1,20,1,300,0,2015-02-22T08:43:00,1,30,0,3,0,50,0,5,0,5,DSNOOP-Plugin|sound_note,2,44100,0,16,401,64,12)
     sync()
 
 #
+# screenshot of the Save Blocks dialog
+#
+plugin-saveblocks:
+    selectnone()
+    fileinfo(Filename, example.wav)
+    selectnone()
+    delayed(1500,window:screenshot(Kwave::SaveBlocksDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-saveblocks.png))
+    delayed(100,window:close(Kwave::SaveBlocksDialog))
+    
plugin:setup(saveblocks,/var/tmp/screenshots/example.wav,[\%filename\]\-\[\%04nr\],0,1)
+    sync()
+
+#
+# screenshot of the Select Range dialog
+#
+plugin-selectrange:
+    plugin:execute(selectrange,2,2,42,11)
+    fileinfo(Filename, example.wav)
+    delayed(1500,window:screenshot(Kwave::SelectRangeDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-selectrange.png))
+    delayed(100,window:close(Kwave::SelectRangeDialog))
+    plugin:setup(selectrange,2,2,42,11)
+    sync()
+
+#
 # screenshot of the Sonagram window
 #
 plugin-sonagram:
@@ -276,7 +299,7 @@ plugin-sonagram:
     select_track:on(0)
     plugin:execute(sonagram, 1024, hamming, 1, 1, 0)
     delayed(2000,window:click(Kwave::ImageView, 396, 259))
-    delayed(100,window:screenshot(Kwave::SonagramWindow, 
/var/tmp/screenshots/${LANG}/kwave-sonagram.png))
+    delayed(100,window:screenshot(Kwave::SonagramWindow, 
/var/tmp/screenshots/${LANG}/kwave-plugin-sonagram-window.png))
     delayed(100,window:sendkey(Kwave::SonagramWindow, Ctrl+W))
     sync()
 
@@ -288,18 +311,27 @@ plugin-sonagram-setup:
     expandtolabel()
     select_track:none()
     select_track:on(0)
-    delayed(2000,window:screenshot(Kwave::SonagramDialog, 
/var/tmp/screenshots/${LANG}/kwave-sonagram-setup.png))
+    delayed(1000,window:screenshot(Kwave::SonagramDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-sonagram-setup.png))
     delayed(100,window:close(Kwave::SonagramDialog))
     plugin:setup(sonagram, 1024, hamming, 1, 1, 0)
     sync()
 
 #
+# screenshot of the String Enter dialog
+#
+plugin-stringenter:
+    delayed(1000,window:screenshot(Kwave::StringEnterDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-stringenter.png))
+    delayed(100,window:close(Kwave::StringEnterDialog))
+    plugin:setup(stringenter, help\(\))
+    sync()
+
+#
 # screenshot of the Volume dialog
 #
 plugin-volume:
     selectall()
     select_track:all()
-    delayed(2000,window:screenshot(Kwave::VolumeDialog, 
/var/tmp/screenshots/${LANG}/kwave-volume.png))
+    delayed(1000,window:screenshot(Kwave::VolumeDialog, 
/var/tmp/screenshots/${LANG}/kwave-plugin-volume.png))
     delayed(100,window:close(Kwave::VolumeDialog))
     plugin:setup(volume, 0.707946, 2)
     sync()

Reply via email to