--- a/gfxconversion/mifconv/group/ReleaseNotes_Mifconv.txt Fri Apr 16 15:32:00 2010 +0300
+++ b/gfxconversion/mifconv/group/ReleaseNotes_Mifconv.txt Fri May 14 16:24:48 2010 +0300
@@ -1,7 +1,7 @@
===============================================================================
-RELEASE NOTES - MIFCONV v3.2.0
-RELEASED 24th February 2010
+RELEASE NOTES - MIFCONV v3.2.1
+RELEASED 20th April 2010
SUPPORTS S60 3.2+
@@ -26,11 +26,9 @@
===============================================================================
-What's New in v3.2.0
+What's New in v3.2.1
====================
-- Change: Removed dependencies to BMCONV tool by adding the BMCONV encoding
- functionality as a part of MifConv functionality. External BMCONV tool can still
- be used by giving -B parameter.
+- Change: Added new default search directories for icon files.
===============================================================================
@@ -68,6 +66,12 @@
Version History:
================
+Version 3.2.0 - 24th February 2010
+====================
+- Change: Removed dependencies to BMCONV tool by adding the BMCONV encoding
+ functionality as a part of MifConv functionality. External BMCONV tool can still
+ be used by giving -B parameter.
+
Version 3.1.7 - 10th July 2009
====================
- Fix: MIF-file is created also when no input files are given.
--- a/gfxconversion/mifconv/inc/mifconv.h Fri Apr 16 15:32:00 2010 +0300
+++ b/gfxconversion/mifconv/inc/mifconv.h Fri May 14 16:24:48 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2010 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"
@@ -38,8 +38,8 @@
using namespace MifConvDefs;
// Mifconv version
-static const MifConvString MifConvVersion("3.2.0");
-static const MifConvString MifConvDate("24th February 2010");
+static const MifConvString MifConvVersion("3.2.1");
+static const MifConvString MifConvDate("12th March 2010");
static const MifConvString MifConvYears("2010");
// Mifconv return values:
--- a/gfxconversion/mifconv/makefile_templates/mifconv_global_options.make Fri Apr 16 15:32:00 2010 +0300
+++ b/gfxconversion/mifconv/makefile_templates/mifconv_global_options.make Fri May 14 16:24:48 2010 +0300
@@ -42,6 +42,11 @@
VECTORSOURCEDIR:=$(EPOCROOT)epoc32$/s60$/icons
BITMAPSOURCEDIR:=$(EPOCROOT)epoc32$/s60$/bitmaps
+# Optional SVG icon searching subdirectories:
+VECTORSOURCESUBDIR_NSS:=$(VECTORSOURCEDIR)$/nss
+VECTORSOURCESUBDIR_NOKIA:=$(VECTORSOURCEDIR)$/nokia
+VECTORSOURCESUBDIR_OEM:=$(VECTORSOURCEDIR)$/oem
+
# Default target directories:
WINS_TARGETDIR:=$(EPOCROOT)epoc32$/release$/wins$/$(CFG)$/z$/resource$/apps
WINSCW_TARGETDIR:=$(EPOCROOT)epoc32$/release$/winscw$/$(CFG)$/z$/resource$/apps
--- a/gfxconversion/mifconv/makefile_templates/mifconv_step3.make Fri Apr 16 15:32:00 2010 +0300
+++ b/gfxconversion/mifconv/makefile_templates/mifconv_step3.make Fri May 14 16:24:48 2010 +0300
@@ -19,20 +19,46 @@
# Get list of files
#
-# First get SVG files from SOURCEDIR, then .bmp files from SOURCEDIR, then .svg from VECTORSOURCEDIR and finally .bmp from BITMAPSOURCEDIR
+# First get SVG files from SOURCEDIR, then .bmp files from SOURCEDIR, then .svg from VECTORSOURCEDIR,
+# then .bmp from BITMAPSOURCEDIR and finally .svg from all VECTORSOURCESUBDIR's
SOURCEPATHS:=$(foreach FILE, \
$(basename $(FILES)), \
- $(firstword $(wildcard $(SOURCEDIR)$/$(FILE).svg $(SOURCEDIR)$/$(FILE).bmp $(VECTORSOURCEDIR)$/$(FILE).svg) $(BITMAPSOURCEDIR)$/$(FILE).bmp))
-
-# Get a full list of SVG files
+ $(firstword \
+ $(wildcard $(SOURCEDIR)$/$(FILE).svg $(SOURCEDIR)$/$(FILE).bmp $(VECTORSOURCEDIR)$/$(FILE).svg) \
+ $(wildcard $(VECTORSOURCESUBDIR_NSS)$/$(FILE).svg $(VECTORSOURCESUBDIR_NOKIA)$/$(FILE).svg $(VECTORSOURCESUBDIR_OEM)$/$(FILE).svg) \
+ $(BITMAPSOURCEDIR)$/$(FILE).bmp) \
+ )
+
+# Get a list of SVG files including VECTORSOURCESUBDIRs
SVGFILES:=$(filter %.svg,$(SOURCEPATHS))
-# Paths of SVGB files will be under the intermediate directory
-SVGBFILES:=$(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES))))
-
# BMP files are all the other files
BMPFILES:=$(filter-out $(SVGFILES),$(SOURCEPATHS))
+# Filter VECTORSOURCESUBDIRs content out from SVGFILES
+SVGFILES:=$(filter-out $(VECTORSOURCESUBDIR_NSS)%,$(SVGFILES))
+SVGFILES:=$(filter-out $(VECTORSOURCESUBDIR_NOKIA)%,$(SVGFILES))
+SVGFILES:=$(filter-out $(VECTORSOURCESUBDIR_OEM)%,$(SVGFILES))
+
+# Get SVG files from VECTORSOURCESUBDIRs
+SVGFILES_NSS:=$(foreach FILE, \
+ $(basename $(FILES)), \
+ $(wildcard $(VECTORSOURCESUBDIR_NSS)$/$(FILE).svg))
+
+SVGFILES_NOKIA:=$(foreach FILE, \
+ $(basename $(FILES)), \
+ $(wildcard $(VECTORSOURCESUBDIR_NOKIA)$/$(FILE).svg))
+
+SVGFILES_OEM:=$(foreach FILE, \
+ $(basename $(FILES)), \
+ $(wildcard $(VECTORSOURCESUBDIR_OEM)$/$(FILE).svg))
+
+# Paths of SVGB files will be under the intermediate directory
+SVGBFILES:=$(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES)))) \
+ $(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES_NSS)))) \
+ $(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES_NOKIA)))) \
+ $(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES_OEM))))
+
# Resolve mask files. Mask files are assumed to locate in the same folder than the actual bmp-file.
MASKFILES:=$(foreach FILE, \
$(BMPFILES), \
@@ -51,12 +77,12 @@
# If SOURCEDIR is defined, we need to create a rule for copying the vector files into the intermediate directory
ifneq ($(strip $(SOURCEDIR)),)
- # Create list of files
- USERSVGFILES:=$(filter $(SOURCEDIR)%,$(SVGFILES))
- USERBMPFILES:=$(filter $(SOURCEDIR)%,$(BMPFILES))
- USERINTERMEDIATESVGFILES := $(subst $(SOURCEDIR), \
- $(VECTORINTERMEDIATEDIR), \
- $(USERSVGFILES) \
+# Create list of files
+USERSVGFILES:=$(filter $(SOURCEDIR)%,$(SVGFILES))
+USERBMPFILES:=$(filter $(SOURCEDIR)%,$(BMPFILES))
+USERINTERMEDIATESVGFILES := $(subst $(SOURCEDIR), \
+ $(VECTORINTERMEDIATEDIR), \
+ $(USERSVGFILES) \
)
# Now define the copy rule
@@ -72,13 +98,52 @@
# The same copy rule is needed for system files as well, first generate the lists
SYSTEMSVGFILES:=$(filter $(VECTORSOURCEDIR)%,$(SVGFILES))
-SYSTEMBMPFILES:=$(filter $(BITMAPSOURCEDIR)%,$(BMPFILES))
SYSTEMINTERMEDIATESVGFILES := $(subst $(VECTORSOURCEDIR), \
$(VECTORINTERMEDIATEDIR), \
$(SYSTEMSVGFILES) \
)
+SYSTEMINTERMEDIATESVGFILES_NSS:=$(subst $(VECTORSOURCESUBDIR_NSS), \
+ $(VECTORINTERMEDIATEDIR), \
+ $(SVGFILES_NSS) \
+ )
+SYSTEMINTERMEDIATESVGFILES_NOKIA:=$(subst $(VECTORSOURCESUBDIR_NOKIA), \
+ $(VECTORINTERMEDIATEDIR), \
+ $(SVGFILES_NOKIA) \
+ )
+SYSTEMINTERMEDIATESVGFILES_OEM:=$(subst $(VECTORSOURCESUBDIR_OEM), \
+ $(VECTORINTERMEDIATEDIR), \
+ $(SVGFILES_OEM) \
+ )
+SYSTEMBMPFILES:=$(filter $(BITMAPSOURCEDIR)%,$(BMPFILES))
-# And finally define the copy rule
+# Copy SVG files in reverse order of priority to enabele overriding SVG files with lesser priority
+
+# Define the copy rules for VECTORSOURCESUBDIRs
+ifeq ($(INIT_CFG),$(PLATFORM)$(CFG))
+$(SYSTEMINTERMEDIATESVGFILES_OEM) : $(VECTORINTERMEDIATEDIR)% : $(VECTORSOURCESUBDIR_OEM)%
+ $(TOOLCOPY) $< $@
+ifeq ($(OSTYPE),cygwin)
+ $(GNUCHMOD) a+rw "$@"
+endif
+endif
+
+ifeq ($(INIT_CFG),$(PLATFORM)$(CFG))
+$(SYSTEMINTERMEDIATESVGFILES_NOKIA) : $(VECTORINTERMEDIATEDIR)% : $(VECTORSOURCESUBDIR_NOKIA)%
+ $(TOOLCOPY) $< $@
+ifeq ($(OSTYPE),cygwin)
+ $(GNUCHMOD) a+rw "$@"
+endif
+endif
+
+ifeq ($(INIT_CFG),$(PLATFORM)$(CFG))
+$(SYSTEMINTERMEDIATESVGFILES_NSS) : $(VECTORINTERMEDIATEDIR)% : $(VECTORSOURCESUBDIR_NSS)%
+ $(TOOLCOPY) $< $@
+ifeq ($(OSTYPE),cygwin)
+ $(GNUCHMOD) a+rw "$@"
+endif
+endif
+
+# Define the copy rule for VECTORSOURCEDIR
ifeq ($(INIT_CFG),$(PLATFORM)$(CFG))
$(SYSTEMINTERMEDIATESVGFILES) : $(VECTORINTERMEDIATEDIR)% : $(VECTORSOURCEDIR)%
$(TOOLCOPY) $< $@
@@ -87,14 +152,18 @@
endif
endif
+
# Get full list of intermediate files
-VECTORINTERMEDIATESOURCES := $(SYSTEMINTERMEDIATESVGFILES) $(USERINTERMEDIATESVGFILES)
+VECTORINTERMEDIATESOURCES := $(SYSTEMINTERMEDIATESVGFILES) $(SYSTEMINTERMEDIATESVGFILES_NSS) $(SYSTEMINTERMEDIATESVGFILES_NOKIA) $(SYSTEMINTERMEDIATESVGFILES_OEM) $(USERINTERMEDIATESVGFILES)
# Debug prints for debugging purposes
#$(warning SOURCEPATHS $(SOURCEPATHS))
#$(warning SVGFILES $(SVGFILES))
+#$(warning SVGFILES_NSS $(SVGFILES_NSS))
+#$(warning SVGFILES_NOKIA $(SVGFILES_NOKIA))
+#$(warning SVGFILES_OEM $(SVGFILES_OEM))
#$(warning SVGBFILES $(SVGBFILES))
#$(warning BMPFILES $(BMPFILES))
#$(warning USERSVGFILES $(USERSVGFILES))
@@ -103,6 +172,9 @@
#$(warning SYSTEMSVGFILES $(SYSTEMSVGFILES))
#$(warning SYSTEMBMPFILES $(SYSTEMBMPFILES))
#$(warning SYSTEMINTERMEDIATESVGFILES $(SYSTEMINTERMEDIATESVGFILES))
+#$(warning SYSTEMINTERMEDIATESVGFILES_NSS $(SYSTEMINTERMEDIATESVGFILES_NSS))
+#$(warning SYSTEMINTERMEDIATESVGFILES_NOKIA $(SYSTEMINTERMEDIATESVGFILES_NOKIA))
+#$(warning SYSTEMINTERMEDIATESVGFILES_OEM $(SYSTEMINTERMEDIATESVGFILES_OEM))
#$(warning VECTORINTERMEDIATESOURCES $(VECTORINTERMEDIATESOURCES))
--- a/gfxconversion/mifconv/src/mifconv_argumentmanager.cpp Fri Apr 16 15:32:00 2010 +0300
+++ b/gfxconversion/mifconv/src/mifconv_argumentmanager.cpp Fri May 14 16:24:48 2010 +0300
@@ -322,6 +322,12 @@
iSearchRules.push_back(MifConvSourceSearchRule(MifConvString(epocRoot + S60_ICONS_PATH), vector<MifConvString>(1, SVG_FILE_EXTENSION)));
// Global bitmaps folder can contain only .bmp files:
iSearchRules.push_back(MifConvSourceSearchRule(MifConvString(epocRoot + S60_BITMAPS_PATH), vector<MifConvString>(1, BMP_FILE_EXTENSION)));
+ // If not found from global icons folder, try subfolder nss:
+ iSearchRules.push_back(MifConvSourceSearchRule(MifConvString(epocRoot + S60_ICONS_PATH + DIR_SEPARATOR + "nss"), vector<MifConvString>(1, SVG_FILE_EXTENSION)));
+ // If not found from nss sub folder, try subfolder nokia:
+ iSearchRules.push_back(MifConvSourceSearchRule(MifConvString(epocRoot + S60_ICONS_PATH + DIR_SEPARATOR + "nokia"), vector<MifConvString>(1, SVG_FILE_EXTENSION)));
+ // If not found from nokia sub folder, try subfolder oem:
+ iSearchRules.push_back(MifConvSourceSearchRule(MifConvString(epocRoot + S60_ICONS_PATH + DIR_SEPARATOR + "oem"), vector<MifConvString>(1, SVG_FILE_EXTENSION)));
// EPOCROOT, if given in environment variables:
if( epocRoot.length() > 0 )
{
@@ -659,7 +665,7 @@
*
*/
bool MifConvArgumentManager::FindAndSetPathAndType( MifConvSourceFile& srcFile, const MifConvString& extension )
-{
+{
// Search the filename first "as is":
MifConvString tmp( MifConvUtil::FilenameWithoutExtension( srcFile.Filename() ) + MifConvString(FILE_EXTENSION_SEPARATOR) + extension );
if( MifConvUtil::FileExists(tmp) )
@@ -698,7 +704,7 @@
if( validPath )
{
MifConvString searchPath(i->SearchPath());
-
+
// Make sure that the last char is directory separator
if( searchPath.length() > 0 && searchPath.at( searchPath.length()-1) != DIR_SEPARATOR2 )
{
@@ -708,11 +714,12 @@
searchPath += MifConvUtil::FilenameWithoutExtension( srcFile.Filename() ) + MifConvString(FILE_EXTENSION_SEPARATOR) + extension;
MifConvUtil::RemoveDuplicateDirSeparators(searchPath);
-
+
if( MifConvUtil::FileExists( searchPath ) )
{
srcFile.SetFilename(searchPath);
- MifConvUtil::FindAndSetBitmapMaskFile(srcFile);
+ MifConvUtil::FindAndSetBitmapMaskFile(srcFile);
+
return true;
}
}