COPYING \
INSTALL \
NEWS \
+ NEWS.html \
README \
README.html
README.html: README www/style.css
asciidoc --theme style -a themedir=`pwd`/www -n -a toc README
+
+NEWS.html: NEWS www/style.css
+ asciidoc --theme style -a themedir=`pwd`/www NEWS
COPYING \
INSTALL \
NEWS \
+ NEWS.html \
README \
README.html
README.html: README www/style.css
asciidoc --theme style -a themedir=`pwd`/www -n -a toc README
+NEWS.html: NEWS www/style.css
+ asciidoc --theme style -a themedir=`pwd`/www NEWS
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
-* v0.8.0.4
-
-** Added calling script when an alarm is raised.
-** Reordering of the list of sensors.
-** Added keywords in .desktop file.
-** Added LFS support.
-** Fixed compilation issue for x32 architecture on 64bits systems.
-** Merged German translation from LP (Dennis Baudys).
-** Merged Spanish translation from LP (Javier).
-** Merged French translation from LP (londumas).
-** Merged Brazilian translation from LP (Celio Alves).
-
-* v0.8.0.3
-
-** Switched to GtkColorChooserDialog instead of the
+Psensor NEWS
+============
+
+v0.8.0.6
+--------
+
+* Updated jquery and jqplot to last version.
+* Removed excanvas for copyright reason (apache license not compatible
+ with GPLv2 license).
+* Use non-minimized version of .js and .css to avoid lintian errors
+ (source-is-missing).
+
+v0.8.0.5
+--------
+
+* Added NEWS.html.
+* Converted NEWS file to asciidoc.
+* +psensor-server+:
+ - removed web fonts causing lintian warnings.
+ - redesigned web pages.
+* Merged German translation from LP (Dennis Baudys).
+* Merged Latvian translation from LP (tuxmaniack).
+* Merged Russian translation from LP (Dmitry).
+* Merged Turkish translation from LP (İbrahim Çelik).
+* Added Dutch translation from LP (Pjotr12345).
+* Fixed some french translations.
+* AppIndicator icons: removed shadow, added padding. (LP: #1290072).
+* Fixed compilation issue with gtk3.10 and deprecation of
+ GtkActionEntry. Menu is defined in glade file instead of
+ hardcoded. (LP: #1304108).
+
+v0.8.0.4
+--------
+
+* Added calling script when an alarm is raised.
+* Reordering of the list of sensors.
+* Added keywords in .desktop file.
+* Added LFS support.
+* Fixed compilation issue for x32 architecture on 64bits systems.
+* Merged German translation from LP (Dennis Baudys).
+* Merged Spanish translation from LP (Javier).
+* Merged French translation from LP (londumas).
+* Merged Brazilian translation from LP (Celio Alves).
+
+v0.8.0.3
+--------
+
+* Switched to GtkColorChooserDialog instead of the
deprecated widget GtkColorSelectionDialog. (LP: #1184442)
-** psensor-server: fixed compilation without gtop2 lib.
+* +psensor-server+: fixed compilation without gtop2 lib.
-* v0.8.0.2
+v0.8.0.2
+--------
-** GConf2/GTK/XEXT/X11 lib optional to allow psensor-server
+* GConf2/GTK/XEXT/X11 lib optional to allow psensor-server
compilation without them.
-** Added support of libjson-c.
-** merged German translation from LP (Dennis Baudys).
-** merged Latvian translation from LP (tuxmaniack).
-
-* v0.8.0.1
-
-** added AMD GPU usage sensor (Contribution from MestreLion).
-** added support of sensors log interval.
-** psensor-server: protocole changes, API version incremented.
-** fixed cpu load when fahrenheit is enabled.
-** list of sensors can be reordered using the sensor preferences
+* Added support of libjson-c.
+* merged German translation from LP (Dennis Baudys).
+* merged Latvian translation from LP (tuxmaniack).
+
+v0.8.0.1
+--------
+
+* added AMD GPU usage sensor (Contribution from MestreLion).
+* added support of sensors log interval.
+* +psensor-server+: protocole changes, API version incremented.
+* fixed cpu load when fahrenheit is enabled.
+* list of sensors can be reordered using the sensor preferences
dialog.
-** merged Spanish translation from LP (Javier) and Tomeu R. .
-** merged French translation from LP (Hélion du Mas des Bourboux).
-** merged Italian translation from LP (Diego Pierotto).
-** merged Brazillian Portugues translation from LP (MestreLion).
-** fixed the quit menu of the application indicator which was
+* merged Spanish translation from LP (Javier) and Tomeu R. .
+* merged French translation from LP (Hélion du Mas des Bourboux).
+* merged Italian translation from LP (Diego Pierotto).
+* merged Brazillian Portugues translation from LP (MestreLion).
+* fixed the quit menu of the application indicator which was
not translatable.
-* v07.0.5
+v07.0.5
+--------
-** fixed cpu load when fahrenheit is enabled.
+* fixed cpu load when fahrenheit is enabled.
-* v0.7.0.4
+v0.7.0.4
+--------
-** added Spanish translation from LP (Javier and Eduardo Alberto
+* added Spanish translation from LP (Javier and Eduardo Alberto
Calvo).
-** merged German translation from LP (Dennis Baudys).
-** merged French translation from LP (Alain-OIivier Breysse).
-** merged Hungarian from translation LP (Bence Lukács).
-** merged Latvian translation from LP (tuxmaniack).
-** merged Portuguese translation from LP (Daniel Serafim).
-** merged Russian translation from LP (Ilya Volchanetskiy).
-** merged Ukrainian translation from LP (Ilya Volchanetskiy).
-** merged Chinese translation from LP (Wang Dianjin).
-** psensor: fixed 'appindicator enabled' option not working correctly
+* merged German translation from LP (Dennis Baudys).
+* merged French translation from LP (Alain-OIivier Breysse).
+* merged Hungarian from translation LP (Bence Lukács).
+* merged Latvian translation from LP (tuxmaniack).
+* merged Portuguese translation from LP (Daniel Serafim).
+* merged Russian translation from LP (Ilya Volchanetskiy).
+* merged Ukrainian translation from LP (Ilya Volchanetskiy).
+* merged Chinese translation from LP (Wang Dianjin).
+* psensor: fixed 'appindicator enabled' option not working correctly
for cpu usage. The option was inversed each time it is displayed in
the preference dialog.
-** psensor: added an option to enable logging of sensors
+* psensor: added an option to enable logging of sensors
($HOME/.psensor/sensors.log).
-** psensor-server: added sensors logging (--sensor-log-file).
-** psensor: display the name of chip in sensor preferences.
-** psensor: moved the sensor id into a expendable frame of the sensor
+* +psensor-server+: added sensors logging (--sensor-log-file).
+* psensor: display the name of chip in sensor preferences.
+* psensor: moved the sensor id into a expendable frame of the sensor
preferences.
-** test target is now running cppcheck if available.
-** fixed cppcheck reported errors (realloc and not freed var).
-** fixed cppcheck (old values not used).
-** added faq (requires asciidoc to build the html version).
-** check target is now running cppcheck if installed.
-** display a message if no graphs are enabled (Closes #689355).
-** psensor: when 'hide window on startup' is set, it will
+* test target is now running cppcheck if available.
+* fixed cppcheck reported errors (realloc and not freed var).
+* fixed cppcheck (old values not used).
+* added faq (requires asciidoc to build the html version).
+* check target is now running cppcheck if installed.
+* display a message if no graphs are enabled (Closes #689355).
+* psensor: when 'hide window on startup' is set, it will
hide the window only if psensor can register to application
indicator or systray. Waiting 30s before trying to do it
in order to have better chance that systray is running during
session startup.
-** fixed displaying of the fahrenheit temperature in the main
+* fixed displaying of the fahrenheit temperature in the main
window.
-** fixed compilation error in amd.c (hdll not used).
+* fixed compilation error in amd.c (hdll not used).
-* v0.7.0.3
+v0.7.0.3
+--------
-** psensor: removed gettext_domain in psensor.schemas causing
+* psensor: removed gettext_domain in psensor.schemas causing
warnings.
-** merged italian and russian translation from LP.
+* merged italian and russian translation from LP.
-* v0.7.0.2
+v0.7.0.2
+--------
-** psensor: added latvian translation file.
-** psensor: added gconf schema. (LP: #1026807)
-** psensor: hide sensors in the application indicator.
-** psensor: removed hicolor/48x48/psensor_hot.png. (LP: #1029065)
-** merge chinese translation from LP.
+* psensor: added latvian translation file.
+* psensor: added gconf schema. (LP: #1026807)
+* psensor: hide sensors in the application indicator.
+* psensor: removed hicolor/48x48/psensor_hot.png. (LP: #1029065)
+* merge chinese translation from LP.
-* v0.7.0.1
+v0.7.0.1
+--------
-** psensor: minimum GTK version is now 3.0, GTK v2.x is no more
+* psensor: minimum GTK version is now 3.0, GTK v2.x is no more
supported.
-** psensor: fixed sensor type displayed in sensor preferences
+* psensor: fixed sensor type displayed in sensor preferences
dialog. (Closes LP: #968912)
-** psensor: not calling g_thread_init when compiled with glib >= 2.31.
-** psensor: added basic instruction in the README for compiling psensor
+* psensor: not calling g_thread_init when compiled with glib >= 2.31.
+* psensor: added basic instruction in the README for compiling psensor
with the ATI/AMD GPU support.
-** psensor: fixed compilation error on 64bits with ATI/AMD GPU support.
-** psensor: added capability to use libatasmart for sata disk monitoring.
-** psensor: added option --use-libatasmart.
-** changed copyright dates to 2012.
-** psensor: fixed systray and application indicator visible at the
+* psensor: fixed compilation error on 64bits with ATI/AMD GPU support.
+* psensor: added capability to use libatasmart for sata disk monitoring.
+* psensor: added option --use-libatasmart.
+* changed copyright dates to 2012.
+* psensor: fixed systray and application indicator visible at the
same time. (Closes LP: #971098)
-** psensor: fixed wrong background color, get the background color of
+* psensor: fixed wrong background color, get the background color of
the window and not the canvas widget. (Closes LP: #973122)
-** psensor: used the foreground color defined by the theme for the
+* psensor: used the foreground color defined by the theme for the
font of the graph legend.
-** psensor: used tab layout for psensor preferences.
-** psensor: temperature unit choice (celcius/fahrenheit).
-** psensor-server: fixed --wdir option.
-** psensor-server: added log level to -d option.
-** psensor-server: added --log-file option.
-** psensor-server: logged measures when log level is 3.
-** psensor: fixed many memory leaks in cfg.c (gconf2 keys).
-** psensor: fixed memory leak (sensor name when specified by the
+* psensor: used tab layout for psensor preferences.
+* psensor: temperature unit choice (celcius/fahrenheit).
+* +psensor-server+: fixed --wdir option.
+* +psensor-server+: added log level to -d option.
+* +psensor-server+: added --log-file option.
+* +psensor-server+: logged measures when log level is 3.
+* psensor: fixed many memory leaks in cfg.c (gconf2 keys).
+* psensor: fixed memory leak (sensor name when specified by the
configuration).
-** psensor: implemented the psensor uniquess, non-primary psensor
+* psensor: implemented the psensor uniquess, non-primary psensor
instances show the window of the primary psensor instance and
exits.
-** many code quality improvements.
-** psensor: added --new-instance option to allow the creation of
+* many code quality improvements.
+* psensor: added --new-instance option to allow the creation of
multiple instances of Psensor.
-** psensor: added the degree sign before the temperature symbols
+* psensor: added the degree sign before the temperature symbols
(Closes LP: #1021900).
-** psensor: alarm limit edition using the temperature unit set in the
+* psensor: alarm limit edition using the temperature unit set in the
global pref.
-** psensor: improved notification (added psensor icon and value of the
+* psensor: improved notification (added psensor icon and value of the
sensor).
-** full french and hungarian translation.
-** merged some chinese translation provided by LP.
-** added translation files for Brazilian Portuguese, and Italian.
-** partial translations for Russian, Serbian, Ukrainian, Slovenian and
+* full french and hungarian translation.
+* merged some chinese translation provided by LP.
+* added translation files for Brazilian Portuguese, and Italian.
+* partial translations for Russian, Serbian, Ukrainian, Slovenian and
German.
-** psensor: fixed i18n support for the application indicator menu.
-** psensor: fixed i18n support for the application menu.
-** psensor: added low thresold support for alerts.
-** psensor: added fan alert support.
-** psensor: fixed hide window on startup for gnome-shell (Closes:
+* psensor: fixed i18n support for the application indicator menu.
+* psensor: fixed i18n support for the application menu.
+* psensor: added low thresold support for alerts.
+* psensor: added fan alert support.
+* psensor: fixed hide window on startup for gnome-shell (Closes:
#676361).
-* v0.6.2.19
+v0.6.2.19
+---------
-** psensor: fixed size of the icon hicolor/48x48/psensor_hot.png.
+* psensor: fixed size of the icon hicolor/48x48/psensor_hot.png.
(LP: #1029065)
-* v0.6.2.18
+v0.6.2.18
+---------
-** added degree sign for celcius (Closes LP: #1021900).
-** added russian, brazilian, hungarian, serbian, slovenian,
+* added degree sign for celcius (Closes LP: #1021900).
+* added russian, brazilian, hungarian, serbian, slovenian,
italian, ukrainian and german translation files.
-** merged translations from LP.
-** psensor: fixed hide window on startup for gnome-shell (Closes:
+* merged translations from LP.
+* psensor: fixed hide window on startup for gnome-shell (Closes:
#676361).
-* v0.6.2.17
+v0.6.2.17
+---------
-** psensor: fixed sensor type displayed in sensor preferences
+* psensor: fixed sensor type displayed in sensor preferences
dialog. (Closes LP: #968912)
-** psensor: fixed compilation error on 64bits with ATI/AMD GPU support.
-** psensor: not calling g_thread_init when compiled with glib >= 2.31.
-** changed copyright dates to 2012.
+* psensor: fixed compilation error on 64bits with ATI/AMD GPU support.
+* psensor: not calling g_thread_init when compiled with glib >= 2.31.
+* changed copyright dates to 2012.
-* v0.6.2.16
+v0.6.2.16
+---------
-** psensor: removed -pedantic and ignores deprecation warnings
+* psensor: removed -pedantic and ignores deprecation warnings
to fix compilation against the glib version of Ubuntu Precise.
It fixes Ubuntu bug #905893.
-* v0.6.2.15
+v0.6.2.15
+---------
-** psensor-server: uses glibtop instead of 'sysinfo' which is not
+* +psensor-server+: uses glibtop instead of 'sysinfo' which is not
available on kfreebsd. It fixes Debian bug #650533.
-* v0.6.2.14
+v0.6.2.14
+---------
-** psensor: support of gtk>=2.18
-** psensor: inner space of the graph using the theme background color
-** psensor-server: fixed compilation with microhttpd >=0x90200 and
+* psensor: support of gtk>=2.18
+* psensor: inner space of the graph using the theme background color
+* +psensor-server+: fixed compilation with microhttpd >=0x90200 and
64bits.
-** added some information in the README (mostly about compilation on
+* added some information in the README (mostly about compilation on
CentOS).
-** psensor-server: support of symbolic links to webfiles.
+* +psensor-server+: support of symbolic links to webfiles.
-* v0.6.2.13
+v0.6.2.13
+---------
-** psensor can now be compiled and run with gtk3.
-** psensor: added gtk3 support build detection.
-** psensor: added libappindicator3-01 (gtk3 compliant version)
+* psensor can now be compiled and run with gtk3.
+* psensor: added gtk3 support build detection.
+* psensor: added libappindicator3-01 (gtk3 compliant version)
detection.
-** psensor: use 'draw' signal instead of 'expose-event' when compiled
+* psensor: use 'draw' signal instead of 'expose-event' when compiled
with gtk3.
-** psensor: fixed typo in french translation file.
-** psensor-server: fixed compilation with microhttpd >= 0.9.2 (version
+* psensor: fixed typo in french translation file.
+* +psensor-server+: fixed compilation with microhttpd >= 0.9.2 (version
used by Fedora15) which introduced incompatible API changes.
-** psensor: fixed compilation with libnotify 0.5.2 (submitted by Lubos
+* psensor: fixed compilation with libnotify 0.5.2 (submitted by Lubos
Stanek).
-** psensor: added missing CPPFLAGS for Gtop (submitted by Lubos Stanek).
-** psensor: fixed compilation with AMD/ATI GPU monitoring support
+* psensor: added missing CPPFLAGS for Gtop (submitted by Lubos Stanek).
+* psensor: fixed compilation with AMD/ATI GPU monitoring support
(submitted by Lubos Stanek).
-** psensor: default log level set to LOG_WARN.
-** few code refactoring and cleanup.
-** psensor: added support of status tray icon for DE not supporting
+* psensor: default log level set to LOG_WARN.
+* few code refactoring and cleanup.
+* psensor: added support of status tray icon for DE not supporting
Ubuntu Application Indicator.
-* v0.6.2.12
+v0.6.2.12
+---------
-** psensor: added -d option to enable debug log (written to $HOME/.psensor/log).
-** psensor: log sensor values in debug mode.
-** psensor: added option to restore window position and size.
+* psensor: added -d option to enable debug log (written to $HOME/.psensor/log).
+* psensor: log sensor values in debug mode.
+* psensor: added option to restore window position and size.
-* v0.6.2.11
+v0.6.2.11
+---------
-** psensor-server/web interface: use jqplot default css.
-** psensor-server/web interface: added excanvas for ie < 9 support.
-** psensor-server/web interface: automatic update of the monitoring page.
-** psensor-server/web interface: improved styling and navigation.
-** psensor-server/web interface: added graph for cpu usage.
-** psensor-server/web interface: fixed IE8 bug (page title change not
+* psensor-server/web interface: use jqplot default css.
+* psensor-server/web interface: added excanvas for ie < 9 support.
+* psensor-server/web interface: automatic update of the monitoring page.
+* psensor-server/web interface: improved styling and navigation.
+* psensor-server/web interface: added graph for cpu usage.
+* psensor-server/web interface: fixed IE8 bug (page title change not
allowed).
-** psensor-server/web interface: dynamic refresh of the graph.
-** psensor: added appindicator monochrome icons from Christoph Buchner
+* psensor-server/web interface: dynamic refresh of the graph.
+* psensor: added appindicator monochrome icons from Christoph Buchner
(bilderbuchi).
-** psensor: added log file (~/.psensor/log).
-** psensor: added X-GNOME-Autostart-Delay in .desktop file to
+* psensor: added log file (~/.psensor/log).
+* psensor: added X-GNOME-Autostart-Delay in .desktop file to
workaround LP: #859724.
-* v0.6.2.10
+v0.6.2.10
+---------
-** psensor-server: added network, cpu load and memory information in
+* +psensor-server+: added network, cpu load and memory information in
JSON web interface.
-** psensor-server: added monitor.html and details.html using jquery
+* +psensor-server+: added monitor.html and details.html using jquery
and retrieving monitoring data from the JSON web interface.
-** added experimental support for ATI/AMD gpus and fans.
-** psensor: added support of CPU usage monitoring.
-** psensor-server: display graph of sensors (web server).
-** psensor: bug fixed compilation with -Wall.
-** psensor: bug fixed unallocated memory read during termination.
-** psensor: fixed memleak when window not drawable.
-** psensor: release GConfClient when quitting.
-
-* v0.6.2.9
-
-** psensor: fixed UI freeze on Ubuntu Lucid when 'sensor preferences'.
+* added experimental support for ATI/AMD gpus and fans.
+* psensor: added support of CPU usage monitoring.
+* +psensor-server+: display graph of sensors (web server).
+* psensor: bug fixed compilation with -Wall.
+* psensor: bug fixed unallocated memory read during termination.
+* psensor: fixed memleak when window not drawable.
+* psensor: release GConfClient when quitting.
+
+v0.6.2.9
+--------
+
+* psensor: fixed UI freeze on Ubuntu Lucid when 'sensor preferences'.
is selected with application indicator.
-** added missing src/description.txt file into source archive.
-** psensor: appindicator displays unit of sensor values.
-** psensor: added preference for hiding main window on startup.
-** psensor: added 'about' dialog.
-** psensor: merged Chinese Simplified translation from royclarck
-** psensor: autostarted by default
-** nvidia: code cleanup
-** nvidia: fixed init, error var not initialized
-** nvidia: fixed nvidia_psensor_list_add, incorrect memory free
-** psensor: when appindicator is not support by wm:
+* added missing src/description.txt file into source archive.
+* psensor: appindicator displays unit of sensor values.
+* psensor: added preference for hiding main window on startup.
+* psensor: added 'about' dialog.
+* psensor: merged Chinese Simplified translation from royclarck
+* psensor: autostarted by default
+* nvidia: code cleanup
+* nvidia: fixed init, error var not initialized
+* nvidia: fixed nvidia_psensor_list_add, incorrect memory free
+* psensor: when appindicator is not supported by wm:
- psensor quit on window close
- show psensor even if hide on startup is enabled
-* v0.6.2.8
+v0.6.2.8
+--------
-** psensor: escaped - in manpage.
-** psensor-server: escaped - in manpage.
-** psensor: added support of libnotify 0.7.
-** psensor: added turkish support.
-** psensor: fixed multi-languages support used by glade.
-** switched from wpitchoune@gmail.com to jeanfi@gmail.com (my usual
+* psensor: escaped - in manpage.
+* +psensor-server+: escaped - in manpage.
+* psensor: added support of libnotify 0.7.
+* psensor: added turkish support.
+* psensor: fixed multi-languages support used by glade.
+* switched from wpitchoune@gmail.com to jeanfi@gmail.com (my usual
email).
-** merged french translation from v0.6.1.8.
-** added missing french translation.
-** added different sizes of psensor.png .
-** psensor: added menu.
-** psensor: added enable/disable unity launcher counter.
-** psensor: unity launcher counter displays the higher temperature.
-** avoid fetching hddtemp daemon when no hdd in the sensors list.
-** psensor: closing the window hides psensor instead of quitting when
+* merged french translation from v0.6.1.8.
+* added missing french translation.
+* added different sizes of psensor.png .
+* psensor: added menu.
+* psensor: added enable/disable unity launcher counter.
+* psensor: unity launcher counter displays the higher temperature.
+* avoid fetching hddtemp daemon when no hdd in the sensors list.
+* psensor: closing the window hides psensor instead of quitting when
application indicator support is enabled.
-** psensor: dialog window for editing all sensors preferences.
-** psensor: added support of GTK3.0 (GTK2.0 still supported).
-** psensor: fixed crash when glade files cannot be read.
-** psensor: display sensors information in the application indicator.
-
-* v0.6.2.7
-
-** psensor: src/glade/psensor-pref.glade, added button separator.
-** psensor: src/glade/sensor-edit.glade, fixed horiz/vert padding.
-** psensor: src/lib/measure.c, initialize time.
-** psensor: fixed freeze when click on preferences appindicator with
+* psensor: dialog window for editing all sensors preferences.
+* psensor: added support of GTK3.0 (GTK2.0 still supported).
+* psensor: fixed crash when glade files cannot be read.
+* psensor: display sensors information in the application indicator.
+
+v0.6.2.7
+--------
+
+* psensor: src/glade/psensor-pref.glade, added button separator.
+* psensor: src/glade/sensor-edit.glade, fixed horiz/vert padding.
+* psensor: src/lib/measure.c, initialize time.
+* psensor: fixed freeze when click on preferences appindicator with
natty.
-* v0.6.2.6
+v0.6.2.6
+--------
-** psensor: fixed min temp/fan of the graph
-** psensor: very minor optimization (graph.c)
+* psensor: fixed min temp/fan of the graph
+* psensor: very minor optimization (graph.c)
-* v0.6.2.5
+v0.6.2.5
+--------
-** psensor: dialog box for editing psensor preferences is using Glade
-** psensor: dialog box for editing sensor preferences is using Glade
-** psensor: added support of negative temperatures (lm-sensors)
+* psensor: dialog box for editing psensor preferences is using Glade
+* psensor: dialog box for editing sensor preferences is using Glade
+* psensor: added support of negative temperatures (lm-sensors)
-* v0.6.2.4
+v0.6.2.4
+--------
-** psensor, graph: fixed padding bugs
-** psensor, graph: drawing code refactored
-** psensor: the value of the first detected sensor is displayed in the
+* psensor, graph: fixed padding bugs
+* psensor, graph: drawing code refactored
+* psensor: the value of the first detected sensor is displayed in the
unity launcher entry of psensor (requires unity >=3.4.2).
-* v0.6.2.3
+v0.6.2.3
+--------
-** psensor-server: new global variable 'psensor_version' for lua template
-** psensor-server: /index.html replaced by /index.lua
-** avoid useless lib linkage by using --as-needed
+* +psensor-server+: new global variable 'psensor_version' for lua template
+* +psensor-server+: /index.html replaced by /index.lua
+* avoid useless lib linkage by using --as-needed
-* v0.6.2.2
+v0.6.2.2
+--------
-** psensor-server: web server support binary files
-** psensor-server: added favicon.ico
-** psensor-server: moved index.lua to monitor.lua
-** psensor-server: added index.html (welcome page)
+* +psensor-server+: web server support binary files
+* +psensor-server+: added favicon.ico
+* +psensor-server+: moved index.lua to monitor.lua
+* +psensor-server+: added index.html (welcome page)
-* v0.6.2.1
+v0.6.2.1
+--------
-** added uptime/memory information (psensor-server web)
-** added debug mode for psensor-server (--debug)
-** when used in debug mode, psensor-server can be stopped remotely
+* added uptime/memory information (psensor-server web)
+* added debug mode for psensor-server (--debug)
+* when used in debug mode, psensor-server can be stopped remotely
using http://hostname:port/api/1.0/server/stop
-** fixed memory leak (label of lmsensor)
-** some code cleanup/refactoring
+* fixed memory leak (label of lmsensor)
+* some code cleanup/refactoring
-* v0.6.1.10
+v0.6.1.10
+--------
-** psensor: support of appindicator < 0.2.9
-** psensor: closing the window hides psensor instead of quitting when
+* psensor: support of appindicator < 0.2.9
+* psensor: closing the window hides psensor instead of quitting when
application indicator support is enabled.
-* v0.6.1.9
+v0.6.1.9
+--------
-** avoid fetching hddtemp daemon when no hdd in the sensors list
+* avoid fetching hddtemp daemon when no hdd in the sensors list
-* v0.6.1.8
+v0.6.1.8
+--------
-** psensor: added turkish language
-** psensor: fixed freeze when click on preferences appindicator with
+* psensor: added turkish language
+* psensor: fixed freeze when click on preferences appindicator with
natty.
-** fixed typo (${X11_LIBS}) in configure.ac
-** psensor: full french language support
+* fixed typo (${X11_LIBS}) in configure.ac
+* psensor: full french language support
-* v0.6.1.7
+v0.6.1.7
+--------
-** psensor: add support of libnotify 0.7
+* psensor: add support of libnotify 0.7
-* v0.6.1.6
+v0.6.1.6
+--------
-** psensor: escaped - in manpage
-** psensor-server: escaped - in manpage
+* psensor: escaped - in manpage
+* +psensor-server+: escaped - in manpage
-* v0.6.1.5
+v0.6.1.5
+--------
-** added multi-language for hdd.c/nvidia.c/lmsensor.c
-** some code cleanup/refactoring
+* added multi-language for hdd.c/nvidia.c/lmsensor.c
+* some code cleanup/refactoring
-* v0.6.1.4
+v0.6.1.4
+--------
-** fixed manpage formatting in 'REPORTING BUGS' section
-** improved manpages
-** removed few useless translations (fr/zh_CN)
-** improved error messages for remote sensors + multilanguages support
+* fixed manpage formatting in 'REPORTING BUGS' section
+* improved manpages
+* removed few useless translations (fr/zh_CN)
+* improved error messages for remote sensors + multilanguages support
-* v0.6.1.3
+v0.6.1.3
+--------
-** fixed compilation error of psensor when libcurl is present but not
+* fixed compilation error of psensor when libcurl is present but not
libjson0
-** suppress pointer to Textinfo manual (psensor/psensor-server).
-** added --name to help2man call (psensor/psensor-server manpages).
-** added more information in the psensor/psensor-server manpages.
-** added warning about psensor-server and security in README.
-
-* v0.6.1.1
-
-** application icon is loaded using GtkIconTheme
-** appindicator icon is now the psensor one
-** added appindicator icon for status 'attention'
-
-* v0.6.1
-
-** added style.css for psensor-server
-** use some styling in index.lua
-** fixed typo in README
-** fixed psensor-server short option -p
-** multi-language support for psensor-server
-** added some translation for French language0
-** fixed psensor-server bug: first sensor was not displayed
-
-* v0.6.0.14
-
-** psensor (gtk client):
-
-*** added global preference: graph update interval
-*** added global preference: graph monitoring duration
-*** added global preference: sensor update interval
-*** standard gnu command line interface for psensor
-*** new psensor options: --help, --version, --url
-*** added generation and installation of the psensor man
-*** added remote monitoring it requires a new optionnal dependencies
+* suppress pointer to Textinfo manual (psensor/psensor-server).
+* added --name to help2man call (psensor/psensor-server manpages).
+* added more information in the psensor/psensor-server manpages.
+* added warning about psensor-server and security in README.
+
+v0.6.1.1
+--------
+
+* application icon is loaded using GtkIconTheme
+* appindicator icon is now the psensor one
+* added appindicator icon for status 'attention'
+
+v0.6.1
+------
+
+* added style.css for psensor-server
+* use some styling in index.lua
+* fixed typo in README
+* fixed psensor-server short option -p
+* multi-language support for psensor-server
+* added some translation for French language0
+* fixed psensor-server bug: first sensor was not displayed
+
+v0.6.0.14
+---------
+
+* psensor (gtk client):
+
+** added global preference: graph update interval
+** added global preference: graph monitoring duration
+** added global preference: sensor update interval
+** standard gnu command line interface for psensor
+** new psensor options: --help, --version, --url
+** added generation and installation of the psensor man
+** added remote monitoring it requires a new optionnal dependencies
(libjson0 and libcurl)
-*** added internationnalization support for the UI
-*** added Simplified Chinese Language (from DaBao <linux.dabao@gmail.com>)
+** added internationnalization support for the UI
+** added Simplified Chinese Language (from DaBao <linux.dabao@gmail.com>)
-** psensor-server:
+* +psensor-server+:
-*** psensor-server is now a minimal webserver based on microhttpd.
+** psensor-server is now a minimal webserver based on microhttpd.
Lua5.1 is used to generate HTML pages to display temperatures and
gtop2 information
-*** temperature information can be retrieved using a webservice based
+** temperature information can be retrieved using a webservice based
on json
-*** added cpu information (requires optional libgtop-2.0)
-*** psensor-server
-*** psensor-server options: --port, --help, --version
-*** added generation and installation of the psensor-server man
-
-** common news for psensor and psensor-server:
-
-*** moved to autoconf/automake
-*** gnu standard: use NEWS instead of CHANGES file
-*** moved LICENSE to COPYING
-
-* v0.5.1
-
-** Makefile: avoid debug compilation by default
-** Makefile: fixed duplicate server.o in OBJS_SERVER
-** moved LICENSE to copyright
-** moved CHANGES to NEWS
-** Fixed creation of directories for the target 'install'
-
-* v0.5.0
-
-** Added double buffering of the graph to avoid flickering
-** Fixed README error gconf package name
-** Refactoring makefile
-** Added desktop notification support
-** Added application indicator support
-** Fixed MT issue (UI freeze, refresh_thread)
-** Added global preferences editor (right click on the graph)
-** Added sensor preferences editor (right click on the sensor table)
-** Displayed name of each sensor can be changed
-** Position of the sensor table can be changed
-** Window decoration can be hidden
-** Added 'keep window below' setting
-
-* v0.4.5
-
-** Makefile: fixed duplicate server.o in OBJS_SERVER
+** added cpu information (requires optional libgtop-2.0)
+** psensor-server
+** psensor-server options: --port, --help, --version
+** added generation and installation of the psensor-server man
+
+* common news for psensor and psensor-server:
+
+** moved to autoconf/automake
+** gnu standard: use NEWS instead of CHANGES file
+** moved LICENSE to COPYING
+
+v0.5.1
+------
+
+* Makefile: avoid debug compilation by default
+* Makefile: fixed duplicate server.o in OBJS_SERVER
+* moved LICENSE to copyright
+* moved CHANGES to NEWS
+* Fixed creation of directories for the target 'install'
+
+v0.5.0
+------
+
+* Added double buffering of the graph to avoid flickering
+* Fixed README error gconf package name
+* Refactoring makefile
+* Added desktop notification support
+* Added application indicator support
+* Fixed MT issue (UI freeze, refresh_thread)
+* Added global preferences editor (right click on the graph)
+* Added sensor preferences editor (right click on the sensor table)
+* Displayed name of each sensor can be changed
+* Position of the sensor table can be changed
+* Window decoration can be hidden
+* Added 'keep window below' setting
+
+v0.4.5
+------
+
+* Makefile: fixed duplicate server.o in OBJS_SERVER
v0.4.4
+------
+
Added README.debian
v0.4.3
-Fixed foreground graph color first time psensor is started
-Added support of gtk 2.12 (used by Debian 5.0.6 Lenny) by redefining
-gtk_dialog_get_content_area which exist since 2.14
+------
+
+* Fixed foreground graph color first time psensor is started
+* Added support of gtk 2.12 (used by Debian 5.0.6 Lenny) by redefining
+* gtk_dialog_get_content_area which exist since 2.14
v0.4.2
-Fixed potential MT issue (refresh_thread)
-Added double buffering of the graph to avoid flickering
-Fixed minor graph code bugs
+------
+
+* Fixed potential MT issue (refresh_thread)
+* Added double buffering of the graph to avoid flickering
+* Fixed minor graph code bugs
v0.4.1
-Fixed README error gconf package name
-Refactoring makefile
+------
+
+* Fixed README error gconf package name
+* Refactoring makefile
v0.4.0
-Added FAN support
-Added HDD support (using hddtemp daemon)
-Added popup menu for changing graph bg/fg colors and opacity
-Graph background can be transparent, opacity can be changed
-Fixed BR3: sensors with the same name but different chips share the same color configuration
-Fixed BR4: wrong OBJS variable and gconf when calling pkg-config in Makefile.distrib for compiling with NVidia support
+------
+
+* Added FAN support
+* Added HDD support (using hddtemp daemon)
+* Added popup menu for changing graph bg/fg colors and opacity
+* Graph background can be transparent, opacity can be changed
+* Fixed BR3: sensors with the same name but different chips share the same color configuration
+* Fixed BR4: wrong OBJS variable and gconf when calling pkg-config in Makefile.distrib for compiling with NVidia support
Changed website URL
-Fixed BR5: Psensor crashes during startup with "You forgot to call g_type_init()"
+* Fixed BR5: Psensor crashes during startup with "You forgot to call g_type_init()"
v0.3.3
-Fixed potential MT issue (refresh_thread)
-Improved Makefile
+------
+
+* Fixed potential MT issue (refresh_thread)
+* Improved Makefile
v0.3.2
-Fixed BR4: wrong OBJS variable and gconf when calling pkg-config in Makefile.distrib for compiling with NVidia support
-Changed website URL
-Fixed BR5: Psensor crashes during startup with "You forgot to call g_type_init()"
+------
+
+* Fixed BR4: wrong OBJS variable and gconf when calling pkg-config in Makefile.distrib for compiling with NVidia support
+* Changed website URL
+* Fixed BR5: Psensor crashes during startup with "You forgot to call g_type_init()"
v0.3.1
+------
+
Fixed BR3: sensors with the same name but different chips share the same color configuration
v0.3.0
-Sensor graph colors can be changed: click on the colored sensor cell in the information table)
-Background color of the graph can be changed: click on the graph
-Configuration is stored using GConf
-Fixed not initialized memory bug (min/max) in nvidia support
+------
+
+* Sensor graph colors can be changed: click on the colored sensor cell in the information table)
+* Background color of the graph can be changed: click on the graph
+* Configuration is stored using GConf
+* Fixed not initialized memory bug (min/max) in nvidia support
v0.2.7
-Updated the website URL
-Added contact information in the README
-Backported Makefile improvement from trunk
-Removed pwiki styling of the README
-Backport: Fixed not initialized memory bug (min/max) in nvidia support
+------
+
+* Updated the website URL
+* Added contact information in the README
+* Backported Makefile improvement from trunk
+* Removed pwiki styling of the README
+* Backport: Fixed not initialized memory bug (min/max) in nvidia support
v0.2.6
-Changed default graph colors and background
-Added vertical padding for the graph canvas
-Disabled row selection of the sensor table
-Fixed BR2: nvidia gpu is always using black color
+------
+
+* Changed default graph colors and background
+* Added vertical padding for the graph canvas
+* Disabled row selection of the sensor table
+* Fixed BR2: nvidia gpu is always using black color
v0.2.5
+------
+
Added a basic server to retrieve remotely temperatures
v0.2.4
-Added application icon
-Added .desktop file
+------
+
+* Added application icon
+* Added .desktop file
v0.2.3
-Added max and min temperature information for each sensor
-Fixed a missing #include in nvidia.c
-Small UI improvements (scrollbar for the right panel + slider)
+------
+
+* Added max and min temperature information for each sensor
+* Fixed a missing #include in nvidia.c
+* Small UI improvements (scrollbar for the right panel + slider)
v0.2.2
-Fixed compilation warning when NVidia support is disabled
-Fixed BR1: crash when no temperature sensor is available
+------
+
+* Fixed compilation warning when NVidia support is disabled
+* Fixed BR1: crash when no temperature sensor is available
v0.2.1
+--------
+
Compilation dependance to Nvidia lib is optional
v0.2.0
+------
+
Added support of NVidia GPUs
v0.1.1
+------
+
Improved right panel (list of sensors) + ability to disable each sensor graph
v0.1.0
-Initial release
-
+------
+Initial release
<meta name="generator" content="AsciiDoc 8.6.7" />\r
<title>Psensor README</title>\r
<style type="text/css">\r
+\r
body {\r
- padding: 1em 1em 1em 1em;\r
- font-family: "Ubuntu", sans-serif;\r
- font-size: 100%;\r
- font-style: normal;\r
- font-weight: normal;\r
- color: #000;\r
- background-color: #fff;\r
- margin: 0 0 0 0;\r
+ background: #e2e2e2;\r
+ color: #333333;\r
+ font-family: Ubuntu,Arial,sans-serif;\r
+ line-height: 1.6;\r
+ font-weight: lighter;\r
+ margin: 1em 2em 2em 2em;\r
+ padding: 0 0 0 0;\r
}\r
\r
-a {\r
- color: #1982D1;\r
- font-style: normal;\r
- text-decoration: none;\r
+h1 {\r
+ font-size: 2.813em;\r
+ margin: 0 0 0.267em 0;\r
+ padding: 0 0 0 0;\r
+ font-weight: normal;\r
}\r
\r
-a:hover {\r
- text-decoration: underline;\r
+h2 {\r
+ font-size: 2em;\r
+ margin: 0 0 0.375em;\r
+ padding: 0 0 0 0;\r
+ font-weight: normal;\r
}\r
\r
-h1 {\r
- font-size: 140%;\r
- font-style: normal;\r
- font-weight: bold;\r
- text-transform: uppercase;\r
- margin: 0 0 1em 0;\r
+h3 {\r
+ font-size: 1.438em;\r
+ margin: 0 0 0.522em;\r
padding: 0 0 0 0;\r
+ font-weight: normal;\r
}\r
\r
+h4 {\r
+ font-size: 1.219em;\r
+ margin: 0 0 0.615em;\r
+ padding: 0 0 0 0;\r
+ font-weight: normal;\r
+}\r
\r
-h2, #toctitle{\r
- font-size: 110%;\r
- font-style: normal;\r
+h5 {\r
+ font-size: 1em;\r
+ margin: 0 0 0.75em;\r
+ padding: 0 0 0 0;\r
font-weight: bold;\r
+}\r
+\r
+h6 {\r
+ font-weight: normal;\r
+ font-size: 0.813em;\r
+ letter-spacing: 0.1em;\r
+ margin: 0 0 0.923em;\r
text-transform: uppercase;\r
- margin: 2em 0em 1em 0em;\r
padding: 0 0 0 0;\r
}\r
\r
-#footer {\r
- padding-top: 2em;\r
- color: #666;\r
- clear: both;\r
- text-align: right;\r
- font-size: 75%;\r
+li {\r
+ margin: 0 0 0 1em;\r
+ line-height: 1.6;\r
}\r
\r
-p {\r
- font-size: 100%;\r
- margin-bottom: 8px;\r
+li p {\r
+ margin: 0 0 0 0;\r
}\r
\r
-table {\r
- text-align: left;\r
+ul {\r
+ margin: 0 0 0 0;\r
padding: 0 0 0 0;\r
- min-width: 50%;\r
- border-spacing: 0;\r
- border: 0;\r
}\r
\r
-thead {\r
- background-color: #000;\r
- color: #fff;\r
- padding: 0 0 0 0;\r
+a:link, a:visited {\r
+ color: #19B6EE;\r
+ text-decoration: none;\r
}\r
\r
-tbody {\r
- padding: 0 0 0 0;\r
+a:hover {\r
+ text-decoration: underline;\r
}\r
\r
-th {\r
- padding: 0.25em 0.5em 0.25em 0.5em;\r
- font-style: normal;\r
+code, pre, tt {\r
+ font-family: "Ubuntu Mono","Courier New",Courier,monospace;\r
font-weight: normal;\r
+ color: #333333;\r
}\r
\r
-td {\r
- padding: 0.25em 0.25em 0em 0.25em;\r
+pre {\r
+ background: none repeat scroll 0 0 #e0e0e0;\r
+ border-radius: 4px;\r
+ padding: 0.5em 0.5em;\r
+ margin: 0 0 0 0;\r
+ white-space: pre-wrap;\r
+ word-wrap: break-word;\r
}\r
\r
-#chart {\r
- color: #000;\r
- font-style: normal;\r
- font-weight: normal;\r
+table {\r
width: 100%;\r
- height: 300px;\r
+ text-align: left;\r
}\r
\r
-ul#menu-list li {\r
- list-style: none;\r
+#footer {\r
+ margin: 0 0 0 0;\r
+ font-size: 0.8em;\r
+ font-weight: lighter;\r
+ clear: both;\r
+ text-align: right;\r
}\r
\r
-#menu-list {\r
- padding: 0 0 0 0;\r
+#page {\r
margin: 0 0 0 0;\r
+ padding: 0 0 0 0;\r
+}\r
+\r
+#main {\r
+ background: #ffffff;\r
+\r
+ -moz-box-sizing: border-box;\r
+\r
+ padding: 2em 2em 2em 2em;\r
+\r
+ -moz-border-radius: 4px;\r
+ -webkit-border-radius: 4px;\r
+ border-radius: 4px;\r
+\r
+ -webkit-box-shadow: 0 2px 2px 0 #C2C2C2;\r
+ box-shadow: 0 2px 2px 0 #C2C2C2;\r
}\r
\r
#menu {\r
+ background: #ffffff;\r
+ -moz-box-sizing: border-box;\r
+ padding: 2em 2em 2em 2em;\r
+\r
+ -moz-border-radius: 4px;\r
+ -webkit-border-radius: 4px;\r
+ border-radius: 4px;\r
+\r
+ -webkit-box-shadow: 0 2px 2px 0 #C2C2C2;\r
+ box-shadow: 0 2px 2px 0 #C2C2C2;\r
+}\r
+\r
+#menu-list, #menu-list > li > ul {\r
+ list-style-type: none;\r
+}\r
+\r
+/* menu on left col, content on right col */\r
+\r
+#menu {\r
float: left;\r
- width: 20%;\r
- padding: 0 0 0 0;\r
- margin: 0 0 0 0;\r
+ width: 18%;\r
}\r
\r
#main {\r
float: right;\r
width: 80%;\r
- padding: 0 0 0 0;\r
- margin: 0 0em 0 0;\r
}\r
\r
-em {\r
- font-weight: bold;\r
- font-style: normal;\r
-}\r
+/* asciidoc */\r
\r
-#uptime {\r
- font-weight: normal;\r
-}\r
+#toc, #content {\r
+ margin: 0em 0em 2em 0em;\r
\r
-#menu-list em {\r
- text-transform: uppercase;\r
-}\r
+ background: #ffffff;\r
+ -moz-box-sizing: border-box;\r
+ padding: 2em 2em 2em 2em;\r
\r
-#menu ul li {\r
- padding-bottom: 1em;\r
-}\r
+ -moz-border-radius: 4px;\r
+ -webkit-border-radius: 4px;\r
+ border-radius: 4px;\r
\r
-#menu-list ul li {\r
- padding: 0 0 0 0em;\r
+ -webkit-box-shadow: 0 2px 2px 0 #C2C2C2;\r
+ box-shadow: 0 2px 2px 0 #C2C2C2;\r
}\r
-\r
</style>\r
<script type="text/javascript">\r
/*<![CDATA[*/\r
<div id="footnotes"><hr /></div>\r
<div id="footer">\r
<div id="footer-text">\r
-Last updated 2013-05-26 19:23:21 CEST\r
+Last updated 2014-04-10 01:57:33 CEST\r
</div>\r
</div>\r
</body>\r
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for psensor 0.8.0.4.
+# Generated by GNU Autoconf 2.69 for psensor 0.8.0.6.
#
# Report bugs to <jeanfi@gmail.com>.
#
# Identity of this package.
PACKAGE_NAME='psensor'
PACKAGE_TARNAME='psensor'
-PACKAGE_VERSION='0.8.0.4'
-PACKAGE_STRING='psensor 0.8.0.4'
+PACKAGE_VERSION='0.8.0.6'
+PACKAGE_STRING='psensor 0.8.0.6'
PACKAGE_BUGREPORT='jeanfi@gmail.com'
PACKAGE_URL='http://wpitchoune.net/psensor'
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures psensor 0.8.0.4 to adapt to many kinds of systems.
+\`configure' configures psensor 0.8.0.6 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of psensor 0.8.0.4:";;
+ short | recursive ) echo "Configuration of psensor 0.8.0.6:";;
esac
cat <<\_ACEOF
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-psensor configure 0.8.0.4
+psensor configure 0.8.0.6
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by psensor $as_me 0.8.0.4, which was
+It was created by psensor $as_me 0.8.0.6, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
# Define the identity of the package.
PACKAGE='psensor'
- VERSION='0.8.0.4'
+ VERSION='0.8.0.6'
cat >>confdefs.h <<_ACEOF
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by psensor $as_me 0.8.0.4, which was
+This file was extended by psensor $as_me 0.8.0.6, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-psensor config.status 0.8.0.4
+psensor config.status 0.8.0.6
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([psensor], [0.8.0.4],[jeanfi@gmail.com],[psensor],[http://wpitchoune.net/psensor])
+AC_INIT([psensor], [0.8.0.6],[jeanfi@gmail.com],[psensor],[http://wpitchoune.net/psensor])
AM_INIT_AUTOMAKE([-Wall -Werror gnu])
<meta name="generator" content="AsciiDoc 8.6.7" />\r
<title>Psensor Frequently Asked Questions</title>\r
<style type="text/css">\r
+\r
body {\r
- padding: 1em 1em 1em 1em;\r
- font-family: "Ubuntu", sans-serif;\r
- font-size: 100%;\r
- font-style: normal;\r
- font-weight: normal;\r
- color: #000;\r
- background-color: #fff;\r
- margin: 0 0 0 0;\r
+ background: #e2e2e2;\r
+ color: #333333;\r
+ font-family: Ubuntu,Arial,sans-serif;\r
+ line-height: 1.6;\r
+ font-weight: lighter;\r
+ margin: 1em 2em 2em 2em;\r
+ padding: 0 0 0 0;\r
}\r
\r
-a {\r
- color: #1982D1;\r
- font-style: normal;\r
- text-decoration: none;\r
+h1 {\r
+ font-size: 2.813em;\r
+ margin: 0 0 0.267em 0;\r
+ padding: 0 0 0 0;\r
+ font-weight: normal;\r
}\r
\r
-a:hover {\r
- text-decoration: underline;\r
+h2 {\r
+ font-size: 2em;\r
+ margin: 0 0 0.375em;\r
+ padding: 0 0 0 0;\r
+ font-weight: normal;\r
}\r
\r
-h1 {\r
- font-size: 140%;\r
- font-style: normal;\r
- font-weight: bold;\r
- text-transform: uppercase;\r
- margin: 0 0 1em 0;\r
+h3 {\r
+ font-size: 1.438em;\r
+ margin: 0 0 0.522em;\r
padding: 0 0 0 0;\r
+ font-weight: normal;\r
}\r
\r
+h4 {\r
+ font-size: 1.219em;\r
+ margin: 0 0 0.615em;\r
+ padding: 0 0 0 0;\r
+ font-weight: normal;\r
+}\r
\r
-h2, #toctitle{\r
- font-size: 110%;\r
- font-style: normal;\r
+h5 {\r
+ font-size: 1em;\r
+ margin: 0 0 0.75em;\r
+ padding: 0 0 0 0;\r
font-weight: bold;\r
+}\r
+\r
+h6 {\r
+ font-weight: normal;\r
+ font-size: 0.813em;\r
+ letter-spacing: 0.1em;\r
+ margin: 0 0 0.923em;\r
text-transform: uppercase;\r
- margin: 2em 0em 1em 0em;\r
padding: 0 0 0 0;\r
}\r
\r
-#footer {\r
- padding-top: 2em;\r
- color: #666;\r
- clear: both;\r
- text-align: right;\r
- font-size: 75%;\r
+li {\r
+ margin: 0 0 0 1em;\r
+ line-height: 1.6;\r
}\r
\r
-p {\r
- font-size: 100%;\r
- margin-bottom: 8px;\r
+li p {\r
+ margin: 0 0 0 0;\r
}\r
\r
-table {\r
- text-align: left;\r
+ul {\r
+ margin: 0 0 0 0;\r
padding: 0 0 0 0;\r
- min-width: 50%;\r
- border-spacing: 0;\r
- border: 0;\r
}\r
\r
-thead {\r
- background-color: #000;\r
- color: #fff;\r
- padding: 0 0 0 0;\r
+a:link, a:visited {\r
+ color: #19B6EE;\r
+ text-decoration: none;\r
}\r
\r
-tbody {\r
- padding: 0 0 0 0;\r
+a:hover {\r
+ text-decoration: underline;\r
}\r
\r
-th {\r
- padding: 0.25em 0.5em 0.25em 0.5em;\r
- font-style: normal;\r
+code, pre, tt {\r
+ font-family: "Ubuntu Mono","Courier New",Courier,monospace;\r
font-weight: normal;\r
+ color: #333333;\r
}\r
\r
-td {\r
- padding: 0.25em 0.25em 0em 0.25em;\r
+pre {\r
+ background: none repeat scroll 0 0 #e0e0e0;\r
+ border-radius: 4px;\r
+ padding: 0.5em 0.5em;\r
+ margin: 0 0 0 0;\r
+ white-space: pre-wrap;\r
+ word-wrap: break-word;\r
}\r
\r
-#chart {\r
- color: #000;\r
- font-style: normal;\r
- font-weight: normal;\r
+table {\r
width: 100%;\r
- height: 300px;\r
+ text-align: left;\r
}\r
\r
-ul#menu-list li {\r
- list-style: none;\r
+#footer {\r
+ margin: 0 0 0 0;\r
+ font-size: 0.8em;\r
+ font-weight: lighter;\r
+ clear: both;\r
+ text-align: right;\r
}\r
\r
-#menu-list {\r
- padding: 0 0 0 0;\r
+#page {\r
margin: 0 0 0 0;\r
+ padding: 0 0 0 0;\r
+}\r
+\r
+#main {\r
+ background: #ffffff;\r
+\r
+ -moz-box-sizing: border-box;\r
+\r
+ padding: 2em 2em 2em 2em;\r
+\r
+ -moz-border-radius: 4px;\r
+ -webkit-border-radius: 4px;\r
+ border-radius: 4px;\r
+\r
+ -webkit-box-shadow: 0 2px 2px 0 #C2C2C2;\r
+ box-shadow: 0 2px 2px 0 #C2C2C2;\r
}\r
\r
#menu {\r
+ background: #ffffff;\r
+ -moz-box-sizing: border-box;\r
+ padding: 2em 2em 2em 2em;\r
+\r
+ -moz-border-radius: 4px;\r
+ -webkit-border-radius: 4px;\r
+ border-radius: 4px;\r
+\r
+ -webkit-box-shadow: 0 2px 2px 0 #C2C2C2;\r
+ box-shadow: 0 2px 2px 0 #C2C2C2;\r
+}\r
+\r
+#menu-list, #menu-list > li > ul {\r
+ list-style-type: none;\r
+}\r
+\r
+/* menu on left col, content on right col */\r
+\r
+#menu {\r
float: left;\r
- width: 20%;\r
- padding: 0 0 0 0;\r
- margin: 0 0 0 0;\r
+ width: 18%;\r
}\r
\r
#main {\r
float: right;\r
width: 80%;\r
- padding: 0 0 0 0;\r
- margin: 0 0em 0 0;\r
}\r
\r
-em {\r
- font-weight: bold;\r
- font-style: normal;\r
-}\r
+/* asciidoc */\r
\r
-#uptime {\r
- font-weight: normal;\r
-}\r
+#toc, #content {\r
+ margin: 0em 0em 2em 0em;\r
\r
-#menu-list em {\r
- text-transform: uppercase;\r
-}\r
+ background: #ffffff;\r
+ -moz-box-sizing: border-box;\r
+ padding: 2em 2em 2em 2em;\r
\r
-#menu ul li {\r
- padding-bottom: 1em;\r
-}\r
+ -moz-border-radius: 4px;\r
+ -webkit-border-radius: 4px;\r
+ border-radius: 4px;\r
\r
-#menu-list ul li {\r
- padding: 0 0 0 0em;\r
+ -webkit-box-shadow: 0 2px 2px 0 #C2C2C2;\r
+ box-shadow: 0 2px 2px 0 #C2C2C2;\r
}\r
-\r
</style>\r
<script type="text/javascript">\r
/*<![CDATA[*/\r
<div id="footnotes"><hr /></div>\r
<div id="footer">\r
<div id="footer-text">\r
-Last updated 2013-05-12 17:54:35 CEST\r
+Last updated 2014-04-10 01:57:33 CEST\r
</div>\r
</div>\r
</body>\r
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="16"
- height="16"
- id="svg3920"
version="1.1"
- inkscape:version="0.48.1 r9760"
- sodipodi:docname="dark-psensor-hot-outline.svg">
+ width="22"
+ height="22"
+ id="svg3920">
<defs
id="defs3922" />
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="22.4"
- inkscape:cx="8.0517702"
- inkscape:cy="10.150813"
- inkscape:document-units="px"
- inkscape:current-layer="layer1"
- showgrid="false"
- inkscape:window-width="1068"
- inkscape:window-height="829"
- inkscape:window-x="461"
- inkscape:window-y="109"
- inkscape:window-maximized="0"
- showguides="true"
- inkscape:guide-bbox="true">
- <sodipodi:guide
- orientation="1,0"
- position="7.9910715,8.6160715"
- id="guide4142" />
- </sodipodi:namedview>
<metadata
id="metadata3925">
<rdf:RDF>
</cc:Work>
</rdf:RDF>
</metadata>
- <g
- inkscape:label="Layer 1"
- inkscape:groupmode="layer"
- id="layer1"
- transform="translate(0,-1036.3622)">
- <path
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.3;color:#000000;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
- d="m 7.1245753,1038.3895 c -1.4323258,0 -2.5937498,1.1614 -2.5937498,2.5938 l 0,6.9687 c -0.686446,0.6856 -1.1875,1.5722 -1.1875,2.625 0,2.0937 1.718759,3.8125 3.8124998,3.8125 2.093741,0 3.8125007,-1.7188 3.8125007,-3.8125 0,-1.0573 -0.523629,-1.9349 -1.2187507,-2.625 -7.17e-4,-0.7438 -9.27e-4,-1.3598 0,-2 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8125007,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8125007,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 3.43e-4,-0.3034 3.3e-5,-0.653 0,-0.9687 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8125007,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8125007,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 7e-6,-1.4538 -1.192674,-2.5938 -2.625,-2.5938 z m 0,2 c 0.27199,0 0.625001,0.3432 0.625,0.5938 0.01108,2.799 -0.0038,4.4747 0,7.2812 l 0,0.5313 0.4375,0.2812 c 0.472666,0.3299 0.78125,0.8867 0.78125,1.5 0,1.0129 -0.799639,1.8125 -1.8125,1.8125 -1.0128608,0 -1.8124998,-0.7996 -1.8124998,-1.8125 0,-0.6006 0.316404,-1.1338 0.78125,-1.4687 l 0.4062498,-0.3125 0,-0.5 0,-7.3125 c 0,-0.272 0.32176,-0.5938 0.59375,-0.5938 z"
- id="path3008-6-8-8-6-4-6"
- inkscape:connector-curvature="0" />
- <path
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ff0000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
- d="m 7.1245753,1036.3895 c -1.4323258,0 -2.5937498,1.1614 -2.5937498,2.5938 l 0,6.9687 c -0.686446,0.6856 -1.1875,1.5722 -1.1875,2.625 0,2.0937 1.718759,3.8125 3.8124998,3.8125 2.093741,0 3.8125007,-1.7188 3.8125007,-3.8125 0,-1.0573 -0.523629,-1.9349 -1.2187507,-2.625 -7.17e-4,-0.7438 -9.27e-4,-1.3598 0,-2 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8125007,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8125007,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 3.43e-4,-0.3034 3.3e-5,-0.653 0,-0.9687 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8125007,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8125007,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 7e-6,-1.4538 -1.192674,-2.5938 -2.625,-2.5938 z m 0,2 c 0.27199,0 0.625001,0.3432 0.625,0.5938 0.01108,2.799 -0.0038,4.4747 0,7.2812 l 0,0.5313 0.4375,0.2812 c 0.472666,0.3299 0.78125,0.8867 0.78125,1.5 0,1.0129 -0.799639,1.8125 -1.8125,1.8125 -1.0128608,0 -1.8124998,-0.7996 -1.8124998,-1.8125 0,-0.6006 0.316404,-1.1338 0.78125,-1.4687 l 0.4062498,-0.3125 0,-0.5 0,-7.3125 c 0,-0.272 0.32176,-0.5938 0.59375,-0.5938 z"
- id="path3008-6-8-8-7-4"
- inkscape:connector-curvature="0" />
- </g>
+ <path
+ d="M 10.067832,2 C 8.526949,2 7.2775,3.3065749 7.2775,4.9180249 l 0,7.8397861 C 6.539029,13.529111 6,14.52654 6,15.71094 6,18.066351 7.849024,20 10.10145,20 c 2.252426,0 4.101451,-1.933649 4.101451,-4.28906 0,-1.189463 -0.563315,-2.176763 -1.31112,-2.953129 -7.74e-4,-0.836771 -9.94e-4,-1.529771 0,-2.249995 a 1.0805074,1.1299329 0 0 0 0.06724,0 l 1.94987,0 a 1.0758978,1.1251123 0 1 0 0,-2.2500039 l -1.94987,0 a 1.0758978,1.1251123 0 0 0 -0.06724,0 c 3.69e-4,-0.3413246 3.5e-5,-0.7346246 0,-1.0897873 a 1.0805074,1.1299329 0 0 0 0.06724,0 l 1.94987,0 a 1.0758978,1.1251123 0 1 0 0,-2.2499999 l -1.94987,0 a 1.0758978,1.1251123 0 0 0 -0.06724,0 C 12.891788,3.2825 11.608714,2 10.067832,2 z m 0,2.2499999 c 0.292603,0 0.67237,0.3861 0.672369,0.668025 0.01189,3.1488749 -0.0041,5.0340358 0,8.1913521 l 0,0.597713 0.470658,0.31635 c 0.50849,0.371137 0.840461,0.997537 0.840461,1.6875 0,1.139511 -0.860244,2.03906 -1.94987,2.03906 -1.089626,0 -1.94987,-0.899549 -1.94987,-2.03906 0,-0.67568 0.340384,-1.275529 0.840461,-1.652289 l 0.43704,-0.351561 0,-0.5625 0,-8.2265651 c 0,-0.306 0.346146,-0.668025 0.638751,-0.668025 z"
+ id="path3008-6-89"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ff0000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
</svg>
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="16"
- height="16"
- id="svg3920"
version="1.1"
- inkscape:version="0.48.1 r9760"
- sodipodi:docname="light-psensor.svg">
+ width="22"
+ height="22"
+ id="svg3920">
<defs
id="defs3922" />
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="22.4"
- inkscape:cx="8.0517702"
- inkscape:cy="8.3650983"
- inkscape:document-units="px"
- inkscape:current-layer="layer1"
- showgrid="false"
- inkscape:window-width="1068"
- inkscape:window-height="829"
- inkscape:window-x="461"
- inkscape:window-y="109"
- inkscape:window-maximized="0"
- showguides="true"
- inkscape:guide-bbox="true">
- <sodipodi:guide
- orientation="1,0"
- position="7.9910715,8.6160715"
- id="guide4142" />
- </sodipodi:namedview>
<metadata
id="metadata3925">
<rdf:RDF>
</cc:Work>
</rdf:RDF>
</metadata>
- <g
- inkscape:label="Layer 1"
- inkscape:groupmode="layer"
- id="layer1"
- transform="translate(0,-1036.3622)">
- <path
- inkscape:connector-curvature="0"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.3;color:#000000;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
- d="m 7.1156467,1038.3979 c -1.4323263,0 -2.5937503,1.1614 -2.5937503,2.5938 l 0,6.9687 c -0.686446,0.6856 -1.1875,1.5722 -1.1875,2.625 0,2.0937 1.718759,3.8125 3.8125003,3.8125 2.093741,0 3.8125003,-1.7188 3.8125003,-3.8125 0,-1.0573 -0.523629,-1.9349 -1.2187503,-2.625 -7.2e-4,-0.7438 -9.24e-4,-1.3598 0,-2 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8125003,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8125003,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 3.43e-4,-0.3034 3.2e-5,-0.653 0,-0.9687 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8125003,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8125003,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 6e-6,-1.4538 -1.192674,-2.5938 -2.625,-2.5938 z m 0,2 c 0.27199,0 0.625001,0.3432 0.625,0.5938 0.01105,2.799 -0.0038,4.4747 0,7.2812 l 0,0.5313 0.4375,0.2812 c 0.472666,0.3299 0.78125,0.8867 0.78125,1.5 0,1.0129 -0.799639,1.8125 -1.8125,1.8125 -1.012861,0 -1.8125003,-0.7996 -1.8125003,-1.8125 0,-0.6006 0.316404,-1.1338 0.78125,-1.4687 l 0.4062503,-0.3125 0,-0.5 0,-7.3125 c 0,-0.272 0.32176,-0.5938 0.59375,-0.5938 z"
- id="path3008-6-89-2" />
- <path
- inkscape:connector-curvature="0"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#dfdbd2;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
- d="m 7.1156467,1036.3979 c -1.4323263,0 -2.5937503,1.1614 -2.5937503,2.5938 l 0,6.9687 c -0.686446,0.6856 -1.1875,1.5722 -1.1875,2.625 0,2.0937 1.718759,3.8125 3.8125003,3.8125 2.093741,0 3.8125003,-1.7188 3.8125003,-3.8125 0,-1.0573 -0.523629,-1.9349 -1.2187503,-2.625 -7.2e-4,-0.7438 -9.24e-4,-1.3598 0,-2 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8125003,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8125003,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 3.43e-4,-0.3034 3.2e-5,-0.653 0,-0.9687 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8125003,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8125003,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 6e-6,-1.4538 -1.192674,-2.5938 -2.625,-2.5938 z m 0,2 c 0.27199,0 0.625001,0.3432 0.625,0.5938 0.01105,2.799 -0.0038,4.4747 0,7.2812 l 0,0.5313 0.4375,0.2812 c 0.472666,0.3299 0.78125,0.8867 0.78125,1.5 0,1.0129 -0.799639,1.8125 -1.8125,1.8125 -1.012861,0 -1.8125003,-0.7996 -1.8125003,-1.8125 0,-0.6006 0.316404,-1.1338 0.78125,-1.4687 l 0.4062503,-0.3125 0,-0.5 0,-7.3125 c 0,-0.272 0.32176,-0.5938 0.59375,-0.5938 z"
- id="path3008-6-89" />
- </g>
+ <path
+ d="M 10.067832,2 C 8.526949,2 7.2775,3.3065749 7.2775,4.9180249 l 0,7.8397861 C 6.539029,13.529111 6,14.52654 6,15.71094 6,18.066351 7.849024,20 10.10145,20 c 2.252426,0 4.101451,-1.933649 4.101451,-4.28906 0,-1.189463 -0.563315,-2.176763 -1.31112,-2.953129 -7.74e-4,-0.836771 -9.94e-4,-1.529771 0,-2.249995 a 1.0805074,1.1299329 0 0 0 0.06724,0 l 1.94987,0 a 1.0758978,1.1251123 0 1 0 0,-2.2500039 l -1.94987,0 a 1.0758978,1.1251123 0 0 0 -0.06724,0 c 3.69e-4,-0.3413246 3.5e-5,-0.7346246 0,-1.0897873 a 1.0805074,1.1299329 0 0 0 0.06724,0 l 1.94987,0 a 1.0758978,1.1251123 0 1 0 0,-2.2499999 l -1.94987,0 a 1.0758978,1.1251123 0 0 0 -0.06724,0 C 12.891788,3.2825 11.608714,2 10.067832,2 z m 0,2.2499999 c 0.292603,0 0.67237,0.3861 0.672369,0.668025 0.01189,3.1488749 -0.0041,5.0340358 0,8.1913521 l 0,0.597713 0.470658,0.31635 c 0.50849,0.371137 0.840461,0.997537 0.840461,1.6875 0,1.139511 -0.860244,2.03906 -1.94987,2.03906 -1.089626,0 -1.94987,-0.899549 -1.94987,-2.03906 0,-0.67568 0.340384,-1.275529 0.840461,-1.652289 l 0.43704,-0.351561 0,-0.5625 0,-8.2265651 c 0,-0.306 0.346146,-0.668025 0.638751,-0.668025 z"
+ id="path3008-6-89"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#dfdbd2;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
</svg>
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="16"
- height="16"
- id="svg3920"
version="1.1"
- inkscape:version="0.48.1 r9760"
- sodipodi:docname="New document 5">
+ width="22"
+ height="22"
+ id="svg3920">
<defs
id="defs3922" />
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="11.2"
- inkscape:cx="1.0112379"
- inkscape:cy="11.731267"
- inkscape:document-units="px"
- inkscape:current-layer="layer1"
- showgrid="false"
- inkscape:window-width="1068"
- inkscape:window-height="829"
- inkscape:window-x="411"
- inkscape:window-y="49"
- inkscape:window-maximized="0" />
<metadata
id="metadata3925">
<rdf:RDF>
</cc:Work>
</rdf:RDF>
</metadata>
- <g
- inkscape:label="Layer 1"
- inkscape:groupmode="layer"
- id="layer1"
- transform="translate(0,-1036.3622)">
- <path
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.3;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
- d="m 7.2049299,1038.3979 c -1.432326,0 -2.59375,1.1614 -2.59375,2.5938 l 0,6.9687 c -0.686446,0.6856 -1.1875,1.5722 -1.1875,2.625 0,2.0937 1.718759,3.8125 3.8125,3.8125 2.0937367,0 3.8124941,-1.7188 3.8124941,-3.8125 0,-1.0573 -0.523629,-1.9349 -1.2187496,-2.625 -7.17e-4,-0.7438 -9.27e-4,-1.3598 0,-2 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8124996,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8124996,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 3.43e-4,-0.3034 3.3e-5,-0.653 0,-0.9687 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8124996,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8124996,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 7e-6,-1.4538 -1.1926713,-2.5938 -2.6249945,-2.5938 z m 0,2 c 0.27199,0 0.625,0.3432 0.624999,0.5938 0.01108,2.799 -0.0038,4.4747 0,7.2812 l 0,0.5313 0.437499,0.2812 c 0.472665,0.3299 0.7812483,0.8867 0.7812483,1.5 0,1.0129 -0.7996372,1.8125 -1.8124963,1.8125 -1.012861,0 -1.8125,-0.7996 -1.8125,-1.8125 0,-0.6006 0.316404,-1.1338 0.78125,-1.4687 l 0.40625,-0.3125 0,-0.5 0,-7.3125 c 0,-0.272 0.32176,-0.5938 0.59375,-0.5938 z"
- id="path3008-6-8-8-6-4-4-8"
- inkscape:connector-curvature="0" />
- <path
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ff0000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
- d="m 7.2049299,1036.3979 c -1.432326,0 -2.59375,1.1614 -2.59375,2.5938 l 0,6.9687 c -0.686446,0.6856 -1.1875,1.5722 -1.1875,2.625 0,2.0937 1.718759,3.8125 3.8125,3.8125 2.0937367,0 3.8124941,-1.7188 3.8124941,-3.8125 0,-1.0573 -0.523629,-1.9349 -1.2187496,-2.625 -7.17e-4,-0.7438 -9.27e-4,-1.3598 0,-2 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8124996,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8124996,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 3.43e-4,-0.3034 3.3e-5,-0.653 0,-0.9687 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8124996,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8124996,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 7e-6,-1.4538 -1.1926713,-2.5938 -2.6249945,-2.5938 z m 0,2 c 0.27199,0 0.625,0.3432 0.624999,0.5938 0.01108,2.799 -0.0038,4.4747 0,7.2812 l 0,0.5313 0.437499,0.2812 c 0.472665,0.3299 0.7812483,0.8867 0.7812483,1.5 0,1.0129 -0.7996372,1.8125 -1.8124963,1.8125 -1.012861,0 -1.8125,-0.7996 -1.8125,-1.8125 0,-0.6006 0.316404,-1.1338 0.78125,-1.4687 l 0.40625,-0.3125 0,-0.5 0,-7.3125 c 0,-0.272 0.32176,-0.5938 0.59375,-0.5938 z"
- id="path3008-6-8-8-7-7-8"
- inkscape:connector-curvature="0" />
- </g>
+ <path
+ d="M 10.067832,2 C 8.526949,2 7.2775,3.3065749 7.2775,4.9180249 l 0,7.8397861 C 6.539029,13.529111 6,14.52654 6,15.71094 6,18.066351 7.849024,20 10.10145,20 c 2.252426,0 4.101451,-1.933649 4.101451,-4.28906 0,-1.189463 -0.563315,-2.176763 -1.31112,-2.953129 -7.74e-4,-0.836771 -9.94e-4,-1.529771 0,-2.249995 a 1.0805074,1.1299329 0 0 0 0.06724,0 l 1.94987,0 a 1.0758978,1.1251123 0 1 0 0,-2.2500039 l -1.94987,0 a 1.0758978,1.1251123 0 0 0 -0.06724,0 c 3.69e-4,-0.3413246 3.5e-5,-0.7346246 0,-1.0897873 a 1.0805074,1.1299329 0 0 0 0.06724,0 l 1.94987,0 a 1.0758978,1.1251123 0 1 0 0,-2.2499999 l -1.94987,0 a 1.0758978,1.1251123 0 0 0 -0.06724,0 C 12.891788,3.2825 11.608714,2 10.067832,2 z m 0,2.2499999 c 0.292603,0 0.67237,0.3861 0.672369,0.668025 0.01189,3.1488749 -0.0041,5.0340358 0,8.1913521 l 0,0.597713 0.470658,0.31635 c 0.50849,0.371137 0.840461,0.997537 0.840461,1.6875 0,1.139511 -0.860244,2.03906 -1.94987,2.03906 -1.089626,0 -1.94987,-0.899549 -1.94987,-2.03906 0,-0.67568 0.340384,-1.275529 0.840461,-1.652289 l 0.43704,-0.351561 0,-0.5625 0,-8.2265651 c 0,-0.306 0.346146,-0.668025 0.638751,-0.668025 z"
+ id="path3008-6-89"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ff0000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
</svg>
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="16"
- height="16"
- id="svg3920"
version="1.1"
- inkscape:version="0.48.1 r9760"
- sodipodi:docname="light-psensor.svg">
+ width="22"
+ height="22"
+ id="svg3920">
<defs
id="defs3922" />
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="22.4"
- inkscape:cx="1.3932195"
- inkscape:cy="7.3766084"
- inkscape:document-units="px"
- inkscape:current-layer="layer1"
- showgrid="false"
- inkscape:window-width="1068"
- inkscape:window-height="829"
- inkscape:window-x="495"
- inkscape:window-y="94"
- inkscape:window-maximized="0" />
<metadata
id="metadata3925">
<rdf:RDF>
</cc:Work>
</rdf:RDF>
</metadata>
- <g
- inkscape:label="Layer 1"
- inkscape:groupmode="layer"
- id="layer1"
- transform="translate(0,-1036.3622)">
- <path
- inkscape:connector-curvature="0"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.3;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
- d="m 7.1156462,1038.3979 c -1.432326,0 -2.59375,1.1614 -2.59375,2.5938 l 0,6.9687 c -0.686446,0.6856 -1.1874999,1.5722 -1.1874999,2.625 0,2.0937 1.7187589,3.8125 3.8124999,3.8125 2.093741,0 3.8124988,-1.7188 3.8124988,-3.8125 0,-1.0573 -0.523629,-1.9349 -1.2187494,-2.625 -7.2e-4,-0.7438 -9.24e-4,-1.3598 0,-2 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8124994,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8124994,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 3.43e-4,-0.3034 3.2e-5,-0.653 0,-0.9687 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8124994,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8124994,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 6e-6,-1.4538 -1.1926734,-2.5938 -2.6249994,-2.5938 z m 0,2 c 0.27199,0 0.625001,0.3432 0.625,0.5938 0.01105,2.799 -0.0038,4.4747 0,7.2812 l 0,0.5313 0.4375,0.2812 c 0.472666,0.3299 0.78125,0.8867 0.78125,1.5 0,1.0129 -0.799639,1.8125 -1.8125,1.8125 -1.012861,0 -1.8125,-0.7996 -1.8125,-1.8125 0,-0.6006 0.316404,-1.1338 0.78125,-1.4687 l 0.40625,-0.3125 0,-0.5 0,-7.3125 c 0,-0.272 0.32176,-0.5938 0.59375,-0.5938 z"
- id="path3008-6-89-2-4" />
- <path
- inkscape:connector-curvature="0"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3c3c3c;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
- d="m 7.1156462,1036.3979 c -1.432326,0 -2.59375,1.1614 -2.59375,2.5938 l 0,6.9687 c -0.686446,0.6856 -1.1874999,1.5722 -1.1874999,2.625 0,2.0937 1.7187589,3.8125 3.8124999,3.8125 2.093741,0 3.8124988,-1.7188 3.8124988,-3.8125 0,-1.0573 -0.523629,-1.9349 -1.2187494,-2.625 -7.2e-4,-0.7438 -9.24e-4,-1.3598 0,-2 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8124994,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8124994,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 3.43e-4,-0.3034 3.2e-5,-0.653 0,-0.9687 a 1.0043849,1.0043849 0 0 0 0.0625,0 l 1.8124994,0 a 1.0001,1.0001 0 1 0 0,-2 l -1.8124994,0 a 1.0001,1.0001 0 0 0 -0.0625,0 c 6e-6,-1.4538 -1.1926734,-2.5938 -2.6249994,-2.5938 z m 0,2 c 0.27199,0 0.625001,0.3432 0.625,0.5938 0.01105,2.799 -0.0038,4.4747 0,7.2812 l 0,0.5313 0.4375,0.2812 c 0.472666,0.3299 0.78125,0.8867 0.78125,1.5 0,1.0129 -0.799639,1.8125 -1.8125,1.8125 -1.012861,0 -1.8125,-0.7996 -1.8125,-1.8125 0,-0.6006 0.316404,-1.1338 0.78125,-1.4687 l 0.40625,-0.3125 0,-0.5 0,-7.3125 c 0,-0.272 0.32176,-0.5938 0.59375,-0.5938 z"
- id="path3008-6-89-9" />
- </g>
+ <path
+ d="M 10.067832,2 C 8.526949,2 7.2775,3.3065749 7.2775,4.9180249 l 0,7.8397861 C 6.539029,13.529111 6,14.52654 6,15.71094 6,18.066351 7.849024,20 10.10145,20 c 2.252426,0 4.101451,-1.933649 4.101451,-4.28906 0,-1.189463 -0.563315,-2.176763 -1.31112,-2.953129 -7.74e-4,-0.836771 -9.94e-4,-1.529771 0,-2.249995 a 1.0805074,1.1299329 0 0 0 0.06724,0 l 1.94987,0 a 1.0758978,1.1251123 0 1 0 0,-2.2500039 l -1.94987,0 a 1.0758978,1.1251123 0 0 0 -0.06724,0 c 3.69e-4,-0.3413246 3.5e-5,-0.7346246 0,-1.0897873 a 1.0805074,1.1299329 0 0 0 0.06724,0 l 1.94987,0 a 1.0758978,1.1251123 0 1 0 0,-2.2499999 l -1.94987,0 a 1.0758978,1.1251123 0 0 0 -0.06724,0 C 12.891788,3.2825 11.608714,2 10.067832,2 z m 0,2.2499999 c 0.292603,0 0.67237,0.3861 0.672369,0.668025 0.01189,3.1488749 -0.0041,5.0340358 0,8.1913521 l 0,0.597713 0.470658,0.31635 c 0.50849,0.371137 0.840461,0.997537 0.840461,1.6875 0,1.139511 -0.860244,2.03906 -1.94987,2.03906 -1.089626,0 -1.94987,-0.899549 -1.94987,-2.03906 0,-0.67568 0.340384,-1.275529 0.840461,-1.652289 l 0.43704,-0.351561 0,-0.5625 0,-8.2265651 c 0,-0.306 0.346146,-0.668025 0.638751,-0.668025 z"
+ id="path3008-6-89"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3c3c3c;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
</svg>
# German translations for psensor package.
# Copyright (C) 2012 Free Software Foundation, Inc.
# This file is distributed under the same license as the psensor package.
-# <jeanfi@gmail.com>, 2012.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor 0.7.0.x\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
-"PO-Revision-Date: 2013-05-20 21:13+0000\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
+"PO-Revision-Date: 2013-10-20 09:56+0000\n"
"Last-Translator: Dennis Baudys <Unknown>\n"
"Language-Team: German\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-10-18 06:32+0000\n"
-"X-Generator: Launchpad (build 16799)\n"
+"X-Launchpad-Export-Date: 2014-02-11 20:01+0000\n"
+"X-Generator: Launchpad (build 16916)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "Info"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Einstellungen"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Sensoreinstellungen"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Beenden"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Sensoreinstellungen"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Anzeigen"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr "Psensor – Temperaturüberwachung"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr "_Psensor"
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "_Hilfe"
#: src/glade/psensor-pref.glade:718
msgid "Script executed when an alarm is raised"
-msgstr ""
+msgstr "Bei Alarm auszuführendes Skript"
#: src/glade/psensor-pref.glade:751
msgid "Sensors"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
-"Copyright © 2010-2013\n"
+"Copyright © 2010-2014\n"
"jeanfi@gmail.com"
#: src/ui.c:90
msgid "Color"
msgstr "Farbe"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "_Anzeigen"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Anzeigen"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Einstellungen"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "_Sensoreinstellungen"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "Sensoreinstellungen"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "_Info"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Beenden"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "Erstellen der Menüs ist gescheitert: %s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "gettimeofday ist gescheitert."
msgid "Unknown"
msgstr "Unbekannt"
-#~ msgid "Sensor Name"
-#~ msgstr "Sensor-Name"
+#~ msgid "_Show"
+#~ msgstr "_Anzeigen"
+
+#~ msgid "_Preferences"
+#~ msgstr "_Einstellungen"
+
+#~ msgid "S_ensor Preferences"
+#~ msgstr "_Sensoreinstellungen"
-#~ msgid "Enabled"
-#~ msgstr "Aktiviert"
+#~ msgid "SensorPreferences"
+#~ msgstr "Sensoreinstellungen"
-#, fuzzy
-#~ msgid "Enable log of measures"
-#~ msgstr "Menü aktivieren"
+#~ msgid "_About"
+#~ msgstr "_Info"
-#, fuzzy
-#~ msgid "slog_init: cannot open sensor log file: %s"
-#~ msgstr "Protokolldatei kann nicht geöffnet werden: %s"
+#~ msgid "_Quit"
+#~ msgstr "_Beenden"
-#, fuzzy
-#~ msgid "Enable indicator"
-#~ msgstr "Aktiviert"
+#~ msgid "building menus failed: %s"
+#~ msgstr "Erstellen der Menüs ist gescheitert: %s"
# Spanish translation for psensor
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the psensor package.
-# Jean-Philippe Orsini <jeanfi@gmail.com> 2012.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2013-05-12 22:16+0000\n"
"Last-Translator: Javier <buik8roadmaster@hotmail.com>\n"
"Language-Team: Spanish <es@li.org>\n"
"X-Launchpad-Export-Date: 2013-10-18 06:32+0000\n"
"X-Generator: Launchpad (build 16799)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "Acerca de"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Ajustes"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Ajustes de los Sensores"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Salir"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Ajustes de los Sensores"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Mostrar"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr "Psensor - Monitor de temperatura"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr "_Psensor"
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "_Ayuda"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
#: src/ui.c:90
msgid "Color"
msgstr "Color"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "_Mostrar"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Mostrar"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Ajustes"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "Ajust_es del sensores"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "Ajustes del sensor"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "_Acerca de"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Salir"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "Error al construir los menús :%s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "Error en la adquisición del horario."
#: src/ui_sensorpref.c:248
msgid "Unknown"
msgstr "Desconocido"
+
+#~ msgid "_Show"
+#~ msgstr "_Mostrar"
+
+#~ msgid "_Preferences"
+#~ msgstr "_Ajustes"
+
+#~ msgid "S_ensor Preferences"
+#~ msgstr "Ajust_es del sensores"
+
+#~ msgid "SensorPreferences"
+#~ msgstr "Ajustes del sensor"
+
+#~ msgid "_About"
+#~ msgstr "_Acerca de"
+
+#~ msgid "_Quit"
+#~ msgstr "_Salir"
+
+#~ msgid "building menus failed: %s"
+#~ msgstr "Error al construir los menús :%s"
+
+#~ msgid ""
+#~ "Copyright(c) 2010-2012\n"
+#~ "jeanfi@gmail.com"
+#~ msgstr ""
+#~ "Copyright(c) 2010-2012\n"
+#~ "jeanfi@gmail.com"
+
+#~ msgid "Enabled"
+#~ msgstr "Activado."
+
+#~ msgid "Sensor Name"
+#~ msgstr "Nombre del sensor"
+
+#~ msgid ""
+#~ "Copyright (C) %s wpitchoune@gmail.com\n"
+#~ "License GPLv2: GNU GPL version 2 or later <http://www.gnu.org/licenses/"
+#~ "old-licenses/gpl-2.0.html>\n"
+#~ "This is free software: you are free to change and redistribute it.\n"
+#~ "There is NO WARRANTY, to the extent permitted by law.\n"
+#~ msgstr ""
+#~ "Copyright © %s wpitchoune@gmail.com\n"
+#~ "Licencia GPLv2: GNU GPL versión 2 o posterior <http://www.gnu.org/"
+#~ "licenses/old-licenses/gpl-2.0.html>\n"
+#~ "Esto es software libre: es libre de modificarlo y redistribuirlo.\n"
+#~ "NO HAY GARANTÍA, en la medida en que lo permita la ley.\n"
+
+#~ msgid "Current"
+#~ msgstr "Actual"
+
+#~ msgid "Left"
+#~ msgstr "Izquierda"
+
+#~ msgid "Bottom"
+#~ msgstr "Abajo"
+
+#~ msgid "Temperature limit:"
+#~ msgstr "Límite de temperatura:"
+
+#~ msgid "Right"
+#~ msgstr "Derecha"
+
+#~ msgid "Top"
+#~ msgstr "Arriba"
# Oriya translations for psensor package.
# Copyright (C) 2011 Free Software Foundation, Inc.
# This file is distributed under the same license as the psensor package.
-# Jean-Philippe Orsini <jeanfi@gmail.com>, 2011, 2012.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2013-06-29 15:14+0000\n"
"Last-Translator: londumas <helion331990@gmail.com>\n"
"Language-Team: French <>\n"
"X-Launchpad-Export-Date: 2013-10-18 06:32+0000\n"
"X-Generator: Launchpad (build 16799)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "À propos"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Préférences"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Préférences des capteurs"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Quitter"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Préférences des capteurs"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Afficher"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
-msgstr "Psensor - Surveillance Des Températures"
+msgstr "Psensor - Surveillance des températures"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr ""
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "_Aide"
#: src/glade/psensor-pref.glade:72
msgid "Position of sensors table:"
-msgstr "Position de la table des capteurs:"
+msgstr "Position de la table des capteurs :"
#: src/glade/psensor-pref.glade:81
msgid "Hide window decoration"
#: src/glade/psensor-pref.glade:186
msgid "Temperature unit:"
-msgstr "Unité de température:"
+msgstr "Unité de température :"
#: src/glade/psensor-pref.glade:238
msgid "Interface"
#: src/glade/psensor-pref.glade:276
msgid "Foreground:"
-msgstr "Avant-plan:"
+msgstr "Avant-plan :"
#: src/glade/psensor-pref.glade:291
msgid "Background:"
-msgstr "Arrière-plan:"
+msgstr "Arrière-plan :"
#: src/glade/psensor-pref.glade:325
msgid "Background opacity:"
#: src/glade/psensor-pref.glade:419
msgid "Monitoring duration:"
-msgstr "Durée de surveillance:"
+msgstr "Durée de surveillance :"
#: src/glade/psensor-pref.glade:457
msgid "minute(s)"
#: src/glade/psensor-pref.glade:510
msgid "Update interval:"
-msgstr "Intervalle de mise à jour:"
+msgstr "Intervalle de mise à jour :"
#: src/glade/psensor-pref.glade:528
msgid "Measures"
#: src/glade/psensor-pref.glade:588
msgid "Measure update interval:"
-msgstr "Intervalle de mise à jour des mesures:"
+msgstr "Intervalle de mise à jour des mesures :"
#: src/glade/psensor-pref.glade:637
msgid "Enable sensors logging"
#: src/glade/sensor-edit.glade:138
msgid "Type:"
-msgstr "Type :"
+msgstr "Type :"
#: src/glade/sensor-edit.glade:153 src/glade/sensor-edit.glade:294
#: src/glade/sensor-edit.glade:388 src/glade/sensor-edit.glade:459
#: src/glade/sensor-edit.glade:187
msgid "Color:"
-msgstr "Couleur:"
+msgstr "Couleur :"
#: src/glade/sensor-edit.glade:201
msgid "Alarm"
#: src/glade/sensor-edit.glade:333
msgid "High threshold:"
-msgstr "Seuil supérieur:"
+msgstr "Seuil supérieur :"
#: src/glade/sensor-edit.glade:348
msgid "Low threshold:"
-msgstr "Seuil inférieur:"
+msgstr "Seuil inférieur :"
#: src/glade/sensor-edit.glade:409
msgid "Ubuntu Application Indicator"
#: src/glade/sensor-edit.glade:489
msgid "Id:"
-msgstr "Id:"
+msgstr "Id :"
#: src/glade/sensor-edit.glade:523
msgid "Details"
#: src/glade/sensor-edit.glade:541
msgid "Name:"
-msgstr "Nom:"
+msgstr "Nom :"
#: src/lib/amd.c:170
msgid "AMD: cannot found ADL library."
-msgstr "AMD: impossible de trouver la bibliothèque ADL."
+msgstr "AMD : impossible de trouver la bibliothèque ADL."
#: src/lib/amd.c:197
msgid "AMD: missing ADL's API."
-msgstr "AMD: L'interface de programmation ADL est manquante."
+msgstr "AMD : L'interface de programmation ADL est manquante."
#: src/lib/amd.c:207
msgid "AMD: failed to initialize ADL."
-msgstr "AMD: échec de l'initialisation d'ADL."
+msgstr "AMD : échec de l'initialisation d'ADL."
#: src/lib/amd.c:213
msgid "AMD: cannot get the number of adapters."
-msgstr "AMD: impossible de récupérer le nombre d'adaptateurs."
+msgstr "AMD : impossible de récupérer le nombre d'adaptateurs."
#: src/lib/amd.c:252
#, c-format
#: src/lib/hdd_atasmart.c:152
#, c-format
msgid "atasmart: sk_disk_open() failure: %s."
-msgstr "atasmart: échec de sk_disk_open(): %s."
+msgstr "atasmart : échec de sk_disk_open() : %s."
#: src/lib/hdd_hddtemp.c:59
+#, fuzzy
msgid "hddtemp: failed to open socket."
-msgstr "hddtemp: échec d'ouverture de l'interface de connexion."
+msgstr "hddtemp : échec d'ouverture de l'interface de connexion."
#: src/lib/hdd_hddtemp.c:72
msgid "hddtemp: failed to open connection."
-msgstr "hddtemp: échec de l'ouverture de la connexion."
+msgstr "hddtemp : échec de l'ouverture de la connexion."
#: src/lib/hdd_hddtemp.c:186 src/lib/hdd_hddtemp.c:256
#, c-format
msgid "hddtemp: wrong string: %s."
-msgstr "hddtemp: mauvaise chaîne: %s."
+msgstr "hddtemp : mauvaise chaîne: %s."
#: src/lib/lmsensor.c:42
#, c-format
msgid "lmsensor: cannot get value of subfeature %s: %s."
msgstr ""
-"lmsensor: impossible de récupérer la valeur de la sous-fonction %s: %s."
+"lmsensor : impossible de récupérer la valeur de la sous-fonction %s: %s."
#: src/lib/lmsensor.c:123
msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
-msgstr "lmsensor: échec de lmsensor_psensor_create : mauvais type de fonction."
+msgstr ""
+"lmsensor : échec de lmsensor_psensor_create : mauvais type de fonction."
#: src/lib/lmsensor.c:218
#, c-format
msgid "lmsensor: initialization failure: %s."
-msgstr "lmsensor: échec de l'initialisation: %s."
+msgstr "lmsensor : échec de l'initialisation: %s."
#: src/lib/log.c:43
#, c-format
#: src/lib/psensor.c:482 tests/test_psensor_type_to_unit_str.c:62
msgid "RPM"
-msgstr "Tr/min"
+msgstr "Tr/mn"
#: src/lib/psensor.c:484
msgid "%"
#: src/lib/slog.c:87
#, fuzzy, c-format
msgid "Cannot open sensor log file: %s."
-msgstr "Ne peut ouvrir le journal : %s."
+msgstr "Ne peut ouvrir le journal : %s."
#: src/lib/slog.c:118
msgid "Sensor log file not open."
#: src/main.c:88 src/server/server.c:94
#, c-format
msgid "Usage: %s [OPTION]...\n"
-msgstr "Utilisation: %s [OPTION]...\n"
+msgstr "Utilisation : %s [OPTION]...\n"
#: src/main.c:90
msgid ""
#: src/main.c:94
msgid "Options:"
-msgstr "Options:"
+msgstr "Options :"
#: src/main.c:95
msgid ""
#: src/rsensor.c:107
#, c-format
msgid "Fail to connect to: %s"
-msgstr "Échec de la connexion à: %s"
+msgstr "Échec de la connexion à : %s"
#: src/rsensor.c:144
#, c-format
msgid "Invalid content: %s"
-msgstr "Contenu invalide: %s"
+msgstr "Contenu invalide : %s"
#: src/rsensor.c:184
#, c-format
msgid "Invalid JSON: %s"
-msgstr "JSON invalide: %s"
+msgstr "JSON invalide : %s"
#: src/server/server.c:54
msgid "<html><body><p>Server stop requested</p></body></html>"
#: src/server/server.c:297
#, c-format
msgid "HTTP Request: %s"
-msgstr "Requête HTTP: %s"
+msgstr "Requête HTTP : %s"
#: src/server/server.c:360
#, c-format
#: src/server/server.c:414
#, c-format
msgid "WWW directory: %s"
-msgstr "WWW répertoire: %s"
+msgstr "WWW répertoire : %s"
#: src/server/server.c:415
#, c-format
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
-"Copyright © 2010-2013\n"
+"Copyright © 2010-2014\n"
"jeanfi@gmail.com"
#: src/ui.c:90
msgid "Color"
msgstr "Couleur"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "_Afficher"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Afficher"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Préférences"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "Préférences des capteurs"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "Configuration des capteurs"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "À _propos"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Quitter"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "La construction des menus a échouée: %s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "Échec de gettimeofday."
msgid "Unknown"
msgstr "Inconnu"
-#~ msgid "Sensor Name"
-#~ msgstr "Nom de la Sonde"
+#~ msgid "_Show"
+#~ msgstr "_Afficher"
-#~ msgid "Enabled"
-#~ msgstr "Activé"
+#~ msgid "_Preferences"
+#~ msgstr "_Préférences"
-#, fuzzy
-#~ msgid "Enable log of measures"
-#~ msgstr "Activer le menu"
+#~ msgid "S_ensor Preferences"
+#~ msgstr "Préférences des capteurs"
-#, fuzzy
-#~ msgid "slog_init: cannot open sensor log file: %s"
-#~ msgstr "Impossible d'ouvrir le journal: %s"
+#~ msgid "SensorPreferences"
+#~ msgstr "Configuration des capteurs"
-#, fuzzy
-#~ msgid "slog_init: gettimeofday failed."
-#~ msgstr "Échec de gettimeofday."
+#~ msgid "_About"
+#~ msgstr "À _propos"
-#, fuzzy
-#~ msgid "slog_write_sensors: gettimeofday failed."
-#~ msgstr "Échec de gettimeofday."
+#~ msgid "_Quit"
+#~ msgstr "_Quitter"
-#, fuzzy
-#~ msgid "Enable indicator"
-#~ msgstr "Activée"
+#~ msgid "building menus failed: %s"
+#~ msgstr "La construction des menus a échouée : %s"
# Hungarian translation for psensor
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the psensor package.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
# Lukács Bence <lukacs.bence1 at gmail dot com>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2012-10-29 09:41+0000\n"
"Last-Translator: Bence Lukács <Unknown>\n"
"Language-Team: Hungarian <gnome-hu-list-request@gnome.org>\n"
"X-Launchpad-Export-Date: 2013-01-21 09:32+0000\n"
"X-Generator: Launchpad (build 16430)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "Névjegy"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Beállítások"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Érzékelő beállításai"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Kilépés"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Érzékelő beállításai"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Megjelenítés"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr "Psensor - hőmérsékletfigyelő"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr ""
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "_Súgó"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
#: src/ui.c:90
msgid "Color"
msgstr "Szín"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "_Megjelenítés"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Megjelenítés"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Beállítások"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "_Érzékelő beállításai"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "Érzékelőbeállítások"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "_Névjegy"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Kilépés"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "menük építése meghiúsult: %s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "gettimeofday meghiúsult."
msgid "Unknown"
msgstr "Ismeretlen"
+#~ msgid "_Show"
+#~ msgstr "_Megjelenítés"
+
+#~ msgid "_Preferences"
+#~ msgstr "_Beállítások"
+
+#~ msgid "S_ensor Preferences"
+#~ msgstr "_Érzékelő beállításai"
+
+#~ msgid "SensorPreferences"
+#~ msgstr "Érzékelőbeállítások"
+
+#~ msgid "_About"
+#~ msgstr "_Névjegy"
+
+#~ msgid "_Quit"
+#~ msgstr "_Kilépés"
+
+#~ msgid "building menus failed: %s"
+#~ msgstr "menük építése meghiúsult: %s"
+
#~ msgid "Sensor Name"
#~ msgstr "Érzékelő neve"
# Italian translations for psensor package.
# Copyright (C) 2012 Free Software Foundation, Inc.
# This file is distributed under the same license as the psensor package.
-# <jeanfi@gmail.com>, 2012.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor 0.7.0.x\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2013-04-14 16:06+0000\n"
"Last-Translator: Diego Pierotto <Unknown>\n"
"Language-Team: Italian\n"
"X-Launchpad-Export-Date: 2013-04-20 08:36+0000\n"
"X-Generator: Launchpad (build 16567)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "Informazioni su..."
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Preferenze"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Sensor Preferenze"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Esci"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Sensor Preferenze"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Mostra"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr "Psensor - Monitor temperatura"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr "_Psensor"
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "_Aiuto"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
#: src/ui.c:90
msgid "Color"
msgstr "Colore"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "_Mostra"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Mostra"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Preferenze"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "S_ensor Preferenze"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "SensorPreferenze"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "_Informazioni"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Esci"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "costruzione dei menù fallita: %s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "gettimeofday fallito."
msgid "Unknown"
msgstr "Sconosciuto"
+#~ msgid "_Show"
+#~ msgstr "_Mostra"
+
+#~ msgid "_Preferences"
+#~ msgstr "_Preferenze"
+
+#~ msgid "S_ensor Preferences"
+#~ msgstr "S_ensor Preferenze"
+
+#~ msgid "SensorPreferences"
+#~ msgstr "SensorPreferenze"
+
+#~ msgid "_About"
+#~ msgstr "_Informazioni"
+
+#~ msgid "_Quit"
+#~ msgstr "_Esci"
+
+#~ msgid "building menus failed: %s"
+#~ msgstr "costruzione dei menù fallita: %s"
+
#~ msgid "Sensor Name"
#~ msgstr "Nome sensore"
# Latvian translation for psensor
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the psensor package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
-"PO-Revision-Date: 2013-05-01 09:48+0000\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
+"PO-Revision-Date: 2013-10-24 12:32+0000\n"
"Last-Translator: tuxmaniack <Unknown>\n"
"Language-Team: Latvian <lv@li.org>\n"
"Language: lv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-05-20 08:44+0000\n"
-"X-Generator: Launchpad (build 16626)\n"
+"X-Launchpad-Export-Date: 2014-02-11 20:01+0000\n"
+"X-Generator: Launchpad (build 16916)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "Par"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Iestatījumi"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Sensoru iestatījumi"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Iziet"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Sensoru iestatījumi"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Rādīt"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr "Psensor - temperatūras pārraugs"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr "_Psensor"
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "_Palīdzība"
#: src/glade/psensor-pref.glade:718
msgid "Script executed when an alarm is raised"
-msgstr ""
+msgstr "Skrips izpildīts, kad trauksme ir aktivizēta"
#: src/glade/psensor-pref.glade:751
msgid "Sensors"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
-"Autortiesības(c) 2010-2013\n"
+"Autortiesības(c) 2010-2014\n"
"jeanfi@gmail.com"
#: src/ui.c:90
msgid "Color"
msgstr "Krāsa"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "_Rādīt"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Rādīt"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Iestatījumi"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "S_ensoru iestatījumi"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "SensoraIestatījumi"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "P_ar"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Iziet"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "neizdevās izveidot izvēlnes: %s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "gettimeofday neizdevās."
msgid "Unknown"
msgstr "Nezināms"
-#~ msgid "Sensor Name"
-#~ msgstr "Sensora nosaukums"
+#~ msgid "_Show"
+#~ msgstr "_Rādīt"
+
+#~ msgid "_Preferences"
+#~ msgstr "_Iestatījumi"
+
+#~ msgid "S_ensor Preferences"
+#~ msgstr "S_ensoru iestatījumi"
+
+#~ msgid "SensorPreferences"
+#~ msgstr "SensoraIestatījumi"
-#~ msgid "Enabled"
-#~ msgstr "Aktivizēts"
+#~ msgid "_About"
+#~ msgstr "P_ar"
-#, fuzzy
-#~ msgid "Enable log of measures"
-#~ msgstr "Aktivizēt izvēlni"
+#~ msgid "_Quit"
+#~ msgstr "_Iziet"
-#, fuzzy
-#~ msgid "Enable indicator"
-#~ msgstr "Aktivizēts"
+#~ msgid "building menus failed: %s"
+#~ msgstr "neizdevās izveidot izvēlnes: %s"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr ""
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr ""
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr ""
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
+#: src/glade/psensor.glade:31
+msgid "Show"
msgstr ""
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr ""
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr ""
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr ""
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
msgid "Color"
msgstr ""
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr ""
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr ""
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr ""
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr ""
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr ""
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr ""
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr ""
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr ""
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr ""
# Portuguese translations for psensor package.
# Copyright (C) 2012 Free Software Foundation, Inc.
# This file is distributed under the same license as the psensor package.
-# <jeanfi@gmail.com>, 2012.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor 0.7.0.x\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2013-09-01 18:54+0000\n"
"Last-Translator: Celio Alves <Unknown>\n"
"Language-Team: Brazilian Portuguese\n"
"X-Launchpad-Export-Date: 2013-10-18 06:32+0000\n"
"X-Generator: Launchpad (build 16799)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "Sobre"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Preferências"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Preferências de sensores"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Sair"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Preferências de sensores"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Mostrar"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr "Psensor - Monitor de temperatura"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr "_Psensor"
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "Ajuda"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
#: src/ui.c:90
msgid "Color"
msgstr "Cor"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "Mo_strar"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Mostrar"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Preferências"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr ""
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "Preferências do Sensor"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "Sobre"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "Sair"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "falha na montagem dos menus: %s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "falha em gettimeofday."
msgid "Unknown"
msgstr "Desconhecido"
+#~ msgid "_Show"
+#~ msgstr "Mo_strar"
+
+#~ msgid "_Preferences"
+#~ msgstr "_Preferências"
+
+#~ msgid "SensorPreferences"
+#~ msgstr "Preferências do Sensor"
+
+#~ msgid "_About"
+#~ msgstr "Sobre"
+
+#~ msgid "_Quit"
+#~ msgstr "Sair"
+
+#~ msgid "building menus failed: %s"
+#~ msgstr "falha na montagem dos menus: %s"
+
#~ msgid "Sensor Name"
#~ msgstr "Nome do sensor"
# Russian translations for psensor package.
# Copyright (C) 2012 Free Software Foundation, Inc.
# This file is distributed under the same license as the psensor package.
-# <jeanfi@gmail.com>, 2012.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor 0.7.0.x\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
-"PO-Revision-Date: 2012-12-25 06:05+0000\n"
-"Last-Translator: Ilya Volchanetskiy <Unknown>\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
+"PO-Revision-Date: 2014-01-27 16:37+0000\n"
+"Last-Translator: Dmitry <dmitri.s93@gmail.com>\n"
"Language-Team: Russian\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2013-01-21 09:32+0000\n"
-"X-Generator: Launchpad (build 16430)\n"
+"X-Launchpad-Export-Date: 2014-02-11 20:01+0000\n"
+"X-Generator: Launchpad (build 16916)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "О программе"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Параметры"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Параметры датчиков"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Выход"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Ð\9fаÑ\80амеÑ\82Ñ\80Ñ\8b даÑ\82Ñ\87иков"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Ð\9fоказаÑ\82Ñ\8c"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr "Psensor - монитор температуры"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr ""
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "_Справка"
#: src/glade/sensor-edit.glade:87
msgid "Name"
-msgstr ""
+msgstr "Название"
#: src/glade/sensor-edit.glade:138
msgid "Type:"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
msgid "Color"
msgstr "Цвет"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "_Показать"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Показать"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Параметры"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "Параметры д_атчика"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr ""
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "_О программе"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Выход"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "не удалось создать меню: %s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "ошибка gettimeofday."
msgid "Unknown"
msgstr ""
-#~ msgid "Sensor Name"
-#~ msgstr "Название датчика"
-
-#~ msgid "Enabled"
-#~ msgstr "Включён"
+#~ msgid "_Show"
+#~ msgstr "_Показать"
-#, fuzzy
-#~ msgid "Enable log of measures"
-#~ msgstr "Включить меню"
+#~ msgid "_Preferences"
+#~ msgstr "_Параметры"
-#, fuzzy
-#~ msgid "slog_init: cannot open sensor log file: %s"
-#~ msgstr "Ошибка открытия файла журнала: %s"
+#~ msgid "S_ensor Preferences"
+#~ msgstr "Параметры д_атчика"
-#, fuzzy
-#~ msgid "slog_init: gettimeofday failed."
-#~ msgstr "ошибка gettimeofday."
+#~ msgid "_About"
+#~ msgstr "_О программе"
-#, fuzzy
-#~ msgid "slog_write_sensors: gettimeofday failed."
-#~ msgstr "ошибка gettimeofday."
+#~ msgid "_Quit"
+#~ msgstr "_Выход"
-#, fuzzy
-#~ msgid "Enable indicator"
-#~ msgstr "Включён"
+#~ msgid "building menus failed: %s"
+#~ msgstr "не удалось создать меню: %s"
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2012-04-14 21:02+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Slovenian <sl@li.org>\n"
"X-Launchpad-Export-Date: 2012-07-02 08:28+0000\n"
"X-Generator: Launchpad (build 15520)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr ""
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr ""
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr ""
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
+#: src/glade/psensor.glade:31
+msgid "Show"
msgstr ""
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr ""
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr ""
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr ""
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
msgid "Color"
msgstr ""
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr ""
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr ""
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr ""
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr ""
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr ""
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr ""
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr ""
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr ""
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr ""
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2012-05-03 02:31+0000\n"
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <sr@li.org>\n"
"X-Launchpad-Export-Date: 2012-07-02 08:28+0000\n"
"X-Generator: Launchpad (build 15520)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "О програму"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Поставке"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr ""
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Изађи"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
+#: src/glade/psensor.glade:31
+msgid "Show"
msgstr ""
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr ""
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr ""
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr ""
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
msgid "Color"
msgstr "У боји"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr ""
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr ""
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Поставке"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr ""
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr ""
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "О _програму"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Изађи"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr ""
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr ""
msgid "Unknown"
msgstr ""
-#~ msgid "Sensor Name"
-#~ msgstr "Назив сензора"
-
-#~ msgid "Enabled"
-#~ msgstr "Укључено"
+#~ msgid "_Preferences"
+#~ msgstr "_Поставке"
-#, fuzzy
-#~ msgid "Enable log of measures"
-#~ msgstr "Укључено"
+#~ msgid "_About"
+#~ msgstr "О _програму"
-#, fuzzy
-#~ msgid "Enable indicator"
-#~ msgstr "Укључено"
+#~ msgid "_Quit"
+#~ msgstr "_Изађи"
# Turkish translation for psensor
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the psensor package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
-"PO-Revision-Date: 2012-04-28 11:24+0000\n"
-"Last-Translator: zeugma <Unknown>\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
+"PO-Revision-Date: 2013-11-24 08:42+0000\n"
+"Last-Translator: İbrahim Çelik <ibrahimcelik89@gmail.com>\n"
"Language-Team: Turkish <tr@li.org>\n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-07-02 08:28+0000\n"
-"X-Generator: Launchpad (build 15520)\n"
+"X-Launchpad-Export-Date: 2014-02-11 20:01+0000\n"
+"X-Generator: Launchpad (build 16916)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
-msgstr ""
+msgstr "Hakkında"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Tercihler"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Algılayıcı Tercihleri"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
-msgstr ""
+msgstr "Çıkış"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Tercihleri düzenle"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Göster"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
-msgstr ""
+msgstr "Psensor - Sıcaklık Gözlemleyici"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
-msgstr ""
+msgstr "_Psensor"
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
-msgstr ""
+msgstr "_Yardım"
#: src/glade/psensor-pref.glade:7
msgid "Edit Preferences"
-msgstr "Tercihleri düzenle"
+msgstr "Tercihleri Düzenle"
#: src/glade/psensor-pref.glade:72
msgid "Position of sensors table:"
-msgstr ""
+msgstr "Gözlemleyici tablosunun konumu:"
#: src/glade/psensor-pref.glade:81
msgid "Hide window decoration"
-msgstr ""
+msgstr "Pencere çubuğunu gizle"
#: src/glade/psensor-pref.glade:98
msgid "Keep window below"
-msgstr ""
+msgstr "Pencereyi aşağıda tut"
#: src/glade/psensor-pref.glade:115
msgid "Enable menu"
-msgstr ""
+msgstr "Menüyü etkinleştir"
#: src/glade/psensor-pref.glade:132
msgid "Enable Unity Launcher counter"
-msgstr ""
+msgstr "Unity Başlatıcı sayacını etkinleştir"
#: src/glade/psensor-pref.glade:149
msgid "Hide window on startup"
-msgstr ""
+msgstr "Başlangıçta pencereyi gizle"
#: src/glade/psensor-pref.glade:166
msgid "Restore window position and size"
-msgstr ""
+msgstr "Pencere konumunu ve boyutunu yeniden yükle"
#: src/glade/psensor-pref.glade:186
msgid "Temperature unit:"
-msgstr ""
+msgstr "Sıcaklık birimi:"
#: src/glade/psensor-pref.glade:238
msgid "Interface"
#: src/glade/psensor-pref.glade:276
msgid "Foreground:"
-msgstr ""
+msgstr "Önplan:"
#: src/glade/psensor-pref.glade:291
msgid "Background:"
#: src/glade/psensor-pref.glade:325
msgid "Background opacity:"
-msgstr "Arkaplan belirginliği:"
+msgstr "Arkaplan saydamlığı:"
#: src/glade/psensor-pref.glade:348
msgid "<i>Min</i>"
-msgstr ""
+msgstr "<i>Asgari</i>"
#: src/glade/psensor-pref.glade:375
msgid "<i>Max</i>"
-msgstr ""
+msgstr "<i>Azami</i>"
#: src/glade/psensor-pref.glade:401
msgid "Colors"
#: src/glade/psensor-pref.glade:419
msgid "Monitoring duration:"
-msgstr ""
+msgstr "Gözlemleme süresi:"
#: src/glade/psensor-pref.glade:457
msgid "minute(s)"
-msgstr ""
+msgstr "dakika"
#: src/glade/psensor-pref.glade:474 src/glade/psensor-pref.glade:626
msgid "second(s)"
-msgstr ""
+msgstr "saniye"
#: src/glade/psensor-pref.glade:510
msgid "Update interval:"
-msgstr ""
+msgstr "Güncelleme aralığı:"
#: src/glade/psensor-pref.glade:528
msgid "Measures"
-msgstr ""
+msgstr "Ölçümler"
#: src/glade/psensor-pref.glade:564 src/glade/sensor-edit.glade:169
#: src/ui_sensorlist.c:334
#: src/glade/psensor-pref.glade:588
msgid "Measure update interval:"
-msgstr ""
+msgstr "Ölçüm güncelleştirme aralığı:"
#: src/glade/psensor-pref.glade:637
msgid "Enable sensors logging"
-msgstr ""
+msgstr "Algılayıcı günlük kaydını etkinleştir"
#: src/glade/psensor-pref.glade:684
msgid "Sensors logging interval"
-msgstr ""
+msgstr "Algılayıcı günlük kaydı aralığı"
#: src/glade/psensor-pref.glade:701
msgid "seconds(s)"
-msgstr ""
+msgstr "saniye"
#: src/glade/psensor-pref.glade:718
msgid "Script executed when an alarm is raised"
-msgstr ""
+msgstr "Alarm çaldığında betik çalıştırılır"
#: src/glade/psensor-pref.glade:751
msgid "Sensors"
-msgstr "Algılayıcı"
+msgstr "Algılayıcılar"
#: src/glade/sensor-edit.glade:19
msgid "Edit Sensor Preferences"
-msgstr "Tercihleri düzenle"
+msgstr "Algılayıcı Tercihlerini Düzenle"
#: src/glade/sensor-edit.glade:87
msgid "Name"
-msgstr ""
+msgstr "Ad"
#: src/glade/sensor-edit.glade:138
msgid "Type:"
#: src/glade/sensor-edit.glade:388 src/glade/sensor-edit.glade:459
#: src/glade/sensor-edit.glade:508 src/lib/psensor.c:486 src/ui_notify.c:81
msgid "N/A"
-msgstr ""
+msgstr "Bilinmeyen"
#: src/glade/sensor-edit.glade:187
msgid "Color:"
#: src/glade/sensor-edit.glade:216
msgid "Activate desktop notifications"
-msgstr ""
+msgstr "Masaüstü bildirimlerini etkinleştir"
#: src/glade/sensor-edit.glade:236
msgid "Sensor Information"
-msgstr ""
+msgstr "Algılayıcı Bilgisi"
#: src/glade/sensor-edit.glade:249
msgid "Draw sensor curve"
-msgstr ""
+msgstr "Algılayıcı eğrisini çiz"
#: src/glade/sensor-edit.glade:333
msgid "High threshold:"
-msgstr ""
+msgstr "Yüksek eşik:"
#: src/glade/sensor-edit.glade:348
msgid "Low threshold:"
-msgstr ""
+msgstr "Düşük eşik:"
#: src/glade/sensor-edit.glade:409
msgid "Ubuntu Application Indicator"
-msgstr ""
+msgstr "Ubuntu Uygulama Göstergesi"
#: src/glade/sensor-edit.glade:424
msgid "Display sensor in the Application Indicator menu"
-msgstr ""
+msgstr "Algılayıcıyı Uygulama Göstergesi menüsünde göster"
#: src/glade/sensor-edit.glade:444
msgid "Chip:"
-msgstr ""
+msgstr "Yonga:"
#: src/glade/sensor-edit.glade:489
msgid "Id:"
-msgstr ""
+msgstr "Kimlik:"
#: src/glade/sensor-edit.glade:523
msgid "Details"
-msgstr ""
+msgstr "Ayrıntılar"
#: src/glade/sensor-edit.glade:541
msgid "Name:"
#: src/lib/amd.c:170
msgid "AMD: cannot found ADL library."
-msgstr ""
+msgstr "AMD: ADL kütüphanesi bulunamadı."
#: src/lib/amd.c:197
msgid "AMD: missing ADL's API."
-msgstr ""
+msgstr "AMD: ADL'nin API'sı kayıp."
#: src/lib/amd.c:207
msgid "AMD: failed to initialize ADL."
-msgstr ""
+msgstr "AMD: ADL başlatılamadı."
#: src/lib/amd.c:213
msgid "AMD: cannot get the number of adapters."
-msgstr ""
+msgstr "AMD: bağdaştırıcıların sayısı alınamadı."
#: src/lib/amd.c:252
#, c-format
msgid "Number of AMD/ATI adapters: %d"
-msgstr ""
+msgstr "AMD/ATI bağdaştırıcı sayısı: %d"
#: src/lib/amd.c:253
#, c-format
msgid "Number of active AMD/ATI adapters: %d"
-msgstr ""
+msgstr "Etkin AMD/ATI bağdaştırıcı sayısı: %d"
#: src/lib/hdd_atasmart.c:152
#, c-format
msgid "atasmart: sk_disk_open() failure: %s."
-msgstr ""
+msgstr "atasmart: sk_disk_open() hatası: %s."
#: src/lib/hdd_hddtemp.c:59
msgid "hddtemp: failed to open socket."
-msgstr ""
+msgstr "hddtemp: yuva açılamadı"
#: src/lib/hdd_hddtemp.c:72
msgid "hddtemp: failed to open connection."
-msgstr ""
+msgstr "hddtemp: bağlantı açılamadı."
#: src/lib/hdd_hddtemp.c:186 src/lib/hdd_hddtemp.c:256
#, c-format
msgid "hddtemp: wrong string: %s."
-msgstr ""
+msgstr "hddtemp: yanlış dizi: %s."
#: src/lib/lmsensor.c:42
#, c-format
msgid "lmsensor: cannot get value of subfeature %s: %s."
-msgstr ""
+msgstr "lmsensor: %s alt özelliğinin değeri alınamıyor: %s."
#: src/lib/lmsensor.c:123
msgid "lmsensor: lmsensor_psensor_create failure: wrong feature type."
-msgstr ""
+msgstr "lmsensor: lmsensor_psensor_create hatası: yanlış özellik tipi."
#: src/lib/lmsensor.c:218
#, c-format
msgid "lmsensor: initialization failure: %s."
-msgstr ""
+msgstr "lmsensor: başlatma hatası: %s."
#: src/lib/log.c:43
#, c-format
msgid "Cannot open log file: %s"
-msgstr ""
+msgstr "Günlükleme dosyası açılamadı: %s"
#: src/lib/nvidia.c:54
msgid ""
"NVIDIA proprietary driver not used or cannot retrieve NVIDIA GPU temperature."
msgstr ""
+"NVIDIA kapalı kaynak sürücüsü kullanılmıyor veya NVIDIA ekran kartı "
+"sıcaklığı alınamıyor."
#: src/lib/nvidia.c:97
msgid "Cannot open connection to X11 server."
-msgstr ""
+msgstr "X11 sunucusu bağlantısı açılamıyor."
#: src/lib/nvidia.c:105
msgid "Failed to retrieve NVIDIA information."
-msgstr ""
+msgstr "NVIDIA bilgisi alınamıyor."
#: src/lib/psensor.c:482 tests/test_psensor_type_to_unit_str.c:62
msgid "RPM"
-msgstr ""
+msgstr "RPM"
#: src/lib/psensor.c:484
msgid "%"
-msgstr ""
+msgstr "%"
#: src/lib/slog.c:68
msgid "HOME variable not set."
-msgstr ""
+msgstr "HOME değişkeni ayarlanmamış."
#: src/lib/slog.c:78
msgid "Sensor log file already open."
-msgstr ""
+msgstr "Algılayıcı günlük kaydı dosyası zaten açık."
#: src/lib/slog.c:87
#, c-format
msgid "Cannot open sensor log file: %s."
-msgstr ""
+msgstr "Algılayıcı günlük kaydı dosyası açılamıyor: %s."
#: src/lib/slog.c:118
msgid "Sensor log file not open."
-msgstr ""
+msgstr "Algılayıcı günlük kaydı dosyası açık değil."
#: src/lib/slog.c:174
msgid "Sensor log not open, cannot close."
-msgstr ""
+msgstr "Algılayıcı günlük kaydı açık değil, kapatılamıyor."
#: src/main.c:77
#, c-format
"This is free software: you are free to change and redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"
msgstr ""
+"Telif Hakkı (C) %s jeanfi@gmail.com\n"
+"Lisans GPLv2: GNU GPL 2. sürümü veya daha yenisi <http://www.gnu.org/"
+"licenses/old-licenses/gpl-2.0.html>\n"
+"Bu bir özgür yazılımdır: değiştirmekte ve yeniden dağıtmakta özgürsünüz.\n"
+"Yasaların izin verdiği çerçevede hiçbir garantisi YOKTUR.\n"
#: src/main.c:88 src/server/server.c:94
#, c-format
"Psensor is a GTK+ application for monitoring hardware sensors, including "
"temperatures and fan speeds."
msgstr ""
+"Psensor, sıcaklık ve fan hızı da dahil olmak üzere donanım algılayıcılarını "
+"gözlemleyen bir GTK+ uygulamasıdır."
#: src/main.c:94
msgid "Options:"
-msgstr ""
+msgstr "Seçenekler:"
#: src/main.c:95
msgid ""
" -h, --help display this help and exit\n"
" -v, --version display version information and exit"
msgstr ""
+" -h, --help yardımı göster ve çık\n"
+" -v, --version sürüm bilgisini göster ve çık"
#: src/main.c:101
msgid ""
" -u, --url=URL the URL of the psensor-server,\n"
" example: http://hostname:3131"
msgstr ""
+" -u, --url=URL psensor sunucusunun bağlantısı,\n"
+" example: http://hostname:3131"
#: src/main.c:104
msgid ""
" --use-libatasmart use atasmart library for disk monitoring instead of\n"
" hddtemp daemon"
msgstr ""
+" --use-libatasmart disk gözlemleme için hddtemp yerine bir atasmart\n"
+" kütüphanesi kullan"
#: src/main.c:107
msgid " -n, --new-instance force the creation of a new Psensor application"
msgstr ""
+" -n, --new-instance yeni bir Psensor uygulaması oluşturulmasını zorla"
#: src/main.c:110
msgid " -d, --debug=LEVEL set the debug level, integer between 0 and 3"
msgstr ""
+" -d, --debug=LEVEL hata ayıklama seviyesin ayarla, 0 ve 3 arasında tamsayı"
#: src/main.c:115 src/server/server.c:117
#, c-format
#: src/main.c:454
msgid "Psensor has not been compiled with remote sensor support."
-msgstr ""
+msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
#: src/main.c:517
msgid "Enables debug mode."
-msgstr ""
+msgstr "Hata ayıklama modunu etkinleştirir."
#: src/main.c:529 src/server/server.c:380
#, c-format
#: src/main.c:542
msgid "A Psensor instance already exists."
-msgstr ""
+msgstr "Bir Psensor örneği zaten mevcut."
#: src/rsensor.c:107
#, c-format
msgid "Fail to connect to: %s"
-msgstr ""
+msgstr "Şuna bağlanamadı: %s"
#: src/rsensor.c:144
#, c-format
msgid "Invalid content: %s"
-msgstr ""
+msgstr "Geçersiz içerik: %s"
#: src/rsensor.c:184
#, c-format
msgid "Invalid JSON: %s"
-msgstr ""
+msgstr "Geçersiz JSON: %s"
#: src/server/server.c:54
msgid "<html><body><p>Server stop requested</p></body></html>"
-msgstr ""
+msgstr "<html><body><p>Sunucu durdurma istendi</p></body></html>"
#: src/server/server.c:60
msgid ""
"<html><body><p>Page not found - Go to <a href='/'>Main page</a></p></body>"
msgstr ""
+"<html><body><p>Sayfa bulunamadı - Şuraya gidin <a href='/'>Main page</a></"
+"p></body>"
#: src/server/server.c:84
#, c-format
"This is free software: you are free to change and redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"
msgstr ""
+"Telif Hakkı (C) %s jeanfi@gmail.com\n"
+"Lisans GPLv2: GNU GPL 2. sürümü veya daha yenisi <http://www.gnu.org/"
+"licenses/old-licenses/gpl-2.0.html>\n"
+"Bu bir özgür yazılımdır: değiştirmekte ve yeniden dağıtmakta özgürsünüz.\n"
+"Yasaların izin verdiği çerçevede hiçbir garantisi YOKTUR.\n"
#: src/server/server.c:96
msgid ""
"psensor-server is an HTTP server for monitoring hardware sensors remotely."
msgstr ""
+"psensor-sunucusu, donanım algılayıcılarını uzaktan gözlemleme amaçlı bir "
+"HTTP sunucusudur."
#: src/server/server.c:101
msgid ""
" -h, --help\t\tdisplay this help and exit\n"
" -v, --version\t\tdisplay version information and exit"
msgstr ""
+" -h, --help\t\tyardımı göster ve çık\n"
+" -v, --version\t\tsürüm bilgisini göster ve çık"
#: src/server/server.c:105
msgid ""
" -p,--port=PORT\twebserver port\n"
" -w,--wdir=DIR\t\tdirectory containing webserver pages"
msgstr ""
+" -p,--port=PORT\twebsunucu bağlantı noktası\n"
+" -w,--wdir=DIR\t\tdizin websunucusu sayfaları içerir"
#: src/server/server.c:109
msgid " -d, --debug=LEVEL set the debug level, integer between 0 and 3"
msgstr ""
+" -d, --debug=LEVEL hata ayıklama seviyesini ayarla, 0 ve 3 arasında bir "
+"tamsayı"
#: src/server/server.c:111
msgid " -l, --log-file=PATH set the log file to PATH"
-msgstr ""
+msgstr " -l, --log-file=PATH günlük kaydı dosyasını PATH olarak ayarla"
#: src/server/server.c:112
msgid " --sensor-log-file=PATH set the sensor log file to PATH"
msgstr ""
+" --sensor-log-file=PATH algılayıcı günlük kaydı dosyasını PATH olarak ayarla"
#: src/server/server.c:113
msgid " --sensor-log-interval=S set the sensor log interval to S (seconds)"
msgstr ""
+" --sensor-log-interval=S algılayıcı günlük kaydı aralığını S (saniye) "
+"olarak ayarla"
#: src/server/server.c:297
#, c-format
msgid "HTTP Request: %s"
-msgstr ""
+msgstr "HTTP İsteği: %s"
#: src/server/server.c:360
#, c-format
msgid "Enables debug mode: %d"
-msgstr ""
+msgstr "Hata ayıklama modunu etkinleştirir: %d"
#: src/server/server.c:402
msgid "No sensors detected."
-msgstr ""
+msgstr "Hiçbir algılayıcı bulunamadı."
#: src/server/server.c:409
msgid "Failed to create Web server."
-msgstr ""
+msgstr "Web sunucusu oluşturulamadı."
#: src/server/server.c:413
#, c-format
msgid "Web server started on port: %d"
-msgstr ""
+msgstr "Web sunucusu şu noktadan başlatıldı: %d"
#: src/server/server.c:414
#, c-format
msgid "WWW directory: %s"
-msgstr ""
+msgstr "WWW dizini: %s"
#: src/server/server.c:415
#, c-format
msgid "URL: http://localhost:%d"
-msgstr ""
+msgstr "URL: http://localhost:%d"
#: src/server/server.c:425
msgid "Failed to activate logging of sensors."
-msgstr ""
+msgstr "Algılayıcıların günlük kaydı etkinleştirilemedi."
#: src/ui.c:84
msgid "Psensor is a GTK+ application for monitoring hardware sensors"
msgstr ""
+"Psensor, donanım algılayıcılarının gözlenmesi amaçlı bir GTK+ uygulamasıdır"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
+"Telif Hakkı(c) 2010-2014\n"
+"jeanfi@gmail.com"
#: src/ui.c:90
msgid "About Psensor"
-msgstr ""
+msgstr "Psensor Hakkında"
#: src/ui.c:93
msgid "Psensor Homepage"
-msgstr ""
+msgstr "Psensor Anasayfası"
#: src/ui.c:217
msgid "Failed to load Psensor icon."
-msgstr ""
+msgstr "Psensor simgesi yüklenemedi."
#: src/ui_sensorlist.c:245
msgid "Select foreground color"
-msgstr ""
+msgstr "Önplan rengini seçin"
#: src/ui_sensorlist.c:297
msgid "Sensor"
#: src/ui_sensorlist.c:303
msgid "Value"
-msgstr ""
+msgstr "Değer"
#: src/ui_sensorlist.c:309
msgid "Min"
-msgstr ""
+msgstr "Asgari"
#: src/ui_sensorlist.c:315
msgid "Max"
-msgstr ""
+msgstr "Azami"
#: src/ui_sensorlist.c:322
msgid "Color"
msgstr "Renk"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr ""
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr ""
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "Tercihler"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "Tercihleri düzenle"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "Tercihleri düzenle"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr ""
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr ""
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr ""
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
-msgstr ""
+msgstr "gettimeofday başarısız."
#: src/ui_notify.c:77
msgid "Temperature alert"
-msgstr ""
+msgstr "Sıcaklık uyarısı"
#: src/ui_notify.c:79
msgid "Fan alert"
-msgstr ""
+msgstr "Fan uyarısı"
#: src/ui_sensorpref.c:248
msgid "Unknown"
-msgstr ""
+msgstr "Bilinmeyen"
+
+#~ msgid "_Show"
+#~ msgstr "_Göster"
+
+#~ msgid "_Preferences"
+#~ msgstr "_Tercihler"
+
+#~ msgid "S_ensor Preferences"
+#~ msgstr "A_lgılayıcı Tercihleri"
+
+#~ msgid "SensorPreferences"
+#~ msgstr "AlgılayıcıTercihleri"
+
+#~ msgid "_About"
+#~ msgstr "_Hakkında"
+
+#~ msgid "_Quit"
+#~ msgstr "_Çıkış"
-#~ msgid "Sensor Name"
-#~ msgstr "Algılayıcı"
+#~ msgid "building menus failed: %s"
+#~ msgstr "menüler inşaa edilemedi: %s"
# Ukrainian translation for psensor
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the psensor package.
-# <jeanfi@gmail.com>, 2012.
+# Maintained by Jean-Philippe Orsini <jeanfi@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2012-10-13 16:24+0000\n"
"Last-Translator: Ilya Volchanetskiy <Unknown>\n"
"Language-Team: Ukrainian <uk@li.org>\n"
"X-Launchpad-Export-Date: 2013-01-21 09:32+0000\n"
"X-Generator: Launchpad (build 16430)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "Про програму"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "Налаштування"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "Налаштування датчиків"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "Вихід"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "Ð\9dалаÑ\88Ñ\82Ñ\83ваннÑ\8f даÑ\82Ñ\87икÑ\96в"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "Ð\9fоказаÑ\82и"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr ""
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr ""
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "_Довдіка"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
msgid "Color"
msgstr "Колір"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "Пок_азати"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "Показати"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "_Налаштування"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "Налаштув_ання датчиків"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr ""
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "_Про програму"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "_Вихід"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "не вдалося створити меню: %s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "помилка gettimeofday."
msgid "Unknown"
msgstr ""
+#~ msgid "_Show"
+#~ msgstr "Пок_азати"
+
+#~ msgid "_Preferences"
+#~ msgstr "_Налаштування"
+
+#~ msgid "S_ensor Preferences"
+#~ msgstr "Налаштув_ання датчиків"
+
+#~ msgid "_About"
+#~ msgstr "_Про програму"
+
+#~ msgid "_Quit"
+#~ msgstr "_Вихід"
+
+#~ msgid "building menus failed: %s"
+#~ msgstr "не вдалося створити меню: %s"
+
#~ msgid "Sensor Name"
#~ msgstr "Назва датчика"
msgstr ""
"Project-Id-Version: psensor\n"
"Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2013-10-16 09:19+0200\n"
+"POT-Creation-Date: 2014-04-10 08:17+0200\n"
"PO-Revision-Date: 2013-01-15 12:24+0000\n"
"Last-Translator: Wang Dianjin <Unknown>\n"
"Language-Team: Chinese (simplified)\n"
"X-Launchpad-Export-Date: 2013-01-21 09:32+0000\n"
"X-Generator: Launchpad (build 16430)\n"
-#: src/glade/psensor.glade:5 src/ui_appindicator.c:124
+#: src/glade/psensor.glade:5
msgid "About"
msgstr "关于"
-#: src/glade/psensor.glade:9 src/ui_sensorlist.c:209 src/ui_appindicator.c:112
+#: src/glade/psensor.glade:9 src/glade/psensor.glade:10
+#: src/glade/psensor.glade:19 src/ui_sensorlist.c:209
msgid "Preferences"
msgstr "首选项"
-#: src/glade/psensor.glade:13 src/ui_appindicator.c:130
+#: src/glade/psensor.glade:14 src/glade/psensor.glade:15
+#: src/glade/psensor.glade:27
+msgid "Sensor Preferences"
+msgstr "传感器首选项"
+
+#: src/glade/psensor.glade:23
msgid "Quit"
msgstr "退出"
-#: src/glade/psensor.glade:17
-msgid "Sensor Preferences"
-msgstr "传感器首选项"
+#: src/glade/psensor.glade:31
+msgid "Show"
+msgstr "显示"
-#: src/glade/psensor.glade:96
+#: src/glade/psensor.glade:180
msgid "Psensor - Temperature Monitor"
msgstr "Psensor - 温度监视器"
-#: src/glade/psensor.glade:111
+#: src/glade/psensor.glade:195
msgid "_Psensor"
msgstr ""
-#: src/glade/psensor.glade:158
+#: src/glade/psensor.glade:242
msgid "_Help"
msgstr "帮助(_H)"
#: src/ui.c:87
msgid ""
-"Copyright(c) 2010-2013\n"
+"Copyright(c) 2010-2014\n"
"jeanfi@gmail.com"
msgstr ""
-"版权所有(c) 2010-2013\n"
+"版权所有(c) 2010-2014\n"
"jeanfi@gmail.com"
#: src/ui.c:90
msgid "Color"
msgstr "颜色"
-#: src/ui_appindicator.c:106
-msgid "_Show"
-msgstr "显示(_S)"
-
-#: src/ui_appindicator.c:107
-msgid "Show"
-msgstr "显示"
-
-#: src/ui_appindicator.c:111
-msgid "_Preferences"
-msgstr "首选项(_P)"
-
-#: src/ui_appindicator.c:116
-msgid "S_ensor Preferences"
-msgstr "传感器首选项(_E)"
-
-#: src/ui_appindicator.c:118
-msgid "SensorPreferences"
-msgstr "传感器首选项"
-
-#: src/ui_appindicator.c:122
-msgid "_About"
-msgstr "关于(_A)"
-
-#: src/ui_appindicator.c:129
-msgid "_Quit"
-msgstr "退出(_Q)"
-
-#: src/ui_appindicator.c:220
-#, c-format
-msgid "building menus failed: %s"
-msgstr "创建菜单失败:%s"
-
#: src/ui_notify.c:48
msgid "gettimeofday failed."
msgstr "获取时间失败。"
msgid "Unknown"
msgstr "未知"
+#~ msgid "_Show"
+#~ msgstr "显示(_S)"
+
+#~ msgid "_Preferences"
+#~ msgstr "首选项(_P)"
+
+#~ msgid "S_ensor Preferences"
+#~ msgstr "传感器首选项(_E)"
+
+#~ msgid "SensorPreferences"
+#~ msgstr "传感器首选项"
+
+#~ msgid "_About"
+#~ msgstr "关于(_A)"
+
+#~ msgid "_Quit"
+#~ msgstr "退出(_Q)"
+
+#~ msgid "building menus failed: %s"
+#~ msgstr "创建菜单失败:%s"
+
#~ msgid "Sensor Name"
#~ msgstr "传感器名称"
Name=Psensor
GenericName=Psensor
Comment=Psensor is a graphical temperature monitor for Linux
-Keywords=temperature;fan;monitoring;indicator
+Keywords=temperature;fan;monitoring;indicator;
Icon=psensor
TryExec=psensor
Exec=psensor
-Categories=Application;System;
+Categories=System;Monitor;
X-GNOME-Autostart-Delay=30
StartupNotify=true
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
<property name="label" translatable="yes">About</property>
<signal name="activate" handler="ui_cb_about" swapped="no"/>
</object>
+ <object class="GtkAction" id="AppIndicatorPreferencesAction">
+ <property name="label" translatable="yes">Preferences</property>
+ <property name="short_label" translatable="yes">Preferences</property>
+ <signal name="activate" handler="ui_appindicator_cb_preferences" swapped="no"/>
+ </object>
+ <object class="GtkAction" id="AppIndicatorSensorPreferencesAction">
+ <property name="label" translatable="yes">Sensor Preferences</property>
+ <property name="short_label" translatable="yes">Sensor Preferences</property>
+ <signal name="activate" handler="ui_appindicator_cb_sensor_preferences" swapped="no"/>
+ </object>
<object class="GtkAction" id="PreferencesAction">
<property name="label" translatable="yes">Preferences</property>
<signal name="activate" handler="ui_cb_preferences" swapped="no"/>
<property name="label" translatable="yes">Sensor Preferences</property>
<signal name="activate" handler="ui_cb_sensor_preferences" swapped="no"/>
</object>
+ <object class="GtkAction" id="ShowAction">
+ <property name="label" translatable="yes">Show</property>
+ <signal name="activate" handler="cb_menu_show" swapped="no"/>
+ </object>
+ <object class="GtkMenu" id="appindicator_menu">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkImageMenuItem" id="menuitem8">
+ <property name="related_action">ShowAction</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkSeparatorMenuItem" id="menuitem9">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="menuitem1">
+ <property name="related_action">AppIndicatorPreferencesAction</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="menuitem2">
+ <property name="related_action">AppIndicatorSensorPreferencesAction</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkSeparatorMenuItem" id="menuitem3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkSeparatorMenuItem" id="menuitem4">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="menuitem5">
+ <property name="related_action">AboutAction</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkSeparatorMenuItem" id="menuitem6">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="menuitem7">
+ <property name="related_action">QuitAction</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ </object>
<object class="GtkMenu" id="popup_menu">
<property name="visible">True</property>
<property name="can_focus">False</property>
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
* Copyright (C) 2010-2011 thgreasi@gmail.com, jeanfi@gmail.com
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2012-2014 jeanfi@gmail.com
*
* GPU usage is a contribution of MestreLion
*
/*
* Copyright (C) 2010-2011 thgreasi@gmail.com, jeanfi@gmail.com
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2012-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
"This is free software: you are free to change and "
" redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"),
- "2010-2013");
+ "2010-2014");
}
static void print_help()
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.43.3.
-.TH PSENSOR "1" "October 2013" "psensor 0.8.0.4" "User Commands"
+.TH PSENSOR "1" "April 2014" "psensor 0.8.0.6" "User Commands"
.SH NAME
psensor \- Temperature monitoring application
.SH SYNOPSIS
.PP
psensor home page: <http://wpitchoune.net/psensor>
.SH COPYRIGHT
-Copyright \(co 2010\-2013 jeanfi@gmail.com
+Copyright \(co 2010\-2014 jeanfi@gmail.com
License GPLv2: GNU GPL version 2 or later <http://www.gnu.org/licenses/old\-licenses/gpl\-2.0.html>
.br
This is free software: you are free to change and redistribute it.
-<!-- Copyright (C) 2012-2013 jeanfi@gmail.com -->
+<!-- Copyright (C) 2012-2014 jeanfi@gmail.com -->
<!-- This program is free software; you can redistribute it and/or -->
<!-- modify it under the terms of the GNU General Public License as -->
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.43.3.
-.TH PSENSOR-SERVER "1" "October 2013" "psensor-server 0.8.0.4" "User Commands"
+.TH PSENSOR-SERVER "1" "April 2014" "psensor-server 0.8.0.6" "User Commands"
.SH NAME
psensor-server \- Temperature and system monitoring Web server
.SH SYNOPSIS
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
_("Psensor is a GTK+ application for monitoring hardware "
"sensors"),
"copyright",
- _("Copyright(c) 2010-2013\njeanfi@gmail.com"),
+ _("Copyright(c) 2010-2014\njeanfi@gmail.com"),
"logo-icon-name", "psensor",
"program-name", "Psensor",
"title", _("About Psensor"),
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
static AppIndicator *indicator;
static struct ui_psensor *ui_psensor;
-static void cb_menu_show(GtkMenuItem *mi, gpointer data)
+void cb_menu_show(GtkMenuItem *mi, gpointer data)
{
ui_window_show((struct ui_psensor *)data);
}
-static void cb_menu_quit(GtkMenuItem *mi, gpointer data)
-{
- ui_psensor_quit(data);
-}
-
-static void cb_menu_preferences(GtkMenuItem *mi, gpointer data)
+void ui_appindicator_cb_preferences(GtkMenuItem *mi, gpointer data)
{
#ifdef HAVE_APPINDICATOR_029
gdk_threads_enter();
#endif
}
-static void cb_sensor_preferences(GtkMenuItem *mi, gpointer data)
+void ui_appindicator_cb_sensor_preferences(GtkMenuItem *mi, gpointer data)
{
struct ui_psensor *ui = data;
#endif
}
-static void cb_about(GtkMenuItem *mi, gpointer data)
-{
- ui_show_about_dialog();
-}
-
-static const char *menu_desc =
-"<ui>"
-" <popup name='MainMenu'>"
-" <menuitem name='Show' action='ShowAction' />"
-" <separator />"
-" <separator />"
-" <menuitem name='Preferences' action='PreferencesAction' />"
-" <menuitem name='SensorPreferences' action='SensorPreferencesAction' />"
-" <separator />"
-" <menuitem name='About' action='AboutAction' />"
-" <separator />"
-" <menuitem name='Quit' action='QuitAction' />"
-" </popup>"
-"</ui>";
-
-static GtkActionEntry entries[] = {
- { "PsensorMenuAction", NULL, "_Psensor" },
-
- { "ShowAction", NULL,
- N_("_Show"), NULL,
- N_("Show"),
- G_CALLBACK(cb_menu_show) },
-
- { "PreferencesAction", GTK_STOCK_PREFERENCES,
- N_("_Preferences"), NULL,
- N_("Preferences"),
- G_CALLBACK(cb_menu_preferences) },
-
- { "SensorPreferencesAction", GTK_STOCK_PREFERENCES,
- N_("S_ensor Preferences"),
- NULL,
- N_("SensorPreferences"),
- G_CALLBACK(cb_sensor_preferences) },
-
- { "AboutAction", NULL,
- N_("_About"),
- NULL,
- N_("About"),
- G_CALLBACK(cb_about) },
-
- { "QuitAction",
- GTK_STOCK_QUIT,
- N_("_Quit"),
- NULL, N_("Quit"),
- G_CALLBACK(cb_menu_quit) }
-};
-static guint n_entries = G_N_ELEMENTS(entries);
-
static void
update_menu_item(GtkMenuItem *item, struct psensor *s, int use_celcius)
{
static GtkWidget *get_menu(struct ui_psensor *ui)
{
- GtkActionGroup *action_group;
- GtkUIManager *menu_manager;
GError *error;
GtkMenu *menu;
+ guint ok;
+ GtkBuilder *builder;
- action_group = gtk_action_group_new("PsensorActions");
- gtk_action_group_set_translation_domain(action_group, PACKAGE);
- menu_manager = gtk_ui_manager_new();
-
- gtk_action_group_add_actions(action_group, entries, n_entries, ui);
- gtk_ui_manager_insert_action_group(menu_manager, action_group, 0);
+ builder = gtk_builder_new();
error = NULL;
- gtk_ui_manager_add_ui_from_string(menu_manager, menu_desc, -1, &error);
-
- if (error)
- g_error(_("building menus failed: %s"), error->message);
-
- menu = GTK_MENU(gtk_ui_manager_get_widget(menu_manager, "/MainMenu"));
+ ok = gtk_builder_add_from_file
+ (builder,
+ PACKAGE_DATA_DIR G_DIR_SEPARATOR_S "psensor.glade",
+ &error);
+
+ if (!ok) {
+ log_printf(LOG_ERR, error->message);
+ g_error_free(error);
+ return NULL;
+ }
+ menu = GTK_MENU(gtk_builder_get_object(builder, "appindicator_menu"));
build_sensor_menu_items(ui, menu);
+ gtk_builder_connect_signals(builder, ui);
+
+ g_object_ref(G_OBJECT(menu));
+ g_object_unref(G_OBJECT(builder));
return GTK_WIDGET(menu);
}
void ui_appindicator_cleanup()
{
free(sensors);
- /* TODO: cleanup menu items. */
}
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
/*
- * Copyright (C) 2010-2013 jeanfi@gmail.com
+ * Copyright (C) 2010-2014 jeanfi@gmail.com
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
defaultwwwdir = $(pkgdatadir)/www
defaultwww_DATA = \
details.html \
- index.html \
- excanvas.js \
favicon.ico \
- monitor.html \
- psensor.js \
- jqplot.dateAxisRenderer.js \
+ index.html \
jqplot.css \
+ jqplot.dateAxisRenderer.js \
jqplot.js \
jquery.js \
+ psensor.js \
style.css
EXTRA_DIST=$(defaultwww_DATA)
defaultwwwdir = $(pkgdatadir)/www
defaultwww_DATA = \
details.html \
- index.html \
- excanvas.js \
favicon.ico \
- monitor.html \
- psensor.js \
- jqplot.dateAxisRenderer.js \
+ index.html \
jqplot.css \
+ jqplot.dateAxisRenderer.js \
jqplot.js \
jquery.js \
+ psensor.js \
style.css
EXTRA_DIST = $(defaultwww_DATA)
<meta charset="utf-8">
<title id="title">Sensor </title>
- <link type="text/css"
- rel="stylesheet"
-href="http://fonts.googleapis.com/css?family=Ubuntu:regular,bold&subset=Latin">
-
<link href="jqplot.css" rel="stylesheet" type="text/css"/>
<link href="style.css" rel="stylesheet" type="text/css"/>
-<!--[if lt IE 9]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]-->
-
<script src="jquery.js" type="text/javascript"></script>
<script src="jqplot.js" type="text/javascript"></script>
<script src="jqplot.dateAxisRenderer.js" type="text/javascript"></script>
</script>
</head>
<body>
+
+ <div id="page">
<div id="menu">
<ul id="menu-list">
- <li><em><a href="monitor.html">All</a></em></li>
+ <li><a href="index.html">Summary</a></li>
</ul>
</div>
<div id="main">
<h1></h1>
- <div class="chart" id="chart"></div>
-
+ <div class="chart" id="chart"></div>
</div>
<div id="footer">
Generated by <a href='http://wpitchoune.net/psensor'>psensor-server</a>
</div>
+ </div>
</body>
</html>
<html>
<head>
- <title>Psensor Server</title>
- <link type="text/css" rel="stylesheet" href="http://fonts.googleapis.com/css?family=Ubuntu:regular,bold&subset=Latin">
+ <meta charset="utf-8">
+ <title>Psensor Server Monitoring</title>
+
<link type="text/css" href="style.css" rel="stylesheet" />
+ <script type="text/javascript" src="jquery.js"></script>
+ <script type="text/javascript" src="psensor.js"></script>
+ <script>
+ $(document).ready(function() {
+ update_menu();
+
+ update_summary_sensors();
+ update_summary_sysinfo();
+
+ $(document).ready(function() {
+ setInterval(function() {
+ update_summary_sensors();
+ update_summary_sysinfo();
+ }, 5000);
+ });
+
+
+ });
+ </script>
</head>
<body>
- <div class='page'>
- <div class='page-header'>
- <h1>Psensor Server</h1>
+ <div id="page">
+ <div id="menu">
+ <ul id="menu-list">
+ <li><a href="index.html">Summary</a></li>
+ </ul>
</div>
- <div class='page-content'>
- <p>Go to the <a href='monitor.html'>Monitoring page</a></p>
+ <div id="main">
+ <h1>System Monitoring</h1>
+
+ <p><em>Uptime</em>: <span id='uptime'></span></p>
+
+ <h2><a name="cpu">CPU</a></h2>
+
+ <table id='cpu'>
+ <thead>
+ <tr>
+ <th>Current usage</th>
+ <th>Load 1mn</th>
+ <th>Load 5mn</th>
+ <th>Load 15mn</th>
+ </tr>
+ </thead>
+ <tbody></tbody>
+ </table>
+ <h2><a name="memory">Memory</a></h2>
+
+ <table>
+ <thead>
+ <tr>
+ <th></th>
+ <th>Total</th>
+ <th>Used</th>
+ <th>Free</th>
+ <th>Shared</th>
+ <th>Buffer</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr id='memory'></tr>
+ <tr id='swap'></tr>
+ </tbody>
+ </table>
+
+ <h2><a name="network">Network</a></h2>
+
+ <table id='net'>
+ <thead>
+ <tr>
+ <th>Interface</th>
+ <th>Bytes In</th>
+ <th>Bytes Out</th>
+ </tr>
+ </thead>
+ <tbody>
+ </tbody>
+ </table>
+
+ <h2><a name="sensors">Sensors</a></h2>
+
+ <table id='sensors'>
+ <thead>
+ <tr>
+ <th>Name</th>
+ <th>Value</th>
+ <th>Min</th>
+ <th>Max</th>
+ <th>Type</th>
+ </tr>
+ </thead>
+ <tbody id ="sensors"></tbody>
+ </table>
+ </div>
+
+ <div id="footer">
+ Generated by <a href='http://wpitchoune.net/psensor'>psensor-server</a>
</div>
</div>
-
- <div id="footer">Generated by <a href='http://wpitchoune.net/psensor'>psensor-server</a></div>
</body>
</html>
-.jqplot-target{position:relative;color:#666;font-family:"Trebuchet MS",Arial,Helvetica,sans-serif;font-size:1em;}.jqplot-axis{font-size:.75em;}.jqplot-xaxis{margin-top:10px;}.jqplot-x2axis{margin-bottom:10px;}.jqplot-yaxis{margin-right:10px;}.jqplot-y2axis,.jqplot-y3axis,.jqplot-y4axis,.jqplot-y5axis,.jqplot-y6axis,.jqplot-y7axis,.jqplot-y8axis,.jqplot-y9axis{margin-left:10px;margin-right:10px;}.jqplot-axis-tick,.jqplot-xaxis-tick,.jqplot-yaxis-tick,.jqplot-x2axis-tick,.jqplot-y2axis-tick,.jqplot-y3axis-tick,.jqplot-y4axis-tick,.jqplot-y5axis-tick,.jqplot-y6axis-tick,.jqplot-y7axis-tick,.jqplot-y8axis-tick,.jqplot-y9axis-tick{position:absolute;}.jqplot-xaxis-tick{top:0;left:15px;vertical-align:top;}.jqplot-x2axis-tick{bottom:0;left:15px;vertical-align:bottom;}.jqplot-yaxis-tick{right:0;top:15px;text-align:right;}.jqplot-yaxis-tick.jqplot-breakTick{right:-20px;margin-right:0;padding:1px 5px 1px 5px;z-index:2;font-size:1.5em;}.jqplot-y2axis-tick,.jqplot-y3axis-tick,.jqplot-y4axis-tick,.jqplot-y5axis-tick,.jqplot-y6axis-tick,.jqplot-y7axis-tick,.jqplot-y8axis-tick,.jqplot-y9axis-tick{left:0;top:15px;text-align:left;}.jqplot-meterGauge-tick{font-size:.75em;color:#999;}.jqplot-meterGauge-label{font-size:1em;color:#999;}.jqplot-xaxis-label{margin-top:10px;font-size:11pt;position:absolute;}.jqplot-x2axis-label{margin-bottom:10px;font-size:11pt;position:absolute;}.jqplot-yaxis-label{margin-right:10px;font-size:11pt;position:absolute;}.jqplot-y2axis-label,.jqplot-y3axis-label,.jqplot-y4axis-label,.jqplot-y5axis-label,.jqplot-y6axis-label,.jqplot-y7axis-label,.jqplot-y8axis-label,.jqplot-y9axis-label{font-size:11pt;position:absolute;}table.jqplot-table-legend{margin-top:12px;margin-bottom:12px;margin-left:12px;margin-right:12px;}table.jqplot-table-legend,table.jqplot-cursor-legend{background-color:rgba(255,255,255,0.6);border:1px solid #ccc;position:absolute;font-size:.75em;}td.jqplot-table-legend{vertical-align:middle;}td.jqplot-seriesToggle:hover,td.jqplot-seriesToggle:active{cursor:pointer;}td.jqplot-table-legend>div{border:1px solid #ccc;padding:1px;}div.jqplot-table-legend-swatch{width:0;height:0;border-top-width:5px;border-bottom-width:5px;border-left-width:6px;border-right-width:6px;border-top-style:solid;border-bottom-style:solid;border-left-style:solid;border-right-style:solid;}.jqplot-title{top:0;left:0;padding-bottom:.5em;font-size:1.2em;}table.jqplot-cursor-tooltip{border:1px solid #ccc;font-size:.75em;}.jqplot-cursor-tooltip{border:1px solid #ccc;font-size:.75em;white-space:nowrap;background:rgba(208,208,208,0.5);padding:1px;}.jqplot-highlighter-tooltip{border:1px solid #ccc;font-size:.75em;white-space:nowrap;background:rgba(208,208,208,0.5);padding:1px;}.jqplot-point-label{font-size:.75em;z-index:2;}td.jqplot-cursor-legend-swatch{vertical-align:middle;text-align:center;}div.jqplot-cursor-legend-swatch{width:1.2em;height:.7em;}.jqplot-error{text-align:center;}.jqplot-error-message{position:relative;top:46%;display:inline-block;}div.jqplot-bubble-label{font-size:.8em;padding-left:2px;padding-right:2px;color:rgb(20%,20%,20%);}div.jqplot-bubble-label.jqplot-bubble-label-highlight{background:rgba(90%,90%,90%,0.7);}div.jqplot-noData-container{text-align:center;background-color:rgba(96%,96%,96%,0.3);}
\ No newline at end of file
+/*rules for the plot target div. These will be cascaded down to all plot elements according to css rules*/
+.jqplot-target {
+ position: relative;
+ color: #666666;
+ font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
+ font-size: 1em;
+/* height: 300px;
+ width: 400px;*/
+}
+
+/*rules applied to all axes*/
+.jqplot-axis {
+ font-size: 0.75em;
+}
+
+.jqplot-xaxis {
+ margin-top: 10px;
+}
+
+.jqplot-x2axis {
+ margin-bottom: 10px;
+}
+
+.jqplot-yaxis {
+ margin-right: 10px;
+}
+
+.jqplot-y2axis, .jqplot-y3axis, .jqplot-y4axis, .jqplot-y5axis, .jqplot-y6axis, .jqplot-y7axis, .jqplot-y8axis, .jqplot-y9axis, .jqplot-yMidAxis {
+ margin-left: 10px;
+ margin-right: 10px;
+}
+
+/*rules applied to all axis tick divs*/
+.jqplot-axis-tick, .jqplot-xaxis-tick, .jqplot-yaxis-tick, .jqplot-x2axis-tick, .jqplot-y2axis-tick, .jqplot-y3axis-tick, .jqplot-y4axis-tick, .jqplot-y5axis-tick, .jqplot-y6axis-tick, .jqplot-y7axis-tick, .jqplot-y8axis-tick, .jqplot-y9axis-tick, .jqplot-yMidAxis-tick {
+ position: absolute;
+ white-space: pre;
+}
+
+
+.jqplot-xaxis-tick {
+ top: 0px;
+ /* initial position untill tick is drawn in proper place */
+ left: 15px;
+/* padding-top: 10px;*/
+ vertical-align: top;
+}
+
+.jqplot-x2axis-tick {
+ bottom: 0px;
+ /* initial position untill tick is drawn in proper place */
+ left: 15px;
+/* padding-bottom: 10px;*/
+ vertical-align: bottom;
+}
+
+.jqplot-yaxis-tick {
+ right: 0px;
+ /* initial position untill tick is drawn in proper place */
+ top: 15px;
+/* padding-right: 10px;*/
+ text-align: right;
+}
+
+.jqplot-yaxis-tick.jqplot-breakTick {
+ right: -20px;
+ margin-right: 0px;
+ padding:1px 5px 1px 5px;
+ /*background-color: white;*/
+ z-index: 2;
+ font-size: 1.5em;
+}
+
+.jqplot-y2axis-tick, .jqplot-y3axis-tick, .jqplot-y4axis-tick, .jqplot-y5axis-tick, .jqplot-y6axis-tick, .jqplot-y7axis-tick, .jqplot-y8axis-tick, .jqplot-y9axis-tick {
+ left: 0px;
+ /* initial position untill tick is drawn in proper place */
+ top: 15px;
+/* padding-left: 10px;*/
+/* padding-right: 15px;*/
+ text-align: left;
+}
+
+.jqplot-yMidAxis-tick {
+ text-align: center;
+ white-space: nowrap;
+}
+
+.jqplot-xaxis-label {
+ margin-top: 10px;
+ font-size: 11pt;
+ position: absolute;
+}
+
+.jqplot-x2axis-label {
+ margin-bottom: 10px;
+ font-size: 11pt;
+ position: absolute;
+}
+
+.jqplot-yaxis-label {
+ margin-right: 10px;
+/* text-align: center;*/
+ font-size: 11pt;
+ position: absolute;
+}
+
+.jqplot-yMidAxis-label {
+ font-size: 11pt;
+ position: absolute;
+}
+
+.jqplot-y2axis-label, .jqplot-y3axis-label, .jqplot-y4axis-label, .jqplot-y5axis-label, .jqplot-y6axis-label, .jqplot-y7axis-label, .jqplot-y8axis-label, .jqplot-y9axis-label {
+/* text-align: center;*/
+ font-size: 11pt;
+ margin-left: 10px;
+ position: absolute;
+}
+
+.jqplot-meterGauge-tick {
+ font-size: 0.75em;
+ color: #999999;
+}
+
+.jqplot-meterGauge-label {
+ font-size: 1em;
+ color: #999999;
+}
+
+table.jqplot-table-legend {
+ margin-top: 12px;
+ margin-bottom: 12px;
+ margin-left: 12px;
+ margin-right: 12px;
+}
+
+table.jqplot-table-legend, table.jqplot-cursor-legend {
+ background-color: rgba(255,255,255,0.6);
+ border: 1px solid #cccccc;
+ position: absolute;
+ font-size: 0.75em;
+}
+
+td.jqplot-table-legend {
+ vertical-align:middle;
+}
+
+/*
+These rules could be used instead of assigning
+element styles and relying on js object properties.
+*/
+
+/*
+td.jqplot-table-legend-swatch {
+ padding-top: 0.5em;
+ text-align: center;
+}
+
+tr.jqplot-table-legend:first td.jqplot-table-legend-swatch {
+ padding-top: 0px;
+}
+*/
+
+td.jqplot-seriesToggle:hover, td.jqplot-seriesToggle:active {
+ cursor: pointer;
+}
+
+.jqplot-table-legend .jqplot-series-hidden {
+ text-decoration: line-through;
+}
+
+div.jqplot-table-legend-swatch-outline {
+ border: 1px solid #cccccc;
+ padding:1px;
+}
+
+div.jqplot-table-legend-swatch {
+ width:0px;
+ height:0px;
+ border-top-width: 5px;
+ border-bottom-width: 5px;
+ border-left-width: 6px;
+ border-right-width: 6px;
+ border-top-style: solid;
+ border-bottom-style: solid;
+ border-left-style: solid;
+ border-right-style: solid;
+}
+
+.jqplot-title {
+ top: 0px;
+ left: 0px;
+ padding-bottom: 0.5em;
+ font-size: 1.2em;
+}
+
+table.jqplot-cursor-tooltip {
+ border: 1px solid #cccccc;
+ font-size: 0.75em;
+}
+
+
+.jqplot-cursor-tooltip {
+ border: 1px solid #cccccc;
+ font-size: 0.75em;
+ white-space: nowrap;
+ background: rgba(208,208,208,0.5);
+ padding: 1px;
+}
+
+.jqplot-highlighter-tooltip, .jqplot-canvasOverlay-tooltip {
+ border: 1px solid #cccccc;
+ font-size: 0.75em;
+ white-space: nowrap;
+ background: rgba(208,208,208,0.5);
+ padding: 1px;
+}
+
+.jqplot-point-label {
+ font-size: 0.75em;
+ z-index: 2;
+}
+
+td.jqplot-cursor-legend-swatch {
+ vertical-align: middle;
+ text-align: center;
+}
+
+div.jqplot-cursor-legend-swatch {
+ width: 1.2em;
+ height: 0.7em;
+}
+
+.jqplot-error {
+/* Styles added to the plot target container when there is an error go here.*/
+ text-align: center;
+}
+
+.jqplot-error-message {
+/* Styling of the custom error message div goes here.*/
+ position: relative;
+ top: 46%;
+ display: inline-block;
+}
+
+div.jqplot-bubble-label {
+ font-size: 0.8em;
+/* background: rgba(90%, 90%, 90%, 0.15);*/
+ padding-left: 2px;
+ padding-right: 2px;
+ color: rgb(20%, 20%, 20%);
+}
+
+div.jqplot-bubble-label.jqplot-bubble-label-highlight {
+ background: rgba(90%, 90%, 90%, 0.7);
+}
+
+div.jqplot-noData-container {
+ text-align: center;
+ background-color: rgba(96%, 96%, 96%, 0.3);
+}
* jqPlot
* Pure JavaScript plotting plugin using jQuery
*
- * Version: 1.0.0b2_r792
+ * Version: 1.0.8
+ * Revision: 1250
*
- * Copyright (c) 2009-2011 Chris Leonello
+ * Copyright (c) 2009-2013 Chris Leonello
* jqPlot is currently available for use in all personal or commercial projects
* under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
* version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
* "This code is unrestricted: you are free to use it however you like."
*
*/
-(function(a){a.jqplot.DateAxisRenderer=function(){a.jqplot.LinearAxisRenderer.call(this);this.date=new a.jsDate()};a.jqplot.DateAxisRenderer.prototype=new a.jqplot.LinearAxisRenderer();a.jqplot.DateAxisRenderer.prototype.constructor=a.jqplot.DateAxisRenderer;a.jqplot.DateTickFormatter=function(b,c){if(!b){b="%Y/%m/%d"}return a.jsDate.strftime(c,b)};a.jqplot.DateAxisRenderer.prototype.init=function(t){this.tickOptions.formatter=a.jqplot.DateTickFormatter;this.daTickInterval=null;this._daTickInterval=null;a.extend(true,this,t);var q=this._dataBounds,g,k,r,l,o,m,b;for(var f=0;f<this._series.length;f++){g={intervals:[],frequencies:{},sortedIntervals:[],min:null,max:null,mean:null};k=0;r=this._series[f];l=r.data;o=r._plotData;m=r._stackData;b=0;for(var e=0;e<l.length;e++){if(this.name=="xaxis"||this.name=="x2axis"){l[e][0]=new a.jsDate(l[e][0]).getTime();o[e][0]=new a.jsDate(l[e][0]).getTime();m[e][0]=new a.jsDate(l[e][0]).getTime();if((l[e][0]!=null&&l[e][0]<q.min)||q.min==null){q.min=l[e][0]}if((l[e][0]!=null&&l[e][0]>q.max)||q.max==null){q.max=l[e][0]}if(e>0){b=Math.abs(l[e][0]-l[e-1][0]);g.intervals.push(b);if(g.frequencies.hasOwnProperty(b)){g.frequencies[b]+=1}else{g.frequencies[b]=1}}k+=b}else{l[e][1]=new a.jsDate(l[e][1]).getTime();o[e][1]=new a.jsDate(l[e][1]).getTime();m[e][1]=new a.jsDate(l[e][1]).getTime();if((l[e][1]!=null&&l[e][1]<q.min)||q.min==null){q.min=l[e][1]}if((l[e][1]!=null&&l[e][1]>q.max)||q.max==null){q.max=l[e][1]}if(e>0){b=Math.abs(l[e][1]-l[e-1][1]);g.intervals.push(b);if(g.frequencies.hasOwnProperty(b)){g.frequencies[b]+=1}else{g.frequencies[b]=1}}}k+=b}var p=0,h=0;for(var c in g.frequencies){g.sortedIntervals.push({interval:c,frequency:g.frequencies[c]})}g.sortedIntervals.sort(function(i,d){return d.frequency-i.frequency});g.min=a.jqplot.arrayMin(g.intervals);g.max=a.jqplot.arrayMax(g.intervals);g.mean=k/l.length;this._intervalStats.push(g);g=k=r=l=o=m=null}q=null};a.jqplot.DateAxisRenderer.prototype.reset=function(){this.min=this._min;this.max=this._max;this.tickInterval=this._tickInterval;this.numberTicks=this._numberTicks;this.daTickInterval=this._daTickInterval};a.jqplot.DateAxisRenderer.prototype.createTicks=function(){var z=this._ticks;var w=this.ticks;var B=this.name;var y=this._dataBounds;var e=this._intervalStats;var q,x;var o,s;var d,c;var b,u;o=((this.min!=null)?new a.jsDate(this.min).getTime():y.min);s=((this.max!=null)?new a.jsDate(this.max).getTime():y.max);var k=s-o;if(w.length){for(u=0;u<w.length;u++){var g=w[u];var j=new this.tickRenderer(this.tickOptions);if(g.constructor==Array){j.value=new a.jsDate(g[0]).getTime();j.label=g[1];if(!this.showTicks){j.showLabel=false;j.showMark=false}else{if(!this.showTickMarks){j.showMark=false}}j.setTick(j.value,this.name);this._ticks.push(j)}else{j.value=new a.jsDate(g).getTime();if(!this.showTicks){j.showLabel=false;j.showMark=false}else{if(!this.showTickMarks){j.showMark=false}}j.setTick(j.value,this.name);this._ticks.push(j)}}this.numberTicks=w.length;this.min=this._ticks[0].value;this.max=this._ticks[this.numberTicks-1].value;this.daTickInterval=[(this.max-this.min)/(this.numberTicks-1)/1000,"seconds"]}else{if(this.tickInterval==null&&this.min==null&&this.max==null&&this.numberTicks==null){var A=a.jqplot.LinearTickGenerator(o,s);var n=o+k*(this.padMin-1);var r=s-k*(this.padMax-1);if(o<=n||s>=r){n=o-k*(this.padMin-1);r=s+k*(this.padMax-1);A=a.jqplot.LinearTickGenerator(n,r)}this.min=A[0];this.max=A[1];this.numberTicks=A[2];this.tickInterval=A[4];this.daTickInterval=[this.tickInterval/1000,"seconds"];for(var u=0;u<this.numberTicks;u++){var o=new a.jsDate(this.min);b=o.add(u*this.daTickInterval[0],this.daTickInterval[1]).getTime();var j=new this.tickRenderer(this.tickOptions);if(!this.showTicks){j.showLabel=false;j.showMark=false}else{if(!this.showTickMarks){j.showMark=false}}j.setTick(b,this.name);this._ticks.push(j)}}else{if(B=="xaxis"||B=="x2axis"){q=this._plotDimensions.width}else{q=this._plotDimensions.height}if(this.min!=null&&this.max!=null&&this.numberTicks!=null){this.tickInterval=null}if(this.tickInterval!=null){if(Number(this.tickInterval)){this.daTickInterval=[Number(this.tickInterval),"seconds"]}else{if(typeof this.tickInterval=="string"){var l=this.tickInterval.split(" ");if(l.length==1){this.daTickInterval=[1,l[0]]}else{if(l.length==2){this.daTickInterval=[l[0],l[1]]}}}}}if(o==s){var h=24*60*60*500;o-=h;s+=h}k=s-o;var v=2+parseInt(Math.max(0,q-100)/100,10);var m,p;m=(this.min!=null)?new a.jsDate(this.min).getTime():o-k/2*(this.padMin-1);p=(this.max!=null)?new a.jsDate(this.max).getTime():s+k/2*(this.padMax-1);this.min=m;this.max=p;k=this.max-this.min;if(this.numberTicks==null){if(this.daTickInterval!=null){var f=new a.jsDate(this.max).diff(this.min,this.daTickInterval[1],true);this.numberTicks=Math.ceil(f/this.daTickInterval[0])+1;this.max=new a.jsDate(this.min).add((this.numberTicks-1)*this.daTickInterval[0],this.daTickInterval[1]).getTime()}else{if(q>200){this.numberTicks=parseInt(3+(q-200)/100,10)}else{this.numberTicks=2}}}if(this.daTickInterval==null){this.daTickInterval=[k/(this.numberTicks-1)/1000,"seconds"]}for(var u=0;u<this.numberTicks;u++){var o=new a.jsDate(this.min);b=o.add(u*this.daTickInterval[0],this.daTickInterval[1]).getTime();var j=new this.tickRenderer(this.tickOptions);if(!this.showTicks){j.showLabel=false;j.showMark=false}else{if(!this.showTickMarks){j.showMark=false}}j.setTick(b,this.name);this._ticks.push(j)}}}if(this._daTickInterval==null){this._daTickInterval=this.daTickInterval}}})(jQuery);
\ No newline at end of file
+(function($) {
+ /**
+ * Class: $.jqplot.DateAxisRenderer
+ * A plugin for a jqPlot to render an axis as a series of date values.
+ * This renderer has no options beyond those supplied by the <Axis> class.
+ * It supplies its own tick formatter, so the tickOptions.formatter option
+ * should not be overridden.
+ *
+ * Thanks to Ken Synder for his enhanced Date instance methods which are
+ * included with this code <http://kendsnyder.com/sandbox/date/>.
+ *
+ * To use this renderer, include the plugin in your source
+ * > <script type="text/javascript" language="javascript" src="plugins/jqplot.dateAxisRenderer.js"></script>
+ *
+ * and supply the appropriate options to your plot
+ *
+ * > {axes:{xaxis:{renderer:$.jqplot.DateAxisRenderer}}}
+ *
+ * Dates can be passed into the axis in almost any recognizable value and
+ * will be parsed. They will be rendered on the axis in the format
+ * specified by tickOptions.formatString. e.g. tickOptions.formatString = '%Y-%m-%d'.
+ *
+ * Accecptable format codes
+ * are:
+ *
+ * > Code Result Description
+ * > == Years ==
+ * > %Y 2008 Four-digit year
+ * > %y 08 Two-digit year
+ * > == Months ==
+ * > %m 09 Two-digit month
+ * > %#m 9 One or two-digit month
+ * > %B September Full month name
+ * > %b Sep Abbreviated month name
+ * > == Days ==
+ * > %d 05 Two-digit day of month
+ * > %#d 5 One or two-digit day of month
+ * > %e 5 One or two-digit day of month
+ * > %A Sunday Full name of the day of the week
+ * > %a Sun Abbreviated name of the day of the week
+ * > %w 0 Number of the day of the week (0 = Sunday, 6 = Saturday)
+ * > %o th The ordinal suffix string following the day of the month
+ * > == Hours ==
+ * > %H 23 Hours in 24-hour format (two digits)
+ * > %#H 3 Hours in 24-hour integer format (one or two digits)
+ * > %I 11 Hours in 12-hour format (two digits)
+ * > %#I 3 Hours in 12-hour integer format (one or two digits)
+ * > %p PM AM or PM
+ * > == Minutes ==
+ * > %M 09 Minutes (two digits)
+ * > %#M 9 Minutes (one or two digits)
+ * > == Seconds ==
+ * > %S 02 Seconds (two digits)
+ * > %#S 2 Seconds (one or two digits)
+ * > %s 1206567625723 Unix timestamp (Seconds past 1970-01-01 00:00:00)
+ * > == Milliseconds ==
+ * > %N 008 Milliseconds (three digits)
+ * > %#N 8 Milliseconds (one to three digits)
+ * > == Timezone ==
+ * > %O 360 difference in minutes between local time and GMT
+ * > %Z Mountain Standard Time Name of timezone as reported by browser
+ * > %G -06:00 Hours and minutes between GMT
+ * > == Shortcuts ==
+ * > %F 2008-03-26 %Y-%m-%d
+ * > %T 05:06:30 %H:%M:%S
+ * > %X 05:06:30 %H:%M:%S
+ * > %x 03/26/08 %m/%d/%y
+ * > %D 03/26/08 %m/%d/%y
+ * > %#c Wed Mar 26 15:31:00 2008 %a %b %e %H:%M:%S %Y
+ * > %v 3-Sep-2008 %e-%b-%Y
+ * > %R 15:31 %H:%M
+ * > %r 3:31:00 PM %I:%M:%S %p
+ * > == Characters ==
+ * > %n \n Newline
+ * > %t \t Tab
+ * > %% % Percent Symbol
+ */
+ $.jqplot.DateAxisRenderer = function() {
+ $.jqplot.LinearAxisRenderer.call(this);
+ this.date = new $.jsDate();
+ };
+
+ var second = 1000;
+ var minute = 60 * second;
+ var hour = 60 * minute;
+ var day = 24 * hour;
+ var week = 7 * day;
+
+ // these are less definitive
+ var month = 30.4368499 * day;
+ var year = 365.242199 * day;
+
+ var daysInMonths = [31,28,31,30,31,30,31,30,31,30,31,30];
+ // array of consistent nice intervals. Longer intervals
+ // will depend on days in month, days in year, etc.
+ var niceFormatStrings = ['%M:%S.%#N', '%M:%S.%#N', '%M:%S.%#N', '%M:%S', '%M:%S', '%M:%S', '%M:%S', '%H:%M:%S', '%H:%M:%S', '%H:%M', '%H:%M', '%H:%M', '%H:%M', '%H:%M', '%H:%M', '%a %H:%M', '%a %H:%M', '%b %e %H:%M', '%b %e %H:%M', '%b %e %H:%M', '%b %e %H:%M', '%v', '%v', '%v', '%v', '%v', '%v', '%v'];
+ var niceIntervals = [0.1*second, 0.2*second, 0.5*second, second, 2*second, 5*second, 10*second, 15*second, 30*second, minute, 2*minute, 5*minute, 10*minute, 15*minute, 30*minute, hour, 2*hour, 4*hour, 6*hour, 8*hour, 12*hour, day, 2*day, 3*day, 4*day, 5*day, week, 2*week];
+
+ var niceMonthlyIntervals = [];
+
+ function bestDateInterval(min, max, titarget) {
+ // iterate through niceIntervals to find one closest to titarget
+ var badness = Number.MAX_VALUE;
+ var temp, bestTi, bestfmt;
+ for (var i=0, l=niceIntervals.length; i < l; i++) {
+ temp = Math.abs(titarget - niceIntervals[i]);
+ if (temp < badness) {
+ badness = temp;
+ bestTi = niceIntervals[i];
+ bestfmt = niceFormatStrings[i];
+ }
+ }
+
+ return [bestTi, bestfmt];
+ }
+
+ $.jqplot.DateAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
+ $.jqplot.DateAxisRenderer.prototype.constructor = $.jqplot.DateAxisRenderer;
+
+ $.jqplot.DateTickFormatter = function(format, val) {
+ if (!format) {
+ format = '%Y/%m/%d';
+ }
+ return $.jsDate.strftime(val, format);
+ };
+
+ $.jqplot.DateAxisRenderer.prototype.init = function(options){
+ // prop: tickRenderer
+ // A class of a rendering engine for creating the ticks labels displayed on the plot,
+ // See <$.jqplot.AxisTickRenderer>.
+ // this.tickRenderer = $.jqplot.AxisTickRenderer;
+ // this.labelRenderer = $.jqplot.AxisLabelRenderer;
+ this.tickOptions.formatter = $.jqplot.DateTickFormatter;
+ // prop: tickInset
+ // Controls the amount to inset the first and last ticks from
+ // the edges of the grid, in multiples of the tick interval.
+ // 0 is no inset, 0.5 is one half a tick interval, 1 is a full
+ // tick interval, etc.
+ this.tickInset = 0;
+ // prop: drawBaseline
+ // True to draw the axis baseline.
+ this.drawBaseline = true;
+ // prop: baselineWidth
+ // width of the baseline in pixels.
+ this.baselineWidth = null;
+ // prop: baselineColor
+ // CSS color spec for the baseline.
+ this.baselineColor = null;
+ this.daTickInterval = null;
+ this._daTickInterval = null;
+
+ $.extend(true, this, options);
+
+ var db = this._dataBounds,
+ stats,
+ sum,
+ s,
+ d,
+ pd,
+ sd,
+ intv;
+
+ // Go through all the series attached to this axis and find
+ // the min/max bounds for this axis.
+ for (var i=0; i<this._series.length; i++) {
+ stats = {intervals:[], frequencies:{}, sortedIntervals:[], min:null, max:null, mean:null};
+ sum = 0;
+ s = this._series[i];
+ d = s.data;
+ pd = s._plotData;
+ sd = s._stackData;
+ intv = 0;
+
+ for (var j=0; j<d.length; j++) {
+ if (this.name == 'xaxis' || this.name == 'x2axis') {
+ d[j][0] = new $.jsDate(d[j][0]).getTime();
+ pd[j][0] = new $.jsDate(d[j][0]).getTime();
+ sd[j][0] = new $.jsDate(d[j][0]).getTime();
+ if ((d[j][0] != null && d[j][0] < db.min) || db.min == null) {
+ db.min = d[j][0];
+ }
+ if ((d[j][0] != null && d[j][0] > db.max) || db.max == null) {
+ db.max = d[j][0];
+ }
+ if (j>0) {
+ intv = Math.abs(d[j][0] - d[j-1][0]);
+ stats.intervals.push(intv);
+ if (stats.frequencies.hasOwnProperty(intv)) {
+ stats.frequencies[intv] += 1;
+ }
+ else {
+ stats.frequencies[intv] = 1;
+ }
+ }
+ sum += intv;
+
+ }
+ else {
+ d[j][1] = new $.jsDate(d[j][1]).getTime();
+ pd[j][1] = new $.jsDate(d[j][1]).getTime();
+ sd[j][1] = new $.jsDate(d[j][1]).getTime();
+ if ((d[j][1] != null && d[j][1] < db.min) || db.min == null) {
+ db.min = d[j][1];
+ }
+ if ((d[j][1] != null && d[j][1] > db.max) || db.max == null) {
+ db.max = d[j][1];
+ }
+ if (j>0) {
+ intv = Math.abs(d[j][1] - d[j-1][1]);
+ stats.intervals.push(intv);
+ if (stats.frequencies.hasOwnProperty(intv)) {
+ stats.frequencies[intv] += 1;
+ }
+ else {
+ stats.frequencies[intv] = 1;
+ }
+ }
+ }
+ sum += intv;
+ }
+
+ if (s.renderer.bands) {
+ if (s.renderer.bands.hiData.length) {
+ var bd = s.renderer.bands.hiData;
+ for (var j=0, l=bd.length; j < l; j++) {
+ if (this.name === 'xaxis' || this.name === 'x2axis') {
+ bd[j][0] = new $.jsDate(bd[j][0]).getTime();
+ if ((bd[j][0] != null && bd[j][0] > db.max) || db.max == null) {
+ db.max = bd[j][0];
+ }
+ }
+ else {
+ bd[j][1] = new $.jsDate(bd[j][1]).getTime();
+ if ((bd[j][1] != null && bd[j][1] > db.max) || db.max == null) {
+ db.max = bd[j][1];
+ }
+ }
+ }
+ }
+ if (s.renderer.bands.lowData.length) {
+ var bd = s.renderer.bands.lowData;
+ for (var j=0, l=bd.length; j < l; j++) {
+ if (this.name === 'xaxis' || this.name === 'x2axis') {
+ bd[j][0] = new $.jsDate(bd[j][0]).getTime();
+ if ((bd[j][0] != null && bd[j][0] < db.min) || db.min == null) {
+ db.min = bd[j][0];
+ }
+ }
+ else {
+ bd[j][1] = new $.jsDate(bd[j][1]).getTime();
+ if ((bd[j][1] != null && bd[j][1] < db.min) || db.min == null) {
+ db.min = bd[j][1];
+ }
+ }
+ }
+ }
+ }
+
+ var tempf = 0,
+ tempn=0;
+ for (var n in stats.frequencies) {
+ stats.sortedIntervals.push({interval:n, frequency:stats.frequencies[n]});
+ }
+ stats.sortedIntervals.sort(function(a, b){
+ return b.frequency - a.frequency;
+ });
+
+ stats.min = $.jqplot.arrayMin(stats.intervals);
+ stats.max = $.jqplot.arrayMax(stats.intervals);
+ stats.mean = sum/d.length;
+ this._intervalStats.push(stats);
+ stats = sum = s = d = pd = sd = null;
+ }
+ db = null;
+
+ };
+
+ // called with scope of an axis
+ $.jqplot.DateAxisRenderer.prototype.reset = function() {
+ this.min = this._options.min;
+ this.max = this._options.max;
+ this.tickInterval = this._options.tickInterval;
+ this.numberTicks = this._options.numberTicks;
+ this._autoFormatString = '';
+ if (this._overrideFormatString && this.tickOptions && this.tickOptions.formatString) {
+ this.tickOptions.formatString = '';
+ }
+ this.daTickInterval = this._daTickInterval;
+ // this._ticks = this.__ticks;
+ };
+
+ $.jqplot.DateAxisRenderer.prototype.createTicks = function(plot) {
+ // we're are operating on an axis here
+ var ticks = this._ticks;
+ var userTicks = this.ticks;
+ var name = this.name;
+ // databounds were set on axis initialization.
+ var db = this._dataBounds;
+ var iv = this._intervalStats;
+ var dim = (this.name.charAt(0) === 'x') ? this._plotDimensions.width : this._plotDimensions.height;
+ var interval;
+ var min, max;
+ var pos1, pos2;
+ var tt, i;
+ var threshold = 30;
+ var insetMult = 1;
+ var daTickInterval = null;
+
+ // if user specified a tick interval, convert to usable.
+ if (this.tickInterval != null)
+ {
+ // if interval is a number or can be converted to one, use it.
+ // Assume it is in SECONDS!!!
+ if (Number(this.tickInterval)) {
+ daTickInterval = [Number(this.tickInterval), 'seconds'];
+ }
+ // else, parse out something we can build from.
+ else if (typeof this.tickInterval == "string") {
+ var parts = this.tickInterval.split(' ');
+ if (parts.length == 1) {
+ daTickInterval = [1, parts[0]];
+ }
+ else if (parts.length == 2) {
+ daTickInterval = [parts[0], parts[1]];
+ }
+ }
+ }
+
+ var tickInterval = this.tickInterval;
+
+ // if we already have ticks, use them.
+ // ticks must be in order of increasing value.
+
+ min = new $.jsDate((this.min != null) ? this.min : db.min).getTime();
+ max = new $.jsDate((this.max != null) ? this.max : db.max).getTime();
+
+ // see if we're zooming. if we are, don't use the min and max we're given,
+ // but compute some nice ones. They will be reset later.
+
+ var cursor = plot.plugins.cursor;
+
+ if (cursor && cursor._zoom && cursor._zoom.zooming) {
+ this.min = null;
+ this.max = null;
+ }
+
+ var range = max - min;
+
+ if (this.tickOptions == null || !this.tickOptions.formatString) {
+ this._overrideFormatString = true;
+ }
+
+ if (userTicks.length) {
+ // ticks could be 1D or 2D array of [val, val, ,,,] or [[val, label], [val, label], ...] or mixed
+ for (i=0; i<userTicks.length; i++){
+ var ut = userTicks[i];
+ var t = new this.tickRenderer(this.tickOptions);
+ if (ut.constructor == Array) {
+ t.value = new $.jsDate(ut[0]).getTime();
+ t.label = ut[1];
+ if (!this.showTicks) {
+ t.showLabel = false;
+ t.showMark = false;
+ }
+ else if (!this.showTickMarks) {
+ t.showMark = false;
+ }
+ t.setTick(t.value, this.name);
+ this._ticks.push(t);
+ }
+
+ else {
+ t.value = new $.jsDate(ut).getTime();
+ if (!this.showTicks) {
+ t.showLabel = false;
+ t.showMark = false;
+ }
+ else if (!this.showTickMarks) {
+ t.showMark = false;
+ }
+ t.setTick(t.value, this.name);
+ this._ticks.push(t);
+ }
+ }
+ this.numberTicks = userTicks.length;
+ this.min = this._ticks[0].value;
+ this.max = this._ticks[this.numberTicks-1].value;
+ this.daTickInterval = [(this.max - this.min) / (this.numberTicks - 1)/1000, 'seconds'];
+ }
+
+ ////////
+ // We don't have any ticks yet, let's make some!
+ ////////
+
+ // special case when there is only one point, make three tick marks to center the point
+ else if (this.min == null && this.max == null && db.min == db.max)
+ {
+ var onePointOpts = $.extend(true, {}, this.tickOptions, {name: this.name, value: null});
+ var delta = 300000;
+ this.min = db.min - delta;
+ this.max = db.max + delta;
+ this.numberTicks = 3;
+
+ for(var i=this.min;i<=this.max;i+= delta)
+ {
+ onePointOpts.value = i;
+
+ var t = new this.tickRenderer(onePointOpts);
+
+ if (this._overrideFormatString && this._autoFormatString != '') {
+ t.formatString = this._autoFormatString;
+ }
+
+ t.showLabel = false;
+ t.showMark = false;
+
+ this._ticks.push(t);
+ }
+
+ if(this.showTicks) {
+ this._ticks[1].showLabel = true;
+ }
+ if(this.showTickMarks) {
+ this._ticks[1].showTickMarks = true;
+ }
+ }
+ // if user specified min and max are null, we set those to make best ticks.
+ else if (this.min == null && this.max == null) {
+
+ var opts = $.extend(true, {}, this.tickOptions, {name: this.name, value: null});
+
+ // want to find a nice interval
+ var nttarget,
+ titarget;
+
+ // if no tickInterval or numberTicks options specified, make a good guess.
+ if (!this.tickInterval && !this.numberTicks) {
+ var tdim = Math.max(dim, threshold+1);
+ // how many ticks to put on the axis?
+ // date labels tend to be long. If ticks not rotated,
+ // don't use too many and have a high spacing factor.
+ // If we are rotating ticks, use a lower factor.
+ var spacingFactor = 115;
+ if (this.tickRenderer === $.jqplot.CanvasAxisTickRenderer && this.tickOptions.angle) {
+ spacingFactor = 115 - 40 * Math.abs(Math.sin(this.tickOptions.angle/180*Math.PI));
+ }
+
+ nttarget = Math.ceil((tdim-threshold)/spacingFactor + 1);
+ titarget = (max - min) / (nttarget - 1);
+ }
+
+ // If tickInterval is specified, we'll try to honor it.
+ // Not guaranteed to get this interval, but we'll get as close as
+ // we can.
+ // tickInterval will be used before numberTicks, that is if
+ // both are specified, numberTicks will be ignored.
+ else if (this.tickInterval) {
+ titarget = new $.jsDate(0).add(daTickInterval[0], daTickInterval[1]).getTime();
+ }
+
+ // if numberTicks specified, try to honor it.
+ // Not guaranteed, but will try to get close.
+ else if (this.numberTicks) {
+ nttarget = this.numberTicks;
+ titarget = (max - min) / (nttarget - 1);
+ }
+
+ // If we can use an interval of 2 weeks or less, pick best one
+ if (titarget <= 19*day) {
+ var ret = bestDateInterval(min, max, titarget);
+ var tempti = ret[0];
+ this._autoFormatString = ret[1];
+
+ min = new $.jsDate(min);
+ min = Math.floor((min.getTime() - min.getUtcOffset())/tempti) * tempti + min.getUtcOffset();
+
+ nttarget = Math.ceil((max - min) / tempti) + 1;
+ this.min = min;
+ this.max = min + (nttarget - 1) * tempti;
+
+ // if max is less than max, add an interval
+ if (this.max < max) {
+ this.max += tempti;
+ nttarget += 1;
+ }
+ this.tickInterval = tempti;
+ this.numberTicks = nttarget;
+
+ for (var i=0; i<nttarget; i++) {
+ opts.value = this.min + i * tempti;
+ t = new this.tickRenderer(opts);
+
+ if (this._overrideFormatString && this._autoFormatString != '') {
+ t.formatString = this._autoFormatString;
+ }
+ if (!this.showTicks) {
+ t.showLabel = false;
+ t.showMark = false;
+ }
+ else if (!this.showTickMarks) {
+ t.showMark = false;
+ }
+ this._ticks.push(t);
+ }
+
+ insetMult = this.tickInterval;
+ }
+
+ // should we use a monthly interval?
+ else if (titarget <= 9 * month) {
+
+ this._autoFormatString = '%v';
+
+ // how many months in an interval?
+ var intv = Math.round(titarget/month);
+ if (intv < 1) {
+ intv = 1;
+ }
+ else if (intv > 6) {
+ intv = 6;
+ }
+
+ // figure out the starting month and ending month.
+ var mstart = new $.jsDate(min).setDate(1).setHours(0,0,0,0);
+
+ // See if max ends exactly on a month
+ var tempmend = new $.jsDate(max);
+ var mend = new $.jsDate(max).setDate(1).setHours(0,0,0,0);
+
+ if (tempmend.getTime() !== mend.getTime()) {
+ mend = mend.add(1, 'month');
+ }
+
+ var nmonths = mend.diff(mstart, 'month');
+
+ nttarget = Math.ceil(nmonths/intv) + 1;
+
+ this.min = mstart.getTime();
+ this.max = mstart.clone().add((nttarget - 1) * intv, 'month').getTime();
+ this.numberTicks = nttarget;
+
+ for (var i=0; i<nttarget; i++) {
+ if (i === 0) {
+ opts.value = mstart.getTime();
+ }
+ else {
+ opts.value = mstart.add(intv, 'month').getTime();
+ }
+ t = new this.tickRenderer(opts);
+
+ if (this._overrideFormatString && this._autoFormatString != '') {
+ t.formatString = this._autoFormatString;
+ }
+ if (!this.showTicks) {
+ t.showLabel = false;
+ t.showMark = false;
+ }
+ else if (!this.showTickMarks) {
+ t.showMark = false;
+ }
+ this._ticks.push(t);
+ }
+
+ insetMult = intv * month;
+ }
+
+ // use yearly intervals
+ else {
+
+ this._autoFormatString = '%v';
+
+ // how many years in an interval?
+ var intv = Math.round(titarget/year);
+ if (intv < 1) {
+ intv = 1;
+ }
+
+ // figure out the starting and ending years.
+ var mstart = new $.jsDate(min).setMonth(0, 1).setHours(0,0,0,0);
+ var mend = new $.jsDate(max).add(1, 'year').setMonth(0, 1).setHours(0,0,0,0);
+
+ var nyears = mend.diff(mstart, 'year');
+
+ nttarget = Math.ceil(nyears/intv) + 1;
+
+ this.min = mstart.getTime();
+ this.max = mstart.clone().add((nttarget - 1) * intv, 'year').getTime();
+ this.numberTicks = nttarget;
+
+ for (var i=0; i<nttarget; i++) {
+ if (i === 0) {
+ opts.value = mstart.getTime();
+ }
+ else {
+ opts.value = mstart.add(intv, 'year').getTime();
+ }
+ t = new this.tickRenderer(opts);
+
+ if (this._overrideFormatString && this._autoFormatString != '') {
+ t.formatString = this._autoFormatString;
+ }
+ if (!this.showTicks) {
+ t.showLabel = false;
+ t.showMark = false;
+ }
+ else if (!this.showTickMarks) {
+ t.showMark = false;
+ }
+ this._ticks.push(t);
+ }
+
+ insetMult = intv * year;
+ }
+ }
+
+ ////////
+ // Some option(s) specified, work around that.
+ ////////
+
+ else {
+ if (name == 'xaxis' || name == 'x2axis') {
+ dim = this._plotDimensions.width;
+ }
+ else {
+ dim = this._plotDimensions.height;
+ }
+
+ // if min, max and number of ticks specified, user can't specify interval.
+ if (this.min != null && this.max != null && this.numberTicks != null) {
+ this.tickInterval = null;
+ }
+
+ if (this.tickInterval != null && daTickInterval != null) {
+ this.daTickInterval = daTickInterval;
+ }
+
+ // if min and max are same, space them out a bit
+ if (min == max) {
+ var adj = 24*60*60*500; // 1/2 day
+ min -= adj;
+ max += adj;
+ }
+
+ range = max - min;
+
+ var optNumTicks = 2 + parseInt(Math.max(0, dim-100)/100, 10);
+
+
+ var rmin, rmax;
+
+ rmin = (this.min != null) ? new $.jsDate(this.min).getTime() : min - range/2*(this.padMin - 1);
+ rmax = (this.max != null) ? new $.jsDate(this.max).getTime() : max + range/2*(this.padMax - 1);
+ this.min = rmin;
+ this.max = rmax;
+ range = this.max - this.min;
+
+ if (this.numberTicks == null){
+ // if tickInterval is specified by user, we will ignore computed maximum.
+ // max will be equal or greater to fit even # of ticks.
+ if (this.daTickInterval != null) {
+ var nc = new $.jsDate(this.max).diff(this.min, this.daTickInterval[1], true);
+ this.numberTicks = Math.ceil(nc/this.daTickInterval[0]) +1;
+ // this.max = new $.jsDate(this.min).add(this.numberTicks-1, this.daTickInterval[1]).getTime();
+ this.max = new $.jsDate(this.min).add((this.numberTicks-1) * this.daTickInterval[0], this.daTickInterval[1]).getTime();
+ }
+ else if (dim > 200) {
+ this.numberTicks = parseInt(3+(dim-200)/100, 10);
+ }
+ else {
+ this.numberTicks = 2;
+ }
+ }
+
+ insetMult = range / (this.numberTicks-1)/1000;
+
+ if (this.daTickInterval == null) {
+ this.daTickInterval = [insetMult, 'seconds'];
+ }
+
+
+ for (var i=0; i<this.numberTicks; i++){
+ var min = new $.jsDate(this.min);
+ tt = min.add(i*this.daTickInterval[0], this.daTickInterval[1]).getTime();
+ var t = new this.tickRenderer(this.tickOptions);
+ // var t = new $.jqplot.AxisTickRenderer(this.tickOptions);
+ if (!this.showTicks) {
+ t.showLabel = false;
+ t.showMark = false;
+ }
+ else if (!this.showTickMarks) {
+ t.showMark = false;
+ }
+ t.setTick(tt, this.name);
+ this._ticks.push(t);
+ }
+ }
+
+ if (this.tickInset) {
+ this.min = this.min - this.tickInset * insetMult;
+ this.max = this.max + this.tickInset * insetMult;
+ }
+
+ if (this._daTickInterval == null) {
+ this._daTickInterval = this.daTickInterval;
+ }
+
+ ticks = null;
+ };
+
+})(jQuery);
+
/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.0b2_r792
- *
- * Copyright (c) 2009-2011 Chris Leonello
+ * Title: jqPlot Charts
+ *
+ * Pure JavaScript plotting plugin for jQuery.
+ *
+ * About: Version
+ *
+ * version: 1.0.8
+ * revision: 1250
+ *
+ * About: Copyright & License
+ *
+ * Copyright (c) 2009-2013 Chris Leonello
* jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
+ * under both the MIT and GPL version 2.0 licenses. This means that you can
+ * choose the license that best suits your project and use it accordingly.
+ *
+ * See <GPL Version 2> and <MIT License> contained within this distribution for further information.
*
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
+ * The author would appreciate an email letting him know of any substantial
+ * use of jqPlot. You can reach the author at: chris at jqplot dot com
+ * or see http://www.jqplot.com/info.php. This is, of course, not required.
*
* If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
+ * making a donation at: http://www.jqplot.com/donate.php.
*
* sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
+ *
* version 2007.04.27
* author Ash Searle
* http://hexmen.com/blog/2007/03/printf-sprintf/
* The author (Ash Searle) has placed this code in the public domain:
* "This code is unrestricted: you are free to use it however you like."
*
+ *
+ * About: Introduction
+ *
+ * jqPlot requires jQuery (1.4+ required for certain features). jQuery 1.4.2 is included in the distribution.
+ * To use jqPlot include jQuery, the jqPlot jQuery plugin, the jqPlot css file and optionally
+ * the excanvas script for IE support in your web page:
+ *
+ * > <!--[if lt IE 9]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]-->
+ * > <script language="javascript" type="text/javascript" src="jquery-1.4.4.min.js"></script>
+ * > <script language="javascript" type="text/javascript" src="jquery.jqplot.min.js"></script>
+ * > <link rel="stylesheet" type="text/css" href="jquery.jqplot.css" />
+ *
+ * jqPlot can be customized by overriding the defaults of any of the objects which make
+ * up the plot. The general usage of jqplot is:
+ *
+ * > chart = $.jqplot('targetElemId', [dataArray,...], {optionsObject});
+ *
+ * The options available to jqplot are detailed in <jqPlot Options> in the jqPlotOptions.txt file.
+ *
+ * An actual call to $.jqplot() may look like the
+ * examples below:
+ *
+ * > chart = $.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]]);
+ *
+ * or
+ *
+ * > dataArray = [34,12,43,55,77];
+ * > chart = $.jqplot('targetElemId', [dataArray, ...], {title:'My Plot', axes:{yaxis:{min:20, max:100}}});
+ *
+ * For more inforrmation, see <jqPlot Usage>.
+ *
+ * About: Usage
+ *
+ * See <jqPlot Usage>
+ *
+ * About: Available Options
+ *
+ * See <jqPlot Options> for a list of options available thorugh the options object (not complete yet!)
+ *
+ * About: Options Usage
+ *
+ * See <Options Tutorial>
+ *
+ * About: Changes
+ *
+ * See <Change Log>
+ *
*/
-(function(w){var l;w.fn.emptyForce=function(){for(var O=0,P;(P=w(this)[O])!=null;O++){if(P.nodeType===1){jQuery.cleanData(P.getElementsByTagName("*"))}if(w.jqplot_use_excanvas){P.outerHTML=""}else{while(P.firstChild){P.removeChild(P.firstChild)}}P=null}return w(this)};w.fn.removeChildForce=function(O){while(O.firstChild){this.removeChildForce(O.firstChild);O.removeChild(O.firstChild)}};w.jqplot=function(U,R,P){var Q,O;if(P==null){if(jQuery.isArray(R)){Q=R;O=null}else{if(typeof(R)==="object"){Q=null;O=R}}}else{Q=R;O=P}var T=new C();w("#"+U).removeClass("jqplot-error");if(w.jqplot.config.catchErrors){try{T.init(U,Q,O);T.draw();T.themeEngine.init.call(T);return T}catch(S){var V=w.jqplot.config.errorMessage||S.message;w("#"+U).append('<div class="jqplot-error-message">'+V+"</div>");w("#"+U).addClass("jqplot-error");document.getElementById(U).style.background=w.jqplot.config.errorBackground;document.getElementById(U).style.border=w.jqplot.config.errorBorder;document.getElementById(U).style.fontFamily=w.jqplot.config.errorFontFamily;document.getElementById(U).style.fontSize=w.jqplot.config.errorFontSize;document.getElementById(U).style.fontStyle=w.jqplot.config.errorFontStyle;document.getElementById(U).style.fontWeight=w.jqplot.config.errorFontWeight}}else{T.init(U,Q,O);T.draw();T.themeEngine.init.call(T);return T}};w.jqplot.version="1.0.0b2_r792";w.jqplot.CanvasManager=function(){if(typeof w.jqplot.CanvasManager.canvases=="undefined"){w.jqplot.CanvasManager.canvases=[];w.jqplot.CanvasManager.free=[]}var O=[];this.getCanvas=function(){var R;var Q=true;if(!w.jqplot.use_excanvas){for(var S=0,P=w.jqplot.CanvasManager.canvases.length;S<P;S++){if(w.jqplot.CanvasManager.free[S]===true){Q=false;R=w.jqplot.CanvasManager.canvases[S];w.jqplot.CanvasManager.free[S]=false;O.push(S);break}}}if(Q){R=document.createElement("canvas");O.push(w.jqplot.CanvasManager.canvases.length);w.jqplot.CanvasManager.canvases.push(R);w.jqplot.CanvasManager.free.push(false)}return R};this.initCanvas=function(P){if(w.jqplot.use_excanvas){return window.G_vmlCanvasManager.initElement(P)}return P};this.freeAllCanvases=function(){for(var Q=0,P=O.length;Q<P;Q++){this.freeCanvas(O[Q])}O=[]};this.freeCanvas=function(P){if(w.jqplot.use_excanvas){window.G_vmlCanvasManager.uninitElement(w.jqplot.CanvasManager.canvases[P]);w.jqplot.CanvasManager.canvases[P]=null}else{var Q=w.jqplot.CanvasManager.canvases[P];Q.getContext("2d").clearRect(0,0,Q.width,Q.height);w(Q).unbind().removeAttr("class").removeAttr("style");w(Q).css({left:"",top:"",position:""});Q.width=0;Q.height=0;w.jqplot.CanvasManager.free[P]=true}}};w.jqplot.log=function(){if(window.console){console.log.apply(console,arguments)}};w.jqplot.config={enablePlugins:false,defaultHeight:300,defaultWidth:400,UTCAdjust:false,timezoneOffset:new Date(new Date().getTimezoneOffset()*60000),errorMessage:"",errorBackground:"",errorBorder:"",errorFontFamily:"",errorFontSize:"",errorFontStyle:"",errorFontWeight:"",catchErrors:false,defaultTickFormatString:"%.1f",defaultColors:["#4bb2c5","#EAA228","#c5b47f","#579575","#839557","#958c12","#953579","#4b5de4","#d8b83f","#ff5800","#0085cc","#c747a3","#cddf54","#FBD178","#26B4E3","#bd70c7"],defaultNegativeColors:["#498991","#C08840","#9F9274","#546D61","#646C4A","#6F6621","#6E3F5F","#4F64B0","#A89050","#C45923","#187399","#945381","#959E5C","#C7AF7B","#478396","#907294"]};w.jqplot.arrayMax=function(O){return Math.max.apply(Math,O)};w.jqplot.arrayMin=function(O){return Math.min.apply(Math,O)};w.jqplot.enablePlugins=w.jqplot.config.enablePlugins;w.jqplot.support_canvas=function(){if(typeof w.jqplot.support_canvas.result=="undefined"){w.jqplot.support_canvas.result=!!document.createElement("canvas").getContext}return w.jqplot.support_canvas.result};w.jqplot.support_canvas_text=function(){if(typeof w.jqplot.support_canvas_text.result=="undefined"){w.jqplot.support_canvas_text.result=!!(document.createElement("canvas").getContext&&typeof document.createElement("canvas").getContext("2d").fillText=="function")}return w.jqplot.support_canvas_text.result};w.jqplot.use_excanvas=(w.browser.msie&&!w.jqplot.support_canvas())?true:false;w.jqplot.preInitHooks=[];w.jqplot.postInitHooks=[];w.jqplot.preParseOptionsHooks=[];w.jqplot.postParseOptionsHooks=[];w.jqplot.preDrawHooks=[];w.jqplot.postDrawHooks=[];w.jqplot.preDrawSeriesHooks=[];w.jqplot.postDrawSeriesHooks=[];w.jqplot.preDrawLegendHooks=[];w.jqplot.addLegendRowHooks=[];w.jqplot.preSeriesInitHooks=[];w.jqplot.postSeriesInitHooks=[];w.jqplot.preParseSeriesOptionsHooks=[];w.jqplot.postParseSeriesOptionsHooks=[];w.jqplot.eventListenerHooks=[];w.jqplot.preDrawSeriesShadowHooks=[];w.jqplot.postDrawSeriesShadowHooks=[];w.jqplot.ElemContainer=function(){this._elem;this._plotWidth;this._plotHeight;this._plotDimensions={height:null,width:null}};w.jqplot.ElemContainer.prototype.createElement=function(R,T,P,Q,U){this._offsets=T;var O=P||"jqplot";var S=document.createElement(R);this._elem=w(S);this._elem.addClass(O);this._elem.css(Q);this._elem.attr(U);S=null;return this._elem};w.jqplot.ElemContainer.prototype.getWidth=function(){if(this._elem){return this._elem.outerWidth(true)}else{return null}};w.jqplot.ElemContainer.prototype.getHeight=function(){if(this._elem){return this._elem.outerHeight(true)}else{return null}};w.jqplot.ElemContainer.prototype.getPosition=function(){if(this._elem){return this._elem.position()}else{return{top:null,left:null,bottom:null,right:null}}};w.jqplot.ElemContainer.prototype.getTop=function(){return this.getPosition().top};w.jqplot.ElemContainer.prototype.getLeft=function(){return this.getPosition().left};w.jqplot.ElemContainer.prototype.getBottom=function(){return this._elem.css("bottom")};w.jqplot.ElemContainer.prototype.getRight=function(){return this._elem.css("right")};function m(O){w.jqplot.ElemContainer.call(this);this.name=O;this._series=[];this.show=false;this.tickRenderer=w.jqplot.AxisTickRenderer;this.tickOptions={};this.labelRenderer=w.jqplot.AxisLabelRenderer;this.labelOptions={};this.label=null;this.showLabel=true;this.min=null;this.max=null;this.autoscale=false;this.pad=1.2;this.padMax=null;this.padMin=null;this.ticks=[];this.numberTicks;this.tickInterval;this.renderer=w.jqplot.LinearAxisRenderer;this.rendererOptions={};this.showTicks=true;this.showTickMarks=true;this.showMinorTicks=true;this.useSeriesColor=false;this.borderWidth=null;this.borderColor=null;this._dataBounds={min:null,max:null};this._intervalStats=[];this._offsets={min:null,max:null};this._ticks=[];this._label=null;this.syncTicks=null;this.tickSpacing=75;this._min=null;this._max=null;this._tickInterval=null;this._numberTicks=null;this.__ticks=null;this._options={}}m.prototype=new w.jqplot.ElemContainer();m.prototype.constructor=m;m.prototype.init=function(){this.renderer=new this.renderer();this.tickOptions.axis=this.name;if(this.tickOptions.showMark==null){this.tickOptions.showMark=this.showTicks}if(this.tickOptions.showMark==null){this.tickOptions.showMark=this.showTickMarks}if(this.tickOptions.showLabel==null){this.tickOptions.showLabel=this.showTicks}if(this.label==null||this.label==""){this.showLabel=false}else{this.labelOptions.label=this.label}if(this.showLabel==false){this.labelOptions.show=false}if(this.pad==0){this.pad=1}if(this.padMax==0){this.padMax=1}if(this.padMin==0){this.padMin=1}if(this.padMax==null){this.padMax=(this.pad-1)/2+1}if(this.padMin==null){this.padMin=(this.pad-1)/2+1}this.pad=this.padMax+this.padMin-1;if(this.min!=null||this.max!=null){this.autoscale=false}if(this.syncTicks==null&&this.name.indexOf("y")>-1){this.syncTicks=true}else{if(this.syncTicks==null){this.syncTicks=false}}this.renderer.init.call(this,this.rendererOptions)};m.prototype.draw=function(O,P){if(this.__ticks){this.__ticks=null}return this.renderer.draw.call(this,O,P)};m.prototype.set=function(){this.renderer.set.call(this)};m.prototype.pack=function(P,O){if(this.show){this.renderer.pack.call(this,P,O)}if(this._min==null){this._min=this.min;this._max=this.max;this._tickInterval=this.tickInterval;this._numberTicks=this.numberTicks;this.__ticks=this._ticks}};m.prototype.reset=function(){this.renderer.reset.call(this)};m.prototype.resetScale=function(O){w.extend(true,this,{min:null,max:null,numberTicks:null,tickInterval:null,_ticks:[],ticks:[]},O);this.resetDataBounds()};m.prototype.resetDataBounds=function(){var O=this._dataBounds;O.min=null;O.max=null;var R=(this.show)?true:false;for(var Q=0;Q<this._series.length;Q++){var S=this._series[Q];var V=S._plotData;var T=1,U=1;if(S._type!=null&&S._type=="ohlc"){T=3;U=2}for(var P=0;P<V.length;P++){if(this.name=="xaxis"||this.name=="x2axis"){if((V[P][0]!=null&&V[P][0]<O.min)||O.min==null){O.min=V[P][0]}if((V[P][0]!=null&&V[P][0]>O.max)||O.max==null){O.max=V[P][0]}}else{if((V[P][T]!=null&&V[P][T]<O.min)||O.min==null){O.min=V[P][T]}if((V[P][U]!=null&&V[P][U]>O.max)||O.max==null){O.max=V[P][U]}}}if(R&&S.renderer.constructor!==w.jqplot.BarRenderer){R=false}else{if(R&&this._options.hasOwnProperty("forceTickAt0")&&this._options.forceTickAt0==false){R=false}else{if(R&&S.renderer.constructor===w.jqplot.BarRenderer){if(S.barDirection=="vertical"&&this.name!="xaxis"&&this.name!="x2axis"){if(this._options.pad!=null||this._options.padMin!=null){R=false}}else{if(S.barDirection=="horizontal"&&(this.name=="xaxis"||this.name=="x2axis")){if(this._options.pad!=null||this._options.padMin!=null){R=false}}}}}}}if(R&&this.renderer.constructor===w.jqplot.LinearAxisRenderer&&O.min>=0){this.padMin=1;this.forceTickAt0=true}};function h(O){w.jqplot.ElemContainer.call(this);this.show=false;this.location="ne";this.labels=[];this.showLabels=true;this.showSwatches=true;this.placement="insideGrid";this.xoffset=0;this.yoffset=0;this.border;this.background;this.textColor;this.fontFamily;this.fontSize;this.rowSpacing="0.5em";this.renderer=w.jqplot.TableLegendRenderer;this.rendererOptions={};this.preDraw=false;this.marginTop=null;this.marginRight=null;this.marginBottom=null;this.marginLeft=null;this.escapeHtml=false;this._series=[];w.extend(true,this,O)}h.prototype=new w.jqplot.ElemContainer();h.prototype.constructor=h;h.prototype.setOptions=function(O){w.extend(true,this,O);if(this.placement=="inside"){this.placement="insideGrid"}if(this.xoffset>0){if(this.placement=="insideGrid"){switch(this.location){case"nw":case"w":case"sw":if(this.marginLeft==null){this.marginLeft=this.xoffset+"px"}this.marginRight="0px";break;case"ne":case"e":case"se":default:if(this.marginRight==null){this.marginRight=this.xoffset+"px"}this.marginLeft="0px";break}}else{if(this.placement=="outside"){switch(this.location){case"nw":case"w":case"sw":if(this.marginRight==null){this.marginRight=this.xoffset+"px"}this.marginLeft="0px";break;case"ne":case"e":case"se":default:if(this.marginLeft==null){this.marginLeft=this.xoffset+"px"}this.marginRight="0px";break}}}this.xoffset=0}if(this.yoffset>0){if(this.placement=="outside"){switch(this.location){case"sw":case"s":case"se":if(this.marginTop==null){this.marginTop=this.yoffset+"px"}this.marginBottom="0px";break;case"ne":case"n":case"nw":default:if(this.marginBottom==null){this.marginBottom=this.yoffset+"px"}this.marginTop="0px";break}}else{if(this.placement=="insideGrid"){switch(this.location){case"sw":case"s":case"se":if(this.marginBottom==null){this.marginBottom=this.yoffset+"px"}this.marginTop="0px";break;case"ne":case"n":case"nw":default:if(this.marginTop==null){this.marginTop=this.yoffset+"px"}this.marginBottom="0px";break}}}this.yoffset=0}};h.prototype.init=function(){this.renderer=new this.renderer();this.renderer.init.call(this,this.rendererOptions)};h.prototype.draw=function(P){for(var O=0;O<w.jqplot.preDrawLegendHooks.length;O++){w.jqplot.preDrawLegendHooks[O].call(this,P)}return this.renderer.draw.call(this,P)};h.prototype.pack=function(O){this.renderer.pack.call(this,O)};function n(O){w.jqplot.ElemContainer.call(this);this.text=O;this.show=true;this.fontFamily;this.fontSize;this.textAlign;this.textColor;this.renderer=w.jqplot.DivTitleRenderer;this.rendererOptions={}}n.prototype=new w.jqplot.ElemContainer();n.prototype.constructor=n;n.prototype.init=function(){this.renderer=new this.renderer();this.renderer.init.call(this,this.rendererOptions)};n.prototype.draw=function(O){return this.renderer.draw.call(this,O)};n.prototype.pack=function(){this.renderer.pack.call(this)};function D(){w.jqplot.ElemContainer.call(this);this.show=true;this.xaxis="xaxis";this._xaxis;this.yaxis="yaxis";this._yaxis;this.gridBorderWidth=2;this.renderer=w.jqplot.LineRenderer;this.rendererOptions={};this.data=[];this.gridData=[];this.label="";this.showLabel=true;this.color;this.lineWidth=2.5;this.lineJoin="round";this.lineCap="round";this.shadow=true;this.shadowAngle=45;this.shadowOffset=1.25;this.shadowDepth=3;this.shadowAlpha="0.1";this.breakOnNull=false;this.markerRenderer=w.jqplot.MarkerRenderer;this.markerOptions={};this.showLine=true;this.showMarker=true;this.index;this.fill=false;this.fillColor;this.fillAlpha;this.fillAndStroke=false;this.disableStack=false;this._stack=false;this.neighborThreshold=4;this.fillToZero=false;this.fillToValue=0;this.fillAxis="y";this.useNegativeColors=true;this._stackData=[];this._plotData=[];this._plotValues={x:[],y:[]};this._intervals={x:{},y:{}};this._prevPlotData=[];this._prevGridData=[];this._stackAxis="y";this._primaryAxis="_xaxis";this.canvas=new w.jqplot.GenericCanvas();this.shadowCanvas=new w.jqplot.GenericCanvas();this.plugins={};this._sumy=0;this._sumx=0;this._type=""}D.prototype=new w.jqplot.ElemContainer();D.prototype.constructor=D;D.prototype.init=function(Q,U,S){this.index=Q;this.gridBorderWidth=U;var T=this.data;var P=[],R;for(R=0;R<T.length;R++){if(!this.breakOnNull){if(T[R]==null||T[R][0]==null||T[R][1]==null){continue}else{P.push(T[R])}}else{P.push(T[R])}}this.data=P;if(!this.fillColor){this.fillColor=this.color}if(this.fillAlpha){var O=w.jqplot.normalize2rgb(this.fillColor);var O=w.jqplot.getColorComponents(O);this.fillColor="rgba("+O[0]+","+O[1]+","+O[2]+","+this.fillAlpha+")"}this.renderer=new this.renderer();this.renderer.init.call(this,this.rendererOptions,S);this.markerRenderer=new this.markerRenderer();if(!this.markerOptions.color){this.markerOptions.color=this.color}if(this.markerOptions.show==null){this.markerOptions.show=this.showMarker}this.showMarker=this.markerOptions.show;this.markerRenderer.init(this.markerOptions)};D.prototype.draw=function(U,R,T){var P=(R==l)?{}:R;U=(U==l)?this.canvas._ctx:U;var O,S,Q;for(O=0;O<w.jqplot.preDrawSeriesHooks.length;O++){w.jqplot.preDrawSeriesHooks[O].call(this,U,P)}if(this.show){this.renderer.setGridData.call(this,T);if(!P.preventJqPlotSeriesDrawTrigger){w(U.canvas).trigger("jqplotSeriesDraw",[this.data,this.gridData])}S=[];if(P.data){S=P.data}else{if(!this._stack){S=this.data}else{S=this._plotData}}Q=P.gridData||this.renderer.makeGridData.call(this,S,T);this.renderer.draw.call(this,U,Q,P,T)}for(O=0;O<w.jqplot.postDrawSeriesHooks.length;O++){w.jqplot.postDrawSeriesHooks[O].call(this,U,P)}U=R=T=O=S=Q=null};D.prototype.drawShadow=function(U,R,T){var P=(R==l)?{}:R;U=(U==l)?this.shadowCanvas._ctx:U;var O,S,Q;for(O=0;O<w.jqplot.preDrawSeriesShadowHooks.length;O++){w.jqplot.preDrawSeriesShadowHooks[O].call(this,U,P)}if(this.shadow){this.renderer.setGridData.call(this,T);S=[];if(P.data){S=P.data}else{if(!this._stack){S=this.data}else{S=this._plotData}}Q=P.gridData||this.renderer.makeGridData.call(this,S,T);this.renderer.drawShadow.call(this,U,Q,P)}for(O=0;O<w.jqplot.postDrawSeriesShadowHooks.length;O++){w.jqplot.postDrawSeriesShadowHooks[O].call(this,U,P)}U=R=T=O=S=Q=null};D.prototype.toggleDisplay=function(P){var O,Q;if(P.data.series){O=P.data.series}else{O=this}if(P.data.speed){Q=P.data.speed}if(Q){if(O.canvas._elem.is(":hidden")){if(O.shadowCanvas._elem){O.shadowCanvas._elem.fadeIn(Q)}O.canvas._elem.fadeIn(Q);O.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+O.index).fadeIn(Q)}else{if(O.shadowCanvas._elem){O.shadowCanvas._elem.fadeOut(Q)}O.canvas._elem.fadeOut(Q);O.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+O.index).fadeOut(Q)}}else{if(O.canvas._elem.is(":hidden")){if(O.shadowCanvas._elem){O.shadowCanvas._elem.show()}O.canvas._elem.show();O.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+O.index).show()}else{if(O.shadowCanvas._elem){O.shadowCanvas._elem.hide()}O.canvas._elem.hide();O.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+O.index).hide()}}};function x(){w.jqplot.ElemContainer.call(this);this.drawGridlines=true;this.gridLineColor="#cccccc";this.gridLineWidth=1;this.background="#fffdf6";this.borderColor="#999999";this.borderWidth=2;this.drawBorder=true;this.shadow=true;this.shadowAngle=45;this.shadowOffset=1.5;this.shadowWidth=3;this.shadowDepth=3;this.shadowColor=null;this.shadowAlpha="0.07";this._left;this._top;this._right;this._bottom;this._width;this._height;this._axes=[];this.renderer=w.jqplot.CanvasGridRenderer;this.rendererOptions={};this._offsets={top:null,bottom:null,left:null,right:null}}x.prototype=new w.jqplot.ElemContainer();x.prototype.constructor=x;x.prototype.init=function(){this.renderer=new this.renderer();this.renderer.init.call(this,this.rendererOptions)};x.prototype.createElement=function(O,P){this._offsets=O;return this.renderer.createElement.call(this,P)};x.prototype.draw=function(){this.renderer.draw.call(this)};w.jqplot.GenericCanvas=function(){w.jqplot.ElemContainer.call(this);this._ctx};w.jqplot.GenericCanvas.prototype=new w.jqplot.ElemContainer();w.jqplot.GenericCanvas.prototype.constructor=w.jqplot.GenericCanvas;w.jqplot.GenericCanvas.prototype.createElement=function(S,Q,P,T){this._offsets=S;var O="jqplot";if(Q!=l){O=Q}var R;R=T.canvasManager.getCanvas();if(P!=null){this._plotDimensions=P}R.width=this._plotDimensions.width-this._offsets.left-this._offsets.right;R.height=this._plotDimensions.height-this._offsets.top-this._offsets.bottom;this._elem=w(R);this._elem.css({position:"absolute",left:this._offsets.left,top:this._offsets.top});this._elem.addClass(O);R=T.canvasManager.initCanvas(R);R=null;return this._elem};w.jqplot.GenericCanvas.prototype.setContext=function(){this._ctx=this._elem.get(0).getContext("2d");return this._ctx};w.jqplot.GenericCanvas.prototype.resetCanvas=function(){if(this._elem){if(w.jqplot.use_excanvas){window.G_vmlCanvasManager.uninitElement(this._elem.get(0))}this._elem.emptyForce()}this._ctx=null};w.jqplot.HooksManager=function(){this.hooks=[]};w.jqplot.HooksManager.prototype.addOnce=function(P){var Q=false,O;for(O=0;O<this.hooks.length;O++){if(this.hooks[O][0]==P){Q=true}}if(!Q){this.hooks.push(P)}};w.jqplot.HooksManager.prototype.add=function(O){this.hooks.push(O)};w.jqplot.EventListenerManager=function(){this.hooks=[]};w.jqplot.EventListenerManager.prototype.addOnce=function(R,Q){var S=false,P,O;for(O=0;O<this.hooks.length;O++){P=this.hooks[O];if(P[0]==R&&P[1]==Q){S=true}}if(!S){this.hooks.push([R,Q])}};w.jqplot.EventListenerManager.prototype.add=function(P,O){this.hooks.push([P,O])};function C(){this.data=[];this.dataRenderer;this.dataRendererOptions;this.noDataIndicator={show:false,indicator:"Loading Data...",axes:{xaxis:{min:0,max:10,tickInterval:2,show:true},yaxis:{min:0,max:12,tickInterval:3,show:true}}};this.targetId=null;this.target=null;this.defaults={axesDefaults:{},axes:{xaxis:{},yaxis:{},x2axis:{},y2axis:{},y3axis:{},y4axis:{},y5axis:{},y6axis:{},y7axis:{},y8axis:{},y9axis:{}},seriesDefaults:{},series:[]};this.series=[];this.axes={xaxis:new m("xaxis"),yaxis:new m("yaxis"),x2axis:new m("x2axis"),y2axis:new m("y2axis"),y3axis:new m("y3axis"),y4axis:new m("y4axis"),y5axis:new m("y5axis"),y6axis:new m("y6axis"),y7axis:new m("y7axis"),y8axis:new m("y8axis"),y9axis:new m("y9axis")};this.grid=new x();this.legend=new h();this.baseCanvas=new w.jqplot.GenericCanvas();this.seriesStack=[];this.previousSeriesStack=[];this.eventCanvas=new w.jqplot.GenericCanvas();this._width=null;this._height=null;this._plotDimensions={height:null,width:null};this._gridPadding={top:null,right:null,bottom:null,left:null};this._defaultGridPadding={top:10,right:10,bottom:23,left:10};this.syncXTicks=true;this.syncYTicks=true;this.seriesColors=w.jqplot.config.defaultColors;this.negativeSeriesColors=w.jqplot.config.defaultNegativeColors;this.sortData=true;var Q=0;this.textColor;this.fontFamily;this.fontSize;this.title=new n();this.options={};this.stackSeries=false;this.defaultAxisStart=1;this._stackData=[];this._plotData=[];this.plugins={};this._drawCount=0;this.drawIfHidden=false;this.captureRightClick=false;this.themeEngine=new w.jqplot.ThemeEngine();this._sumy=0;this._sumx=0;this.preInitHooks=new w.jqplot.HooksManager();this.postInitHooks=new w.jqplot.HooksManager();this.preParseOptionsHooks=new w.jqplot.HooksManager();this.postParseOptionsHooks=new w.jqplot.HooksManager();this.preDrawHooks=new w.jqplot.HooksManager();this.postDrawHooks=new w.jqplot.HooksManager();this.preDrawSeriesHooks=new w.jqplot.HooksManager();this.postDrawSeriesHooks=new w.jqplot.HooksManager();this.preDrawLegendHooks=new w.jqplot.HooksManager();this.addLegendRowHooks=new w.jqplot.HooksManager();this.preSeriesInitHooks=new w.jqplot.HooksManager();this.postSeriesInitHooks=new w.jqplot.HooksManager();this.preParseSeriesOptionsHooks=new w.jqplot.HooksManager();this.postParseSeriesOptionsHooks=new w.jqplot.HooksManager();this.eventListenerHooks=new w.jqplot.EventListenerManager();this.preDrawSeriesShadowHooks=new w.jqplot.HooksManager();this.postDrawSeriesShadowHooks=new w.jqplot.HooksManager();this.colorGenerator=w.jqplot.ColorGenerator;this.canvasManager=new w.jqplot.CanvasManager();this.init=function(Z,W,ab){ab=ab||{};for(var X=0;X<w.jqplot.preInitHooks.length;X++){w.jqplot.preInitHooks[X].call(this,Z,W,ab)}for(var X=0;X<this.preInitHooks.hooks.length;X++){this.preInitHooks.hooks[X].call(this,Z,W,ab)}this.targetId="#"+Z;this.target=w("#"+Z);this.target.removeClass("jqplot-error");if(!this.target.get(0)){throw"No plot target specified"}if(this.target.css("position")=="static"){this.target.css("position","relative")}if(!this.target.hasClass("jqplot-target")){this.target.addClass("jqplot-target")}if(!this.target.height()){var Y;if(ab&&ab.height){Y=parseInt(ab.height,10)}else{if(this.target.attr("data-height")){Y=parseInt(this.target.attr("data-height"),10)}else{Y=parseInt(w.jqplot.config.defaultHeight,10)}}this._height=Y;this.target.css("height",Y+"px")}else{this._height=Y=this.target.height()}if(!this.target.width()){var aa;if(ab&&ab.width){aa=parseInt(ab.width,10)}else{if(this.target.attr("data-width")){aa=parseInt(this.target.attr("data-width"),10)}else{aa=parseInt(w.jqplot.config.defaultWidth,10)}}this._width=aa;this.target.css("width",aa+"px")}else{this._width=aa=this.target.width()}this._plotDimensions.height=this._height;this._plotDimensions.width=this._width;this.grid._plotDimensions=this._plotDimensions;this.title._plotDimensions=this._plotDimensions;this.baseCanvas._plotDimensions=this._plotDimensions;this.eventCanvas._plotDimensions=this._plotDimensions;this.legend._plotDimensions=this._plotDimensions;if(this._height<=0||this._width<=0||!this._height||!this._width){throw"Canvas dimension not set"}if(ab.dataRenderer&&jQuery.isFunction(ab.dataRenderer)){if(ab.dataRendererOptions){this.dataRendererOptions=ab.dataRendererOptions}this.dataRenderer=ab.dataRenderer;W=this.dataRenderer(W,this,this.dataRendererOptions)}if(ab.noDataIndicator&&jQuery.isPlainObject(ab.noDataIndicator)){w.extend(true,this.noDataIndicator,ab.noDataIndicator)}if(W==null||jQuery.isArray(W)==false||W.length==0||jQuery.isArray(W[0])==false||W[0].length==0){if(this.noDataIndicator.show==false){throw {name:"DataError",message:"No data to plot."}}else{for(var S in this.noDataIndicator.axes){for(var U in this.noDataIndicator.axes[S]){this.axes[S][U]=this.noDataIndicator.axes[S][U]}}this.postDrawHooks.add(function(){var ah=this.eventCanvas.getHeight();var ae=this.eventCanvas.getWidth();var ad=w('<div class="jqplot-noData-container" style="position:absolute;"></div>');this.target.append(ad);ad.height(ah);ad.width(ae);ad.css("top",this.eventCanvas._offsets.top);ad.css("left",this.eventCanvas._offsets.left);var ag=w('<div class="jqplot-noData-contents" style="text-align:center; position:relative; margin-left:auto; margin-right:auto;"></div>');ad.append(ag);ag.html(this.noDataIndicator.indicator);var af=ag.height();var ac=ag.width();ag.height(af);ag.width(ac);ag.css("top",(ah-af)/2+"px")})}}this.data=W;this.parseOptions(ab);if(this.textColor){this.target.css("color",this.textColor)}if(this.fontFamily){this.target.css("font-family",this.fontFamily)}if(this.fontSize){this.target.css("font-size",this.fontSize)}this.title.init();this.legend.init();this._sumy=0;this._sumx=0;for(var X=0;X<this.series.length;X++){this.seriesStack.push(X);this.previousSeriesStack.push(X);this.series[X].shadowCanvas._plotDimensions=this._plotDimensions;this.series[X].canvas._plotDimensions=this._plotDimensions;for(var V=0;V<w.jqplot.preSeriesInitHooks.length;V++){w.jqplot.preSeriesInitHooks[V].call(this.series[X],Z,W,this.options.seriesDefaults,this.options.series[X],this)}for(var V=0;V<this.preSeriesInitHooks.hooks.length;V++){this.preSeriesInitHooks.hooks[V].call(this.series[X],Z,W,this.options.seriesDefaults,this.options.series[X],this)}this.populatePlotData(this.series[X],X);this.series[X]._plotDimensions=this._plotDimensions;this.series[X].init(X,this.grid.borderWidth,this);for(var V=0;V<w.jqplot.postSeriesInitHooks.length;V++){w.jqplot.postSeriesInitHooks[V].call(this.series[X],Z,W,this.options.seriesDefaults,this.options.series[X],this)}for(var V=0;V<this.postSeriesInitHooks.hooks.length;V++){this.postSeriesInitHooks.hooks[V].call(this.series[X],Z,W,this.options.seriesDefaults,this.options.series[X],this)}this._sumy+=this.series[X]._sumy;this._sumx+=this.series[X]._sumx}for(var T in this.axes){this.axes[T]._plotDimensions=this._plotDimensions;this.axes[T].init()}if(this.sortData){O(this.series)}this.grid.init();this.grid._axes=this.axes;this.legend._series=this.series;for(var X=0;X<w.jqplot.postInitHooks.length;X++){w.jqplot.postInitHooks[X].call(this,Z,W,ab)}for(var X=0;X<this.postInitHooks.hooks.length;X++){this.postInitHooks.hooks[X].call(this,Z,W,ab)}};this.resetAxesScale=function(X,T){var V=T||{};var W=X||this.axes;if(W===true){W=this.axes}if(jQuery.isArray(W)){for(var U=0;U<W.length;U++){this.axes[W[U]].resetScale(V[W[U]])}}else{if(typeof(W)==="object"){for(var S in W){this.axes[S].resetScale(V[S])}}}};this.reInitialize=function(){this._height=this.target.height();this._width=this.target.width();if(this._height<=0||this._width<=0||!this._height||!this._width){throw"Target dimension not set"}this._plotDimensions.height=this._height;this._plotDimensions.width=this._width;this.grid._plotDimensions=this._plotDimensions;this.title._plotDimensions=this._plotDimensions;this.baseCanvas._plotDimensions=this._plotDimensions;this.eventCanvas._plotDimensions=this._plotDimensions;this.legend._plotDimensions=this._plotDimensions;for(var W in this.axes){this.axes[W]._plotWidth=this._width;this.axes[W]._plotHeight=this._height}this.title._plotWidth=this._width;if(this.textColor){this.target.css("color",this.textColor)}if(this.fontFamily){this.target.css("font-family",this.fontFamily)}if(this.fontSize){this.target.css("font-size",this.fontSize)}this._sumy=0;this._sumx=0;for(var U=0;U<this.series.length;U++){this.populatePlotData(this.series[U],U);this.series[U]._plotDimensions=this._plotDimensions;this.series[U].canvas._plotDimensions=this._plotDimensions;this._sumy+=this.series[U]._sumy;this._sumx+=this.series[U]._sumx}for(var S in this.axes){var T=this.axes[S]._ticks;for(var U=0;U<T.length;U++){var V=T[U]._elem;if(V){if(w.jqplot.use_excanvas){window.G_vmlCanvasManager.uninitElement(V.get(0))}V.emptyForce();V=null;T._elem=null}}T=null;this.axes[S]._plotDimensions=this._plotDimensions;this.axes[S]._ticks=[];this.axes[S].renderer.init.call(this.axes[S],{})}if(this.sortData){O(this.series)}this.grid._axes=this.axes;this.legend._series=this.series};function O(W){var aa,ab,ac,S,Z;for(var X=0;X<W.length;X++){var T;var Y=[W[X].data,W[X]._stackData,W[X]._plotData,W[X]._prevPlotData];for(var U=0;U<4;U++){T=true;aa=Y[U];if(W[X]._stackAxis=="x"){for(var V=0;V<aa.length;V++){if(typeof(aa[V][1])!="number"){T=false;break}}if(T){aa.sort(function(ae,ad){return ae[1]-ad[1]})}}else{for(var V=0;V<aa.length;V++){if(typeof(aa[V][0])!="number"){T=false;break}}if(T){aa.sort(function(ae,ad){return ae[0]-ad[0]})}}}}}this.populatePlotData=function(W,X){this._plotData=[];this._stackData=[];W._stackData=[];W._plotData=[];var aa={x:[],y:[]};if(this.stackSeries&&!W.disableStack){W._stack=true;var Y=W._stackAxis=="x"?0:1;var Z=Y?0:1;var ab=w.extend(true,[],W.data);var ac=w.extend(true,[],W.data);for(var U=0;U<X;U++){var S=this.series[U].data;for(var T=0;T<S.length;T++){ab[T][0]+=S[T][0];ab[T][1]+=S[T][1];ac[T][Y]+=S[T][Y]}}for(var V=0;V<ac.length;V++){aa.x.push(ac[V][0]);aa.y.push(ac[V][1])}this._plotData.push(ac);this._stackData.push(ab);W._stackData=ab;W._plotData=ac;W._plotValues=aa}else{for(var V=0;V<W.data.length;V++){aa.x.push(W.data[V][0]);aa.y.push(W.data[V][1])}this._stackData.push(W.data);this.series[X]._stackData=W.data;this._plotData.push(W.data);W._plotData=W.data;W._plotValues=aa}if(X>0){W._prevPlotData=this.series[X-1]._plotData}W._sumy=0;W._sumx=0;for(V=W.data.length-1;V>-1;V--){W._sumy+=W.data[V][1];W._sumx+=W.data[V][0]}};this.getNextSeriesColor=(function(T){var S=0;var U=T.seriesColors;return function(){if(S<U.length){return U[S++]}else{S=0;return U[S++]}}})(this);this.parseOptions=function(aa){for(var X=0;X<this.preParseOptionsHooks.hooks.length;X++){this.preParseOptionsHooks.hooks[X].call(this,aa)}for(var X=0;X<w.jqplot.preParseOptionsHooks.length;X++){w.jqplot.preParseOptionsHooks[X].call(this,aa)}this.options=w.extend(true,{},this.defaults,aa);this.stackSeries=this.options.stackSeries;if(this.options.seriesColors){this.seriesColors=this.options.seriesColors}if(this.options.negativeSeriesColors){this.negativeSeriesColors=this.options.negativeSeriesColors}if(this.options.captureRightClick){this.captureRightClick=this.options.captureRightClick}this.defaultAxisStart=(aa&&aa.defaultAxisStart!=null)?aa.defaultAxisStart:this.defaultAxisStart;var S=new this.colorGenerator(this.seriesColors);w.extend(true,this._gridPadding,this.options.gridPadding);this.sortData=(this.options.sortData!=null)?this.options.sortData:this.sortData;for(var T in this.axes){var V=this.axes[T];V._options=w.extend(true,{},this.options.axesDefaults,this.options.axes[T]);w.extend(true,V,this.options.axesDefaults,this.options.axes[T]);V._plotWidth=this._width;V._plotHeight=this._height}var Y=function(ae,ac,af){var ab=[];var ad;ac=ac||"vertical";if(!jQuery.isArray(ae[0])){for(ad=0;ad<ae.length;ad++){if(ac=="vertical"){ab.push([af+ad,ae[ad]])}else{ab.push([ae[ad],af+ad])}}}else{w.extend(true,ab,ae)}return ab};for(var X=0;X<this.data.length;X++){var Z=new D();for(var W=0;W<w.jqplot.preParseSeriesOptionsHooks.length;W++){w.jqplot.preParseSeriesOptionsHooks[W].call(Z,this.options.seriesDefaults,this.options.series[X])}for(var W=0;W<this.preParseSeriesOptionsHooks.hooks.length;W++){this.preParseSeriesOptionsHooks.hooks[W].call(Z,this.options.seriesDefaults,this.options.series[X])}w.extend(true,Z,{seriesColors:this.seriesColors,negativeSeriesColors:this.negativeSeriesColors},this.options.seriesDefaults,this.options.series[X]);var U="vertical";if(Z.renderer===w.jqplot.BarRenderer&&Z.rendererOptions&&Z.rendererOptions.barDirection=="horizontal"){U="horizontal"}Z.data=Y(this.data[X],U,this.defaultAxisStart);switch(Z.xaxis){case"xaxis":Z._xaxis=this.axes.xaxis;break;case"x2axis":Z._xaxis=this.axes.x2axis;break;default:break}Z._yaxis=this.axes[Z.yaxis];Z._xaxis._series.push(Z);Z._yaxis._series.push(Z);if(Z.show){Z._xaxis.show=true;Z._yaxis.show=true}if(!Z.color&&Z.show!=false){Z.color=S.next()}if(!Z.label){Z.label="Series "+(X+1).toString()}this.series.push(Z);for(var W=0;W<w.jqplot.postParseSeriesOptionsHooks.length;W++){w.jqplot.postParseSeriesOptionsHooks[W].call(this.series[X],this.options.seriesDefaults,this.options.series[X])}for(var W=0;W<this.postParseSeriesOptionsHooks.hooks.length;W++){this.postParseSeriesOptionsHooks.hooks[W].call(this.series[X],this.options.seriesDefaults,this.options.series[X])}}w.extend(true,this.grid,this.options.grid);for(var T in this.axes){var V=this.axes[T];if(V.borderWidth==null){V.borderWidth=this.grid.borderWidth}if(V.borderColor==null){if(T!="xaxis"&&T!="x2axis"&&V.useSeriesColor===true&&V.show){V.borderColor=V._series[0].color}else{V.borderColor=this.grid.borderColor}}}if(typeof this.options.title=="string"){this.title.text=this.options.title}else{if(typeof this.options.title=="object"){w.extend(true,this.title,this.options.title)}}this.title._plotWidth=this._width;this.legend.setOptions(this.options.legend);for(var X=0;X<w.jqplot.postParseOptionsHooks.length;X++){w.jqplot.postParseOptionsHooks[X].call(this,aa)}for(var X=0;X<this.postParseOptionsHooks.hooks.length;X++){this.postParseOptionsHooks.hooks[X].call(this,aa)}};this.destroy=function(){this.canvasManager.freeAllCanvases();this.target[0].innerHTML=""};this.replot=function(T){var U=T||{};var S=U.clear||true;var V=U.resetAxes||false;this.target.trigger("jqplotPreReplot");if(S){this.canvasManager.freeAllCanvases();if(this._eventCanvas){this.eventCanvas._elem.unbind()}this.target.unbind();this.target.empty()}this.reInitialize();if(V){this.resetAxesScale(V,U.axes)}this.draw();this.target.trigger("jqplotPostReplot")};this.redraw=function(S){S=(S!=null)?S:true;this.target.trigger("jqplotPreRedraw");if(S){this.canvasManager.freeAllCanvases();this.eventCanvas._elem.unbind();this.target.unbind();this.target.empty()}for(var U in this.axes){this.axes[U]._ticks=[]}for(var T=0;T<this.series.length;T++){this.populatePlotData(this.series[T],T)}this._sumy=0;this._sumx=0;for(T=0;T<this.series.length;T++){this._sumy+=this.series[T]._sumy;this._sumx+=this.series[T]._sumx}this.draw();this.target.trigger("jqplotPostRedraw")};this.draw=function(){if(this.drawIfHidden||this.target.is(":visible")){this.target.trigger("jqplotPreDraw");var Y,X;for(Y=0;Y<w.jqplot.preDrawHooks.length;Y++){w.jqplot.preDrawHooks[Y].call(this)}for(Y=0;Y<this.preDrawHooks.hooks.length;Y++){this.preDrawHooks.hooks[Y].call(this)}this.target.append(this.baseCanvas.createElement({left:0,right:0,top:0,bottom:0},"jqplot-base-canvas",null,this));this.baseCanvas.setContext();this.target.append(this.title.draw());this.title.pack({top:0,left:0});var ad=this.legend.draw();var ac={top:0,left:0,bottom:0,right:0};if(this.legend.placement=="outsideGrid"){this.target.append(ad);switch(this.legend.location){case"n":ac.top+=this.legend.getHeight();break;case"s":ac.bottom+=this.legend.getHeight();break;case"ne":case"e":case"se":ac.right+=this.legend.getWidth();break;case"nw":case"w":case"sw":ac.left+=this.legend.getWidth();break;default:ac.right+=this.legend.getWidth();break}ad=ad.detach()}var S=this.axes;for(var U in S){this.target.append(S[U].draw(this.baseCanvas._ctx,this));S[U].set()}if(S.yaxis.show){ac.left+=S.yaxis.getWidth()}var V=["y2axis","y3axis","y4axis","y5axis","y6axis","y7axis","y8axis","y9axis"];var T=[0,0,0,0,0,0,0,0];var aa=0;var W;for(W=0;W<8;W++){if(S[V[W]].show){aa+=S[V[W]].getWidth();T[W]=aa}}ac.right+=aa;if(S.x2axis.show){ac.top+=S.x2axis.getHeight()}if(this.title.show){ac.top+=this.title.getHeight()}if(S.xaxis.show){ac.bottom+=S.xaxis.getHeight()}var Z=["top","bottom","left","right"];for(var W in Z){if(this._gridPadding[Z[W]]==null&&ac[Z[W]]>0){this._gridPadding[Z[W]]=ac[Z[W]]}else{if(this._gridPadding[Z[W]]==null){this._gridPadding[Z[W]]=this._defaultGridPadding[Z[W]]}}}var ab=(this.legend.placement=="outsideGrid")?{top:this.title.getHeight(),left:0,right:0,bottom:0}:this._gridPadding;S.xaxis.pack({position:"absolute",bottom:this._gridPadding.bottom-S.xaxis.getHeight(),left:0,width:this._width},{min:this._gridPadding.left,max:this._width-this._gridPadding.right});S.yaxis.pack({position:"absolute",top:0,left:this._gridPadding.left-S.yaxis.getWidth(),height:this._height},{min:this._height-this._gridPadding.bottom,max:this._gridPadding.top});S.x2axis.pack({position:"absolute",top:this._gridPadding.top-S.x2axis.getHeight(),left:0,width:this._width},{min:this._gridPadding.left,max:this._width-this._gridPadding.right});for(Y=8;Y>0;Y--){S[V[Y-1]].pack({position:"absolute",top:0,right:this._gridPadding.right-T[Y-1]},{min:this._height-this._gridPadding.bottom,max:this._gridPadding.top})}this.target.append(this.grid.createElement(this._gridPadding,this));this.grid.draw();for(Y=0;Y<this.series.length;Y++){X=this.seriesStack[Y];this.target.append(this.series[X].shadowCanvas.createElement(this._gridPadding,"jqplot-series-shadowCanvas",null,this));this.series[X].shadowCanvas.setContext();this.series[X].shadowCanvas._elem.data("seriesIndex",X)}for(Y=0;Y<this.series.length;Y++){X=this.seriesStack[Y];this.target.append(this.series[X].canvas.createElement(this._gridPadding,"jqplot-series-canvas",null,this));this.series[X].canvas.setContext();this.series[X].canvas._elem.data("seriesIndex",X)}this.target.append(this.eventCanvas.createElement(this._gridPadding,"jqplot-event-canvas",null,this));this.eventCanvas.setContext();this.eventCanvas._ctx.fillStyle="rgba(0,0,0,0)";this.eventCanvas._ctx.fillRect(0,0,this.eventCanvas._ctx.canvas.width,this.eventCanvas._ctx.canvas.height);this.bindCustomEvents();if(this.legend.preDraw){this.eventCanvas._elem.before(ad);this.legend.pack(ab);if(this.legend._elem){this.drawSeries({legendInfo:{location:this.legend.location,placement:this.legend.placement,width:this.legend.getWidth(),height:this.legend.getHeight(),xoffset:this.legend.xoffset,yoffset:this.legend.yoffset}})}else{this.drawSeries()}}else{this.drawSeries();if(this.series.length){w(this.series[this.series.length-1].canvas._elem).after(ad)}this.legend.pack(ab)}for(var Y=0;Y<w.jqplot.eventListenerHooks.length;Y++){this.eventCanvas._elem.bind(w.jqplot.eventListenerHooks[Y][0],{plot:this},w.jqplot.eventListenerHooks[Y][1])}for(var Y=0;Y<this.eventListenerHooks.hooks.length;Y++){this.eventCanvas._elem.bind(this.eventListenerHooks.hooks[Y][0],{plot:this},this.eventListenerHooks.hooks[Y][1])}for(var Y=0;Y<w.jqplot.postDrawHooks.length;Y++){w.jqplot.postDrawHooks[Y].call(this)}for(var Y=0;Y<this.postDrawHooks.hooks.length;Y++){this.postDrawHooks.hooks[Y].call(this)}if(this.target.is(":visible")){this._drawCount+=1}this.target.trigger("jqplotPostDraw",[this])}};this.bindCustomEvents=function(){this.eventCanvas._elem.bind("click",{plot:this},this.onClick);this.eventCanvas._elem.bind("dblclick",{plot:this},this.onDblClick);this.eventCanvas._elem.bind("mousedown",{plot:this},this.onMouseDown);this.eventCanvas._elem.bind("mousemove",{plot:this},this.onMouseMove);this.eventCanvas._elem.bind("mouseenter",{plot:this},this.onMouseEnter);this.eventCanvas._elem.bind("mouseleave",{plot:this},this.onMouseLeave);if(this.captureRightClick){this.eventCanvas._elem.bind("mouseup",{plot:this},this.onRightClick);this.eventCanvas._elem.get(0).oncontextmenu=function(){return false}}else{this.eventCanvas._elem.bind("mouseup",{plot:this},this.onMouseUp)}};function P(aa){var Z=aa.data.plot;var V=Z.eventCanvas._elem.offset();var Y={x:aa.pageX-V.left,y:aa.pageY-V.top};var W={xaxis:null,yaxis:null,x2axis:null,y2axis:null,y3axis:null,y4axis:null,y5axis:null,y6axis:null,y7axis:null,y8axis:null,y9axis:null};var X=["xaxis","yaxis","x2axis","y2axis","y3axis","y4axis","y5axis","y6axis","y7axis","y8axis","y9axis"];var S=Z.axes;var T,U;for(T=11;T>0;T--){U=X[T-1];if(S[U].show){W[U]=S[U].series_p2u(Y[U.charAt(0)])}}return{offsets:V,gridPos:Y,dataPos:W}}function R(S,T){var X=T.series;var aC,aB,aA,av,aw,ap,ao,ac,aa,af,ag,aq;var az,aD,ax,Y,an,at;var U,au;for(aA=T.seriesStack.length-1;aA>=0;aA--){aC=T.seriesStack[aA];av=X[aC];switch(av.renderer.constructor){case w.jqplot.BarRenderer:ap=S.x;ao=S.y;for(aB=0;aB<av._barPoints.length;aB++){an=av._barPoints[aB];ax=av.gridData[aB];if(ap>an[0][0]&&ap<an[2][0]&&ao>an[2][1]&&ao<an[0][1]){return{seriesIndex:av.index,pointIndex:aB,gridData:ax,data:av.data[aB],points:av._barPoints[aB]}}}break;case w.jqplot.DonutRenderer:af=av.startAngle/180*Math.PI;ap=S.x-av._center[0];ao=S.y-av._center[1];aw=Math.sqrt(Math.pow(ap,2)+Math.pow(ao,2));if(ap>0&&-ao>=0){ac=2*Math.PI-Math.atan(-ao/ap)}else{if(ap>0&&-ao<0){ac=-Math.atan(-ao/ap)}else{if(ap<0){ac=Math.PI-Math.atan(-ao/ap)}else{if(ap==0&&-ao>0){ac=3*Math.PI/2}else{if(ap==0&&-ao<0){ac=Math.PI/2}else{if(ap==0&&ao==0){ac=0}}}}}}if(af){ac-=af;if(ac<0){ac+=2*Math.PI}else{if(ac>2*Math.PI){ac-=2*Math.PI}}}aa=av.sliceMargin/180*Math.PI;if(aw<av._radius&&aw>av._innerRadius){for(aB=0;aB<av.gridData.length;aB++){ag=(aB>0)?av.gridData[aB-1][1]+aa:aa;aq=av.gridData[aB][1];if(ac>ag&&ac<aq){return{seriesIndex:av.index,pointIndex:aB,gridData:av.gridData[aB],data:av.data[aB]}}}}break;case w.jqplot.PieRenderer:af=av.startAngle/180*Math.PI;ap=S.x-av._center[0];ao=S.y-av._center[1];aw=Math.sqrt(Math.pow(ap,2)+Math.pow(ao,2));if(ap>0&&-ao>=0){ac=2*Math.PI-Math.atan(-ao/ap)}else{if(ap>0&&-ao<0){ac=-Math.atan(-ao/ap)}else{if(ap<0){ac=Math.PI-Math.atan(-ao/ap)}else{if(ap==0&&-ao>0){ac=3*Math.PI/2}else{if(ap==0&&-ao<0){ac=Math.PI/2}else{if(ap==0&&ao==0){ac=0}}}}}}if(af){ac-=af;if(ac<0){ac+=2*Math.PI}else{if(ac>2*Math.PI){ac-=2*Math.PI}}}aa=av.sliceMargin/180*Math.PI;if(aw<av._radius){for(aB=0;aB<av.gridData.length;aB++){ag=(aB>0)?av.gridData[aB-1][1]+aa:aa;aq=av.gridData[aB][1];if(ac>ag&&ac<aq){return{seriesIndex:av.index,pointIndex:aB,gridData:av.gridData[aB],data:av.data[aB]}}}}break;case w.jqplot.BubbleRenderer:ap=S.x;ao=S.y;var al=null;if(av.show){for(var aB=0;aB<av.gridData.length;aB++){ax=av.gridData[aB];aD=Math.sqrt((ap-ax[0])*(ap-ax[0])+(ao-ax[1])*(ao-ax[1]));if(aD<=ax[2]&&(aD<=az||az==null)){az=aD;al={seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}if(al!=null){return al}}break;case w.jqplot.FunnelRenderer:ap=S.x;ao=S.y;var ar=av._vertices,W=ar[0],V=ar[ar.length-1],Z,ak,ae;function ay(aG,aI,aH){var aF=(aI[1]-aH[1])/(aI[0]-aH[0]);var aE=aI[1]-aF*aI[0];var aJ=aG+aI[1];return[(aJ-aE)/aF,aJ]}Z=ay(ao,W[0],V[3]);ak=ay(ao,W[1],V[2]);for(aB=0;aB<ar.length;aB++){ae=ar[aB];if(ao>=ae[0][1]&&ao<=ae[3][1]&&ap>=Z[0]&&ap<=ak[0]){return{seriesIndex:av.index,pointIndex:aB,gridData:null,data:av.data[aB]}}}break;case w.jqplot.LineRenderer:ap=S.x;ao=S.y;aw=av.renderer;if(av.show){if(av.fill){var ad=false;if(ap>av._boundingBox[0][0]&&ap<av._boundingBox[1][0]&&ao>av._boundingBox[1][1]&&ao<av._boundingBox[0][1]){var aj=av._areaPoints.length;var am;var aB=aj-1;for(var am=0;am<aj;am++){var ai=[av._areaPoints[am][0],av._areaPoints[am][1]];var ah=[av._areaPoints[aB][0],av._areaPoints[aB][1]];if(ai[1]<ao&&ah[1]>=ao||ah[1]<ao&&ai[1]>=ao){if(ai[0]+(ao-ai[1])/(ah[1]-ai[1])*(ah[0]-ai[0])<ap){ad=!ad}}aB=am}}if(ad){return{seriesIndex:aC,pointIndex:null,gridData:av.gridData,data:av.data,points:av._areaPoints}}break}else{au=av.markerRenderer.size/2+av.neighborThreshold;U=(au>0)?au:0;for(var aB=0;aB<av.gridData.length;aB++){ax=av.gridData[aB];if(aw.constructor==w.jqplot.OHLCRenderer){if(aw.candleStick){var ab=av._yaxis.series_u2p;if(ap>=ax[0]-aw._bodyWidth/2&&ap<=ax[0]+aw._bodyWidth/2&&ao>=ab(av.data[aB][2])&&ao<=ab(av.data[aB][3])){return{seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}else{if(!aw.hlc){var ab=av._yaxis.series_u2p;if(ap>=ax[0]-aw._tickLength&&ap<=ax[0]+aw._tickLength&&ao>=ab(av.data[aB][2])&&ao<=ab(av.data[aB][3])){return{seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}else{var ab=av._yaxis.series_u2p;if(ap>=ax[0]-aw._tickLength&&ap<=ax[0]+aw._tickLength&&ao>=ab(av.data[aB][1])&&ao<=ab(av.data[aB][2])){return{seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}}}else{if(ax[0]!=null&&ax[1]!=null){aD=Math.sqrt((ap-ax[0])*(ap-ax[0])+(ao-ax[1])*(ao-ax[1]));if(aD<=U&&(aD<=az||az==null)){az=aD;return{seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}}}}}break;default:ap=S.x;ao=S.y;aw=av.renderer;if(av.show){au=av.markerRenderer.size/2+av.neighborThreshold;U=(au>0)?au:0;for(var aB=0;aB<av.gridData.length;aB++){ax=av.gridData[aB];if(aw.constructor==w.jqplot.OHLCRenderer){if(aw.candleStick){var ab=av._yaxis.series_u2p;if(ap>=ax[0]-aw._bodyWidth/2&&ap<=ax[0]+aw._bodyWidth/2&&ao>=ab(av.data[aB][2])&&ao<=ab(av.data[aB][3])){return{seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}else{if(!aw.hlc){var ab=av._yaxis.series_u2p;if(ap>=ax[0]-aw._tickLength&&ap<=ax[0]+aw._tickLength&&ao>=ab(av.data[aB][2])&&ao<=ab(av.data[aB][3])){return{seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}else{var ab=av._yaxis.series_u2p;if(ap>=ax[0]-aw._tickLength&&ap<=ax[0]+aw._tickLength&&ao>=ab(av.data[aB][1])&&ao<=ab(av.data[aB][2])){return{seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}}}else{aD=Math.sqrt((ap-ax[0])*(ap-ax[0])+(ao-ax[1])*(ao-ax[1]));if(aD<=U&&(aD<=az||az==null)){az=aD;return{seriesIndex:aC,pointIndex:aB,gridData:ax,data:av.data[aB]}}}}}break}}return null}this.onClick=function(U){var T=P(U);var W=U.data.plot;var V=R(T.gridPos,W);var S=jQuery.Event("jqplotClick");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,V,W])};this.onDblClick=function(U){var T=P(U);var W=U.data.plot;var V=R(T.gridPos,W);var S=jQuery.Event("jqplotDblClick");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,V,W])};this.onMouseDown=function(U){var T=P(U);var W=U.data.plot;var V=R(T.gridPos,W);var S=jQuery.Event("jqplotMouseDown");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,V,W])};this.onMouseUp=function(U){var T=P(U);var S=jQuery.Event("jqplotMouseUp");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,null,U.data.plot])};this.onRightClick=function(U){var T=P(U);var W=U.data.plot;var V=R(T.gridPos,W);if(W.captureRightClick){if(U.which==3){var S=jQuery.Event("jqplotRightClick");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,V,W])}else{var S=jQuery.Event("jqplotMouseUp");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,V,W])}}};this.onMouseMove=function(U){var T=P(U);var W=U.data.plot;var V=R(T.gridPos,W);var S=jQuery.Event("jqplotMouseMove");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,V,W])};this.onMouseEnter=function(U){var T=P(U);var V=U.data.plot;var S=jQuery.Event("jqplotMouseEnter");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,null,V])};this.onMouseLeave=function(U){var T=P(U);var V=U.data.plot;var S=jQuery.Event("jqplotMouseLeave");S.pageX=U.pageX;S.pageY=U.pageY;w(this).trigger(S,[T.gridPos,T.dataPos,null,V])};this.drawSeries=function(U,S){var W,V,T;S=(typeof(U)==="number"&&S==null)?U:S;U=(typeof(U)==="object")?U:{};if(S!=l){V=this.series[S];T=V.shadowCanvas._ctx;T.clearRect(0,0,T.canvas.width,T.canvas.height);V.drawShadow(T,U,this);T=V.canvas._ctx;T.clearRect(0,0,T.canvas.width,T.canvas.height);V.draw(T,U,this);if(V.renderer.constructor==w.jqplot.BezierCurveRenderer){if(S<this.series.length-1){this.drawSeries(S+1)}}}else{for(W=0;W<this.series.length;W++){V=this.series[W];T=V.shadowCanvas._ctx;T.clearRect(0,0,T.canvas.width,T.canvas.height);V.drawShadow(T,U,this);T=V.canvas._ctx;T.clearRect(0,0,T.canvas.width,T.canvas.height);V.draw(T,U,this)}}U=S=W=V=T=null};this.moveSeriesToFront=function(T){T=parseInt(T,10);var W=w.inArray(T,this.seriesStack);if(W==-1){return}if(W==this.seriesStack.length-1){this.previousSeriesStack=this.seriesStack.slice(0);return}var S=this.seriesStack[this.seriesStack.length-1];var V=this.series[T].canvas._elem.detach();var U=this.series[T].shadowCanvas._elem.detach();this.series[S].shadowCanvas._elem.after(U);this.series[S].canvas._elem.after(V);this.previousSeriesStack=this.seriesStack.slice(0);this.seriesStack.splice(W,1);this.seriesStack.push(T)};this.moveSeriesToBack=function(T){T=parseInt(T,10);var W=w.inArray(T,this.seriesStack);if(W==0||W==-1){return}var S=this.seriesStack[0];var V=this.series[T].canvas._elem.detach();var U=this.series[T].shadowCanvas._elem.detach();this.series[S].shadowCanvas._elem.before(U);this.series[S].canvas._elem.before(V);this.previousSeriesStack=this.seriesStack.slice(0);this.seriesStack.splice(W,1);this.seriesStack.unshift(T)};this.restorePreviousSeriesOrder=function(){var Y,X,W,V,U,S,T;if(this.seriesStack==this.previousSeriesStack){return}for(Y=1;Y<this.previousSeriesStack.length;Y++){S=this.previousSeriesStack[Y];T=this.previousSeriesStack[Y-1];W=this.series[S].canvas._elem.detach();V=this.series[S].shadowCanvas._elem.detach();this.series[T].shadowCanvas._elem.after(V);this.series[T].canvas._elem.after(W)}U=this.seriesStack.slice(0);this.seriesStack=this.previousSeriesStack.slice(0);this.previousSeriesStack=U};this.restoreOriginalSeriesOrder=function(){var W,V,S=[],U,T;for(W=0;W<this.series.length;W++){S.push(W)}if(this.seriesStack==S){return}this.previousSeriesStack=this.seriesStack.slice(0);this.seriesStack=S;for(W=1;W<this.seriesStack.length;W++){U=this.series[W].canvas._elem.detach();T=this.series[W].shadowCanvas._elem.detach();this.series[W-1].shadowCanvas._elem.after(T);this.series[W-1].canvas._elem.after(U)}};this.activateTheme=function(S){this.themeEngine.activate(this,S)}}w.jqplot.computeHighlightColors=function(P){var R;if(jQuery.isArray(P)){R=[];for(var T=0;T<P.length;T++){var S=w.jqplot.getColorComponents(P[T]);var O=[S[0],S[1],S[2]];var U=O[0]+O[1]+O[2];for(var Q=0;Q<3;Q++){O[Q]=(U>570)?O[Q]*0.8:O[Q]+0.3*(255-O[Q]);O[Q]=parseInt(O[Q],10)}R.push("rgb("+O[0]+","+O[1]+","+O[2]+")")}}else{var S=w.jqplot.getColorComponents(P);var O=[S[0],S[1],S[2]];var U=O[0]+O[1]+O[2];for(var Q=0;Q<3;Q++){O[Q]=(U>570)?O[Q]*0.8:O[Q]+0.3*(255-O[Q]);O[Q]=parseInt(O[Q],10)}R="rgb("+O[0]+","+O[1]+","+O[2]+")"}return R};w.jqplot.ColorGenerator=function(P){P=P||w.jqplot.config.defaultColors;var O=0;this.next=function(){if(O<P.length){return P[O++]}else{O=0;return P[O++]}};this.previous=function(){if(O>0){return P[O--]}else{O=P.length-1;return P[O]}};this.get=function(R){var Q=R-P.length*Math.floor(R/P.length);return P[Q]};this.setColors=function(Q){P=Q};this.reset=function(){O=0}};w.jqplot.hex2rgb=function(Q,O){Q=Q.replace("#","");if(Q.length==3){Q=Q.charAt(0)+Q.charAt(0)+Q.charAt(1)+Q.charAt(1)+Q.charAt(2)+Q.charAt(2)}var P;P="rgba("+parseInt(Q.slice(0,2),16)+", "+parseInt(Q.slice(2,4),16)+", "+parseInt(Q.slice(4,6),16);if(O){P+=", "+O}P+=")";return P};w.jqplot.rgb2hex=function(T){var Q=/rgba?\( *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *(?:, *[0-9.]*)?\)/;var O=T.match(Q);var S="#";for(var R=1;R<4;R++){var P;if(O[R].search(/%/)!=-1){P=parseInt(255*O[R]/100,10).toString(16);if(P.length==1){P="0"+P}}else{P=parseInt(O[R],10).toString(16);if(P.length==1){P="0"+P}}S+=P}return S};w.jqplot.normalize2rgb=function(P,O){if(P.search(/^ *rgba?\(/)!=-1){return P}else{if(P.search(/^ *#?[0-9a-fA-F]?[0-9a-fA-F]/)!=-1){return w.jqplot.hex2rgb(P,O)}else{throw"invalid color spec"}}};w.jqplot.getColorComponents=function(T){T=w.jqplot.colorKeywordMap[T]||T;var R=w.jqplot.normalize2rgb(T);var Q=/rgba?\( *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *,? *([0-9.]* *)?\)/;var O=R.match(Q);var P=[];for(var S=1;S<4;S++){if(O[S].search(/%/)!=-1){P[S-1]=parseInt(255*O[S]/100,10)}else{P[S-1]=parseInt(O[S],10)}}P[3]=parseFloat(O[4])?parseFloat(O[4]):1;return P};w.jqplot.colorKeywordMap={aliceblue:"rgb(240, 248, 255)",antiquewhite:"rgb(250, 235, 215)",aqua:"rgb( 0, 255, 255)",aquamarine:"rgb(127, 255, 212)",azure:"rgb(240, 255, 255)",beige:"rgb(245, 245, 220)",bisque:"rgb(255, 228, 196)",black:"rgb( 0, 0, 0)",blanchedalmond:"rgb(255, 235, 205)",blue:"rgb( 0, 0, 255)",blueviolet:"rgb(138, 43, 226)",brown:"rgb(165, 42, 42)",burlywood:"rgb(222, 184, 135)",cadetblue:"rgb( 95, 158, 160)",chartreuse:"rgb(127, 255, 0)",chocolate:"rgb(210, 105, 30)",coral:"rgb(255, 127, 80)",cornflowerblue:"rgb(100, 149, 237)",cornsilk:"rgb(255, 248, 220)",crimson:"rgb(220, 20, 60)",cyan:"rgb( 0, 255, 255)",darkblue:"rgb( 0, 0, 139)",darkcyan:"rgb( 0, 139, 139)",darkgoldenrod:"rgb(184, 134, 11)",darkgray:"rgb(169, 169, 169)",darkgreen:"rgb( 0, 100, 0)",darkgrey:"rgb(169, 169, 169)",darkkhaki:"rgb(189, 183, 107)",darkmagenta:"rgb(139, 0, 139)",darkolivegreen:"rgb( 85, 107, 47)",darkorange:"rgb(255, 140, 0)",darkorchid:"rgb(153, 50, 204)",darkred:"rgb(139, 0, 0)",darksalmon:"rgb(233, 150, 122)",darkseagreen:"rgb(143, 188, 143)",darkslateblue:"rgb( 72, 61, 139)",darkslategray:"rgb( 47, 79, 79)",darkslategrey:"rgb( 47, 79, 79)",darkturquoise:"rgb( 0, 206, 209)",darkviolet:"rgb(148, 0, 211)",deeppink:"rgb(255, 20, 147)",deepskyblue:"rgb( 0, 191, 255)",dimgray:"rgb(105, 105, 105)",dimgrey:"rgb(105, 105, 105)",dodgerblue:"rgb( 30, 144, 255)",firebrick:"rgb(178, 34, 34)",floralwhite:"rgb(255, 250, 240)",forestgreen:"rgb( 34, 139, 34)",fuchsia:"rgb(255, 0, 255)",gainsboro:"rgb(220, 220, 220)",ghostwhite:"rgb(248, 248, 255)",gold:"rgb(255, 215, 0)",goldenrod:"rgb(218, 165, 32)",gray:"rgb(128, 128, 128)",grey:"rgb(128, 128, 128)",green:"rgb( 0, 128, 0)",greenyellow:"rgb(173, 255, 47)",honeydew:"rgb(240, 255, 240)",hotpink:"rgb(255, 105, 180)",indianred:"rgb(205, 92, 92)",indigo:"rgb( 75, 0, 130)",ivory:"rgb(255, 255, 240)",khaki:"rgb(240, 230, 140)",lavender:"rgb(230, 230, 250)",lavenderblush:"rgb(255, 240, 245)",lawngreen:"rgb(124, 252, 0)",lemonchiffon:"rgb(255, 250, 205)",lightblue:"rgb(173, 216, 230)",lightcoral:"rgb(240, 128, 128)",lightcyan:"rgb(224, 255, 255)",lightgoldenrodyellow:"rgb(250, 250, 210)",lightgray:"rgb(211, 211, 211)",lightgreen:"rgb(144, 238, 144)",lightgrey:"rgb(211, 211, 211)",lightpink:"rgb(255, 182, 193)",lightsalmon:"rgb(255, 160, 122)",lightseagreen:"rgb( 32, 178, 170)",lightskyblue:"rgb(135, 206, 250)",lightslategray:"rgb(119, 136, 153)",lightslategrey:"rgb(119, 136, 153)",lightsteelblue:"rgb(176, 196, 222)",lightyellow:"rgb(255, 255, 224)",lime:"rgb( 0, 255, 0)",limegreen:"rgb( 50, 205, 50)",linen:"rgb(250, 240, 230)",magenta:"rgb(255, 0, 255)",maroon:"rgb(128, 0, 0)",mediumaquamarine:"rgb(102, 205, 170)",mediumblue:"rgb( 0, 0, 205)",mediumorchid:"rgb(186, 85, 211)",mediumpurple:"rgb(147, 112, 219)",mediumseagreen:"rgb( 60, 179, 113)",mediumslateblue:"rgb(123, 104, 238)",mediumspringgreen:"rgb( 0, 250, 154)",mediumturquoise:"rgb( 72, 209, 204)",mediumvioletred:"rgb(199, 21, 133)",midnightblue:"rgb( 25, 25, 112)",mintcream:"rgb(245, 255, 250)",mistyrose:"rgb(255, 228, 225)",moccasin:"rgb(255, 228, 181)",navajowhite:"rgb(255, 222, 173)",navy:"rgb( 0, 0, 128)",oldlace:"rgb(253, 245, 230)",olive:"rgb(128, 128, 0)",olivedrab:"rgb(107, 142, 35)",orange:"rgb(255, 165, 0)",orangered:"rgb(255, 69, 0)",orchid:"rgb(218, 112, 214)",palegoldenrod:"rgb(238, 232, 170)",palegreen:"rgb(152, 251, 152)",paleturquoise:"rgb(175, 238, 238)",palevioletred:"rgb(219, 112, 147)",papayawhip:"rgb(255, 239, 213)",peachpuff:"rgb(255, 218, 185)",peru:"rgb(205, 133, 63)",pink:"rgb(255, 192, 203)",plum:"rgb(221, 160, 221)",powderblue:"rgb(176, 224, 230)",purple:"rgb(128, 0, 128)",red:"rgb(255, 0, 0)",rosybrown:"rgb(188, 143, 143)",royalblue:"rgb( 65, 105, 225)",saddlebrown:"rgb(139, 69, 19)",salmon:"rgb(250, 128, 114)",sandybrown:"rgb(244, 164, 96)",seagreen:"rgb( 46, 139, 87)",seashell:"rgb(255, 245, 238)",sienna:"rgb(160, 82, 45)",silver:"rgb(192, 192, 192)",skyblue:"rgb(135, 206, 235)",slateblue:"rgb(106, 90, 205)",slategray:"rgb(112, 128, 144)",slategrey:"rgb(112, 128, 144)",snow:"rgb(255, 250, 250)",springgreen:"rgb( 0, 255, 127)",steelblue:"rgb( 70, 130, 180)",tan:"rgb(210, 180, 140)",teal:"rgb( 0, 128, 128)",thistle:"rgb(216, 191, 216)",tomato:"rgb(255, 99, 71)",turquoise:"rgb( 64, 224, 208)",violet:"rgb(238, 130, 238)",wheat:"rgb(245, 222, 179)",white:"rgb(255, 255, 255)",whitesmoke:"rgb(245, 245, 245)",yellow:"rgb(255, 255, 0)",yellowgreen:"rgb(154, 205, 50)"};w.jqplot.AxisLabelRenderer=function(O){w.jqplot.ElemContainer.call(this);this.axis;this.show=true;this.label="";this.fontFamily=null;this.fontSize=null;this.textColor=null;this._elem;this.escapeHTML=false;w.extend(true,this,O)};w.jqplot.AxisLabelRenderer.prototype=new w.jqplot.ElemContainer();w.jqplot.AxisLabelRenderer.prototype.constructor=w.jqplot.AxisLabelRenderer;w.jqplot.AxisLabelRenderer.prototype.init=function(O){w.extend(true,this,O)};w.jqplot.AxisLabelRenderer.prototype.draw=function(O,P){if(this._elem){this._elem.emptyForce();this._elem=null}this._elem=w('<div style="position:absolute;" class="jqplot-'+this.axis+'-label"></div>');if(Number(this.label)){this._elem.css("white-space","nowrap")}if(!this.escapeHTML){this._elem.html(this.label)}else{this._elem.text(this.label)}if(this.fontFamily){this._elem.css("font-family",this.fontFamily)}if(this.fontSize){this._elem.css("font-size",this.fontSize)}if(this.textColor){this._elem.css("color",this.textColor)}return this._elem};w.jqplot.AxisLabelRenderer.prototype.pack=function(){};w.jqplot.AxisTickRenderer=function(O){w.jqplot.ElemContainer.call(this);this.mark="outside";this.axis;this.showMark=true;this.showGridline=true;this.isMinorTick=false;this.size=4;this.markSize=6;this.show=true;this.showLabel=true;this.label="";this.value=null;this._styles={};this.formatter=w.jqplot.DefaultTickFormatter;this.prefix="";this.formatString="";this.fontFamily;this.fontSize;this.textColor;this.escapeHTML=false;this._elem;this._breakTick=false;w.extend(true,this,O)};w.jqplot.AxisTickRenderer.prototype.init=function(O){w.extend(true,this,O)};w.jqplot.AxisTickRenderer.prototype=new w.jqplot.ElemContainer();w.jqplot.AxisTickRenderer.prototype.constructor=w.jqplot.AxisTickRenderer;w.jqplot.AxisTickRenderer.prototype.setTick=function(O,Q,P){this.value=O;this.axis=Q;if(P){this.isMinorTick=true}return this};w.jqplot.AxisTickRenderer.prototype.draw=function(){if(!this.label){this.label=this.prefix+this.formatter(this.formatString,this.value)}var P={position:"absolute"};if(Number(this.label)){P.whitSpace="nowrap"}if(this._elem){this._elem.emptyForce();this._elem=null}this._elem=w(document.createElement("div"));this._elem.addClass("jqplot-"+this.axis+"-tick");if(!this.escapeHTML){this._elem.html(this.label)}else{this._elem.text(this.label)}this._elem.css(P);for(var O in this._styles){this._elem.css(O,this._styles[O])}if(this.fontFamily){this._elem.css("font-family",this.fontFamily)}if(this.fontSize){this._elem.css("font-size",this.fontSize)}if(this.textColor){this._elem.css("color",this.textColor)}if(this._breakTick){this._elem.addClass("jqplot-breakTick")}return this._elem};w.jqplot.DefaultTickFormatter=function(O,P){if(typeof P=="number"){if(!O){O=w.jqplot.config.defaultTickFormatString}return w.jqplot.sprintf(O,P)}else{return String(P)}};w.jqplot.AxisTickRenderer.prototype.pack=function(){};w.jqplot.CanvasGridRenderer=function(){this.shadowRenderer=new w.jqplot.ShadowRenderer()};w.jqplot.CanvasGridRenderer.prototype.init=function(P){this._ctx;w.extend(true,this,P);var O={lineJoin:"miter",lineCap:"round",fill:false,isarc:false,angle:this.shadowAngle,offset:this.shadowOffset,alpha:this.shadowAlpha,depth:this.shadowDepth,lineWidth:this.shadowWidth,closePath:false,strokeStyle:this.shadowColor};this.renderer.shadowRenderer.init(O)};w.jqplot.CanvasGridRenderer.prototype.createElement=function(R){var Q;if(this._elem){if(w.jqplot.use_excanvas){Q=this._elem.get(0);window.G_vmlCanvasManager.uninitElement(Q);Q=null}this._elem.emptyForce();this._elem=null}Q=R.canvasManager.getCanvas();var O=this._plotDimensions.width;var P=this._plotDimensions.height;Q.width=O;Q.height=P;this._elem=w(Q);this._elem.addClass("jqplot-grid-canvas");this._elem.css({position:"absolute",left:0,top:0});Q=R.canvasManager.initCanvas(Q);this._top=this._offsets.top;this._bottom=P-this._offsets.bottom;this._left=this._offsets.left;this._right=O-this._offsets.right;this._width=this._right-this._left;this._height=this._bottom-this._top;Q=null;return this._elem};w.jqplot.CanvasGridRenderer.prototype.draw=function(){this._ctx=this._elem.get(0).getContext("2d");var Y=this._ctx;var ab=this._axes;Y.save();Y.clearRect(0,0,this._plotDimensions.width,this._plotDimensions.height);Y.fillStyle=this.backgroundColor||this.background;Y.fillRect(this._left,this._top,this._width,this._height);if(true){Y.save();Y.lineJoin="miter";Y.lineCap="butt";Y.lineWidth=this.gridLineWidth;Y.strokeStyle=this.gridLineColor;var ae,ad,W,X;var T=["xaxis","yaxis","x2axis","y2axis"];for(var ac=4;ac>0;ac--){var ag=T[ac-1];var O=ab[ag];var af=O._ticks;if(O.show){for(var Z=af.length;Z>0;Z--){var U=af[Z-1];if(U.show){var R=Math.round(O.u2p(U.value))+0.5;switch(ag){case"xaxis":if(U.showGridline&&this.drawGridlines){V(R,this._top,R,this._bottom)}if(U.showMark&&U.mark){W=U.markSize;X=U.mark;var R=Math.round(O.u2p(U.value))+0.5;switch(X){case"outside":ae=this._bottom;ad=this._bottom+W;break;case"inside":ae=this._bottom-W;ad=this._bottom;break;case"cross":ae=this._bottom-W;ad=this._bottom+W;break;default:ae=this._bottom;ad=this._bottom+W;break}if(this.shadow){this.renderer.shadowRenderer.draw(Y,[[R,ae],[R,ad]],{lineCap:"butt",lineWidth:this.gridLineWidth,offset:this.gridLineWidth*0.75,depth:2,fill:false,closePath:false})}V(R,ae,R,ad)}break;case"yaxis":if(U.showGridline&&this.drawGridlines){V(this._right,R,this._left,R)}if(U.showMark&&U.mark){W=U.markSize;X=U.mark;var R=Math.round(O.u2p(U.value))+0.5;switch(X){case"outside":ae=this._left-W;ad=this._left;break;case"inside":ae=this._left;ad=this._left+W;break;case"cross":ae=this._left-W;ad=this._left+W;break;default:ae=this._left-W;ad=this._left;break}if(this.shadow){this.renderer.shadowRenderer.draw(Y,[[ae,R],[ad,R]],{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}V(ae,R,ad,R,{strokeStyle:O.borderColor})}break;case"x2axis":if(U.showGridline&&this.drawGridlines){V(R,this._bottom,R,this._top)}if(U.showMark&&U.mark){W=U.markSize;X=U.mark;var R=Math.round(O.u2p(U.value))+0.5;switch(X){case"outside":ae=this._top-W;ad=this._top;break;case"inside":ae=this._top;ad=this._top+W;break;case"cross":ae=this._top-W;ad=this._top+W;break;default:ae=this._top-W;ad=this._top;break}if(this.shadow){this.renderer.shadowRenderer.draw(Y,[[R,ae],[R,ad]],{lineCap:"butt",lineWidth:this.gridLineWidth,offset:this.gridLineWidth*0.75,depth:2,fill:false,closePath:false})}V(R,ae,R,ad)}break;case"y2axis":if(U.showGridline&&this.drawGridlines){V(this._left,R,this._right,R)}if(U.showMark&&U.mark){W=U.markSize;X=U.mark;var R=Math.round(O.u2p(U.value))+0.5;switch(X){case"outside":ae=this._right;ad=this._right+W;break;case"inside":ae=this._right-W;ad=this._right;break;case"cross":ae=this._right-W;ad=this._right+W;break;default:ae=this._right;ad=this._right+W;break}if(this.shadow){this.renderer.shadowRenderer.draw(Y,[[ae,R],[ad,R]],{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}V(ae,R,ad,R,{strokeStyle:O.borderColor})}break;default:break}}}U=null}O=null;af=null}T=["y3axis","y4axis","y5axis","y6axis","y7axis","y8axis","y9axis"];for(var ac=7;ac>0;ac--){var O=ab[T[ac-1]];var af=O._ticks;if(O.show){var P=af[O.numberTicks-1];var S=af[0];var Q=O.getLeft();var aa=[[Q,P.getTop()+P.getHeight()/2],[Q,S.getTop()+S.getHeight()/2+1]];if(this.shadow){this.renderer.shadowRenderer.draw(Y,aa,{lineCap:"butt",fill:false,closePath:false})}V(aa[0][0],aa[0][1],aa[1][0],aa[1][1],{lineCap:"butt",strokeStyle:O.borderColor,lineWidth:O.borderWidth});for(var Z=af.length;Z>0;Z--){var U=af[Z-1];W=U.markSize;X=U.mark;var R=Math.round(O.u2p(U.value))+0.5;if(U.showMark&&U.mark){switch(X){case"outside":ae=Q;ad=Q+W;break;case"inside":ae=Q-W;ad=Q;break;case"cross":ae=Q-W;ad=Q+W;break;default:ae=Q;ad=Q+W;break}aa=[[ae,R],[ad,R]];if(this.shadow){this.renderer.shadowRenderer.draw(Y,aa,{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLine