###################################################################
##                         GQradio 0.2.0      (November 9, 2001) ##
##     This software is Copyright (C) 2001 by John Ellis.        ##
##  Use this software at your own risk. I am not responsible for ##
##        anything this software may do to your computer.        ##
## This software falls under the GNU Public License. Please read ##
##              the COPYING file for more information.           ##
###################################################################

(Note this is a template source package to start an app based on
 SLIK.  As distributed, this _will_ compile, creating an executable
 named slik_test, which is sort of a 'hello world' and test app.)
==========

Author: John Ellis
e-mail: gqview@email.com
homepage: http://gqmpeg.sourceforge.net

======== Major sections of this document

  - Requirements
  - Notes and changes for this release
  - Installation
  - Description / Features
  - Command Line options
  - Skins
  - Documentation (brief) [lists keyboard controls]
  - Skin editing notes
  - Credits

======== Requirements

  GTK+-1.2.x: ftp://ftp.gtk.org/pub/gtk (1.0.x will not work!)
  gdk-pixbuf >= 0.7.0 (must include png support)
  supported video4linux radio tuner (uses /dev/radio)

  --------------------------

======== Notes and changes for this release

  Changes:

     > Initial public release.

  Notes:

     > Please see the Keyboard section below for description of keyboard
       commands, and briefly how to set presets.
     > The name GQradio is boring, but since it started as a stripped
       down GQmpeg...

  Bugs:

======== Installation

  Compilation: ./configure ; make
     - To build an RPM binary use 'rpm -tb gqradio-x.x.x.tar.gz'.

  Installation: make install

  Removal: make uninstall

======== Description / Features

  GQradio interfaces with radio tuners through video4linux.

  Features:

     > Presets.
     > Auto tune seeks to next available station.
     > Auto setting of the preset list (auto scan).
     > Skins.

======== Command Line options:

   Please see gqradio --help for a list.

======== Skins

  Uses SLIK (SimpLIstic sKin interface), to edit skins use the tilde '~' key.

  Also see (Skin editing notes), below.

  To specify a skin use the -skin:skinfile command line parameter (see above).
  When specifying a default skin in the config dialog, the skin must reside
  in HOME/.gqradio/skins 
  If valid, a new default skin is loaded when 'ok' or 'apply' is pressed.

======== Documentation (brief)

  Keyboard shortcuts:

    [Right], [Space], N      Seek up, using current seek mode.
    [Left], [BackSpace], B   Seek down, using current seek mode.

    [Up]                     Seek up, first setting auto seek mode.
    [Down]                   Seek down, first setting auto seek mode.

    [PageUp]                 Select next available preset.
    [PageDown]               Select previous available preset.

    [Enter]                  Toggle seek mode.

    P                        Start preset selection, second press sets the
                             selection.
                             (Select the preset number by seeking up/down,
                             clicking the corresponding row in the preset list,
                             or by direct number entry format 0##, see below].)
    [Escape]                 Cancel preset selection.

    Delete                   Clear current preset.
    [CTRL] Delete            Clear preset list.

    ###.## (frequency entry) Jump to a frequency. If both decimal places
                             are entered change is instant, otherwise delays
                             one second (waiting for additional numbers, or
                             cancel by pressing Escape or any non-numerical
                             key). Invalid frequencies are ignored.
                             Example: Entering 99.5 will change the frequency
                             after one second, but entering 99.50 will change
                             it instantly.
    0## (preset entry)       Jump to a preset, if set. Entering three digits
                             (example 025) will change the preset immediately,
                             fewer will incur a one second delay, which works
                             the same as frequency entry, above.
                             Note: The leading zero is required, this is how
                             preset (versus frequency) entry is determined.

    -                        Adjust volume left.
    +, =                     Adjust volume Right.
    [CTRL] -                 Adjust balance left.
    [CTRL] +, [CTRL] =       Adjust balance Right.
    M                        Toggle mute.

    E, [CTRL] E, [CTRL] P    Open preset editor.
    O, [CTRL] O              Open preferences.

    I                        Iconify window.
    Q                        Quit.

    [                        Scrolls preset list up.
    ]                        Scrolls preset list down.

    ~                        Start skin editor.
    !                        Print skin debugging info.


======== Skin editing notes

   Mouse control:
    - The mouse in the skin editor uses these buttons in the skin display area:
        - Button 1 : Same as in the normal main window (press buttons, etc.)
        - Button 2 : Click to select widget, drag to move selected widget.
               (when click to focus is disabled, widgets are always draggable)
        - Button 3 : same as button 2

   Extracting widget from other skins:
    - To generate a list, and use widgets from any installed skin, press the
      'extract' button from the 'add' dialog of the skin editor.

   Editing / extracting widgets from the built-in (default) skin:
    - To re-use widgets from the default skin, first load them
      into the skin editor and save them as a new skin. To make
      the new widgets show up in the widget lists, close the skin editor, then
      reopen it and press the extract button in the add dialog.

   Skin toggle buttons:
    - The "skin_toggle" button is a special case, the data field must contain
      the filename of the skin the button is to switch to. If the data field is
      left blank the default skin (skindata) will be loaded. If the filename
      does not exist or is an invalid skin file, the button will do nothing.

      (NOTE on naming of the skindata type files: the widget extraction
       feature only extracts widgets from skins defined by files matching the
       pattern "skindata*" but _not_ including '.bak'. All others are ignored.)

   Writing a skin to disk:
    - When saving a skin, existing files are never overwritten: the skindata
      file is backed up with an extension of .bak or .bakXXX; graphics files
      will first be compared by file length and checksum, if they match it
      will keep the existing file, otherwise the new graphics file will be
      written to a new filename with an appended number increment (name_1.png).

   Dial and Slider 'item link key':
    - Dials and sliders have a 'Item link key' field, this is for use when you
      want an item with that key to update with the dial or slider in such a
      way that the dial/slider handle is drawn over top of the item. This is
      useful for example when it is desired that a slider that controls the
      volume also shows the volume level. If you want the item to be the only
      thing displayed with slider-like interaction, the slider handle size can
      be set to zero by specifying a trough length equal to the image
      dimensions.

   Limits:
    - You can add as many widgets of the same function as you want and they
      will all work. (For example 100 play buttons :).

   Invalid UI keys:
    - If an invalid key is assigned to a widget, the widget will still load
      but be ignored when activated/operated.

   Detailed skin specs:
    - See SKIN-SPECS.


======== Thanks go to the following for fixes, additions, and patches:

  Translations:

  Fixes, additions, and patches:

===========



