Updated stageview and web remote pages for 2.9.2

This commit is contained in:
John Morris 2021-02-06 19:15:28 -05:00
parent f9ab803fc9
commit 2ea1b7352d
42 changed files with 458 additions and 76 deletions

View File

@ -152,6 +152,8 @@ time when saving your service file.
**Note:** If the date and time format does not suit your needs and you are
technically inclined, there is more information at `Python.org`_.
.. _slide_controller_config:
Slide Controller
^^^^^^^^^^^^^^^^

View File

@ -0,0 +1,327 @@
.. _custom_stage_code:
*****************
Custom Stage Code
*****************
Below you will find the files used to create a custom stage view that
changed the color of the next verse lines on the stage view. Copy the
text from the file into a text editor and save them into your custom
stage directory using the filenames provided.
Stage.HTML
==========
.. code-block:: text
<!DOCTYPE html>
<html>
<!--
###############################################################################
# OpenLP - Open Source Lyrics Projection #
# --------------------------------------------------------------------------- #
# Copyright (c) 2008-2021 OpenLP Developers #
# --------------------------------------------------------------------------- #
# 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; version 2 of the License. #
# #
# This program is distributed in the hope that it will be useful, but WITHOUT #
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
# more details. #
# #
# You should have received a copy of the GNU General Public License along #
# with this program; if not, write to the Free Software Foundation, Inc., 59 #
# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
###############################################################################
-->
<head>
<meta charset="utf-8" />
<title>Phil's Stage</title>
<link rel="stylesheet" href="stage.css" />
<link rel="shortcut icon" type="image/x-icon" href="../images/favicon.ico">
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="stage5.js"></script>
</head>
<body>
<input type="hidden" id="next-text" value="next" />
<div id="right">
<div id="clock"></div>
<div id="notes"></div>
</div>
<div id="verseorder"></div>
<div id="currentslide"></div>
<div id="nextslide"></div>
</body>
</html>
Stage.css
=========
.. code-block:: text
/******************************************************************************
* OpenLP - Open Source Lyrics Projection *
* --------------------------------------------------------------------------- *
* Copyright (c) 2008-2021 OpenLP Developers *
* --------------------------------------------------------------------------- *
* 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; version 2 of the License. *
* *
* This program is distributed in the hope that it will be useful, but WITHOUT *
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for *
* more details. *
* *
* You should have received a copy of the GNU General Public License along *
* with this program; if not, write to the Free Software Foundation, Inc., 59 *
* Temple Place, Suite 330, Boston, MA 02111-1307 USA *
******************************************************************************/
body {
background-color: black;
font-family: sans-serif;
overflow: hidden;
}
#currentslide {
font-size: 40pt;
color: white;
padding-bottom: 0px;
}
#nextslide {
font-size: 40pt;
color: yellow;
padding-top: 0px;
padding-bottom: 0px;
}
#right {
float: right;
}
#clock {
font-size: 30pt;
color: yellow;
text-align: right;
}
#notes {
font-size: 36pt;
color: salmon;
text-align: right;
}
#verseorder {
font-size: 30pt;
color: green;
text-align: left;
}
.currenttag {
color: lightgreen;
font-weight: bold;
}
Stage.js
========
.. code-block:: text
/******************************************************************************
* OpenLP - Open Source Lyrics Projection *
* --------------------------------------------------------------------------- *
* Copyright (c) 2008-2021 OpenLP Developers *
* --------------------------------------------------------------------------- *
* 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; version 2 of the License. *
* *
* This program is distributed in the hope that it will be useful, but WITHOUT *
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or *
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for *
* more details. *
* *
* You should have received a copy of the GNU General Public License along *
* with this program; if not, write to the Free Software Foundation, Inc., 59 *
* Temple Place, Suite 330, Boston, MA 02111-1307 USA *
******************************************************************************/
window.OpenLP = { // Connect to the OpenLP Remote WebSocket to get pushed updates
myWebSocket: function (data, status) {
const host = window.location.hostname;
const websocket_port = 4317;
var myTwelve;
ws = new WebSocket(`ws://${host}:${websocket_port}`);
ws.onmessage = (event) => {
const reader = new FileReader();
reader.onload = () => {
data = JSON.parse(reader.result.toString()).results;
// set some global var
OpenLP.myTwelve = data.twelve;
if (OpenLP.currentItem != data.item ||
OpenLP.currentService != data.service) {
OpenLP.currentItem = data.item;
OpenLP.currentService = data.service;
OpenLP.loadSlides();
}
else if (OpenLP.currentSlide != data.slide) {
OpenLP.currentSlide = parseInt(data.slide, 10);
OpenLP.updateSlide();
}
OpenLP.loadService();
};
reader.readAsText(event.data);
};
},
loadService: function (event) {
$.getJSON(
"/api/v2/service/items",
function (data, status) {
OpenLP.nextSong = "";
$("#notes").html("");
data.forEach(function(item, index, array) {
if (item.selected) {
$("#notes").html(item.notes);
if (data.length > index + 1) {
OpenLP.nextSong = data[index + 1].title;
}
else {
OpenLP.nextSong = "End of Service";
}
}
});
OpenLP.updateSlide();
}
);
},
loadSlides: function (event) {
$.getJSON(
"/api/v2/controller/live-items",
function (data, status) {
OpenLP.currentSlides = data.slides;
OpenLP.currentSlide = 0;
OpenLP.currentTags = Array();
var div = $("#verseorder");
div.html("");
var tag = "";
var tags = 0;
var lastChange = 0;
$.each(data.slides, function(idx, slide) {
var prevtag = tag;
tag = slide["tag"];
if (tag != prevtag) {
// If the tag has changed, add new one to the list
lastChange = idx;
tags = tags + 1;
div.append("&nbsp;<span>");
$("#verseorder span").last().attr("id", "tag" + tags).text(tag);
}
else {
if ((slide["text"] == data.slides[lastChange]["text"]) &&
(data.slides.length >= idx + (idx - lastChange))) {
// If the tag hasn't changed, check to see if the same verse
// has been repeated consecutively. Note the verse may have been
// split over several slides, so search through. If so, repeat the tag.
var match = true;
for (var idx2 = 0; idx2 < idx - lastChange; idx2++) {
if(data.slides[lastChange + idx2]["text"] != data.slides[idx + idx2]["text"]) {
match = false;
break;
}
}
if (match) {
lastChange = idx;
tags = tags + 1;
div.append("&nbsp;<span>");
$("#verseorder span").last().attr("id", "tag" + tags).text(tag);
}
}
}
OpenLP.currentTags[idx] = tags;
if (slide["selected"])
OpenLP.currentSlide = idx;
})
OpenLP.loadService();
}
);
},
updateSlide: function() {
// Show the current slide on top. Any trailing slides for the same verse
// are shown too underneath in grey.
// Then leave a blank line between following verses
$("#verseorder span").removeClass("currenttag");
$("#tag" + OpenLP.currentTags[OpenLP.currentSlide]).addClass("currenttag");
var slide = OpenLP.currentSlides[OpenLP.currentSlide];
var text = "";
// use title if available
if (slide["text"]) {
text = slide["text"];
} else {
text = slide["Title"];
}
// use thumbnail if available
if (slide["img"]) {
text += "<br /><img src='" + slide["img"].replace("//thumbnails//", "//thumbnails//") + "'><br />";
}
// use notes if available
if (slide["slide_notes"]) {
text += '<br />' + slide["footer"];
}
// "slide_notes"
text = text.replace(/\n/g, "<br />");
$("#currentslide").html(text);
text = "";
if (OpenLP.currentSlide < OpenLP.currentSlides.length - 1) {
for (var idx = OpenLP.currentSlide + 1; idx < OpenLP.currentSlides.length; idx++) {
if (OpenLP.currentTags[idx] != OpenLP.currentTags[idx - 1])
text = text + "<p class=\"nextslide\">";
if (OpenLP.currentSlides[idx]["text"]) {
text = text + OpenLP.currentSlides[idx]["text"];
} else {
text = text + OpenLP.currentSlides[idx]["title"];
}
if (OpenLP.currentTags[idx] != OpenLP.currentTags[idx - 1])
text = text + "</p>";
else
text = text + "<br />";
}
text = text.replace(/\n/g, "<br />");
$("#nextslide").html(text);
}
else {
text = "<p class=\"nextslide\">" + $("#next-text").val() + ": " + OpenLP.nextSong + "</p>";
$("#nextslide").html(text);
}
},
updateClock: function(data) { // get time from results
var div = $("#clock");
var t = new Date();
var h = t.getHours();
if (OpenLP.myTwelve && h > 12)
h = h - 12;
var m = t.getMinutes();
if (m < 10)
m = '0' + m + '';
div.html(h + ":" + m);
},
}
$.ajaxSetup({ cache: false });
setInterval("OpenLP.updateClock();", 500);
OpenLP.myWebSocket();
jQuery.min.js
=============
The jQuery.min.js is a standard file you can download from `jQuery.js <https://jquery.com/download/>`_
It is recommended to download the compressed file for improved performance. The files
provided were tested with version v1.12.4 of the JQuery compressed file.

View File

@ -68,6 +68,7 @@ Questions and Troubleshooting
faq
troubleshooting
custom_stage_coding
.. _help us add it: https://openlp.org/contribute
.. _SumatraPDF: https://www.sumatrapdfreader.org/

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 MiB

After

Width:  |  Height:  |  Size: 839 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -5,17 +5,15 @@ The Stage View
Stage view gives you the ability to set up a remote computer, netbook or
smartphone to view the live service being displayed on the projection screen in
an easy to read font on a black background. This is a text only viewer, tough it
an easy to read font on a black background. This is a text only viewer, though it
will show thumbnails of images and presentations.
The first step is to make sure the Remote plugin is activated. You can accomplish
this by following the instructions in the :ref:`plugin_list`. The second step is to
configure the settings you will use with the web browser. You can find these
You can configure the settings you use with the web browser. You can find these
instructions and settings in :ref:`remote_tab`.
Open a web browser, type in the Stage View URL you found in :ref:`remote_tab`
and press the :kbd:`Enter` key. For this example we will use
\http://192.168.1.73:4316/stage. You will then be presented with the home page
\http://192.168.1.112:4316/stage. You will then be presented with the home page
of the OpenLP Stage View. On most browsers you can press F11 to go into
fullscreen mode.
@ -24,10 +22,14 @@ fullscreen mode.
At the top right hand side you will see the time of day. This can be changed
from 12 hour to 24 hour format in :ref:`remote_tab`. If you added a note to the
the song it will be the next line below the time. See :ref:`adding_note`
for adding notes. Below the note will be the Bible or song verse numbers and one
of those will be highlighted. The lyrics or verses highlighted below the verse
numbers correspond to the highlighted verse number. In this example V1 is
highlighted and the corresponding first verse below it is highlighted.
for adding notes. On the same line as the clock will be the Bible or song
verse numbers and one of those will be highlighted. The lyrics or verses
highlighted below the verse numbers correspond to the highlighted verse number.
In this example V1 is highlighted and the corresponding first verse below
it is highlighted.
At the bottom right had side you will see a :guilabel:`Close` button. Clicking on the
button will close the stage page and open the Web-Remote main page.
If there is an image, presentation or media being displayed you will see the
title of the displayed item. Below the title will show the next item to be
@ -44,35 +46,50 @@ html. To create a custom stage view, go to the OpenLP Data Folder by going to
folder names :file:`stages`. Inside the :file:`stages` folder you can now create
a folder which will be the name of your custom view, an example could be
:file:`myview`. Now copy :file:`stage.html`, :file:`stage.css` and
:file:`stages.js` from inside OpenLPs program folder
:file:`openlp/plugins/remote/html/`, and customize them to your needs. Remember
to modify :file:`stage.html` to the other files from the custom stage view
folder, for instance :file:`stages/myview/stage.css` for a custom
:file:`stage.css`.
:file:`stages.js` from :ref:`custom_stage_code`, and customize them to your needs.
To access the custom stage view in a browser go to http://myopenlpip:4316/stage/myview.
.. _main_view:
The Live View
The Main View
=============
Live view gives you the ability to set up remote computers that will mirror
what your projector is showing. The Live view basically works by taking
Main view gives you the ability to set up remote computers that will mirror
what your projector is showing. The Main view basically works by taking
screenshots of what the projector is showing and then presenting it in a
browser. This means that audio and video playback will not be presented in the
Live View.
Main View.
The first step is to make sure the Remote plugin is activated. You can accomplish
this by following the instructions in the :ref:`plugin_list`. The second step is to
configure the settings you will use with the web browser. You can find these
You can configure the settings you use with the web browser. You can find these
instructions and settings in :ref:`remote_tab`.
.. image:: pics/live_view_song.png
Open a web browser, type in the Main View URL you found in :ref:`remote_tab`
and press the :kbd:`Enter` key. For this example we will use
\http://192.168.1.73:4316/main. You will then be presented with the home page
\http://192.168.1.112:4316/main. You will then be presented with the home page
of the OpenLP Live View. On most web browsers you can press F11 to go into
fullscreen mode.
.. _cord_view:
The Chord View
==============
The Chord view is stage view that displays chords if they are in the songs.
You can configure the settings you use with the web browser. You can find these
instructions and settings in :ref:`remote_tab`.
.. image:: pics/web_remote_cords_adjustment.png
The chords view adds another control for translation of the cords. clicking on
this control will translate the chords up or down an octive.
Open a web browser, type in the Stage View URL you found in :ref:`remote_tab`
and press the :kbd:`Enter` key. For this example we will use
\http://192.168.1.112:4316/chords. You will then be presented with the home page
of the OpenLP Stage View. On most browsers you can press F11 to go into
fullscreen mode.
.. image:: pics/web_remote_cords.png

View File

@ -13,7 +13,7 @@ guest speaker or worship team leader to control their own slides if needed.
The Web Remote was moved to being part of the core program in version 2.9.2.
The only thing you need to do is go into :ref:`configure`, select the Remote Interface
item int the menu on the left side of the Settings window then press the
item in the menu on the left side of the Settings window then press the
Check for Updates button. If the Current version number is not the same as
Latest Version then press the Upgrade button. When the numbers match, press the
OK button at the bottom of the settings window.
@ -26,16 +26,16 @@ instructions and settings in :ref:`remote_tab`.
Open a web browser, type in the Remote URL you found in :ref:`remote_tab` and
press the :kbd:`Enter` key. For this example we will use
\http://192.168.1.73:4316. You will then be presented with the home page of the
OpenLP Remote.
\http://192.168.1.112:4316. You will then be presented with the home page of the
OpenLP Remote. The picture shows a service with nothing in it.
.. image:: pics/web_remote_start.png
Service Manager
---------------
Clicking on :guilabel:`Service Manager` will display the service item list from
the :ref:`creating_service`.
The web remote opens to the :guilabel:`Service` page and if a service is
loaded, it will display the service item list from the :ref:`creating_service`.
.. image:: pics/web_remote_service.png
@ -44,38 +44,65 @@ Slide Controller.
You will find the following buttons throughout the web remote interface.
|web_remote_home| The home button is found on most of the pages in the top
left hand corner of the remote interface and clicking it will take you back
to the home page of the OpenLP remote.
|web_remote_menu_button| The Menu button is found on most of the pages in the top
left hand corner of the remote interface and clicking it will display a menu
of the web remote pages and a helpful setting.
|web_remote_refresh| When changes are made on the main computer clicking on
refresh will show the changes in the remote viewer.
|web_remote_menu|
|web_remote_blank| Clicking this button will blank the display on the
projector screen. Clicking on an item in the Service Manager will
automatically show the item on the screen.
Selecting any of the top five menu items will change the web remote page to
the page responsible for that area of the web remote.
Selecting any of the three views will change the web remote page to the default
view selected.
|web_remote_theme| Clicking this button will blank the display on the
Enabling the :guilabel:`Fast Switch` setting will display
a set of Icons at the bottom of the page to switch between
pages without using the menu.
|WEB_REMOTE_ICON|
|web_remote_previous_item| This button will move upward through the Service
items to the previous items.
|web_remote_next_item| This button will move downward through the Service
items to the next item.
|web_remote_previous| This button will move upward through the Slide Controller.
If the settings :ref:`slide_controller_config` have been enabled this button will move from the first slide of a
service item to the last slide of the prevoius service item.
|web_remote_next| This button will move you downward through the Slide Controller.
If the settings :ref:`slide_controller_config` have been endables this button will move freom the last slide of a
service item to the next first slide of the next service item.
|web_remote_black| This button will blank the display on the projector screen.
If the settings :ref:`slide_controller_config` have been enabled clicking on an item in
the Service Manager will automatically show the item on the screen.
|web_remote_theme| This button will blank the display on the
projector screen to the current theme. Note that this is not available for
item which does not use themes, such as images, presentations and media.
Clicking on an item in the Service Manager will automatically show the
item on the screen.
If the settings :ref:`slide_controller_config` have been enabled clicking on an item in
the Service Manager will automatically show the item on the screen.
|web_remote_desktop| Clicking this button will hide the display on the
projector screen and therefore show the desktop. Clicking on an item in the
Service Manager will automatically show the item on the screen.
|web_remote_desktop| This button will hide the display on the projector screen
and therefore show the desktop. If the settings :ref:`slide_controller_config` have been
enabled clicking on an item in the Service Manager will automatically show the item
on the screen.
|web_remote_show| If the screen is blanked, clicking on this button will
|web_remote_show_presentation| If the screen is blanked, clicking on this button will
unblank the display.
|web_remote_previous| This button will move you upward through the Service
Manager and Slide Controller.
|web_remote_next| This button will move you downward through the Service
Manager and Slide Controller.
**Note:** The buttons Blank, Show, Prev and Next are conveniently located on
the top and the bottom of the remote interface to help eliminate scrolling.
|web_remote_show_service| This button will display the Service page of the web remote.
|web_remote_show_slides| This button will display the Slides page of the web remote.
|web_remote_show_alerts| This button will display the Alerts page of the web remote.
|web_remote_show_search| This button will display the Search page of the web remote.
|web_remote_show_themes| This button will display the Themes page of the web remote.
Slide Controller
----------------
@ -87,14 +114,9 @@ Controller interface.
You will find the verses displayed as they appear in the live view on the main
computer and the first verse will be displayed on the projection screen. You can
use the :guilabel:`Prev`, :guilabel:`Next` or click on each verse using the
use the |web_remote_previous|, |web_remote_next| or click on each verse using the
mouse to display them.
.. image:: pics/web_remote_slide2.png
When the slides shown are either images or presentations a small thumbnail will
be shown.
**Note:** The remote interface replicates the OpenLP software. When displaying
images, clicking on a single image in the service manager will display it
immediately. The first image in a group of images and the first slide in a
@ -104,8 +126,8 @@ web remote service manager.
Alerts
------
You can send an alert to the projection screen by entering the text in the box
and clicking on :guilabel:`Show Alert`. The alert will be displayed as you have
You can send an alert to the projection screen by entering the text on the line
and clicking on :guilabel:`Send`. The alert will be displayed as you have
it configured in :ref:`configure_alerts`.
.. image:: pics/web_remote_alert.png
@ -136,31 +158,44 @@ be displayed below the search button.
.. image:: pics/web_remote_search_complete.png
After finding the song you searched for, clicking on the song will bring up the
next screen.
.. image:: pics/web_remote_search_options.png
Click on :guilabel:`Go Live` to immediately display your media on the projection
screen. Click on :guilabel:`Add to Service` to add your media to the bottom of
the :ref:`creating_service`. Click on :guilabel:`Add & Go to Service` to add
your media to the bottom of the :ref:`creating_service`, and go to the web
remote service manager.
After finding the song you searched for, click on :guilabel:`Send Live` to
immediately display your media on the projection screen. Click on :guilabel:`Add to Service`
to add your media to the bottom of the :ref:`creating_service`.
.. These are all the image templates that are used in this page.
.. |WEB_REMOTE_HOME| image:: pics/web_remote_home.png
.. |WEB_REMOTE_MENU_BUTTON| image:: pics/web_remote_menu_button.png
.. |WEB_REMOTE_REFRESH| image:: pics/web_remote_refresh.png
.. |WEB_REMOTE_MENU| image:: pics/web_remote_menu.png
.. |WEB_REMOTE_ICON| image:: pics/web_remote_icons.png
.. |WEB_REMOTE_PREVIOUS_ITEM| image:: pics/web_remote_icons_previous_item.png
.. |WEB_REMOTE_NEXT_ITEM| image:: pics/web_remote_icons_next_item.png
.. |WEB_REMOTE_BLANK| image:: pics/web_remote_blank.png
.. |WEB_REMOTE_THEME| image:: pics/web_remote_theme.png
.. |WEB_REMOTE_THEME| image:: pics/web_remote_icons_show_background.png
.. |WEB_REMOTE_DESKTOP| image:: pics/web_remote_desktop.png
.. |WEB_REMOTE_DESKTOP| image:: pics/web_remote_icons_show_desktop.png
.. |WEB_REMOTE_SHOW| image:: pics/web_remote_show.png
.. |WEB_REMOTE_PREVIOUS| image:: pics/web_remote_previous.png
.. |WEB_REMOTE_PREVIOUS| image:: pics/web_remote_icons_previous_slide.png
.. |WEB_REMOTE_NEXT| image:: pics/web_remote_next.png
.. |WEB_REMOTE_NEXT| image:: pics/web_remote_icons_next_slide.png
.. |WEB_REMOTE_BLACK| image:: pics/web_remote_icons_show_black.png
.. |WEB_REMOTE_SHOW_PRESENTATION| image:: pics/web_remote_icons_show_presentation.png
.. |WEB_REMOTE_SHOW_SERVICE| image:: pics/web_remote_icons_show_service.png
.. |WEB_REMOTE_SHOW_SLIDES| image:: pics/web_remote_icons_show_slides.png
.. |WEB_REMOTE_SHOW_ALERTS| image:: pics/web_remote_icons_show_alerts.png
.. |WEB_REMOTE_SHOW_SEARCH| image:: pics/web_remote_icons_show_search.png
.. |WEB_REMOTE_SHOW_THEMES| image:: pics/web_remote_icons_show_themes.png