Extended system tray widget for XCenter/eCenter Version 0.1.1 (28-03-2011) Copyright (C) 2009-2011 Dmitriy Kuminov Extended system tray widget is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, in version 2 as it comes in the "COPYING" file of the Extended system tray widget distribution. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. INTRODUCTION The extended system tray widget is a plugin for XCenter that provides support for the system tray area in the XCenter bar. This area, also called as the notification or indicator area, is commonly used by long running applications to display their status using graphical icons and to provide a way to control these applications by clicking on their icons. There is a number of other tools to implement the described functionality (for example, SysTray/WPS by Dmitry Zaharov and the XCenter plugin for it by Eugene Romanenko). The main reason to create yet another implementation is that existing ones do not provide the level of functionality required by the Qt toolkit for which this extended implementation was created for. Note that since the SysTray/WPS API is being already used by a number of OS/2 applications to implement system tray icons (e.g. PM Downloader, CoolFM), the Extended system tray widget implements this API as well to provide backward compatibility. See the API file for more information. The word "extended" in the widget name is used to distinguish from the XCenter widget by Eugene Romanenko and also to indicate that this one provides some extended functionality (for example the ability to add any valid icon to the tray, not only the frame window's icon). XSYSTRAY API The Extended system tray widget application also provides a DLL and an import library containing the easy-to-use API for applications that want to add icons to the system tray area. The API DLL is installed together with the widget plugin, the import library with the C header file is contained in a separate package within the installation archive. This API is in particular used by the OS/2 version of the Qt4 toolkit and by the OpenJDK framework. The API documentation is contained in the supplied C header file. MANUAL INSTALLATION In order to manually install the extended system tray widget plugin to XCenter, copy \xsystray.dll to \plugins\xcenter\ If you are using eCenter (rebranded XCenter included in the latest eComStation releases), copy xsystray.dll to :\ecs\system\ewps\plugins\xcenter\ Also, copy \xsystray.dll to some path listed in your LIBPATH environment variable. This DLL is necessary for all applications using XSYSTRAY API for interfacing with the Extended system tray. Then you should close all XCenter instances and start them again. The system tray widget will appear in the widget list under the name "Extended system tray". MANUAL UPGRADING If you are upgrading from the previous version, you should do the following: - Unlock the old plugins\xcenter\xsystray.dll file (for example, using unlock.exe from the lxlite package). - Overwrite it with the new \xsystray.dll file. - Stop all applications using <%LIBPATH%>\xsystray.dll file. - Overwrite it with the new \xsystray.dll file. - Restart WPS. Note that restarting XCenter is not enough since the old DLL will remain loaded in this case. The new version should be now picked up automatically. HISTORY 0.1.1 (28-03-2011) Improvements: - Separate WPI archive (still hosted within the Qt4 SVN). - Added a 2px horizontal padding when no icons are shown, to make it possible to move the widget and call its context menu with the mouse. - Added a tooltip "Indicator area" shown when the mouse is over the padding zone between and around icons (also when no icons are shown, in which case "(empty)" is added to the tooltip string). Fixes: - xsystray version was wrongly reported as 1.0.0 instead of 0.1.0. 0.1.0 (11-11-2009, released as part of Qt4 Beta 4) - Initial release. CREDITS AND COPYRIGHTS This product uses code from the XWorkplace project (c) by Ulrich Moeller. SysTray/WPS is copyright (c) by 1999-2002 OS2.Ru DevTeam. Syswray widget is copyright (c) by Eugene Romanenko. Qt is a trademark of Nokia Corporation and/or its subsidiary(-ies). OS/2 and OS/2 Warp are trademarks of the IBM Corporation and/or its subsidiary(-ies). eComStation is a trademark of Serenity Systems International and/or its subsidiary(-ies). Etc.