📄 releasenotes.txt
字号:
About the Series 60 Platform 2nd Edition: Screen Saver Example
----------------------------------
The Screen saver plug-in example demonstrates the usage of the ScreensaverPlugin API
(screensaverplugin.h) to implement an own, customized utility screen saver on top of
the default Series 60 screen saver. The basic functionality of the screen saver can be
similar to the default screen saver but the appearance of the activated
screen saver can be customized.
The default screen saver is designed so that it is easily expandable with user plug-ins.
The same screen saver engine can support multiple different plug-ins. This allows the user
to create many different-looking screen saver plug-ins and the used plug-in can be changed
in the Themes application.
This example draws a screen saver that contains a digital clock, color-changing status
indicator, missed calls indicator(s), new message indicator(s), keylock indicator, and used
profile indicator.
Usually the status indicator is green, but if messages or calls have arrived, the indicator
turns red. On the left of the status indicator there are indicators for missed calls. There
will be as many device symbols as there are missed calls in a row. On the right of the status
indicator there are indicators for new messages and they operate in the same way as missed
calls indicators. The keylock symbol appears on top of the status indicator. On top of all
there is the used profile indicator, which is visible if the device's current profile is other
than 'General'.
Important classes
-----------------
MScreensaverPlugin:
A base class that each screen saver plug-in must inherit and implement. It provides, for
example, the InitializeL, Draw, and HandleScreensaverEventL methods.
Known Issues
-------------
A few bugs have been detected in the implementation of the default screen saver
of Series 60 Platform 2nd Edition (including Feature Packs 1 and 2). They are expected
to be fixed in the future releases of the Series 60 Platform. In this example some
workarounds have been introduced to overcome these issues.
When the profile is set to other than 'General' and queried with the API call
(GetIndicatorPayload(EScreensaverIndicatorIndexProfileName, payLoad)), the
profile is returned ok. But after the profile is switched to 'General' and
queried with the API call, the payLoad.iText parameter is not Zero()ed.
As a workaround, the example uses the CSettingInfo class to receive correct
profile information in this situation.
It was not possible to get the keylock indicator to work using
GetIndicatorPayload(EScreensaverIndicatorIndexKeyGuardState,result) of the
screensaverpugin API. Instead, the keylock status is queried with the RAknKeyLock method.
When setting the screen saver partial mode on using the SetActiveDisplayArea function
from MScreensaverPluginHost, the color depth decreases even if screensaverPartialModeType
is set to EPartialModeTypeFull. This is detected when trying to use color
KRgbGray, which does not show at all. The settings of iBpp and iType in TScreensaverPartialMode
do not seem to have any effect at all.
See the commentary in the source files for further information on these issues.
Installation instructions
-----------------------
-----------------------
MOBILE DEVICE
-----------------
To build the application:
go to screensaverpluginexample\group
bldmake bldfiles
abld build thumb urel
To build the application from the compiled files:
go to screensaverpluginexample\install
makesis ScreenSaverExamplePlugin.pkg
To install the application:
move the SIS file into your device and install
If the pkg file provided in this example is not used, note
that the screen saver plug-in DLL must be installed into the
\system\screensavers\ folder in the device. The extension of the
plug-in has to be renamed from .DLL to .SC.
EMULATOR
----------
The example cannot be run on the emulator because there is no Themes application and
\system\screensavers\ folder in the emulator.
Running the example
-------------------
Select 'Themes' from the applications menu.
Select the theme that is currently used.
Open the Options menu and select Edit.
Go to the 'Screen saver' and select it. A list of available screen savers appears
and there is also the just built ScreenSaverExamplePlugin at the bottom of the
list. Select it and wait for the screen saver to activate.
The timeout of activation can be set in Settings application | Phone | Display | Screen saver timeout.
Compatibility
-------------
The Screen saver plug-in example application is compatible with Series 60 Platform 2nd Edition (including Feature Packs 1 and 2).
It has been tested to work with the Nokia 6600, Nokia 6630, Nokia 6680, and Nokia 7610.
It has not been tested with an emulator.
The example was developed using Series 60 2nd Edition SDK for Symbian OS, supporting Feature Pack 1.
Evaluate this resource
-------------------
Please spare a moment to help us improve coding example quality and recognize the examples you find
most valuable, by rating this resource. (http://www.forum.nokia.com/main/1,,90,00.html?surveyId=e25535be-801d-4041-b4f6-a02a4ca2b68d/Series_60_Platform_2nd_Edition_Screen_Saver_Example_v1_0.zip)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -