From: Richard Kettlewell Date: Thu, 26 Nov 2009 19:03:26 +0000 (+0000) Subject: Merge new Disobedience manual X-Git-Tag: 5.0.3~4^2~44 X-Git-Url: https://git.distorted.org.uk/~mdw/disorder/commitdiff_plain/136406deb8d6adab122ee83f17c7a36eee8d81d1?hp=d64e1d92acaf5a00908f630848f1f308574847ea Merge new Disobedience manual --- diff --git a/.bzrignore b/.bzrignore index 0cb8173..4551219 100644 --- a/.bzrignore +++ b/.bzrignore @@ -203,3 +203,4 @@ server/endian clients/rtpmon libtests/t-resample clients/resample +disobedience/manual/Makefile diff --git a/configure.ac b/configure.ac index e48cce2..80e8e24 100644 --- a/configure.ac +++ b/configure.ac @@ -326,6 +326,11 @@ if test -z "$pkghttpdir"; then fi AC_SUBST([pkghttpdir]) +if test -z "$dochtmldir"; then + dochtmldir='$(docdir)/html' +fi +AC_SUBST([dochtmldir]) + subdirs="scripts lib" if test $want_tests = yes; then subdirs="${subdirs} libtests" @@ -823,6 +828,7 @@ AC_CONFIG_FILES([Makefile cgi/Makefile clients/Makefile disobedience/Makefile + disobedience/manual/Makefile doc/Makefile templates/Makefile plugins/Makefile diff --git a/disobedience/Makefile.am b/disobedience/Makefile.am index 0171633..9b86bd7 100644 --- a/disobedience/Makefile.am +++ b/disobedience/Makefile.am @@ -17,7 +17,7 @@ # bin_PROGRAMS=disobedience -pkgdata_DATA=disobedience.html +SUBDIRS=manual AM_CPPFLAGS=-I${top_srcdir}/lib -I../lib AM_CFLAGS=$(GLIB_CFLAGS) $(GTK_CFLAGS) @@ -39,12 +39,6 @@ install-exec-hook: check: check-help -disobedience.html: ../doc/disobedience.1 $(top_srcdir)/scripts/htmlman - rm -f $@.new - $(top_srcdir)/scripts/htmlman $< >$@.new - chmod 444 $@.new - mv -f $@.new $@ - misc.o: images.h images.h: $(PNGS) @@ -67,7 +61,7 @@ check-help: all unset DISPLAY;./disobedience --version > /dev/null unset DISPLAY;./disobedience --help > /dev/null -CLEANFILES=disobedience.html images.h \ +CLEANFILES=images.h \ *.gcda *.gcov *.gcno *.c.html index.html export GNUSED diff --git a/disobedience/help.c b/disobedience/help.c index 8ec405c..5ebe457 100644 --- a/disobedience/help.c +++ b/disobedience/help.c @@ -29,7 +29,7 @@ void popup_help(void) { pid_t pid; int w; - byte_xasprintf(&path, "%s/disobedience.html", pkgdatadir); + byte_xasprintf(&path, "%s/index.html", dochtmldir); if(!(pid = xfork())) { exitfn = _exit; if(!xfork()) { diff --git a/disobedience/manual/Makefile.am b/disobedience/manual/Makefile.am new file mode 100644 index 0000000..bb86aa3 --- /dev/null +++ b/disobedience/manual/Makefile.am @@ -0,0 +1,28 @@ +# +# This file is part of DisOrder. +# Copyright (C) 2009 Richard Kettlewell +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# + +dochtml_DATA=index.html intro.html misc.html playlists.html \ + properties.html tabs.html window.html disobedience.css \ + arch-simple.png button-pause.png button-playing.png \ + button-random.png button-rtp.png button-scratch.png \ + choose-search.png choose.png disobedience-debian-menu.png \ + disobedience-terminal.png disorder-email-confirm.png \ + disorder-web-login.png login.png menu-control.png \ + menu-edit.png menu-help.png menu-server.png queue-menu.png \ + queue.png queue2.png recent.png track-properties.png \ + volume-slider.png diff --git a/disobedience/manual/arch-simple.png b/disobedience/manual/arch-simple.png new file mode 100644 index 0000000..c7d965a Binary files /dev/null and b/disobedience/manual/arch-simple.png differ diff --git a/disobedience/manual/arch-simple.svg b/disobedience/manual/arch-simple.svg new file mode 100644 index 0000000..a03d78a --- /dev/null +++ b/disobedience/manual/arch-simple.svg @@ -0,0 +1,220 @@ + + + + + + + + + + + + + image/svg+xml + + + + + + + + + Server + + + Web interface + + + RTP player + + Sound card + + + + Local Network + + + Disobedience + + + + diff --git a/disobedience/manual/button-pause.png b/disobedience/manual/button-pause.png new file mode 100644 index 0000000..0aa2f57 Binary files /dev/null and b/disobedience/manual/button-pause.png differ diff --git a/disobedience/manual/button-playing.png b/disobedience/manual/button-playing.png new file mode 100644 index 0000000..dd64963 Binary files /dev/null and b/disobedience/manual/button-playing.png differ diff --git a/disobedience/manual/button-random.png b/disobedience/manual/button-random.png new file mode 100644 index 0000000..38f9783 Binary files /dev/null and b/disobedience/manual/button-random.png differ diff --git a/disobedience/manual/button-rtp.png b/disobedience/manual/button-rtp.png new file mode 100644 index 0000000..00fde8e Binary files /dev/null and b/disobedience/manual/button-rtp.png differ diff --git a/disobedience/manual/button-scratch.png b/disobedience/manual/button-scratch.png new file mode 100644 index 0000000..e8a74f7 Binary files /dev/null and b/disobedience/manual/button-scratch.png differ diff --git a/disobedience/manual/choose-search.png b/disobedience/manual/choose-search.png new file mode 100644 index 0000000..bc28194 Binary files /dev/null and b/disobedience/manual/choose-search.png differ diff --git a/disobedience/manual/choose.png b/disobedience/manual/choose.png new file mode 100644 index 0000000..2f88ece Binary files /dev/null and b/disobedience/manual/choose.png differ diff --git a/disobedience/manual/disobedience-debian-menu.png b/disobedience/manual/disobedience-debian-menu.png new file mode 100644 index 0000000..49bbdb4 Binary files /dev/null and b/disobedience/manual/disobedience-debian-menu.png differ diff --git a/disobedience/manual/disobedience-terminal.png b/disobedience/manual/disobedience-terminal.png new file mode 100644 index 0000000..5cf2e8d Binary files /dev/null and b/disobedience/manual/disobedience-terminal.png differ diff --git a/disobedience/manual/disobedience.css b/disobedience/manual/disobedience.css new file mode 100644 index 0000000..4c3392c --- /dev/null +++ b/disobedience/manual/disobedience.css @@ -0,0 +1,87 @@ +/* +This file is part of DisOrder. +Copyright (C) 2009 Richard Kettlewell + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +/* default font and colors */ +body { + color: black; + background-color: white; + font-family: times,serif; + font-weight: normal; + font-size: 12pt; + font-variant: normal +} + +/* general link colors */ +a { + color: blue; + text-decoration: none +} + +h2 a { + color: black +} + +p.chapter a { + color: black; + font-family: helvetica,sans-serif; + font-weight: bold; + font-size: 18pt +} + +a:active { + color: red +} + +a:visited { + color: red +} + +/* title bars */ +h1 { + font-family: helvetica,sans-serif; + font-weight: bold; + font-size: 18pt; + font-variant: normal; + text-align: center; + border: 1px solid black; + padding: 0.2em; + background-color: #e0e0e0; + display: block +} + +/* secondary titles */ +h2 { + font-family: helvetica,sans-serif; + font-weight: bold; + font-size: 16pt; + font-variant: normal; + display: block +} + +td { + vertical-align: top; + padding: 8px +} + +table { + margin-left: 2em +} + +p.image { + text-align: center +} diff --git a/disobedience/manual/disorder-email-confirm.png b/disobedience/manual/disorder-email-confirm.png new file mode 100644 index 0000000..c535a67 Binary files /dev/null and b/disobedience/manual/disorder-email-confirm.png differ diff --git a/disobedience/manual/disorder-web-login.png b/disobedience/manual/disorder-web-login.png new file mode 100644 index 0000000..3155a4c Binary files /dev/null and b/disobedience/manual/disorder-web-login.png differ diff --git a/disobedience/manual/index.html b/disobedience/manual/index.html new file mode 100644 index 0000000..a6a2136 --- /dev/null +++ b/disobedience/manual/index.html @@ -0,0 +1,74 @@ + + + + + Disobedience + + + +

Disobedience

+ +

This is the manual for Disobedience, the graphical client + for DisOrder.

+ +

1. Introduction

+
    +
  • What DisOrder and Disobedience are, and how to get them.
  • +
  • How to get a DisOrder login.
  • +
  • How to start Disobedience.
  • +
+ +

2. Window Layout

+ +
    +
  • A tour of the Disobedience window.
  • +
+ +

3. Tabs

+ +
    +
  • Detailed descriptions of + the Queue, Recent, Choose and Added + tabs.
  • +
+ +

4. Track Properties

+ +
    +
  • How to edit track properties.
  • +
+ +

5. Playlists

+ +
    +
  • What playlists are.
  • +
  • Editing playlists.
  • +
+ +

Appendix

+ +
    +
  • Reporting bugs
  • +
  • Copyright notice
  • +
+ + + diff --git a/disobedience/manual/intro.html b/disobedience/manual/intro.html new file mode 100644 index 0000000..829ae2f --- /dev/null +++ b/disobedience/manual/intro.html @@ -0,0 +1,197 @@ + + + + + Disobedience: Introduction + + + +

1. Introduction

+ +

This chapter covers the following topics:

+ +
    +
  • What DisOrder and Disobedience are, and how to get them
  • +
  • How to get a DisOrder login
  • +
  • How to start Disobedience
  • +
+ +

1.1 What is DisOrder?

+ +

DisOrder + is a multi-user software jukebox. It allows MP3s, OGGs, etc to be + played either using a single sound card or over a network to many + different computers, with multiple different people controlling + what is played.

+ +

DisOrder has three main user interfaces.

+ +
    +
  • It has a command-line interface, suitable for ad-hoc use and + scripting.
  • + +
  • It has a web interface, usable with graphical web browsers + (Firefox, Internet Explorer etc).
  • + +
  • It has a graphical client called Disobedience.
  • +
+ +

This manual is about Disobedience, so it does not really cover + installation or management issues. However in this chapter it will + cover a few such topics as they are necessary to getting up and + running with Disobedience.

+ +

This diagram shows an overview of one possible setup.

+ +

+ +

The server and web interface run on one computer. Disobedience + runs on a desktop computer and accesses the server via the network. + On another system the RTP player runs and plays sound received from + the server via its local sound card.

+ +

Many other configurations are possible. For instance the server + could play directly to a local soundcard. Also if Disobedience + runs on the same computer as the RTP player then it can be used to + stop and start the player. Of course Disobedience can also be run + on the same computer as the server provided it can run X11 + applications.

+ +

1.2 Getting DisOrder

+ +

There are two ways to get DisOrder.

+ +

If you have a Debian system you can download the .deb + files from + DisOrder's home page and install those. There are four + packages to choose from:

+ +
    +
  • disorder.deb - the base package. You should always + install this. It contains the command-line client.
  • + +
  • disorder-server.deb - the server and web interface. + Only install this if you are setting up a totally new DisOrder + installation. If you just want to access an existing one, you + don't need this package.
  • + +
  • disobedience.deb - the graphical client. If you are + reading this manual you want this package!
  • + +
  • disorder-rtp.deb - the network play client. If your + server is set up to transmit sound over the network you will need + this. If it uses a local sound card then this package won't be + useful to you.
  • + +
+ +

(At the time of writing, DisOrder is not included as part of + Debian.)

+ +

If you have another kind of Linux system, or a Mac, you must + build from source code. See the README file included in + the source distribution for more details. Note that to use + Disobedience on a Mac, you will need X11.app.

+ +

There is no Windows support (although the web interface can be + used from Windows computers).

+ +

1.3 Getting a DisOrder login

+ +

The easiest way to get a DisOrder login is to access the web + interface and set one up using that. To do this, + visit http://HOSTNAME/cgi-bin/disorder, + where HOSTNAME is the name of the server where DisOrder is + installed. You should then be able to select the Login + option at the top of the screen.

+ +

+ +

Go to the New Users form and enter the username you want + to use, your email address, and a password. The password must be + entered twice to verify you did not mistype it (since it won't be + displayed on the screen). When you press Register, you will + be sent an email requiring you to confirm your registration.

+ +

+ +

Your login won't be active until you click on this URL.

+ +

(It might be that your installation isn't set up to allow + automatic registration. In that case the local sysadmin will have + to create your login and set your initial password by hand.)

+ +

Having done this you could of course just use the web interface. + But since this is the manual for Disobedience, it is assumed that + you want to take advantage of its more convenient design and extra + features.

+ +

1.4 Starting Disobedience

+ +

On Debian systems it should be possible to find Disobedience in + the menu system:

+ +

+ +

On other systems you will have to start it from the command line + by typing its name at a command prompt. You can (optionally) use + an & suffix to stop it tying up your terminal.

+ +

+ +

(Please note that Disobedience shouldn't write any messages to + the terminal. If it does that probably indicates a bug, which + should be + reported.)

+ +

1.5 Initial Login

+ +

The first time you run Disobedience it won't know what server to + connect to, your username or your password, and will therefore + display a login box.

+ +

+ +

If Disobedience is running on a different computer to the + server, then you should make sure the Remote box is ticked + and fill in the host name (or IP address) and port number + (“Service”). If you don't know what values to use + here, ask your local sysadmin. If, on the other hand, Disobedience + is running on the same computer as the server then you can + leave the Remote box clear and it should be able to connect + to it without using the network.

+ +

In any case, you will need to enter your username and + password, as set up earlier.

+ +

Once you have logged in successfuly, Disobedience will remember + these login settings, so it should not be necessary to enter them + again. If you need to change them for any reason, you can either + select the Server > Login option to bring the login window + back, or (if you prefer), edit the file ~/.disorder/passwd + directly.

+ +
+ + Back to contents + + + diff --git a/disobedience/manual/login.png b/disobedience/manual/login.png new file mode 100644 index 0000000..9f3b074 Binary files /dev/null and b/disobedience/manual/login.png differ diff --git a/disobedience/manual/menu-control.png b/disobedience/manual/menu-control.png new file mode 100644 index 0000000..a76ec69 Binary files /dev/null and b/disobedience/manual/menu-control.png differ diff --git a/disobedience/manual/menu-edit.png b/disobedience/manual/menu-edit.png new file mode 100644 index 0000000..7cdb83b Binary files /dev/null and b/disobedience/manual/menu-edit.png differ diff --git a/disobedience/manual/menu-help.png b/disobedience/manual/menu-help.png new file mode 100644 index 0000000..4ecc391 Binary files /dev/null and b/disobedience/manual/menu-help.png differ diff --git a/disobedience/manual/menu-server.png b/disobedience/manual/menu-server.png new file mode 100644 index 0000000..5502bf5 Binary files /dev/null and b/disobedience/manual/menu-server.png differ diff --git a/disobedience/manual/misc.html b/disobedience/manual/misc.html new file mode 100644 index 0000000..56e42cd --- /dev/null +++ b/disobedience/manual/misc.html @@ -0,0 +1,75 @@ + + + + + Disobedience: Appendix + + + +

Appendix

+ +

Reporting Bugs

+ +

Please report bugs using + DisOrder's bug + tracker.

+ +

Copyright Notice

+ +

Copyright © 2003-2009 Richard Kettlewell
+ + Portions copyright © 2007 Ross + Younger
+ + Portions copyright © 2007, 2008 Mark Wooding
+ + Portions extracted from MPG321, Copyright © 2001 Joe + Drew, Copyright © 2000-2001 Robert Leslie
+ + Portions copyright © 1997-2006 Free Software Foundation, Inc
+ + Portions Copyright © 2000 Red Hat, + Inc., Jonathan Blandford

+ +

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

+ +

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

+ +

You should have received a copy of the GNU General Public License along + with this program. If not, see http://www.gnu.org/licenses/.

+ +
+ + Back to contents + + + diff --git a/disobedience/manual/playlists.html b/disobedience/manual/playlists.html new file mode 100644 index 0000000..d83ad6c --- /dev/null +++ b/disobedience/manual/playlists.html @@ -0,0 +1,109 @@ + + + + + Disobedience: Playlists + + + +

5. Playlists

+ +

The chapter describes playlist and how to use them.

+ +

5.1 What are playlists?

+ +

A playlist is a named list of tracks stored by the server. It + can be edit by either just its owner or, alternatively, by all + users. It can be played as a unit when required.

+ +

Playlists fall into three categories:

+ + + + + + + + + + + + + + + + + +
SharedShared playlists have no owner and can be seen and edited + by anybody.
PublicPublic playlist are owned by their creator and can be seen + by anybody. Only their creator can edit them, however.
PrivatePrivate playlists are owned by their creator and can only + be seen or edited by their creator.
+ +

To bring up the playlist window, select Edit > Edit + Playlists from the menu.

+ +

5.2 Creating Playlists

+ + + +

To create a playlist, click the Add button in the + playlist editor. This will create a pop-up window where you can + enter the name of the new playlist and decide whether it is + shared, public or private.

+ +

Only Roman letters (without any accents) and digits are allowed + in playlist names.

+ +

5.3 Editing Playlists

+ + + +

When a playlist is selected, you can edit in the right hand half + of the playlist window. The editor is very similar in structure + and function to the queue. You can + rearrange tracks within it by drag and drop and you can drag tracks + from the Choose tab into it.

+ +

5.3 Playing Playlists

+ +

There are three ways to play a playlist:

+ +
    + +
  1. Right clicking in the playlist editor will create a pop-up + menu. In addition to the familiar options there is an option to + play this playlist.
  2. + +
  3. You can select all the tracks and drag them to the desired + point in the Queue tab.
  4. + +
  5. You can use Control > Activate Playlist from the main + menu.
  6. + +
+ +
+ + Back to contents + + + diff --git a/disobedience/manual/properties.html b/disobedience/manual/properties.html new file mode 100644 index 0000000..34d215f --- /dev/null +++ b/disobedience/manual/properties.html @@ -0,0 +1,97 @@ + + + + + Disobedience: Track Properties + + + +

4. Track Properties

+ +

The chapter describes how to edit track properties.

+ +

+ +

This window can be invoked from any of the four tabs by + selecting one or more tracks and then either selected Edit > + Track Properties or via the right-click pop-up menu.

+ +

4.1 Track Name Parts

+ +

The first three fields for each track are the parts of its name: + the artist, album and title. These control what appear in the + similarly named columns in the queue and other tabs. If they are + wrong then you can edit them here to correct them.

+ +

The double-headed arrow at the right of each field will copy the + current field value to all the other tracks in the window. For + instance if an album name is mis-spelled or wrong then you could + follow the following procedure to correct it for all its + tracks:

+ +
    + +
  1. In the Choose tab, select all the tracks in the album.
  2. + +
  3. Select Edit > Track Properties to bring up the track + properties window.
  4. + +
  5. Edit the album name in the first track.
  6. + +
  7. Click the arrow button to the right of the corrected version.
  8. + +
  9. Click the OK button.
  10. + +
+ +

4.2 Tags

+ +

Each track has an associated collection of tags. These can used + when searching for tracks in the Choose tab or to control + which tracks are picked at random (although this functionality is + not readily available in current versions of Disobedience).

+ +

To add tags to a track enter the tags you want to apply to it in + the Tags field, separated by commas. Tags cannot contain + commas and are compared without regard to whitespace.

+ +

4.3 Track Weight

+ +

Every track has an associated weight. A higher weight makes the + track more likely to be picked at random and lower weight makes it + less likely to be picked at random. (In the simplest case the + probability that it will be picked is equal to its weight divided + by the total weight of all tracks, although there are a number of + other factors that modify this.)

+ +

If no weight has been explicitly set then the track gets a + default weight of 90,000.

+ +

One way to prevent a track being picked at random would be to + set its weight to zero, but in fact there is a box you can untick + to suppress random selection of tracks too.

+ +
+ + Back to contents + + + diff --git a/disobedience/manual/queue-menu.png b/disobedience/manual/queue-menu.png new file mode 100644 index 0000000..af2dff9 Binary files /dev/null and b/disobedience/manual/queue-menu.png differ diff --git a/disobedience/manual/queue.png b/disobedience/manual/queue.png new file mode 100644 index 0000000..bced68f Binary files /dev/null and b/disobedience/manual/queue.png differ diff --git a/disobedience/manual/queue2.png b/disobedience/manual/queue2.png new file mode 100644 index 0000000..536c253 Binary files /dev/null and b/disobedience/manual/queue2.png differ diff --git a/disobedience/manual/recent.png b/disobedience/manual/recent.png new file mode 100644 index 0000000..8ee5e68 Binary files /dev/null and b/disobedience/manual/recent.png differ diff --git a/disobedience/manual/tabs.html b/disobedience/manual/tabs.html new file mode 100644 index 0000000..ea63a37 --- /dev/null +++ b/disobedience/manual/tabs.html @@ -0,0 +1,185 @@ + + + + + Disobedience: Tabs + + + +

3. Tabs

+ +

The chapter contains detailed descriptions of the Queue, Recent, + Choose and Added tabs.

+ +

3.1 The Queue

+ +

The Queue tab has already + been briefly described, but there + are some more things to say about. To start with, the meaning of + the columns:

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
WhenThis is the server's estimate of when the track will start. + If play is disabled but the queue isn't empty, then it is based + on the assumption that play is about to be enabled.
WhoThis is the person who selected the track. If the track + was picked at random by the server it is empty. You can + “adopt” a randomly picked track; see below.
ArtistThe artist responsible for the track. Like the other track + name columns, this depends on the server's logic for parsing + filename, so can be a bit wrong. You can edit the track + properties to correct it.
AlbumThe album that the track came from.
TitleThe title of the track.
LengthThe length the track will play for. For the playing track + this will include the amount of time it's been playing so + far.
+ +

You can select tracks in the queue by clicking on them. You can + select multiple tracks by clicking in a second location with SHIFT + depressed (to select all tracks between the first and second click) + or with CTRL depressed (to add a single track to the selection).

+ +

Having selected tracks you can drag them to a new location in + the queue. Of course, you can't drag the playing track, nor can + you drag other tracks before it.

+ +

Right-clicking in the queue will create a pop-up menu:

+ +

+ +

Track Properties will create a window with editable + properties of each selected track. Scratch playing track + only works if the playing track is the selected track and will stop + it playing. Remove track from queue will remove the + selected (non-playing) tracks from the queue.

+ +

Adopt track will apply your name to one without an entry + in the Who column, i.e. one that was randomly picked by the + server. The reason you might do this is to signal to other users + that you did want this track to play. (For instance, it might be + an accepted convention that randomly picked tracks were fair game + for removal but that tracks picked by a human should normally be + left alone.)

+ +

3.2 Recently Played Tracks

+ +

+ +

The Recent tab is similar in structure to the queue but + it shows tracks that have played recently. The When column + indicates when the track played rather than when it will + played.

+ +

Right clicking will create a pop-up menu with similar options to + those found in the queue's equivalent menu. The one additional + option is Play track, which allows a recently played track + to be added back to the queue.

+ +

The other way of adding tracks from this tab back to the queue + is to drag them to the queue tab and then to the desired point into + the queue.

+ +

3.3 Choosing Tracks

+ +

The Choose tab contains all the tracks known to the + server, organized into a hierarchical structure based on the + underlying file and directory structure.

+ +

+ +

The boxes in the Queued column are ticked if the track is + somewhere in the queue. You can click on an unticked box to add + the track to the queue, but clicking an already-ticked one will + have no effect.

+ +

Directories can be expanded or collapsed by clicking on the + triangular signs left of their names. Tracks can be selected and + deselected by clicking on them. You can select multiple tracks by + clicking in a second location with SHIFT depressed (to select all + tracks between the first and second click) or with CTRL depressed + (to add a single track to the selection).

+ +

Right clicking will create a pop-up menu with what are hopefuly + now familiar options. Play track will add the selected + track(s) to the queue and Track Properties will create a + window with editable properties of each selected track.

+ +

Note that when tracks are added to the queue these ways they + will be added before any tracks picked at random by the server, so + that users don't have to wait for them to play out.

+ +

Selected tracks can also be dragged to the queue, by dragging + first to the Queue tab itself and then to the desired + location in the queue.

+ +

+ +

To do a word search over all tracks, you can just start typing. + Your search terms will appear in the input box at the bottom of the + window. Directories containing matching tracks are automatically + opened and the matches highlighted in yellow. You can jump to the + previous or next search result with the up and down arrows at the + bottom right of the screen (or jump to the next one by pressing + CTRL+G).

+ +

If you enter more than one word at a time then only tracks which + match both words will be listed.

+ +

You can search for tags as + well as words. For instance to search for the tag + “happy” you would enter tag:happy in the + search box.

+ +

To clear the search, press the Cancel button.

+ +

3.4 Newly Added Tracks

+ +

The Added tab shows tracks that have been newly detected + by the server, in order to allow those tracks to be conveniently + played. In behavior it is the same as the + recently played tracks list.

+ +
+ + Back to contents + + + diff --git a/disobedience/manual/track-properties.png b/disobedience/manual/track-properties.png new file mode 100644 index 0000000..27093b8 Binary files /dev/null and b/disobedience/manual/track-properties.png differ diff --git a/disobedience/manual/volume-slider.png b/disobedience/manual/volume-slider.png new file mode 100644 index 0000000..c7e25c5 Binary files /dev/null and b/disobedience/manual/volume-slider.png differ diff --git a/disobedience/manual/window.html b/disobedience/manual/window.html new file mode 100644 index 0000000..40c6f98 --- /dev/null +++ b/disobedience/manual/window.html @@ -0,0 +1,169 @@ + + + + + Disobedience: Window Layout + + + +

2. Window Layout

+ +

This chapter contains a tour of the main Disobedience + window.

+ +

2.1 The Disobedience Window

+ +

Disobedience should look something like this when you've started + it up and logged in:

+ +

+ +

At the top is the menu bar, and immediately below it a toolbar + with some buttons and a volume control. (In some cases the volume + control may be absent.) Below that is a row of + tabs: Queue, Recent and so on. The Queue tab + is selected: this displays the currently playing track and the list + of tracks that will play in the near future.

+ +

In this example nothing is actually playing. (Apart from the + fact that you wouldn't hear anything) you can tell this because the + top row only has a single length indicator (“3:04”). + If it was playing it would show how far through the track it was + too. Secondly, all the tracks were chosen at random. You can tell + this because the Who column is empty. + +

In the screenshot below both of these things have changed. + Use rjk has selected some tracks and the first of them is + playing.

+ +

+ +

The first track is 4 minutes and 10 seconds long and so far, the + first 21 seconds of it has played.

+ +

2.2 Buttons

+ +

The meaning of the buttons is as follows:

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
The pause button. This only effective when a track is + playing. When it is pressed the playing track is paused and + the button turns into a “play” icon instead.
The scratch button. As above this is only effective when + a track is playing. Pressing it will stop that track playing + and move onto the next one.
The random play button. Random play means that if + nothing is playing the server will automatically pick a track + at random and play that. Furthermore it will ensure that the + queue always has a minimum number of tracks, so you can see + ahead of time what will play next.
+ As shown, random play is disabled. The button goes green + when it is enabled.
The playing button. Normally this would always be left + enabled (green). If it is disabled then nothing will be + played at all, regardless of whether it was randomly chosen + or picked by a human.
The network play button. This is only effective if the + server is playing over the network (as opposed to using a + local sound card). When network play is enabled, + Disobedience runs a client program on your computer to play + sound received over the network using your sound card.
+ As shown, network play is disabled. The button goes green + when it is enabled.
+ +

To the right of the buttons are two sliders:

+ +

+ +

The left hand slider is the volume control. This ranges from 0 + (silent) to 10 (loudest). The right hand slider is the balance + control, which ranges form -1.0 (left) to +1.0 (right).

+ +

2.3 The Menu Bar

+ +

+ +

The Server menu is loosely analogous to the File + menu in othe applications. It has no file-related options though, + so the name would not be appropriate! Instead the three options it + has are Login, which brings back the login window shown the + first time it is run, Manage Users which allows + adminstrators to do user management, and Quit.

+ + + +

+ +

The Edit menu has options to select or deselect all + tracks. You can also do this with CTRL-A and CTRL-SHIFT-A, and of + course you can select tracks in the queue (or other tabs) with the + mouse.

+ +

The Track Properties option will create a window with + editable properties of each selected track and the Edit + Playlists option will create a window allowing editing of + playlists.

+ + + + + +

+ +

The Control menu options are mostly equivalent to the + buttons described above. The one exception is Activate + Playlist which allows you to play a playlist.

+ + + +

+ +

The Help menu has an option to bring up the Disobedience + manual and an About option which will display a bit of + version information for the server and for Disobedience (which + might not be the same).

+ +
+ + Back to contents + + + diff --git a/disobedience/menu.c b/disobedience/menu.c index 3566745..0433f9c 100644 --- a/disobedience/menu.c +++ b/disobedience/menu.c @@ -364,7 +364,7 @@ GtkWidget *menubar(GtkWidget *w) { 0 /* extra_data */ }, { - (char *)"/Help/Manual page", /* path */ + (char *)"/Help/Manual", /* path */ 0, /* accelerator */ manual_popup, /* callback */ 0, /* callback_action */ diff --git a/lib/Makefile.am b/lib/Makefile.am index 3505eb9..11040db 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -122,6 +122,7 @@ definitions.h: Makefile echo "#define PKGCONFDIR \"${sysconfdir}/\"PACKAGE" >> $@.new echo "#define PKGSTATEDIR \"${localstatedir}/\"PACKAGE" >> $@.new echo "#define PKGDATADIR \"${pkgdatadir}/\"" >> $@.new + echo "#define DOCHTMLDIR \"${dochtmldir}\"" >> $@.new echo "#define SBINDIR \"${sbindir}/\"" >> $@.new echo "#define BINDIR \"${bindir}/\"" >> $@.new echo "#define FINKBINDIR \"${finkbindir}/\"" >> $@.new diff --git a/lib/defs.c b/lib/defs.c index 633d56a..f0e35b2 100644 --- a/lib/defs.c +++ b/lib/defs.c @@ -41,6 +41,9 @@ const char pkgstatedir[] = PKGSTATEDIR; /** @brief Package fixed data directory */ const char pkgdatadir[] = PKGDATADIR; +/** @brief Package HTML documentation directory */ +const char dochtmldir[] = DOCHTMLDIR; + /** @brief Binary directory */ const char bindir[] = BINDIR; diff --git a/lib/defs.h b/lib/defs.h index 41b65ea..e13b857 100644 --- a/lib/defs.h +++ b/lib/defs.h @@ -25,6 +25,7 @@ extern const char pkglibdir[]; extern const char pkgconfdir[]; extern const char pkgstatedir[]; extern const char pkgdatadir[]; +extern const char dochtmldir[]; extern const char bindir[]; extern const char sbindir[]; extern const char finkbindir[];