Merge changes from the release branch.
This commit is contained in:
@@ -6,6 +6,8 @@ Key:
|
||||
* Something changed / fixed
|
||||
|
||||
v0.5dev (ongoing development)
|
||||
|
||||
v0.5.7
|
||||
* Fix using the left key to change the ring and checkbox menu items
|
||||
* sed1520: Add an option for inverted segment mapping (idea by R. Buchert)
|
||||
* Fix build if compiled with --enable-permissive-menu-goto (#3599609)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
</authorgroup>
|
||||
|
||||
<date>2012-08-19</date>
|
||||
<date>2014-03-23</date>
|
||||
<releaseinfo>0.5.x</releaseinfo>
|
||||
|
||||
<abstract>
|
||||
|
||||
@@ -17,7 +17,8 @@ by a small sub-driver called connection type driver (CT-driver).
|
||||
|
||||
<note><para>
|
||||
LCDproc is compiled with FreeType support by default if it is installed on your
|
||||
system.
|
||||
system. It is enabled by default, too. However a font is not configured by
|
||||
default. Thus the driver will not start unless a font is configured!
|
||||
</para></note>
|
||||
|
||||
<sect2 id="glcd-connections">
|
||||
|
||||
@@ -12,31 +12,21 @@ around on the internet:
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term>LCDproc 0.5.3</term>
|
||||
<term>LCDproc 0.5.7</term>
|
||||
<listitem>
|
||||
<para>
|
||||
LCDproc 0.5.3 is the current stable version of LCDproc.
|
||||
LCDproc 0.5.7 is the current stable version of LCDproc.
|
||||
This is the version recommended to use.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>LCDproc 0.5.2</term>
|
||||
<term>Older releases</term>
|
||||
<listitem>
|
||||
<para>
|
||||
LCDproc 0.5.2 is an old stable version of LCDproc.
|
||||
It now has been superseded with LCDproc 0.5.3.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>LCDproc 0.5.1</term>
|
||||
<listitem>
|
||||
<para>
|
||||
LCDproc 0.5.1 is an old stable version of LCDproc.
|
||||
It was the second stable version of LCDproc after the move to the 0.5 API.
|
||||
Older releases of LCDproc can be found on the Sourceforge project page at
|
||||
<ulink url="http://sourceforge.net/projects/lcdproc/files/lcdproc/"></ulink>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -46,11 +36,12 @@ around on the internet:
|
||||
</sect1>
|
||||
|
||||
<sect1 id="tar">
|
||||
<title>Download Yesterday's CVS Version of LCDproc as a Tarball</title>
|
||||
<title>Download CVS Version of LCDproc as a Tarball</title>
|
||||
|
||||
<para>
|
||||
There are nightly distributions of the CVS branches of LCDproc. You can download them from
|
||||
<ulink url="http://lcdproc.sourceforge.net/nightly/"></ulink>
|
||||
The snapshot of the current source code repository may be downloaded from the
|
||||
web. Goto <ulink url="http://lcdproc.cvs.sourceforge.net/viewvc/lcdproc/"></ulink>
|
||||
and click on "Download GNU tarball".
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@@ -58,7 +49,7 @@ To extract the files run
|
||||
</para>
|
||||
|
||||
<screen>
|
||||
<prompt>$</prompt> <userinput>tar xvfz lcdproc-CVS-*.tar.gz</userinput>
|
||||
<prompt>$</prompt> <userinput>tar xvfz lcdproc.tar.gz</userinput>
|
||||
</screen>
|
||||
|
||||
</sect1>
|
||||
@@ -107,24 +98,4 @@ place on your machine.
|
||||
|
||||
</sect1>
|
||||
|
||||
<sect1 id="apt-get">
|
||||
<title>apt-get</title>
|
||||
|
||||
<para>
|
||||
Debian GNU/Linux users can get the Debian package of <package>LCDproc</package>,
|
||||
which is in the unstable and testing distributions.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Provided apt-get is configured properly, you should be able to install the package running:
|
||||
</para>
|
||||
|
||||
<screen>
|
||||
<prompt>$</prompt> <userinput>su</userinput>
|
||||
<prompt>Password:</prompt> <userinput>top secret</userinput>
|
||||
<prompt>#</prompt> <userinput>apt-get install lcdproc</userinput>
|
||||
</screen>
|
||||
|
||||
</sect1>
|
||||
|
||||
</chapter>
|
||||
|
||||
@@ -1,189 +0,0 @@
|
||||
===================================
|
||||
Pictogram Specification For LCDproc
|
||||
===================================
|
||||
|
||||
:Author: Markus Dolze
|
||||
:Contact: <bsdfan@nurfuerspam.de>
|
||||
|
||||
.. contents::
|
||||
|
||||
|
||||
Introduction
|
||||
============
|
||||
|
||||
In addition to alphanumeric characters represented by segments or pixels,
|
||||
LCD/VFD displays are often capable to show additional pictograms, mostly
|
||||
arranged around the alphanumeric display part.
|
||||
|
||||
These pictograms can be switched on or off, or can change their appearance
|
||||
as seen for volume settings.
|
||||
|
||||
LCDproc comes with icons that are integrated into the alphanumeric display
|
||||
part, but is unaware of pictograms as described above.
|
||||
|
||||
One current workaround is to use the output() function to pass values to a
|
||||
driver that uses these values to set pictograms. The downside is that any
|
||||
application which wants to make use of these pictograms need to know the
|
||||
exact type of display driver used and how that drivers handles values to the
|
||||
output() function.
|
||||
|
||||
This document aims to specify client language and driver API extensions to
|
||||
address pictograms in a manner not specific to certain drivers.
|
||||
|
||||
.. note::
|
||||
|
||||
The common term for pictograms is indeed icons, but to distinguish the
|
||||
feature from LCDproc's already existing icon feature the term
|
||||
[Definition: pictogram] has been chosen.
|
||||
|
||||
|
||||
Client language
|
||||
===============
|
||||
|
||||
The LCDproc client language will be extended with two new functions that can
|
||||
be called by a client.
|
||||
|
||||
pictogram_list
|
||||
--------------
|
||||
|
||||
.. code::
|
||||
|
||||
pictogram_list
|
||||
|
||||
If this function is called the server will respond with a list of supported
|
||||
pictograms.
|
||||
|
||||
Clients are required to call this command first to retrieve the list of
|
||||
supported pictograms. If the server does not support the pictogram feature,
|
||||
it will respond with "huh? unknown command". Clients must not use
|
||||
pictogram_set then.
|
||||
|
||||
If the server does support pictograms, it will respond with a list of
|
||||
pictograms that are currently understood by at least one driver.
|
||||
|
||||
This means the list changes accordingly to the loaded drivers and may even
|
||||
be empty if no loaded driver uses pictograms!
|
||||
|
||||
The response will look like:
|
||||
|
||||
.. code::
|
||||
|
||||
pictograms [name:type[:group_id:group_type]]*
|
||||
|
||||
List entries are separated by a space character. Each list entry does consist
|
||||
of 2 or 4 fields, separated by colon:
|
||||
|
||||
Name:
|
||||
The name by which the pictogram is known to the server. It is an US-ASCII
|
||||
string not containing any spaces.
|
||||
Type:
|
||||
The type of the pictogram. This will be the string 'bool' for boolean-type
|
||||
or 'num' for numeric-type pictograms.
|
||||
Group_id:
|
||||
This optional part contains a group identifier. The group_id is a number
|
||||
in the range 1-(2^32-1). It is used by the driver to inform the client
|
||||
that certain pictograms have a relation.
|
||||
Group_type:
|
||||
The group_type must be present if a group_id is set. It describes how
|
||||
pictograms in the same group behave. It will be either the string 'alt'
|
||||
(alternate) for groups in which only one pictogram can be active at any
|
||||
time or 'mul' (multiple) for groups which can have several pictograms
|
||||
active at the same time.
|
||||
|
||||
Client shall process the strings case-insensitive.
|
||||
|
||||
|
||||
pictogram_set
|
||||
-------------
|
||||
|
||||
.. code::
|
||||
|
||||
pictogram_set pictogram_name:value
|
||||
|
||||
By calling this command a single pictogram is changed. The pictogram is
|
||||
referenced by its name and a value, according to the given type. The reserved
|
||||
name 'all' can be used to turn off all pictograms at the same time.
|
||||
|
||||
.. note:: It has not yet been defined if 'all' can be used to turn on all
|
||||
pictograms at the same time.
|
||||
|
||||
For boolean-type pictograms the following values are recognized:
|
||||
|
||||
* String 'on' (case-insensitive) or value 1:
|
||||
|
||||
This will turn the pictogram on.
|
||||
|
||||
* String 'off' (case-insensitive) or value 0:
|
||||
|
||||
This will turn the pictogram off.
|
||||
|
||||
.. note:: Strings are to be used without the quotes.
|
||||
|
||||
For numeric-type pictograms value is a number between 0-1000 (inclusive).
|
||||
The value 0 shall turn the pictogram off.
|
||||
|
||||
|
||||
Driver API
|
||||
==========
|
||||
|
||||
The driver API (struct lcd_logical_driver in lcd.h) will be extended with a
|
||||
new function to process pictograms:
|
||||
|
||||
.. code:: c
|
||||
|
||||
int (*set_pictogram)(unsigned int pictogramID, int value);
|
||||
|
||||
|
||||
The pictogram function. The first parameter will be a pictogram number (ID)
|
||||
and the second parameter will be its value. The function will return 0
|
||||
(zero) if the pictogram is understood by the driver and -1 (minus one) if it
|
||||
is not supported.
|
||||
|
||||
There will be no alternative implementation in LCDd core if a driver does
|
||||
not understand a pictogram (like it is done for icons).
|
||||
|
||||
This function will never be called with multiple pictogram IDs combined into
|
||||
one. It will be called for each pictogram to be set / cleared. If a driver
|
||||
wishes to reduce communication with the hardware it may implement some kind
|
||||
of cache and write the changes on a call to flush().
|
||||
|
||||
The pictogram ID is defined in the file called lcd_pictograms.h as an
|
||||
enumerated type. It will have a symbolic name prefixed with [Definition:
|
||||
PICT\_]. Drivers MUST NOT address pictograms by their ID number but only by
|
||||
their symbolic name (e.g. within a switch statement) as the numbers are
|
||||
subject to change.
|
||||
|
||||
There will be two types of pictograms:
|
||||
|
||||
Boolean type pictograms
|
||||
This type of pictograms can be turned on (visible) or off (not visible).
|
||||
Valid values are 0 (zero) which means off, or 1 (one) which means on.
|
||||
|
||||
Numeric type pictograms
|
||||
This type of pictograms will change its appearance according to the value
|
||||
assigned, e.g. a graph or WLAN strength indicator. Valid values are within
|
||||
the range 0-1000. A value of 0 (zero) turns the pictogram off.
|
||||
|
||||
There will be one reserved pictogram ID (symbolic name e.g. PICT_ALL) which
|
||||
will be of boolean type and means that all pictograms the driver supports
|
||||
shall be turned off or on.
|
||||
|
||||
.. note:: There are currently several options discussed on the mailing list,
|
||||
given here for reference:
|
||||
|
||||
* There may be a third level for boolean type pictograms which does
|
||||
highlight it (e.g. make it more brighter or use a different color).
|
||||
|
||||
* Values for numeric type may be negative. This allows pictograms to have
|
||||
an opposite direction, e.g. graphs growing from right-to-left instead of
|
||||
from left-to-right.
|
||||
|
||||
* Drivers may define their local set of pictogram ID and assorted client
|
||||
language names.
|
||||
|
||||
|
||||
Internal implementation
|
||||
=======================
|
||||
|
||||
This section should talk about processing of client messages, mapping of
|
||||
pictogram names to pictogram IDs.
|
||||
Reference in New Issue
Block a user