updated dependencies; everything (hssrv and hs) compiles with winscw_udeb without error
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/AknSoftNotifier.h Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,153 @@
+/*
+* Copyright (c) 2002-2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Client API for Avkon soft notifications.
+*
+*/
+
+#ifndef __AKNSOFTNOTIFIER_H__
+#define __AKNSOFTNOTIFIER_H__
+
+#include <AknNotify.h>
+#include <AknNotifyStd.h>
+
+class CAknPrivateSoftNoteParameters;
+class CAknSoftNotificationParameters;
+class CAknSoftNotifierExt;
+
+
+
+NONSHARABLE_CLASS(CAknSoftNotifier) : public CAknNotifyBase
+ {
+ public:
+ IMPORT_C static CAknSoftNotifier* NewL();
+ IMPORT_C static CAknSoftNotifier* NewLC();
+ IMPORT_C ~CAknSoftNotifier();
+
+ /**
+ * Add new soft notification of type 'aType'. If the notification of
+ * type 'aType' already exists number of items is increased by one.
+ * Optional dynamic notification text can also be set.
+ *
+ * Please note that this method cannot be used with custom soft notifications
+ *
+ * @param aType The type of the soft notification. Types can be found
+ * in AknNotifyStd.h
+ * @param aText Dynamic text to the notification.
+ */
+ IMPORT_C void AddNotificationL(
+ TAknSoftNotificationType aType, TPtrC* aText = NULL );
+
+ /**
+ * Add new soft notification of type 'aType'. The number of items is
+ * set to 'aCount'.
+ *
+ * Please note that this method cannot be used with custom soft notifications
+ *
+ * @param aType The type of the soft notification. Types can be found
+ * in AknNotifyStd.h
+ * @param aCount The number of items for this type, e.g, missed calls,
+ * voice mails
+ */
+ IMPORT_C void AddNotificationL(
+ TAknSoftNotificationType aType, TInt aCount );
+
+ /**
+ * Set number of notifications of type 'aType'. This overrides current
+ * value. Optional dynamic notification text can also be set.
+ *
+ * Please note that this method cannot be used with custom soft notifications
+ *
+ * @param aType The type of the soft notification.
+ * Types can be found in AknNotifyStd.h
+ * @param aCount Number of item is the notification.
+ * @param aText Dynamic text to the notification. (Not implemented in
+ * current release).
+ */
+ IMPORT_C void SetNotificationCountL(
+ TAknSoftNotificationType aType, TInt aCount, TPtrC* aText = NULL );
+
+ /**
+ * Cancels soft notification of type 'aType'.
+ *
+ * Please note that this method cannot be used with custom soft notifications
+ *
+ * @param aType The type of the soft notification.
+ * Types can be found in AknNotifyStd.h
+ */
+ IMPORT_C void CancelSoftNotificationL( TAknSoftNotificationType aType );
+
+ /**
+ * Adds a custom soft notification. If a custom soft notification with
+ * exactly the same parameters already exists,
+ * its count is increased by aCount.
+ *
+ * @param aParams custom soft notification parameters
+ * @param aCount count
+ */
+ IMPORT_C void AddCustomNotificationL(
+ CAknSoftNotificationParameters& aParams, TInt aCount = 1 );
+
+ /**
+ * Sets the absolute count of a custom soft notification with
+ * given parameters. If such notification did not exist already,
+ * it is created.
+ */
+ IMPORT_C void SetCustomNotificationCountL(
+ CAknSoftNotificationParameters& aParams, TInt aCount );
+
+ /**
+ * Cancels custom soft notification with the given parameters.
+ */
+ IMPORT_C void CancelCustomSoftNotificationL(
+ CAknSoftNotificationParameters& aParams );
+
+ private:
+ /**
+ * Tell the soft notes if the phone is in idle state or not.
+ * Soft notes do not display unless the phone is in idle state.
+ *
+ * @param aIdleState Is phone in idle state
+ */
+ IMPORT_C void SetIdleStateL( TBool aIdleState );
+
+ private:
+ IMPORT_C void CAknNotifyBase_Reserved();
+ CAknSoftNotifier();
+ void ConstructL();
+
+ void PrepareBufferL(
+ TAknSoftNotificationType aType,
+ TInt aCount,
+ TPtrC* aText,
+ TBool aCancel,
+ TBool aAddCount,
+ CAknSoftNotificationParameters* aParams = NULL);
+
+ private: // data
+ CBufFlat* iBuffer;
+ TPtrC8 iBufferPtr;
+
+#ifdef RD_UI_TRANSITION_EFFECTS_POPUPS
+ CAknSoftNotifierExt* iExt;
+#endif
+ public: // NCN updates phone idle information
+ friend class CNcnSNNotifier;
+ friend class CSimpleAppUi;
+
+#ifdef RD_UI_TRANSITION_EFFECTS_POPUPS
+ friend class CAknSoftNotifierExt;
+#endif
+ };
+
+#endif // __AKNSOFTNOTIFIER_H__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/UikonInternalPSKeys.h Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,156 @@
+/*
+* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Internal Publish & Subscribe keys.
+ *
+ *
+*/
+
+
+#ifndef UIKON_INTERNAL_PS_KEYS_H
+#define UIKON_INTERNAL_PS_KEYS_H
+
+const TUid KPSUidUikon = { 0x101F8773 };
+
+/**
+ * Free space level of FFS file system (drive C:)
+ *
+ * Possible values:
+ * 0: free space OK
+ * -1: free space at or below warning level
+ * -2: free space at or below critical level
+ */
+const TUint32 KUikFFSFreeLevel = 0x00000001;
+
+/**
+ * Free space level of FFS file system (drive MMC:)
+ *
+ * Possible values:
+ * 0: free space OK
+ * -1: free space at or below warning level
+ * -2: free space at or below critical level
+ */
+const TUint32 KUikMmcFFSFreeLevel = 0x00000002;
+
+/**
+ * Flip status. This key is updated by AknCapServer according to the
+ * flip key events.
+ *
+ * Possible values:
+ * 0: flip close
+ * 1: flip open
+ */
+const TUint32 KUikFlipStatus = 0x00000003;
+
+/**
+ * This key tells which application is topmost when there is an active video
+ * call.
+ */
+const TUint32 KUikVideoCallTopApp = 0x00000004;
+
+/**
+ * To be used by SysAp for notifying OOM Watcher of the MMC status.
+ * SysAp initializes this key in startup and if the device supports
+ * MMC Hot Swap, updates its status according to MMC mounts/dismounts.
+ *
+ * Possible values:
+ * 0: MMC removed
+ * 1: MMC inserted
+ */
+const TUint32 KUikMMCInserted = 0x00000005;
+
+/**
+ * Information about whether it is allowed to show global notes on the screen
+ * or not.
+ *
+ * No notes should be shown during boot sequence and this setting will remain
+ * in the value 0 until the phone is completely booted up.
+ *
+ * Possible values:
+ * 0: global notes are not allowed to be shown.
+ * 1: global notes can be shown normally.
+ */
+const TUint32 KUikGlobalNotesAllowed = 0x00000006;
+
+/**
+ * This key is used to signal OOM framework to free RAM. FW will ask
+ * applications to exit until amount of free memory exceeds the value given
+ * or there is no more application which will exit gracefully.
+ * OOM FW signals its completion by setting this value to -1.
+ */
+const TUint32 KUikOOMWatchdogStatus = 0x00000007;
+
+/**
+ * This key saves the screen resolution state in the device.
+ * The value is updated by eiksrvui project in Eikstd which
+ * is part of Avkon ui library.
+ *
+ * Possible values: 0 - x where x is the biggest used layout
+ * state value in aknpriv.rss.
+ * Same value in different products can mean different resolution
+ * (it depends on aknpriv.rss configuration).
+*/
+const TUint32 KUikLayoutState = 0x00000008;
+
+/**
+ * Preferred orientation. This key is used to store the preferred orientation
+ * for the current hardware layout state.
+ *
+ * Possible values:
+ * 0: Normal screen orientation
+ * 1: Alternate screen orientation
+ *
+ */
+const TUint32 KUikPreferredOrientation = 0x00000009;
+
+enum TPreferredOrientation
+ {
+ EPreferredOrientationNormal = 0,
+ EPreferredOrientationAlternate = 1
+ };
+
+/**
+ * The list of running aplications meant to be hidden from the user.
+ * The list is always the size of 4*KMaxHiddenApps bytes.
+ *
+ * Stores maximum of KMaxHiddenApps number of application UIDs
+ * to the byte array property, the value of 0x00000000 marks
+ * the end of list.
+ *
+ * Possible values:
+ *
+ * 0-KMaxHiddenApps Application UIDs in byte array
+ *
+ */
+const TUint32 KUikAppHiddenList = 0x00000010;
+
+// the maximum size of array (25 32-bit UIDs equal 100 bytes)
+const TInt KMaxHiddenApps = 25;
+
+/**
+ * String value containing a space-separated list of the language
+ * codes of the language variants that are installed in the device.
+ *
+ * The list begins and ends with space, so a language ID can be
+ * searched from the list with " <LANGUAGE ID> ".
+ *
+ * The key is defined and set by AknCapServer during the
+ * startup of the device and it shouldn't be changed afterwards.
+ *
+ * @type RProperty::EText
+ */
+const TUint32 KUikInstalledLanguages = 0x00000011;
+
+#endif
+
+// End of file
--- a/dependencies/bld.inf Tue Apr 13 19:36:31 2010 +0200
+++ b/dependencies/bld.inf Thu May 06 15:56:48 2010 +0200
@@ -4,8 +4,6 @@
defaultcaps.hrh defaultcaps.hrh
bldvariant.hrh bldvariant.hrh
-telinformationpskeys.h telinformationpskeys.h
-
liwservicehandler.h liwservicehandler.h
liwserviceifmenu.h liwserviceifmenu.h
liwserviceifbase.h liwserviceifbase.h
@@ -95,6 +93,18 @@
gsframeworkrsc.rsg gsframeworkrsc.rsg
gsfwicon.mbg gsfwicon.mbg
+profileapp.loc platform/app/loc/profileapp.loc
+profileapp_01.loc platform/app/loc/01/profileapp_01.loc
+profileapp_sc.loc platform/app/loc/sc/profileapp.loc
+profileapp.loc platform/mw/loc/profileapp.loc
+profileapp_01.loc platform/mw/loc/01/profileapp_01.loc
+profileapp_sc.loc platform/mw/loc/sc/profileapp.loc
+
+AknSoftNotifier.h MW_LAYER_PLATFORM_EXPORT_PATH(AknSoftNotifier.h)
+UikonInternalPSKeys.h MW_LAYER_PLATFORM_EXPORT_PATH(UikonInternalPSKeys.h)
+
+dtd_installer.pl +/tools/dtd_installer.pl
+
#include "extended_skin_api/bld.inf"
#include "S3libs/bld.inf"
@@ -138,5 +148,6 @@
#include "gsprofilesrv_plat-profiles_engine_api/group/bld.inf"
#include "phonesrv_plat-ss_settings_api/group/bld.inf"
#include "logs_ui_command_line_api/group/bld.inf"
+#include "telephony_information_api/group/bld.inf"
// #include "/group/bld.inf"
// #include "/group/bld.inf"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/dtd_installer.pl Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,473 @@
+#
+# Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+# All rights reserved.
+# This component and the accompanying materials are made available
+# under the terms of "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Nokia Corporation - initial contribution.
+#
+# Contributors:
+#
+# Description: A tool that install widgets and dtd files.
+# Tool is mainly meant to be used via dtd.mk makefile template,
+# but can be run as such also.
+#
+
+use strict;
+
+#Tools path
+use constant LIBPATH => '/epoc32/tools';
+use lib LIBPATH;
+
+use Cwd;
+use Getopt::Long;
+use Convert_file; # for .dtd to .loc file conversion
+use File::Copy;
+use File::Find; # for finding
+use File::Path; # mkpath
+use File::Basename; # fileparse
+
+if ( $#ARGV < 1)
+ {
+ print <<USAGE;
+Usage: dtd_installer.pl -n dtd_name [-t type][-l dtd_location] [-s sub_folder_name] [-o output_location] [-a action_type] [-f force_create] [-d debug]
+ -n: widget or dtd (switch_loc) file name
+ -t: optional, default type is dtd and other possibility is widget
+ -l: optional, input path location,
+ default for widget type is \\epoc32\\data\\z\\resource\\homescreen
+ default for dtd is \\epoc32\\include\\domain\\<layer>\\loc
+ -s: optional, for widgets only, default are xuikon and hsps
+ -o: optional, default is \\epoc32\\release\\winscw\\udeb\\z\\private\\200159c0\\install
+ -a: optional, default is build other possible are what and clean
+ -f: optional, for widgets only, themeinstaller is always run for xuikon, even switch loc file don\'t exist
+ -d: optional, for debugging purposes (e.g. temporary folders aren't deleted)
+
+Example how to run for dtd files only:
+ dtd_installer.pl -n matrixmenudata -o \\epoc32\\data\\z\\private\\200113DD\\content
+Example how to run for one widget:
+ dtd_installer.pl -n view -t type widget
+Example how to run for all widgets:
+ dtd_installer.pl -n all_widgets -t type widget -d yes
+
+USAGE
+ exit -1;
+ }
+
+my ($dtd_name, $dtd_type, $dtd_location, $sub_folder_name, $output_location, $action_type, $force_create, $debug, $what_output_file);
+my (@all_dirs, @find_files, @files_to_convert);
+my @sub_folders=("xuikon","hsps");
+my @layers=("\\epoc32\\include\\domain\\osextensions\\loc", "\\epoc32\\include\\domain\\middleware\\loc", "\\epoc32\\include\\domain\\applications\\loc", "\\epoc32\\include\\platform\\loc", "\\epoc32\\include\\platform\\mw\\loc", "\\epoc32\\include\\platform\\app\\loc");
+my $themeinstaller_tool = "\\epoc32\\tools\\themeinstaller\\themeinstaller.bat";
+my $themeinstaller_property_file = "\\epoc32\\tools\\themeinstaller\\data\\widgetinstaller.prop";
+
+# Set this to 1 if you need to debug the script
+# $debug = 1;
+
+GetOptions(
+ 'n=s' => \$dtd_name,
+ 't=s' => \$dtd_type,
+ 'l=s' => \$dtd_location,
+ 's=s' => \$sub_folder_name,
+ 'o=s' => \$output_location,
+ 'a=s' => \$action_type,
+ 'd=s' => \$debug,
+ 'f=s' => \$force_create );
+
+check_options();
+
+if (($action_type eq "what") && (-e $what_output_file)) {
+ open( WHAT, $what_output_file) or die $!;
+ while( <WHAT> ){
+ print ;
+ }
+ close WHAT;
+ exit;
+} elsif (($action_type eq "clean") && (-e $what_output_file)) {
+ unlink $what_output_file;
+}
+
+if ($dtd_type eq "widget") {
+ if ((lc $dtd_name) eq "all_widgets") {
+ # read all widget names from given directory
+ opendir(SDIR, $dtd_location) or die("ERROR: dtd_installer.pl, can not open $dtd_location\n");
+ @all_dirs = grep !/^\.\.?$/, readdir SDIR;
+ closedir(SDIR);
+ if (!@all_dirs) {
+ warn"ERROR: dtd_installer.pl, couldn't find any widgets:\n";
+ die;
+ }
+ foreach my $temp_dtd_name (@all_dirs) {
+ $dtd_name = $temp_dtd_name;
+ my $dir = "${dtd_location}\\${dtd_name}";
+ if (-d $dir) { # Calling process_widget sub routine for every directory
+ process_widget();
+ }
+ }
+ } else { # Only one widget processed
+ process_widget();
+ }
+} else {
+ # Run only .loc to .dtd conversion for non widgets
+ process_dtd($output_location, $dtd_name);
+}
+
+sub process_widget
+{
+
+ foreach my $sub_f (@sub_folders) {
+ my @lang_dirs;
+ if ($debug) { print "Current subfolder:\n $sub_f\n"; }
+ ${sub_folder_name} = $sub_f;
+ if ($debug) { print "Processing widget:\n${dtd_location}\\${dtd_name}\n"; }
+
+ my $current_time = time;
+ my $full_dtd_input_path = "${dtd_location}\\${dtd_name}\\${sub_folder_name}";
+ my $full_dtd_output_path = "${output_location}\\${dtd_name}\\${sub_folder_name}";
+ my $temp_path = "${dtd_location}\\${dtd_name}\\temp";
+ my $temp_loc_path = "${dtd_location}\\${dtd_name}\\${sub_folder_name}\\temp";
+ my $temp_dtd_path = "${temp_path}\\$current_time";
+ my $temp_loc_files_path = "${temp_loc_path}\\$current_time";
+ my $no_success = 1;
+ my $count = 0;
+
+ while ($no_success) { # make sure that temporary directory isn't already in the use
+ undef $no_success;
+ $current_time = time;
+ $temp_dtd_path = "${temp_path}\\$current_time";
+ mkpath $temp_dtd_path or $no_success=1;
+ sleep 1;
+ $count++;
+ if ($count > 100 ) { warn: "ERROR: dtd_installer.pl, couldn't create temp directory $temp_dtd_path !!!\nDtd_installer\.pl script stopped\n"; die;}
+ }
+ $count = 0;
+ $no_success = 1;
+ while ($no_success) { # make sure that temporary directory isn't already in the use
+ undef $no_success;
+ $current_time = time;
+ $temp_loc_files_path = "${temp_loc_path}\\$current_time";
+ mkpath $temp_loc_files_path or $no_success=1;
+ sleep 1;
+ $count++;
+ if ($count > 100 ) { warn: "ERROR: dtd_installer.pl, couldn't create temp directory $temp_loc_files_path!!!\nDtd_installer\.pl script stopped\n"; die;}
+ }
+
+ if ($debug) { print "Full dtd input path:\n$full_dtd_input_path\n"; }
+ if ($debug) { print "Full dtd output path:\n$full_dtd_output_path\n"; }
+ opendir(SDIR, $full_dtd_input_path) or die("ERROR: dtd_installer.pl, can not open $full_dtd_input_path\n");
+ @lang_dirs = grep !/^\.\.?$/, readdir SDIR;
+ closedir(SDIR);
+
+
+ if (${sub_folder_name} eq "xuikon") { # Copy engineering english files always to 00 folder
+ copy_files($full_dtd_input_path,"${temp_loc_files_path}\\00");
+ } else{ #hsps folder
+ copy_files($full_dtd_input_path,"${full_dtd_output_path}\\00");
+ }
+
+
+ foreach my $lang_id (@lang_dirs) { # generate localized .dtd files
+
+ my $dtd_temp = "${full_dtd_input_path}\\${lang_id}";
+ if ((-f $dtd_temp) && ($lang_id =~ /.dtd/i) ) { # running loc to dtd for all .dtd files
+ if ($debug) { print "Dtd file found:\n$dtd_temp\n"; }
+
+ if (${sub_folder_name} eq "xuikon") { # generate xuikon .dtd files to temp path
+ if ($debug) { print "Widget type DTD, xuikon subfolder\n"; }
+ process_dtd($temp_loc_files_path, $lang_id);
+ } else{ #hsps folder
+ if ($debug) { print "Widget type DTD, hsps subfolder\n"; }
+ process_dtd($full_dtd_output_path, $lang_id);
+ }
+ } elsif ((${sub_folder_name} eq "xuikon") && ($force_create ne "") && (-d $dtd_temp)) {
+ copy_files($dtd_temp,"${temp_loc_files_path}\\${lang_id}");
+ }
+ }
+
+ if (${sub_folder_name} eq "xuikon") { # generate localized files
+ if (!(-f $themeinstaller_tool)) { die("ERROR: dtd_installer.pl, can not find themeinstaller: $themeinstaller_tool\n"); }
+ if (!(-f $themeinstaller_property_file)) { die("ERROR: dtd_installer.pl, can not find themeinstaller property file: $themeinstaller_property_file\n"); }
+
+ if (-d $temp_loc_files_path) {
+ opendir(SDIR, $temp_loc_files_path) or die("ERROR: dtd_installer.pl, can not open $temp_loc_files_path\n");
+ @lang_dirs = grep !/^\.\.?$/, readdir SDIR;
+ closedir(SDIR);
+
+ foreach my $lang_id (@lang_dirs) {
+ my $lang_dir = "$temp_loc_files_path\\$lang_id";
+ if ($debug) { print"Language directory:\n$lang_dir\n"; }
+ if (-d $lang_dir) { # Running themeinstaller for all language folders in temp path
+ my $temp_dir = "$temp_dtd_path\\$lang_id";
+ copy_files($full_dtd_input_path, "$temp_dir");
+ my $lang_temp_dir = "$full_dtd_input_path\\$lang_id";
+ if (-d $lang_temp_dir) {
+ copy_files("$lang_temp_dir", "$temp_dir");
+ }
+ copy_files("$temp_loc_files_path\\$lang_id", "$temp_dir");
+ if (($action_type eq "build") || ($debug)) {
+ print ("Calling themeinstaller: \n$themeinstaller_tool $temp_dtd_path\\${lang_id}\\${dtd_name}.dat $temp_dtd_path\\${lang_id} -prop:${themeinstaller_property_file}\n");
+ system ("$themeinstaller_tool","$temp_dtd_path\\${lang_id}\\${dtd_name}.dat","$temp_dtd_path\\${lang_id}", "-prop:${themeinstaller_property_file}");
+ } else {
+ system ("$themeinstaller_tool","$temp_dtd_path\\${lang_id}\\${dtd_name}.dat","$temp_dtd_path\\${lang_id}", "-prop:${themeinstaller_property_file}", ">$temp_dtd_path\\${lang_id}\\themeinstaller.log", "2>&1" );
+ }
+ copy_files("$temp_dir", "$full_dtd_output_path\\$lang_id", "recursive");
+ }
+ }
+ }
+ }
+
+ if ($debug) {
+ print "Widget processed: ${dtd_name} \n";
+ } else {
+ # Remove all temporary directories
+ if (-d $temp_dtd_path) { rmtree ($temp_dtd_path); }
+ if (-d $temp_loc_files_path) { rmtree ($temp_loc_files_path); }
+ rmdir $temp_path;
+ rmdir $temp_loc_path;
+ }
+ }
+}
+
+sub process_dtd {
+
+ my $output_path = shift;
+ my $switch_loc_name = shift;
+ $switch_loc_name =~ s/.dtd//i;; # remove the .dtd extension
+ my $input_path = $dtd_location;
+ my ($found, $loc_file);
+ if ($action_type eq "build") { print "Used switch loc file name:\n${switch_loc_name}\n"; }
+ if ($debug) { print "Used input path:\n${input_path}\n"; }
+ if ($debug) { print "Used output path:\n${output_path}\n"; }
+
+ foreach (@layers) {
+ $input_path = $_;
+ if ($debug) { print("Used switch loc file path:\n${input_path}\n"); }
+ my $loc_file = "${input_path}\\${switch_loc_name}.loc";
+ if (! -e $loc_file) {
+ $loc_file = "${input_path}\\sc\\${switch_loc_name}.loc";
+ }
+ if (-e $loc_file) {
+ convert_locs_to_dtds($loc_file, $input_path, $output_path);
+ $found = "yes";
+ }
+ }
+ if ($found ne "yes") {
+ warn "ERROR: dtd_installer.pl, no .loc file found:\n${switch_loc_name}.loc\n";
+ }
+}
+
+sub check_options {
+
+ if ($dtd_name eq "") {
+ warn: "ERROR: dtd_installer.pl, no widget name given!!!\nDtd_installer\.pl script stopped\n";
+ die;
+ }
+
+ if ($dtd_type eq "") {
+ $dtd_type = "dtd";
+ }
+
+ if ($dtd_location eq "") {
+ if ($dtd_type eq "widget") {
+ $dtd_location = "\\epoc32\\data\\z\\resource\\homescreen";
+ }
+ } else {
+ if ($dtd_type eq "dtd") {
+ undef @layers;
+ @layers[0]=${dtd_location};
+ }
+ }
+
+ if ($output_location eq "") {
+ $output_location = "\\epoc32\\release\\winscw\\udeb\\z\\private\\200159c0\\install";
+ }
+
+ if (${sub_folder_name} ne ""){
+ undef @sub_folders;
+ @sub_folders[0]=${sub_folder_name};
+ }
+
+ if ($action_type eq "") {
+ $action_type = "build";
+ }
+
+ $dtd_location =~ s/\//\\/g; #Change / marks to \
+ $output_location =~ s/\//\\/g; #Change / marks to \
+ $what_output_file = $output_location;
+ $what_output_file =~ s/\\/_/g; #Change \ marks to _
+ $what_output_file = "\\epoc32\\build\\dtd_installer\\" . $what_output_file . $dtd_name . ".txt";
+ if ( !-d "/epoc32/build/dtd_installer") { mkdir("/epoc32/build/dtd_installer"); }
+ if ($debug) { print "Output what file: $what_output_file\n"; }
+}
+
+# This subroutine moves files to/from temporary themeinstaller location.
+sub copy_files {
+ my $in_path = shift;
+ my $out_path = shift;
+ my $recursive = shift;
+ if ($debug) { print "Copying from: $in_path\n"; }
+ if ($debug) { print "To: $out_path\n"; }
+
+ if ($recursive) {
+ find( \&getFiles, $in_path );
+ } else {
+ opendir(SDIR, $in_path) or die("ERROR: dtd_installer.pl, can not open $in_path\n");
+ @find_files = grep !/^\.\.?$/, readdir SDIR;
+ closedir(SDIR);
+ }
+
+ foreach my $file (@find_files) {
+ my $in_file = "${in_path}\\${file}";
+ my $out_file= "${out_path}\\${file}";
+ if ($recursive) {
+ $in_file = $file;
+ $file =~ /.*\\(.*)\\.*\\.*\\.*\\(.*)\\(.*)/i;
+ my $temp=$1; # lang code
+ my $temp2=$3; # file name
+ if ((lc $2) eq "sources") {
+ $out_file = "${out_path}\\$2\\$3";
+ } else {
+ if (length($temp) > 4) { #skip extra files
+ next;
+ }
+ while (length($temp) < 4){ $temp = "0".$temp; }
+ $temp2 =~ s/\d{4}/$temp/g; # change .odt filename for correct lang
+ $out_file = "${out_path}\\$temp2";
+ }
+ }
+ if ($debug) { print "Copying file from: $in_file\n"; }
+ if ($debug) { print "To: $out_file\n"; }
+ if (-f $in_file){
+ if ($action_type eq "build") {
+ if ((!($out_file =~ /\\temp\\/i))) {write_what_file("$out_file")};
+ xcopy($in_file,$out_file);
+ } elsif ($action_type eq "clean") {
+ if (!($out_file =~ /\\temp\\/i)) {
+ unlink $out_file;
+ my $temp_dir_path = $out_file;
+ $temp_dir_path =~ /(.*)\\.*/;
+ $temp_dir_path = $1;
+ rmdir $temp_dir_path; # Try to remove empty language directories
+ } else {
+ xcopy($in_file,$out_file);
+ }
+ } elsif ($action_type eq "what") {
+ if (!($out_file =~ /\\temp\\/i)) {
+ write_what_file("$out_file");
+ print("$out_file\n");
+ } else {
+ xcopy($in_file,$out_file);
+ }
+ } else {
+ warn ("ERROR: dtd_installer.pl, unknown action type");
+ }
+ } else {
+ if ($debug) { print "Not file found: $in_file\n"; }
+ }
+ }
+}
+
+# This subroutine converts LOC files to DTD files. Files that are
+# listed in the switch_loc file are converted to DTD files.
+
+sub convert_locs_to_dtds {
+ my $switch_loc_file = shift;
+ my $in_path = shift;
+ my $out_path = shift;
+
+ open(my $switch_loc_file_handle, "$switch_loc_file")
+ or die "Can't open `$switch_loc_file' for reading: $!";
+
+ # Read localised .loc file names from used input switch loc file
+ while (my $line = <$switch_loc_file_handle>) {
+ chomp($line);
+ if (($line =~ "include") && (!($line =~ /\<sc\//i)) && (!($line =~ /\<00\//i)) ){ # Read all lines that contains include, except sc and 00
+ $line=~ /.*\<(.*)\>.*/;
+ $line=$1;
+ $line =~ s/\//\\/g; #Change / marks to \
+ if ($debug) { print"Adding localised file to conversion list:\n$line\n"; }
+ push @files_to_convert, $line;
+ }
+ }
+
+ close $switch_loc_file_handle;
+
+ # Process all the .loc files.
+ foreach (@files_to_convert) {
+ my $loc_file = "$in_path\\$_";
+ my $out_file = "$out_path\\$_";
+ $out_file =~ s/_\d{2,5}(.{4})$/$1/i; # remove the language code from the file name.
+ if ($debug) { print"Trying to convert file:\n$loc_file\n"; }
+ if ($debug) { print"To out file:\n$out_file\n"; }
+ if (-f $loc_file) {
+ if (($action_type eq "build") || ((${dtd_type} eq "widget") && (${sub_folder_name} eq "xuikon")) ) {
+#old if ((!($out_file =~ /\\temp\\/i))) {write_what_file("$out_file")};
+ xcopy($loc_file,$out_file);
+ Convert_file::convert_file($out_file);
+ if ((!($out_file =~ /\\temp\\/i))) {
+ my $convert_out_file = $out_file;
+ $convert_out_file =~ s/\.loc/\.dtd/; # replace .loc with .dtd
+ write_what_file("$convert_out_file");
+ }
+ if (!($debug)) { unlink $out_file; } # Delete the copied .loc file
+ $out_file =~ s/\.loc/\.log/; # replace .loc with .log
+ if (!($debug)) { unlink $out_file; } # Delete the conversion .log file
+ } elsif ($action_type eq "clean") {
+ $out_file =~ s/\.loc/\.dtd/; # replace .loc with .dtd
+ unlink $out_file; # delete the output file
+ my $temp_dir_path = $out_file;
+ $temp_dir_path =~ /(.*)\\.*/;
+ $temp_dir_path = $1;
+ rmdir $temp_dir_path; # Try to remove empty language directories
+ } elsif (($action_type eq "what") && (!($out_file =~ /\\temp\\/i))) {
+ $out_file =~ s/\.loc/\.dtd/; # replace .loc with .dtd
+ print("$out_file\n");
+ write_what_file("$out_file");
+ }
+ } else {
+ warn "ERROR: dtd_installer.pl, no .loc file found: $loc_file\n";
+ }
+ }
+}
+
+# This subroutine is for file copying
+sub xcopy
+{
+ my $source = shift;
+ my $dist = shift;
+
+ # if distination file exist then clear read flag
+ if (-f $dist)
+ {
+ chmod ($dist , 0755);
+ }
+ else
+ {
+ my($n, $d, $ext) = fileparse($dist, '\..*');
+ # check weather distination directory exist or not. If directory doesn't exist then create it.
+ -d $d || mkpath($d, 0, 0x755);
+ }
+
+ # copy source to distination
+ copy($source,$dist);
+}
+
+# read files from given path to filelist
+sub getFiles {
+ my $file_name = $File::Find::name;
+ $file_name =~ s/\//\\/g; #Change / marks to \
+ chomp $file_name;
+ next if ( -d $file_name ); # Skip directories
+ next if ((!($file_name =~ /o0000/i)) && (!($file_name =~ /\/sources\//i))); # Skip other then resource and source files
+ push @find_files, $file_name;
+}
+
+sub write_what_file {
+ my $out = shift;
+ open( WHAT, ">>$what_output_file") or die $!;
+ print WHAT "$out\n";
+ close WHAT;
+
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/profileapp.loc Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,129 @@
+#if LANGUAGE_sc
+ #include <sc/profileapp.loc>
+#elif LANGUAGE_01
+ #include <01/profileapp_01.loc>
+#elif LANGUAGE_02
+ #include <02/profileapp_02.loc>
+#elif LANGUAGE_03
+ #include <03/profileapp_03.loc>
+#elif LANGUAGE_04
+ #include <04/profileapp_04.loc>
+#elif LANGUAGE_05
+ #include <05/profileapp_05.loc>
+#elif LANGUAGE_06
+ #include <06/profileapp_06.loc>
+#elif LANGUAGE_07
+ #include <07/profileapp_07.loc>
+#elif LANGUAGE_08
+ #include <08/profileapp_08.loc>
+#elif LANGUAGE_09
+ #include <09/profileapp_09.loc>
+#elif LANGUAGE_10
+ #include <10/profileapp_10.loc>
+#elif LANGUAGE_102
+ #include <102/profileapp_102.loc>
+#elif LANGUAGE_103
+ #include <103/profileapp_103.loc>
+#elif LANGUAGE_129
+ #include <129/profileapp_129.loc>
+#elif LANGUAGE_13
+ #include <13/profileapp_13.loc>
+#elif LANGUAGE_14
+ #include <14/profileapp_14.loc>
+#elif LANGUAGE_14346
+ #include <14346/profileapp_14346.loc>
+#elif LANGUAGE_14387
+ #include <14387/profileapp_14387.loc>
+#elif LANGUAGE_14412
+ #include <14412/profileapp_14412.loc>
+#elif LANGUAGE_14419
+ #include <14419/profileapp_14419.loc>
+#elif LANGUAGE_15
+ #include <15/profileapp_15.loc>
+#elif LANGUAGE_157
+ #include <157/profileapp_157.loc>
+#elif LANGUAGE_158
+ #include <158/profileapp_158.loc>
+#elif LANGUAGE_159
+ #include <159/profileapp_159.loc>
+#elif LANGUAGE_16
+ #include <16/profileapp_16.loc>
+#elif LANGUAGE_160
+ #include <160/profileapp_160.loc>
+#elif LANGUAGE_161
+ #include <161/profileapp_161.loc>
+#elif LANGUAGE_17
+ #include <17/profileapp_17.loc>
+#elif LANGUAGE_18
+ #include <18/profileapp_18.loc>
+#elif LANGUAGE_230
+ #include <230/profileapp_230.loc>
+#elif LANGUAGE_25
+ #include <25/profileapp_25.loc>
+#elif LANGUAGE_26
+ #include <26/profileapp_26.loc>
+#elif LANGUAGE_27
+ #include <27/profileapp_27.loc>
+#elif LANGUAGE_28
+ #include <28/profileapp_28.loc>
+#elif LANGUAGE_29
+ #include <29/profileapp_29.loc>
+#elif LANGUAGE_30
+ #include <30/profileapp_30.loc>
+#elif LANGUAGE_31
+ #include <31/profileapp_31.loc>
+#elif LANGUAGE_32
+ #include <32/profileapp_32.loc>
+#elif LANGUAGE_326
+ #include <326/profileapp_326.loc>
+#elif LANGUAGE_327
+ #include <327/profileapp_327.loc>
+#elif LANGUAGE_33
+ #include <33/profileapp_33.loc>
+#elif LANGUAGE_37
+ #include <37/profileapp_37.loc>
+#elif LANGUAGE_39
+ #include <39/profileapp_39.loc>
+#elif LANGUAGE_42
+ #include <42/profileapp_42.loc>
+#elif LANGUAGE_44
+ #include <44/profileapp_44.loc>
+#elif LANGUAGE_45
+ #include <45/profileapp_45.loc>
+#elif LANGUAGE_49
+ #include <49/profileapp_49.loc>
+#elif LANGUAGE_50
+ #include <50/profileapp_50.loc>
+#elif LANGUAGE_51
+ #include <51/profileapp_51.loc>
+#elif LANGUAGE_54
+ #include <54/profileapp_54.loc>
+#elif LANGUAGE_57
+ #include <57/profileapp_57.loc>
+#elif LANGUAGE_58
+ #include <58/profileapp_58.loc>
+#elif LANGUAGE_59
+ #include <59/profileapp_59.loc>
+#elif LANGUAGE_65
+ #include <65/profileapp_65.loc>
+#elif LANGUAGE_67
+ #include <67/profileapp_67.loc>
+#elif LANGUAGE_68
+ #include <68/profileapp_68.loc>
+#elif LANGUAGE_70
+ #include <70/profileapp_70.loc>
+#elif LANGUAGE_76
+ #include <76/profileapp_76.loc>
+#elif LANGUAGE_78
+ #include <78/profileapp_78.loc>
+#elif LANGUAGE_79
+ #include <79/profileapp_79.loc>
+#elif LANGUAGE_83
+ #include <83/profileapp_83.loc>
+#elif LANGUAGE_93
+ #include <93/profileapp_93.loc>
+#elif LANGUAGE_94
+ #include <94/profileapp_94.loc>
+#elif LANGUAGE_96
+ #include <96/profileapp_96.loc>
+#endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/profileapp_01.loc Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,89 @@
+CHARACTER_SET UTF8
+#define qtn_apps_mode_grid "Profiles"
+#define qtn_apps_mode_list "Profiles"
+#define qtn_mode_profiles "Profiles"
+#define qtn_mode_ringing_tone "Ringing tone"
+#define qtn_mode_line1_tone "Ringing tone, line 1"
+#define qtn_mode_line2_tone "Ringing tone, line 2"
+#define qtn_mode_vt_tone "Video call tone"
+#define qtn_profiles_tone_maxsize_error "Unable to set as ringing tone. File size exceeds %N kB."
+#define qtn_mode_ringing_type_2 "Ringing type"
+#define qtn_mode_ringing_volume "Ringing volume"
+#define qtn_profiles_media_volume "Volume"
+#define qtn_mode_message_tone "Message alert tone"
+#define qtn_mode_vibrating_alert "Vibrating alert"
+#define qtn_mode_keypad_volume "Key tones"
+#define qtn_mode_warning_game "Warning tones"
+#define qtn_mode_alert_for "Alert for"
+#define qtn_mode_sett_profile_name "Profile name"
+#define qtn_tc_ringing "Ringing"
+#define qtn_tc_ascending "Ascending"
+#define qtn_tc_ring_once "Ring once"
+#define qtn_tc_beep_once "Beep once"
+#define qtn_tc_silent "Silent"
+#define qtn_mode_warning_game_on "On"
+#define qtn_mode_warning_game_off "Off"
+#define qtn_tc_keypad_off "Off"
+#define qtn_tc_keypad_quiet "Level 1"
+#define qtn_tc_keypad_medium "Level 2"
+#define qtn_tc_keypad_loud "Level 3"
+#define qtn_tc_all_callers "All calls"
+#define qtn_tc_several_groups "Several groups"
+#define qtn_tc_none "Off"
+#define qtn_mode_rename_error "Profile name already in use"
+#define qtn_tc_ringing_level_warning "Select maximum volume for ringing tone?"
+#define qtn_mode_change "Change"
+#define qtn_mode_activate "Activate"
+#define qtn_mode_personalise "Personalise"
+#define qtn_tc_popup_heading "Select tone:"
+#define qtn_profiles_options_create_new "Create new"
+#define qtn_profiles_options_delete "Delete profile"
+#define qtn_profiles_delete_error "Profile in use. Unable to delete."
+#define qtn_profiles_error_maximum "Maximum number of profiles reached"
+#define qtn_profiles_conf_delete "Delete profile?"
+#define qtn_profiles_options_timed "Timed"
+#define qtn_profiles_setting_expiry_time "Profile expires:"
+#define qtn_profiles_conf_singular "Time left until profile expires:\n%0N hour and %1N minute"
+#define qtn_profiles_conf_plural "Time left until profile expires:\n%0N hours and %1N minutes"
+#define qtn_profiles_conf_hour_sev_min "Time left until profile expires:\n%0N hour and %1N minutes"
+#define qtn_profiles_conf_sev_hours_min "Time left until profile expires:\n%0N hours and %1N minute"
+#define qtn_profiles_error_timing_active_profile "Timing currently active profile not allowed"
+#define qtn_profiles_e_mail_tone "Mail alert tone"
+#define qtn_mode_tts_ringing_tone "Say caller's name"
+#define qtn_mode_tts_ringing_tone_on "On"
+#define qtn_mode_tts_ringing_tone_off "Off"
+#define qtn_mode_vibrating_alert_on "On"
+#define qtn_mode_vibrating_alert_off "Off"
+#define qtn_poc_profile_ringing_tone "PTT call alert tone"
+#define qtn_poc_profile_status "Push to talk status"
+#define qtn_poc_profile_status_active "Active"
+#define qtn_poc_profile_status_silent "Silent"
+#define qtn_poc_profile_status_dnd "Do not disturb"
+#define qtn_profiles_confirm_ringtone_found "File '%U[47]' not found. Default tone will be used."
+#define qtn_profiles_tone_3d_effect "3-D ringing tone effect"
+#define qtn_profiles_3d_effect_off "Off"
+#define qtn_profiles_3d_effect_circle "Circular"
+#define qtn_profiles_3d_effect_flyby "Fly-by"
+#define qtn_profiles_3d_effect_zig_zag "Zigzag"
+#define qtn_profiles_3d_effect_random_walk "Meander"
+#define qtn_profiles_3d_effect_chaos "Chaos"
+#define qtn_profiles_3d_effect_stereo_widening "Stereo widening"
+#define qtn_profiles_tone_3d_echo "3-D ringing tone echo"
+#define qtn_profiles_3d_echo_off "Off"
+#define qtn_profiles_3d_echo_living_room "Living room"
+#define qtn_profiles_3d_echo_cave "Cave"
+#define qtn_profiles_3d_echo_stone_corridor "Railway station"
+#define qtn_profiles_3d_echo_forest "Forest"
+#define qtn_profiles_3d_echo_sewer_pipe "Duct"
+#define qtn_profiles_3d_echo_underwater "Underwater"
+#define qtn_mode_tactile_feedback "Touch screen vibration"
+#define qtn_mode_tactile_feedback_off "Off"
+#define qtn_mode_tactile_feedback_level1 "Level 1"
+#define qtn_mode_tactile_feedback_level2 "Level 2"
+#define qtn_mode_tactile_feedback_level3 "Level 3"
+#define qtn_mode_audio_feedback "Touch screen tones"
+#define qtn_mode_audio_feedback_off "Off"
+#define qtn_mode_audio_feedback_level1 "Level 1"
+#define qtn_mode_audio_feedback_level2 "Level 2"
+#define qtn_mode_audio_feedback_level3 "Level 3"
+#define qtn_power_saving_protected_settings_infonote "Unable to change setting. Power saving mode active."
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/profileapp_sc.loc Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,457 @@
+/*
+* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Profiles application localisation strings.
+*
+*/
+
+
+
+// LOCALISATION STRINGS
+
+//d: Application title (app grid view)
+//l: cell_app_pane_t1
+#define qtn_apps_mode_grid "Profiles"
+
+//d: Application title (app list view)
+//l: list_single_large_graphic_pane_t1
+#define qtn_apps_mode_list "Profiles"
+
+//d: Profile Title Pane text (in Profile Main dialog)
+//l: title_pane_t2/opt9
+#define qtn_mode_profiles "Profiles"
+
+//d: Profile settings list item for ringing tone selection
+//l: list_setting_pane_t1
+#define qtn_mode_ringing_tone "Ringing tone"
+
+//d: Profile settings list item for line 1 ringing tone selection
+//l: list_setting_pane_t1
+#define qtn_mode_line1_tone "Line 1 ringing tone"
+
+//d: Profile settings list item for line 2 ringing tone selection
+//l: list_setting_pane_t1
+#define qtn_mode_line2_tone "Line 2 ringing tone"
+
+//d: Profile settings list item for Video telephone tone selection
+//d: Added to 2.common wk 30.
+//l: list_setting_pane_t1
+#define qtn_mode_vt_tone "Video Call tone"
+
+// d:Error note shown when ringing tone can't be set
+// d:because tone maximum file size is exceeded.
+// l:popup_note_window
+// r:3.1
+#define qtn_profiles_tone_maxsize_error "Files larger than %N KB cannot be set as ringing tone"
+
+//d: Profile settings list item for ringing type
+//l: list_setting_pane_t1
+#define qtn_mode_ringing_type_2 "Ringing type"
+
+//d: Profile settings list item for ringing volume
+//l: list_setting_pane_t1
+#define qtn_mode_ringing_volume "Ringing volume"
+
+//d: Profile settings list item for Media volume
+//l: list_setting_pane_t1
+#define qtn_profiles_media_volume "Media volume"
+
+//d: Profile settings list item for message alert tone
+//l: list_setting_pane_t1
+#define qtn_mode_message_tone "Message alert tone"
+
+//d: Profile settings list item for vibrating alert
+//l: list_setting_pane_t1
+#define qtn_mode_vibrating_alert "Vibrating alert"
+
+//d: Profile settings list item for keypad tones
+//l: list_setting_pane_t1
+#define qtn_mode_keypad_volume "Keypad tones"
+
+//d: Profile settings list item for warning and game tones
+//l: list_setting_pane_t1
+#define qtn_mode_warning_game "Warning and game tones"
+
+//d: Profile settings list item alert for setting
+//l: list_setting_pane_t1
+#define qtn_mode_alert_for "Alert for"
+
+//d: Profile settings list item for profile name
+//l: list_setting_pane_t1
+#define qtn_mode_sett_profile_name "Profile name"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_ringing "Ringing"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_ascending "Ascending"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_ring_once "Ring once"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_beep_once "Beep once"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_silent "Silent"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:2.8
+#define qtn_mode_warning_game_on "On"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:2.8
+#define qtn_mode_warning_game_off "Off"
+
+// LOC STRINGS FOR KEYPAD VOLUME
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:3.0
+#define qtn_tc_keypad_off "Off"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_keypad_quiet "Level 1"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_keypad_medium "Level 2"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_keypad_loud "Level 3"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_all_callers "All callers"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+#define qtn_tc_several_groups "Several groups"
+
+//d: Message alert tone "None"
+//l: list_single_graphic_pane_t1_cp2
+#define qtn_tc_none "None"
+
+//d: Profile Name Existing Notification Message
+//l: popup_note_window
+#define qtn_mode_rename_error "A profile with that name already exists"
+
+//d: Max Volume Level Notification Message
+//l: popup_note_window
+#define qtn_tc_ringing_level_warning "Select maximum volume for ringing tone?"
+
+//d: Options Menu
+//l: list_single_pane_t1_cp2
+#define qtn_mode_change "Change"
+
+//d: Options Menu
+//l: list_single_pane_t1_cp2
+#define qtn_mode_activate "Activate"
+
+//d: Options Menu
+//l: list_single_pane_t1_cp2
+#define qtn_mode_personalise "Personalise"
+
+//d: File list dialog header
+//l: heading_pane_t1
+#define qtn_tc_popup_heading "Select tone: "
+
+// LOC STRINGS FOR DYNAMIC PROFILES
+
+//d: Options menu item for creating a new profile
+//l: list_single_pane_t1_cp2
+#define qtn_profiles_options_create_new "Create new profile"
+
+//d: Options menu item for deleting a user created profile
+//l: list_single_pane_t1_cp2
+#define qtn_profiles_options_delete "Delete a profile"
+
+//d: Error note when user tries to delete currently active (selected) profile.
+//l: popup_note_window
+#define qtn_profiles_delete_error "Profile in use, cannot delete"
+
+//d: Error note when user has created maximum number of user created profiles
+//d: and tries to create one more.
+//l: popup_note_window
+#define qtn_profiles_error_maximum "Maximum number of profiles exceeded"
+
+//d: Confirmation query for deleting a user created profile
+//l: popup_note_window
+#define qtn_profiles_conf_delete "Delete profile?"
+
+// LOC STRINGS FOR TIMED PROFILE
+
+//d: Options menu item for timed profile feature
+//l: list_single_pane_t1_cp2
+#define qtn_profiles_options_timed "Timed"
+
+//d: A query window where user enters the time when the profile expires
+//l: popup_query_data_window
+#define qtn_profiles_setting_expiry_time "Profile expires"
+
+//d: Information note which shows how much time is left until profile expires
+//d: 1 hour, 1 minute
+//l: popup_note_window
+#define qtn_profiles_conf_singular "Time left until profile expires:\n%0N hour and %1N minute"
+
+//d: Information note which shows how much time is left until profile expires
+//d: N hours, N minutes
+//l: popup_note_window
+#define qtn_profiles_conf_plural "Time left until profile expires:\n%0N hours and %1N minutes"
+
+//d: Information note which shows how much time is left until profile expires
+//d: 1 hour, N minutes
+//l: popup_note_window
+#define qtn_profiles_conf_hour_sev_min "Time left until profile expires:\n%0N hour and %1N minutes"
+
+//d: Information note which shows how much time is left until profile expires
+//d: N hours, 1 minute
+//l: popup_note_window
+#define qtn_profiles_conf_sev_hours_min "Time left until profile expires:\n%0N hours and %1N minute"
+
+//d: Error note shown if active profile is being timed
+//l: popup_note_window
+//w:
+//r:3.2
+#define qtn_profiles_error_timing_active_profile "Timing currently active profile is not allowed."
+
+
+// LOC STRING FOR E-MAIL ALERT TONE
+
+//d: Profile settings list item for e-mail alert tone
+//l: list_setting_pane_t1
+#define qtn_profiles_e_mail_tone "E-Mail alert tone"
+
+// LOC STRINGS FOR TTS RINGINGTONE
+
+//d: Profile Settings list item for Text-to-Speech ringingtone
+//l: list_setting_pane_t1
+//w:
+//r:3.0
+#define qtn_mode_tts_ringing_tone "Say caller’s name"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//w:
+//r:3.0
+#define qtn_mode_tts_ringing_tone_on "On"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//w:
+//r:3.0
+#define qtn_mode_tts_ringing_tone_off "Off"
+
+// LOC STRINGS FOR VIBRA SETTING
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:3.0
+#define qtn_mode_vibrating_alert_on "On"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:3.0
+#define qtn_mode_vibrating_alert_off "Off"
+
+// LOC STRINGS FOR POC SETTING
+
+//d: Profile settings list item for PTT ringing tone selection
+//l: list_setting_pane_t1
+//w:
+//r:3.1
+#define qtn_poc_profile_ringing_tone "PTT ringing tone"
+
+//d: Profile settings list item for PTT status
+//l: list_setting_pane_t1
+//w:
+//r:3.1
+#define qtn_poc_profile_status "PTT status"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//w:
+//r:3.1
+#define qtn_poc_profile_status_active "Active"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//w:
+//r:3.1
+#define qtn_poc_profile_status_silent "Silent"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//w:
+//r:3.1
+#define qtn_poc_profile_status_dnd "Do not Disturb"
+
+// LOC STRINGS FOR AUDIO FILE EXISTENCE CHECK
+
+//d: Tone file not found Confirmation Note text
+//d: %U name of the file
+//l: popup_note_window
+//r:3.1
+#define qtn_profiles_confirm_ringtone_found "%U file cannot be found. Default tone is used instead."
+
+// LOC STRINGS FOR 3D RINGINGTONE
+
+//d: Profile settings list item for 3d effect
+//l: list_setting_pane_t1
+//r:5.0
+#define qtn_profiles_tone_3d_effect "Ringing 3-D effect"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_effect_off "Off"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_effect_circle "Circle"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_effect_flyby "Flyby"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_effect_zig_zag "Zig-Zag"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_effect_random_walk "Random walk"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_effect_chaos "Chaos"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_effect_stereo_widening "Stereo widening"
+
+//d: Profile settings list item for 3d echo
+//l: list_setting_pane_t1
+//r:5.0
+#define qtn_profiles_tone_3d_echo "Ringing 3-D echo"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_echo_off "Off"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_echo_living_room "Living room"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_echo_cave "Cave"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_echo_stone_corridor "Stone Corridor"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_echo_forest "Forest"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_echo_sewer_pipe "Sewer pipe"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_profiles_3d_echo_underwater "Underwater"
+
+// LOC STRINGS FOR AUDIO AND TACTILE FEEDBACK
+
+//d: Profile settings list item for tactile feedback
+//l: list_setting_pane_t1
+//r:5.0
+#define qtn_mode_tactile_feedback "Tactile feedback"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_mode_tactile_feedback_off "Off"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_mode_tactile_feedback_level1 "Level 1"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_mode_tactile_feedback_level2 "Level 2"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_mode_tactile_feedback_level3 "Level 3"
+
+//d: Profile settings list item for tactile feedback
+//l: list_setting_pane_t1
+//r:5.0
+#define qtn_mode_audio_feedback "Audio feedback"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_mode_audio_feedback_off "Off"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_mode_audio_feedback_level1 "Level 1"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_mode_audio_feedback_level2 "Level 2"
+
+//d: Profile Settings Item Edit - setting selection data
+//l: list_set_graphic_pane_t1
+//r:5.0
+#define qtn_mode_audio_feedback_level3 "Level 3"
+
+// Power save mode
+
+// d:Error note shown when editing is blocked because of power save mode
+// l:popup_note_window
+// r:5.0
+#define qtn_power_saving_protected_settings_infonote "Power saving is active. Unable to edit."
+
+// End of File
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/telephony_information_api/group/bld.inf Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,32 @@
+/*
+* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: File that exports the files belonging to
+: Telephony Information API
+*
+*/
+
+
+#include <platform_paths.hrh>
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+
+../inc/telincallvolcntrlcrkeys.h APP_LAYER_PLATFORM_EXPORT_PATH(telincallvolcntrlcrkeys.h)
+../inc/telephonydomainpstypes.h APP_LAYER_PLATFORM_EXPORT_PATH(telephonydomainpstypes.h)
+../inc/telephonydomainpskeys.h APP_LAYER_PLATFORM_EXPORT_PATH(telephonydomainpskeys.h)
+../inc/telinformationpskeys.h APP_LAYER_PLATFORM_EXPORT_PATH(telinformationpskeys.h)
+../inc/telinformationpstypes.h APP_LAYER_PLATFORM_EXPORT_PATH(telinformationpstypes.h)
+../inc/telephonydomaincrkeys.h APP_LAYER_PLATFORM_EXPORT_PATH(telephonydomaincrkeys.h)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/telephony_information_api/inc/telephonydomaincrkeys.h Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,29 @@
+/*
+* Copyright (c) 2004-2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Telephony domain Central Repository keys
+*
+*/
+
+
+#ifndef TELEPHONYDOMAINCRKEYS_H
+#define TELEPHONYDOMAINCRKEYS_H
+
+#include <e32std.h>
+#include <telconfigcrkeys.h>
+#include <telincallvolcntrlcrkeys.h>
+#include <telvmbxsettingscrkeys.h>
+
+#endif // TELEPHONYDOMAINCRKEYS_H
+
+// End of file
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/telephony_information_api/inc/telephonydomainpskeys.h Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,32 @@
+/*
+* Copyright (c) 2004-2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Telephony Domain Publish and Subscribe keys.
+*
+*/
+
+
+#ifndef TELEPHONYDOMAINPSKEYS_H
+#define TELEPHONYDOMAINPSKEYS_H
+
+#include <e32std.h>
+#include <telmicmutestatuspskeys.h>
+#include <telremotepartyinformationpskeys.h>
+#include <telinformationpskeys.h>
+
+// CONSTANTS
+// None
+
+#endif // TELEPHONYDOMAINPSKEYS_H
+
+// End of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/telephony_information_api/inc/telephonydomainpstypes.h Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,28 @@
+/*
+* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Data types passed through Publish and Subscribe
+*
+*/
+
+
+#ifndef TELEPHONYDOMAINPSTYPES_H
+#define TELEPHONYDOMAINPSTYPES_H
+
+// INCLUDES
+#include <telinformationpstypes.h>
+
+
+#endif // TELEPHONYDOMAINPSTYPES_H
+
+// End of file
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/telephony_information_api/inc/telincallvolcntrlcrkeys.h Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,48 @@
+/*
+* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Telephony in-call volume control central repository keys
+*
+*/
+
+
+#ifndef TELINCALLVOLCNTRLCRKEYS_H
+#define TELINCALLVOLCNTRLCRKEYS_H
+
+#include <e32std.h>
+
+/******************************************************************************
+* Telephony In-Call Volume Control API
+* This API provides information related to in-call volume.
+******************************************************************************/
+const TUid KCRUidInCallVolume = {0x102828B1};
+
+/**
+* Volume for non-IHF (loudspeaker) mode.
+* Clients must use only integer values between 0 and 10.
+* Change affects to in-call volume.
+* Default value is 4.
+*/
+const TUint32 KTelIncallEarVolume = 0x00000001;
+
+/**
+* Volume for IHF mode.
+* Clients must use only integer values between 0 and 10.
+* Change affects to in-call volume.
+* Default value is 4.
+*/
+const TUint32 KTelIncallLoudspeakerVolume = 0x00000002;
+
+#endif // TELINCALLVOLCNTRLCRKEYS_H
+
+// End of file
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/telephony_information_api/inc/telinformationpskeys.h Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,47 @@
+/*
+* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Telephony information Publish and Subscribe keys.
+*
+*/
+
+
+#ifndef TELINFORMATIONPSKEYS_H
+#define TELINFORMATIONPSKEYS_H
+
+#include <e32std.h>
+
+// CONSTANTS
+
+/*****************************************************************************
+* Telephony Information API UID
+*****************************************************************************/
+const TUid KPSUidTelInformation = {0x101F8789};
+
+/**
+* Identifier of Phone application.
+* @type RProperty::EInt
+*/
+const TUint32 KTelPhoneUid = 0x00000001;
+
+/**
+* Operator information display data.
+* @see TTelTitleDisplay in TelephonyDomainPSTypes.h
+* @type RProperty::EByteArray
+*/
+
+const TUint32 KTelDisplayInfo = 0x00000002;
+
+#endif // TELINFORMATIONPSKEYS_H
+
+// End of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/telephony_information_api/inc/telinformationpstypes.h Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,70 @@
+/*
+* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Data types passed through Publish and Subscribe
+*
+*/
+
+
+#ifndef TELINFORMATIONPSTYPES_H
+#define TELINFORMATIONPSTYPES_H
+
+// INCLUDES
+#include <cntdef.h>
+#include <phclttypes.h>
+
+// CONSTANTS
+
+// DATA TYPES
+
+/**
+* Information to be shown in Phone application title pane.
+* Note: Size of the data must not exceed RProperty::KMaxPropertySize.
+*/
+struct TTelTitleDisplay
+ {
+ /**
+ * Maximum length for display information.
+ */
+ enum { ETagMaxLength = 128 };
+
+ /**
+ * Display information buffer.
+ */
+ typedef TBuf<ETagMaxLength> TDisplayTag;
+
+ // Operator information, off-line etc.
+ TDisplayTag iDisplayTag;
+
+ // Handle to operator logo, or 0 if not valid.
+ TInt iLogoHandle;
+
+ // Handle to operator logo mask bitmap, or 0 if not valid.
+ TInt iLogoMaskHandle;
+
+ // Handle to background image
+ TInt iBackgroundImageHandle;
+
+ // Handle to background mask image
+ TInt iBackgroundImageMaskHandle;
+
+ // Background redraw counter
+ TUint iBackgroundImageRedrawCounter;
+
+ typedef TPckg<TTelTitleDisplay> TDisplayInfoPckg;
+ };
+
+
+#endif // TELINFORMATIONPSTYPES_H
+
+// End of file
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/telephony_information_api/telephony_information_api.metaxml Thu May 06 15:56:48 2010 +0200
@@ -0,0 +1,17 @@
+<?xml version="1.0" ?>
+<api id="383e43832fb41109dce1129ec0c42ca7" dataversion="1.0">
+ <name>Telephony Information API</name>
+ <description>Provides information from telephony.</description>
+ <type>c++</type>
+ <subsystem>phoneengine</subsystem>
+ <libs>
+ </libs>
+ <release category="domain"/>
+ <attributes>
+ <!-- This indicates wether the api provedes separate html documentation -->
+ <!-- or is the additional documentation generated from headers. -->
+ <!-- If you are unsuere then the value is "no" -->
+ <htmldocprovided>yes</htmldocprovided>
+ <adaptation>no</adaptation>
+ </attributes>
+</api>
--- a/dependencies/telinformationpskeys.h Tue Apr 13 19:36:31 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-/*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: Telephony information Publish and Subscribe keys.
-*
-*/
-
-
-#ifndef TELINFORMATIONPSKEYS_H
-#define TELINFORMATIONPSKEYS_H
-
-#include <e32std.h>
-
-// CONSTANTS
-
-/*****************************************************************************
-* Telephony Information API UID
-*****************************************************************************/
-const TUid KPSUidTelInformation = {0x101F8789};
-
-/**
-* Identifier of Phone application.
-* @type RProperty::EInt
-*/
-const TUint32 KTelPhoneUid = 0x00000001;
-
-/**
-* Operator information display data.
-* @see TTelTitleDisplay in TelephonyDomainPSTypes.h
-* @type RProperty::EByteArray
-*/
-
-const TUint32 KTelDisplayInfo = 0x00000002;
-
-#endif // TELINFORMATIONPSKEYS_H
-
-// End of file