diff options
author | Kurt Zenker <kz@openoffice.org> | 2004-06-11 16:15:07 +0000 |
---|---|---|
committer | Kurt Zenker <kz@openoffice.org> | 2004-06-11 16:15:07 +0000 |
commit | be63ae6cba16a0e31c1388cd5e0bc418cb41afd6 (patch) | |
tree | 0f411ec9109bfc33c00167967ed692db9ae3cf60 /sysui | |
parent | c893962e4ec2cab82029e2612f3f72f42ddacc4c (diff) |
INTEGRATION: CWS networker3 (1.1.2); FILE ADDED
2004/05/20 11:38:58 obr 1.1.2.1: #i20355#,#i20356# new directories for system wide desktop integration
Diffstat (limited to 'sysui')
-rw-r--r-- | sysui/desktop/share/brand.pl | 156 | ||||
-rw-r--r-- | sysui/desktop/share/translate.pl | 184 |
2 files changed, 340 insertions, 0 deletions
diff --git a/sysui/desktop/share/brand.pl b/sysui/desktop/share/brand.pl new file mode 100644 index 000000000000..7dccb2604d1b --- /dev/null +++ b/sysui/desktop/share/brand.pl @@ -0,0 +1,156 @@ +: +eval 'exec perl -wS $0 ${1+"$@"}' + if 0; + +#************************************************************************* +# +# $RCSfile: brand.pl,v $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + + +#********************************************************************* +# +# main +# + +$destdir = pop @ARGV; +mkdir $destdir,0777; + +$productname = "OpenOffice.org"; +$productfilename = "openoffice"; +$prefix = ""; +$iconprefix = ""; + +while ($_ = $ARGV[0], /^-/) { + shift; + last if /^--$/; + if (/^-p/) { + $productname = $ARGV[0]; + shift; + } + if (/^-u/) { + $productfilename = $ARGV[0]; + shift; + } + if (/^--prefix/) { + $prefix = $ARGV[0]; + shift; + } + if (/^--iconprefix/) { + $iconprefix = $ARGV[0]; + shift; + } + if (/^--category/) { + $category = $ARGV[0]; + shift; + } +} + + +while (<>) { + unless (open INFILE,$ARGV) { + print STDOUT "Can't open input file $ARGV: $!\n"; + exit 1; + } + + $srcfile = substr($ARGV, rindex($ARGV, "/") + 1); + + unless (open OUTFILE,"> $destdir/$prefix$srcfile") { + print STDOUT "Can't open output file $destdir/$prefix$srcfile: $!\n"; + exit 1; + } + + while (<INFILE>) { + # remove possible Windows line-ends + chomp; + + # patch all occurances of openoffice in ICON line with + # $prefix + s/Icon=/Icon=$iconprefix/; + + # patch all occurances of openoffice in icon_filename + # line with $prefix + s/icon_filename=/icon_filename=$iconprefix/; + + # patch all occurances of openoffice in EXEC line with + # $productfilename + if ( /Exec/ ) { + s/openoffice/$productfilename/; + } + + # if $productfilename != "openoffice, add it to the list + # of applications. + if ( /user_level/ ) { + s/$productfilename,//; + s/user_level=/user_level=$productfilename,/ + } + + # append special category if specified + if ( /Categories/ ) { + if ( length($category) > 0 ) { + $_ = "$_$category;"; + } + } + + # replace %PRODUCTNAME placeholders + s/%PRODUCTNAME/$productname/g; + + print OUTFILE "$_\n"; + } + + close(OUTFILE); + close(INFILE); +} diff --git a/sysui/desktop/share/translate.pl b/sysui/desktop/share/translate.pl new file mode 100644 index 000000000000..2bcd17790dfb --- /dev/null +++ b/sysui/desktop/share/translate.pl @@ -0,0 +1,184 @@ +: +eval 'exec perl -wS $0 ${1+"$@"}' + if 0; + +#************************************************************************* +# +# $RCSfile: translate.pl,v $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + + +#********************************************************************* +# +# main +# + +my ($prefix, $ext, $key); +$productname = "OpenOffice.org"; +$workdir = "."; + +while ($_ = $ARGV[0], /^-/) { + shift; + last if /^--$/; + if (/^-p/) { + $productname = $ARGV[0]; + shift; + } + if (/^-d/) { + $workdir = $ARGV[0]; + shift; + } + if (/^--key/) { + $key = $ARGV[0]; + shift; + } + if (/^--prefix/) { + $prefix = $ARGV[0]; + shift; + } + if (/^--ext/) { + $ext = $ARGV[0]; + shift; + } +} + +# open input file +unless (open(SOURCE, $ARGV[0])) { + print STDERR "Can't open $ARGV[0] file: $!\n"; + return; +} + + +# For every section in the specified ulf file there should exist +# a template file in $workdir .. +while (<SOURCE>) { + $line = $_; + + if ( "[" eq substr($line, 0, 1) ) { + # Pass the tail of the template to the output file + while (<TEMPLATE>) { + print OUTFILE; + } + + if (close(OUTFILE)) { + system "mv -f $outfile.tmp $outfile\n"; + } + + close(TEMPLATE); + + $_ = substr($line, 1, index($line,"]")-1); + + # HACK: need to translate section strings for now + s/writer-math/formula/; + s/writer-global/master-document/; + s/writer/text/; + s/calc/spreadsheet/; + s/draw/drawing/; + s/impress/presentation/; + + $outfile = "$workdir/$prefix$_.$ext"; + + # open output file + unless (open(OUTFILE, "> $outfile.tmp")) { + print STDERR "Can't create output file $outfile.tmp: $!\n"; + exit -1; + } + + # open the template file + unless(open(TEMPLATE, $outfile)) { + print STDERR "Can't open template file $outfile: $!\n"; + exit -1; + } + + # Pass the head of the template to the output file +KEY: while (<TEMPLATE>) { + print OUTFILE; + last KEY if (/$key/); + } + + } else { + # split locale = "value" into 2 strings + ($locale, $value) = split(' = ', $line); + + if ( $locale ne $line ) { + # replace en-US with en + $locale=~s/en-US/en/; + + # use just anything inside the "" + $value = substr($value, index($value, "\"") + 1, rindex($value, "\"") - 1); + + # replace resource placeholder + $value=~s/%PRODUCTNAME/$productname/g; + + $locale=~s/-/_/; + if ($ext eq "desktop") { + print OUTFILE "$key\[$locale\]=$value\n"; + } else { + print OUTFILE "\t\[$locale\]$key=$value\n"; + } + } + } +} + +while (<TEMPLATE>) { + print OUTFILE; +} + +if (close(OUTFILE)) { + system "mv -f $outfile.tmp $outfile\n"; +} + +close(TEMPLATE); |