l10ntools/scripts/update_tree.pl                                           |  
394 ++++++++++
 nlpsolver/Extension_nlpsolver.mk                                           |   
 3 
 nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver/help.tree               |   
19 
 nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver/tree_strings.xhp        |   
29 
 sdext/Extension_presenter.mk                                               |   
 4 
 sdext/source/presenter/help/en-US/com.sun.PresenterScreen/help.tree        |   
18 
 sdext/source/presenter/help/en-US/com.sun.PresenterScreen/tree_strings.xhp |   
29 
 solenv/gbuild/Extension.mk                                                 |   
14 
 solenv/gbuild/ExtensionTarget.mk                                           |   
51 +
 swext/Extension_wiki-publisher.mk                                          |   
 2 
 swext/mediawiki/help/help.tree                                             |   
22 
 swext/mediawiki/help/tree_strings.xhp                                      |   
29 
 wizards/com/sun/star/wizards/ui/UIConsts.java                              |   
 2 
 wizards/com/sun/star/wizards/ui/UIConsts.py                                |   
 2 
 wizards/source/formwizard/dbwizres.src                                     |   
 2 
 15 files changed, 615 insertions(+), 5 deletions(-)

New commits:
commit 304247bbfd5bb46fc72bb2ed39711f6fc60ffef4
Author: Julien Nabet <serval2...@yahoo.fr>
Date:   Mon Sep 10 21:32:29 2012 +0200

    fdo#54542 fix start of table wizard IDs
    
    Change-Id: I82f811d45333b5b9ee4ecccccf8b18831f0e6397

diff --git a/wizards/com/sun/star/wizards/ui/UIConsts.java 
b/wizards/com/sun/star/wizards/ui/UIConsts.java
index ec99ea9..4d72278 100644
--- a/wizards/com/sun/star/wizards/ui/UIConsts.java
+++ b/wizards/com/sun/star/wizards/ui/UIConsts.java
@@ -29,7 +29,7 @@ public interface UIConsts
     public static final int RID_FORM = 2200;
     public static final int RID_QUERY = 2300;
     public static final int RID_REPORT = 2400;
-    public static final int RID_TABLE = 2500;
+    public static final int RID_TABLE = 2600;
     public static final int RID_IMG_REPORT = 1000;
     public static final int RID_IMG_FORM = 1100;
     public static final int RID_IMG_WEB = 1200;
diff --git a/wizards/com/sun/star/wizards/ui/UIConsts.py 
b/wizards/com/sun/star/wizards/ui/UIConsts.py
index 4a234a7..64c4dee 100644
--- a/wizards/com/sun/star/wizards/ui/UIConsts.py
+++ b/wizards/com/sun/star/wizards/ui/UIConsts.py
@@ -22,7 +22,7 @@ class UIConsts():
     RID_FORM = 2200
     RID_QUERY = 2300
     RID_REPORT = 2400
-    RID_TABLE = 2500
+    RID_TABLE = 2600
     RID_IMG_REPORT = 1000
     RID_IMG_FORM = 1100
     RID_IMG_WEB = 1200
diff --git a/wizards/source/formwizard/dbwizres.src 
b/wizards/source/formwizard/dbwizres.src
index 81965a9..19063ae 100644
--- a/wizards/source/formwizard/dbwizres.src
+++ b/wizards/source/formwizard/dbwizres.src
@@ -24,7 +24,7 @@
 #define RID_DB_FORM_WIZARD_START       2200
 #define RID_DB_QUERY_WIZARD_START      2300
 #define RID_DB_REPORT_WIZARD_START             2400
-#define RID_DB_TABLE_WIZARD_START      2525
+#define RID_DB_TABLE_WIZARD_START    2600
 
 
 #define RID_LETTERWIZARDDIALOG_START           3000
commit 7017654a70f7e55e5c608a196b58eeb3d859c066
Author: Bence Babati <b.baa...@gmail.com>
Date:   Tue Sep 4 17:49:52 2012 +0200

    add help.tree files to extensions' help
    
    Change-Id: I2decf0178dea2722a752291f21e97cae4aab8074

diff --git a/l10ntools/scripts/update_tree.pl b/l10ntools/scripts/update_tree.pl
new file mode 100644
index 0000000..568d99e
--- /dev/null
+++ b/l10ntools/scripts/update_tree.pl
@@ -0,0 +1,394 @@
+:
+eval 'exec perl -wS $0 ${1+"$@"}'
+    if 0;
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org 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 version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org.  If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+use Cwd 'abs_path';
+use File::Find;
+use File::Copy qw/cp mv/;
+use File::Basename;
+
+# update the tree files in <platform>/misc/*
+
+$| = 1;
+
+my $prj = $ENV{PWD};
+
+my $inpath = $ENV{WORKDIR};
+terminate() if ( ! defined $inpath );
+
+my $destpath = $inpath;
+my $with_lang = $ARGV[1];
+my $xmllint = $ENV{XMLLINT};
+
+$tree_target_prefix = $ARGV[4];
+
+# Always use / directory separators
+$prj =~ s/\\/\//g if defined($prj);
+$inpath =~ s/\\/\//g;
+$destpath =~ s/\\/\//g;
+
+if ( ! defined $prj ) {
+# do someting that works for manual call
+    ($scriptname = `pwd`) =~ s/\n/\/$0/;
+    ($tree_src = $scriptname) =~ s/\/update_tree.pl/\/..\/source\/auxiliary/;
+    ($tree_dest = $scriptname) =~ s/\/update_tree.pl/\/..\/$destpath\/misc/;
+    ($source_dir = $scriptname) =~ s/\/update_tree.pl/\/..\/source/;
+    ($source_dir_xhp = $scriptname) =~ s/\/update_tree.pl/\/..\/source/;
+
+    if ( defined $ENV{TRYSDF} || defined $ENV{LOCALIZESDF} )
+    {
+        if( defined $ENV{LOCALIZATION_FOUND} && $ENV{LOCALIZATION_FOUND} eq 
"YES" )
+        {
+            $source_dir = $ENV{TRYSDF};
+        }
+        elsif( defined $ENV{LOCALIZESDF} && $ENV{LOCALIZESDF} ne "" )
+        {
+            $source_dir = $ENV{LOCALIZESDF};
+        }
+        $source_dir =~ s/\/auxiliary\/localize.sdf$// ;
+    }
+    $treestrings = "$ARGV[0]";
+        $treestrings=~ s/\/*.tree//g;
+} else {
+    $source_dir_xhp = "$prj/source/presenter/help";
+    $tree_src = "$ARGV[0]";
+        $tree_src =~ s/\/help.tree//g;
+    $tree_dest = "$ARGV[3]";
+        $tree_dest =~ s/\/help.tree//g;
+    $source_dir = "$ARGV[2]";
+        $source_dir =~ s/\/localize.sdf//g;
+    $treestrings = "$ARGV[0]";
+        $treestrings=~ s/\/help.tree/\/tree_strings.xhp/g;
+
+    if( defined $ENV{LOCALIZATION_FOUND} && $ENV{LOCALIZATION_FOUND} eq "YES" )
+    {
+        $source_dir = $ENV{TRYSDF};
+    }
+    elsif ( defined $ENV{LOCALIZESDF} && $ENV{LOCALIZESDF} ne "" )
+    {
+        $source_dir = $ENV{LOCALIZESDF};
+    }
+    $source_dir =~ s/\/auxiliary\/localize.sdf$// ;
+}
+
+# Get the English tree files as master
+#-------------------------------
+# Update English from xhp
+#-------------------------------
+&do_english;
+#-------------------------------
+# Update localizations from sdf
+#-------------------------------
+
+if( defined $with_lang && $with_lang ne "" )
+{
+    @langs = split /\s+/, $with_lang;
+    &read_loc;
+    for $l(@langs)
+    {
+        #if ($l ne "en-US") {
+            &do_lang($l);
+        #}
+    }
+}
+else
+{
+    print "\nNo WITH_LANG set, skipping l10n\n";
+}
+#-------------------------------
+#
+
+####################
+# SUBS
+####################
+sub terminate {
+    $err = shift;
+    print "$err\n\n";
+    $msg = <<"MSG";
+
+update_tree.pl
+   all languages in WITH_LANG are processed. WITH_LANG=ALL is
+   not supported in manual calls.
+
+   Updates the *.tree files.
+   At first, the English file is updated based on the English
+   help topic titles as read from the help files. Then, the
+   localized tree files are written based on the English tree
+   file and the localized help topic titles.
+
+   Requires a valid LibreOffice build environment.
+MSG
+   print "$msg\n";
+   exit( -1 );
+   # die "$msg\n";
+}
+
+#---------------------------------------------------
+
+sub do_english {
+    undef %helpsection; undef %node;
+    &readtreestrings;
+    &gettreefiles;
+}
+
+#---------------------------------------------------
+sub do_lang {
+    $lng = shift;
+    print "Processing $lng\n";
+    &processtreefiles($lng);
+}
+
+#---------------------------------------------------
+sub readtreestrings {
+    if (open TREE, $treestrings) {
+         print "Processing readtreestrings\n";
+        while (<TREE>) {
+            chomp;
+            s/<\/*help:productname>//gis;
+            if (/help_section/) {
+                s/^\s*<.*help_section//;
+                s/<\/.*$//;
+                ($id = $_) =~ s/^.*id=&quot;(\d+)&quot;.*$/$1/;
+                ($title = $_) =~ s/^.*title=&quot;(.*)&quot;.*$/$1/;
+                $helpsection{$id} = $title;
+            }
+
+            if (/node id=/) {
+                s/^\s*<.*node //;
+                s/<\/.*$//;
+                ($id = $_) =~ s/^.*id=&quot;(\d+)&quot;.*$/$1/;
+                ($title = $_) =~ s/^.*title=&quot;(.*)&quot;.*$/$1/;
+                $node{$id} = $title;
+            }
+        }
+        close TREE;
+    } else {
+        &terminate("Error opening $treestrings");
+    }
+}
+
+#------------------------------------
+sub gettreefiles {
+    # Read the tree files from the directory
+    # this list is also used for all foreign languages
+    if (opendir ENUS, "$tree_src") {
+        @treeviews = grep /\.tree/, readdir ENUS;
+        closedir ENUS;
+    } else {
+        &terminate("Cannot open directory $tree_src");
+    }
+}
+
+#------------------------------------
+sub processtreefiles {
+    $lng = shift;
+    use File::Temp qw/ tempfile /;
+    use File::Spec;
+
+    for $tv(@treeviews) {
+        @lines = &readtv("$tree_src/$tv");
+        for $l(@lines) {
+            if ($l =~ /topic/) {
+                ($id = $l) =~ s/^.*id="([^"]*)".*$/$1/gis;
+                ($module = $id) =~ s/^([^\/]*).*$/$1/;
+                $id =~ s/^.*?\///;
+                $file = "$source_dir_xhp/$lng/$id";
+
+                if ($lng eq 'en-US') { # english comes from the file
+                    $temp = $l;
+                        $temp =~ 
s/^.*<topic[^>]+id=".*"[^>]*>([^<]*)<\/topic>.*$/$1/gis;
+                        $temp =~ s/&apos;/\'/gis; $temp=~ s/&amp;/+/gis;
+                        $temp =~ s/&quot;/\'/gis; $temp =~ s/&/+/gis;
+
+                        $id =~s/^.*\/(.*.xhp)/$1/;
+                        $l = "<topic 
id=\"$module/$tree_target_prefix/$id\">$temp</topic>\n";
+                } else { # localized comes from the localize sdf
+                    if (defined($loc_title{$lng}->{$id})) {
+                        $xhpname = $id;
+                        $xhpname =~s/^.*\/(.*.xhp)/$1/;
+                        $l = "<topic 
id=\"$module/$tree_target_prefix/$xhpname\">$loc_title{$lng}->{$id}</topic>\n";
+                    } else {
+                    }
+                }
+            }
+
+            if ($l =~/<node/) {
+                ($id = $l) =~ s/^.*id="(\d+)".*$/$1/gis;
+                if ($lng eq 'en-US') {
+                    if (defined($node{$id})) {
+                        $l =~ s/title="(.*)"/title="$node{$id}"/;
+                    } else {
+                        $l =~ s/title="(.*)"/title="NOTFOUND:$id"/;
+                    }
+                } else {
+                    if (defined($node{$lng}->{$id})) {
+                        $l =~ s/title="(.*)"/title="$node{$lng}->{$id}"/;
+                    }
+                }
+            }
+
+            if ($l =~/<help_section/) {
+                ($id = $l) =~ s/^.*id="(\d+)".*$/$1/gis;
+                if ($lng eq 'en-US') {
+                    if (defined($helpsection{$id})) {
+                        $l =~ s/title="(.*)"/title="$helpsection{$id}"/;
+                    } else {
+                        $l =~ s/title="(.*)"/title="NOTFOUND:$id"/;
+                    }
+                } else {
+                    if (defined($helpsection{$lng}->{$id})) {
+                        $l =~ 
s/title="(.*)"/title="$helpsection{$lng}->{$id}"/;
+                    }
+                }
+            }
+        }
+
+
+        my $treeoutdir = "$tree_dest";
+        my $tmpname_template=$tv."_XXXXX";
+        my ( $treetmpfilehandle, $treetmpfile ) = tempfile($tmpname_template , 
DIR => File::Spec->tmpdir() );
+        close $treetmpfilehandle ;
+
+        if (open TV, ">$treetmpfile") {
+            for $line(@lines) {
+                $line =~ s/\$\[officename\]/%PRODUCTNAME/g;
+                $line =~ s/\$\[officeversion\]/%PRODUCTVERSION/g;
+                print TV $line;
+            }
+            close TV;
+            chmod 0664, $treetmpfile or &terminate("Cannot change rights on 
$treetmpfile");
+            if( $^O eq 'MSWin32' )
+            {
+                $tree_dest =~ s/\//\\/g ;
+                unlink "$tree_dest\\$tv" ;
+                mv $treetmpfile , "$tree_dest\\$tv" or &terminate("Cannot mv 
$treetmpfile to $tree_dest\\$tv" );
+            }
+            else
+            {
+                unlink "$tree_dest/$tv" ;
+                my $ret=mv $treetmpfile , "$tree_dest/$tv" or 
&terminate("Cannot write to $tree_dest/$tv - Error $!");
+                my $ret=mv "$tree_dest/$tv" , "$tree_dest/$tv" or 
&terminate("Cannot write to $tree_dest/$tv - Error $!");
+                #xmllint is crashing on windows, fixme
+                if( $^O ne 'cygwin' )
+                {
+                    system("$xmllint --noout --noent $tree_dest/$tv") == 0 or 
&terminate("$tree_dest/$tv is illformed xml ($xmllint on $^O)" );
+                }
+            }
+      } else {
+            &terminate("Cannot write to $tvout");
+        }
+    }
+}
+
+#------------------------------------
+sub readtv {
+    my $f = shift;
+    if (open TV, $f) {
+        $/ = "\n";
+        my @l = <TV>;
+        close TV;
+        return @l;
+    } else {
+        &terminate("Error opening $f");
+    }
+}
+
+#-------------------------------------
+# read entries from localize.sdf files
+#-------------------------------------
+sub read_loc {
+    $/ = "\n";
+    my $path = "$source_dir";
+    @files = `find $source_dir -name localize.sdf`;
+    for my $fname (@files) {
+        $FS = '\t';
+        open(LOCALIZE_SDF, $fname) || die 'Cannot open 
"localize.sdf".'."$fname";
+        while (<LOCALIZE_SDF>) {
+            my $sdf_line = $_;
+        my ($Fld1,$file,$Fld3,$Fld4,$id,$Fld6,$Fld7,$Fld8,$Fld9,$lang,$text) = 
split($FS, $sdf_line , 12);
+            next if ( $Fld1 =~ /^#/);
+        if ($id eq 'tit') {
+                #strip filename
+                $file =~ s/.*text\\/text\\/g;
+                #convert \ to / in filename
+                $file =~ s/\\/\//g;
+                $file =~ s/^.*\/(.*)\/(.*)$/$1\/$2/;
+                #fpe: i46823 - need to encode &s, added encoding
+                $text =~ s/&(?!amp;)/&amp;/g;
+                #help xml tags are not allowed in .tree files
+                $text =~ s/\\<.*?\\>//g;
+                # add entry to the hash
+
+                $loc_title{$lang}->{$file} = $text;
+            }
+            if ($file =~ /tree_strings.xhp/) {
+                #strip filename
+                $file =~ s/.*text/text/g;
+                #convert \ to / in filename
+                $file =~ s/\\/\//g;
+                if ($text =~ /^<help_section/) {
+                    #example: <help_section application="scalc" id="08" 
title="表計算ドキュメント">
+                    my ($fld1,$app,$fld3,$id,$fld5,$sec_title) = split('"', 
$text, 7);
+                    #fpe: i46823 - need to encode &s, added encoding
+                    if( defined $sec_title )
+                    {
+                        $sec_title =~ s/&(?!amp;)/&amp;/g;
+                        #help xml tags are not allowed in .tree files
+                        $sec_title =~ s/\\<.*?\\>//g;
+                        #unquot \<item ... /\>
+                        terminate( "\n\nERROR: Bad string in file '$fname' 
will cause invalid xml tree file \n---\n'$sdf_line'\n---\nPlease remove or 
replace < = '&lt;' and  > = '&gt;' within the title attribute '$sec_title'\n") 
, if( $sec_title =~ /[\<\>]/ );
+                        $helpsection{$lang}->{$id} = $sec_title;
+                    }
+                } elsif ($text =~/<node id=/) {
+                    # example: <node id="0205" title="Tabelas em documentos de 
texto">
+                    # BEWARE: title may contain escaped '"' so only match " 
not preceded by \
+                    # using a zero‐width negative look‐behind assertion.
+                    my ($fld1,$id,$fld3,$node_title,$Fld5) = split(/(?<!\\)"/, 
$text, 5);
+                    #fpe: i46823 - need to encode &s, added encoding
+                    if( defined $node_title )
+                    {
+                        $node_title =~ s/&(?!amp;)/&amp;/g;
+                        #help xml tags are not allowed in .tree files
+                        $node_title =~ s/\\<.*?\\>//g;
+                           terminate( "\n\nERROR: Bad string in '$fname' will 
cause invalid xml tree file \n---\n'$sdf_line'\n---\nPlease remove or replace < 
= '&lt;' and  > = '&gt;' within the title attribute '$node_title'\n") , if( 
$node_title =~ /[\<\>]/ );
+                    }
+                    $node{$lang}->{$id} = $node_title;
+                }
+            }
+        }
+        close LOCALIZE_SDF;
+    }
+    # statistics
+    $total_elements=0;
+    foreach $lang (keys %loc_title) {
+        $no_elements = scalar(keys(%{$loc_title{$lang}}));
+        push(@langstat, "$lang:\t ".$no_elements." matches\n");
+        $total_elements += $no_elements;
+    }
+}
diff --git a/nlpsolver/Extension_nlpsolver.mk b/nlpsolver/Extension_nlpsolver.mk
index 6f2690f..75c8f7f 100644
--- a/nlpsolver/Extension_nlpsolver.mk
+++ b/nlpsolver/Extension_nlpsolver.mk
@@ -45,4 +45,7 @@ $(eval $(call 
gb_Extension_add_helpfiles,nlpsolver,$(SRCDIR)/nlpsolver/help/en,
        com.sun.star.comp.Calc.NLPSolver/Usage.xhp \
 ))
 
+$(eval $(call 
gb_Extension_add_helptreefile,nlpsolver,$(SRCDIR)/nlpsolver/help/en,/help.tree,com.sun.star.comp.Calc.NLPSolver/help.tree,com.sun.star.comp.Calc.NLPSolver))
+
+
 # vim: set noet sw=4 ts=4:
diff --git a/nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver/help.tree 
b/nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver/help.tree
new file mode 100644
index 0000000..7ccf4d6
--- /dev/null
+++ b/nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver/help.tree
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+-->
+
+<tree_view>
+<help_section application="scalc" id="08" title="Solver for Nonlinear 
Problems">
+    <node id="0816" title="Solver for Nonlinear Problems">
+        <topic 
id="help/com.sun.star.comp.Calc.NLPSolver/Usage.xhp">Usage</topic>
+        <topic 
id="help/com.sun.star.comp.Calc.NLPSolver/Options.xhp">Options</topic>
+    </node>
+</help_section>
+</tree_view>
diff --git 
a/nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver/tree_strings.xhp 
b/nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver/tree_strings.xhp
new file mode 100644
index 0000000..f6403c4
--- /dev/null
+++ b/nlpsolver/help/en/com.sun.star.comp.Calc.NLPSolver/tree_strings.xhp
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<helpdocument version="1.0">
+
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+-->
+
+<meta>
+    <topic id="tree_stringsxml" indexer="include" status="PUBLISH">
+        <title xml-lang="en-US" id="tit" localize="false">Note to 
translators:</title>
+        
<filename>/help/en/com.sun.star.comp.Calc.NLPSolver/tree_strings.xhp</filename>
+    </topic>
+</meta>
+
+<body>
+    <comment>This file contains extra strings for the contents (*.tree) files. 
No indexing!</comment>
+    <switch select="sys"> <case select="OS2">
+    <paragraph role="heading" level="1" id="hd_id3150150" xml-lang="en-US" 
localize="false">File: help.tree</paragraph>
+    <paragraph role="paragraph" id="par_id3160160" 
xml-lang="en-US">&lt;help_section application=&quot;scalc&quot; 
id=&quot;08&quot; title=&quot;Solver for Nonlinear 
Problems&quot;&gt;</paragraph>
+    <paragraph role="paragraph" id="par_id3170170" xml-lang="en-US">&lt;node 
id=&quot;0816&quot; title=&quot;Solver for Nonlinear 
Problems&quot;&gt;</paragraph>
+    </case> </switch>
+</body>
+
+</helpdocument>
diff --git a/sdext/Extension_presenter.mk b/sdext/Extension_presenter.mk
index ba5a51a..66f93a8 100644
--- a/sdext/Extension_presenter.mk
+++ b/sdext/Extension_presenter.mk
@@ -143,4 +143,8 @@ $(eval $(call 
gb_Extension_add_files,presenter-screen,registry/data/org/openoffi
 
 $(eval $(call 
gb_Extension_add_helpfile,presenter-screen,$(WORKDIR)/CustomTarget/sdext/source/presenter/help/en-US,com.sun.PresenterScreen-$(sdext_PLATFORM)/presenter.xhp,com.sun.PresenterScreen/presenter.xhp))
 
+$(eval $(call 
gb_Extension_add_helptreefile,presenter-screen,$(SRCDIR)/sdext/source/presenter/help/en-US,/help.tree,com.sun.PresenterScreen/help.tree,com.sun.PresenterScreen-$(sdext_PLATFORM)))
+
+
+
 # vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git 
a/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/help.tree 
b/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/help.tree
new file mode 100644
index 0000000..44b3a67
--- /dev/null
+++ b/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/help.tree
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+-->
+
+<tree_view>
+<help_section application="simpress" id="04" title="Presenter Console Keyboard 
Shortcuts">
+    <node id="0411" title="Presenter Console Keyboard Shortcuts">
+        <topic id="help/com.sun.PresenterScreen/presenter.xhp">Presenter 
Console Keyboard Shortcuts</topic>
+    </node>
+</help_section>
+</tree_view>
diff --git 
a/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/tree_strings.xhp 
b/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/tree_strings.xhp
new file mode 100644
index 0000000..322cd69
--- /dev/null
+++ b/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/tree_strings.xhp
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<helpdocument version="1.0">
+
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+-->
+
+<meta>
+    <topic id="tree_stringsxml" indexer="include" status="PUBLISH">
+        <title xml-lang="en-US" id="tit" localize="false">Note to 
translators:</title>
+        
<filename>/source/presenter/help/en-US/com.sun.PresenterScreen/tree_strings.xhp</filename>
+    </topic>
+</meta>
+
+<body>
+    <comment>This file contains extra strings for the contents (*.tree) files. 
No indexing!</comment>
+    <switch select="sys"> <case select="OS2">
+    <paragraph role="heading" level="1" id="hd_id3150150" xml-lang="en-US" 
localize="false">File: help.tree</paragraph>
+    <paragraph role="paragraph" id="par_id3160160" 
xml-lang="en-US">&lt;help_section application=&quot;simpress&quot; 
id=&quot;04&quot; title=&quot;Presenter Console Keyboard 
Shortcuts&quot;&gt;</paragraph>
+    <paragraph role="paragraph" id="par_id3170170" xml-lang="en-US">&lt;node 
id=&quot;0411&quot; title=&quot;Presenter Console Keyboard 
Shortcuts&quot;&gt;</paragraph>
+    </case> </switch>
+</body>
+
+</helpdocument>
diff --git a/solenv/gbuild/Extension.mk b/solenv/gbuild/Extension.mk
index 2779dda..c728e0d 100644
--- a/solenv/gbuild/Extension.mk
+++ b/solenv/gbuild/Extension.mk
@@ -116,6 +116,20 @@ $(call gb_ExtensionTarget_add_helpfiles,$(1),$(2),$(3))
 
 endef
 
+# add a help.tree file, to be localized and compiled
+# $(1): extension identifier
+# $(2): absolute path prefix of en-US source file without $(3) (resp. $(4))
+#     suffix
+# $(3): relative path of (target) help.tree file (e.g.,
+#     com.sun.wiki-publisher/help.tree)
+# $(4): optional relative path of source help.tree file, when it differs from 
$(3)
+#     (i.e., if $(4) is empty the en-US source file is $(2)/$(3), otherwise it
+#     is $(2)/$(4))
+define gb_Extension_add_helptreefile
+$(call gb_ExtensionTarget_add_helptreefile,$(1),$(2),$(3),$(4),$(5))
+
+endef
+
 define gb_Extension_use_package
 $(call gb_ExtensionTarget_use_package,$(1),$(2))
 
diff --git a/solenv/gbuild/ExtensionTarget.mk b/solenv/gbuild/ExtensionTarget.mk
index 14b50e0..d89cfa8 100644
--- a/solenv/gbuild/ExtensionTarget.mk
+++ b/solenv/gbuild/ExtensionTarget.mk
@@ -38,6 +38,10 @@ gb_ExtensionTarget_XRMEXCOMMAND := \
 gb_ExtensionTarget_PROPMERGETARGET := $(OUTDIR_FOR_BUILD)/bin/propmerge
 gb_ExtensionTarget_PROPMERGECOMMAND := \
        $(PERL) $(gb_ExtensionTarget_PROPMERGETARGET)
+
+gb_ExtensionTarget_UPDATETREETARGET := 
$(SRCDIR)/l10ntools/scripts/update_tree.pl
+gb_ExtensionTarget_UPDATETREECOMMAND := $(PERL) 
$(gb_ExtensionTarget_UPDATETREETARGET)
+
 gb_ExtensionTarget_HELPEXTARGET := $(call 
gb_Executable_get_target_for_build,helpex)
 gb_ExtensionTarget_HELPEXCOMMAND := \
        $(gb_Helper_set_ld_path) $(gb_ExtensionTarget_HELPEXTARGET)
@@ -239,6 +243,21 @@ $(foreach lang,$(gb_ExtensionTarget_ALL_LANGS), \
     $(call 
gb_ExtensionTarget__add_compiled_help_dependency_onelang,$(1),$(lang)))
 endef
 
+# add a help.tree file, to be localized and compiled
+# $(1): extension identifier
+# $(2): absolute path prefix of en-US source file without $(3) (resp. $(4))
+#     suffix
+# $(3): relative path of (target) help.tree file (e.g.,
+#     com.sun.wiki-publisher/help.tree)
+# $(4): optional relative path of source help.tree file, when it differs from 
$(3)
+#     (i.e., if $(4) is empty the en-US source file is $(2)/$(3), otherwise it
+#     is $(2)/$(4))
+define gb_ExtensionTarget_add_helptreefile
+$(foreach lang,$(gb_ExtensionTarget_ALL_LANGS), \
+    $(call 
gb_ExtensionTarget__localize_helptreefile_onelang,$(1),$(2),$(3),$(4),$(lang),$(5))
 \
+    $(call 
gb_ExtensionTarget__add_compiled_help_dependency_onelang,$(1),$(lang)))
+endef
+
 # add a list of .xhp help files, to be localized and compiled
 # $(1): extension identifier
 # $(2): absolute path prefix of en-US source files without $(3) suffixes
@@ -282,6 +301,35 @@ $(call gb_ExtensionTarget_get_workdir,$(1))/help/$(5)/$(3) 
: \
 
 endef
 
+# localize one help.tree for one language; the result is stored as
+# help/$(4)/$(3) in the extension's workdir; as a special case, if $(4) is
+# "en-US", the source file is just copied, not passed through update_tree.pl
+# $(1): extension identifier
+# $(2): absolute path prefix of en-US source file without $(3) (resp. $(4))
+#     suffix
+# $(3): relative path of (target) help.tree file (see
+#     gb_ExtensionTarget_add_helptreefile)
+# $(4): optional relative path of source help.tree file (see
+#     gb_ExtensionTarget_add_helptreefile)
+# $(5): language
+define gb_ExtensionTarget__localize_helptreefile_onelang
+$(call gb_ExtensionTarget_get_rootdir,$(1))/help/$(5).done : \
+        $(call gb_ExtensionTarget_get_rootdir,$(1))/help/$(5)/$(3)
+$(call gb_ExtensionTarget_get_rootdir,$(1))/help/$(5)/$(3) : \
+        SDF := $(gb_SDFLOCATION)$(subst $(SRCDIR),,$(subst 
$(WORKDIR)/CustomTarget,,$(2)/$(dir $(or $(4),$(3)))))localize.sdf
+$(call gb_ExtensionTarget_get_rootdir,$(1))/help/$(5)/$(3) : $$(SDF)
+$(call gb_ExtensionTarget_get_rootdir,$(1))/help/$(5)/$(3) : \
+        $(if $(filter-out 
en-US,$(WITH_LANG)),$(gb_ExtensionTarget_UPDATETREETARGET)) | \
+        $(2)/$(4)
+$(call gb_ExtensionTarget_get_rootdir,$(1))/help/$(5)/$(3) : \
+        $(2)/$(or $(4),$(3))
+       $$(call gb_Output_announce,$(1) $(3) $(5),$(true),TRE,3)
+       $$(call gb_Helper_abbreviate_dirs, \
+        mkdir -p $$(dir $$@) && \
+        $(gb_ExtensionTarget_UPDATETREECOMMAND) $$< $(5) $$(SDF) $$@ $(6) )
+
+endef
+
 # compile help for one language; the result is stored as help/$(3)/ in the
 # extension's rootdir and marked for zipping into the .oxt
 # $(1): extension identifier
@@ -298,8 +346,7 @@ $(call gb_ExtensionTarget_get_rootdir,$(1))/help/$(2).done 
: \
         $(call gb_ExtensionTarget_get_rootdir,$(1))/help/.dir
        $$(call gb_Output_announce,$(1) $(2),$(true),XHC,3)
        $$(call gb_Helper_abbreviate_dirs, \
-        rm -rf $$(basename $$@) && \
-        mkdir $$(basename $$@) && \
+        mkdir -p $$(basename $$@) && \
         $(gb_ExtensionTarget_HELPLINKERCOMMAND) -mod help \
             -extlangsrc $(call gb_ExtensionTarget_get_workdir,$(1))/help/$(2) \
             -sty $(OUTDIR_FOR_BUILD)/bin/embed.xsl \
diff --git a/swext/Extension_wiki-publisher.mk 
b/swext/Extension_wiki-publisher.mk
index e9e5088..6f4e4a3 100644
--- a/swext/Extension_wiki-publisher.mk
+++ b/swext/Extension_wiki-publisher.mk
@@ -68,4 +68,6 @@ $(eval $(call 
gb_Extension_add_helpfile,wiki-publisher,$(SRCDIR)/swext/mediawiki
 $(eval $(call 
gb_Extension_add_helpfile,wiki-publisher,$(SRCDIR)/swext/mediawiki/help,com.sun.wiki-publisher/wiki.xhp,wiki.xhp))
 $(eval $(call 
gb_Extension_add_helpfile,wiki-publisher,$(SRCDIR)/swext/mediawiki/help,com.sun.wiki-publisher/wikisettings.xhp,wikisettings.xhp))
 
+$(eval $(call 
gb_Extension_add_helptreefile,wiki-publisher,$(SRCDIR)/swext/mediawiki/help,/help.tree,/help.tree,com.sun.wiki-publisher))
+
 # vim: set noet sw=4 ts=4:
diff --git a/swext/mediawiki/help/help.tree b/swext/mediawiki/help/help.tree
new file mode 100644
index 0000000..d258c94
--- /dev/null
+++ b/swext/mediawiki/help/help.tree
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+-->
+
+<tree_view>
+<help_section application="swriter" id="02" title="MediaWiki">
+    <node id="0224" title="MediaWiki">
+        <topic id="help/help/wiki.xhp">MediaWiki</topic>
+        <topic id="help/help/wikiaccount.xhp">Wiki Publisher</topic>
+        <topic id="help/help/wikiformats.xhp">MediaWiki Formats</topic>
+        <topic id="help/help/wikisend.xhp">Send to MediaWiki</topic>
+        <topic id="help/help/wikisettings.xhp">MediaWiki Options</topic>
+    </node>
+</help_section>
+</tree_view>
diff --git a/swext/mediawiki/help/tree_strings.xhp 
b/swext/mediawiki/help/tree_strings.xhp
new file mode 100644
index 0000000..2ccabc7
--- /dev/null
+++ b/swext/mediawiki/help/tree_strings.xhp
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<helpdocument version="1.0">
+
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+-->
+
+<meta>
+    <topic id="tree_stringsxml" indexer="include" status="PUBLISH">
+        <title xml-lang="en-US" id="tit" localize="false">Note to 
translators:</title>
+    <filename>/mediawiki/help/treestrings.xhp</filename>
+    </topic>
+</meta>
+
+<body>
+    <comment>This file contains extra strings for the contents (*.tree) files. 
No indexing!</comment>
+    <switch select="sys"> <case select="OS2">
+    <paragraph role="heading" level="1" id="hd_id3150150" xml-lang="en-US" 
localize="false">File: help.tree</paragraph>
+    <paragraph role="paragraph" id="par_id3160160" 
xml-lang="en-US">&lt;help_section application=&quot;swriter&quot; 
id=&quot;02&quot; title=&quot;MediaWiki&quot;&gt;</paragraph>
+    <paragraph role="paragraph" id="par_id3170170" xml-lang="en-US">&lt;node 
id=&quot;0224&quot; title=&quot;MediaWiki&quot;&gt;</paragraph>
+    </case> </switch>
+</body>
+
+</helpdocument>
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to