Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


Do we really want the below commits introduce an incompatible change in LO 4.2? They modify officecfg/registry/schema/org/openoffice/Office/Addons.xcs in an incompatible way so that any extension containing toolbars (as /org.openoffice.org.Office.Addons/AddonUI/OfficeToolBar configuration set elements) needs to be changed to keep its toolbars working. For example, in an --enable-ext-numbertext build, Calc "View -> Toolbars -> CT2N" is missing now.

(Also, the commits contain a mis-merge in Addons.xcs and would need the additional attached 0001-API-CHANGE-Fix-broken-merge-of-Addons.xcs.patch, but that would not make a difference to the above observation that old extensions no longer work; it would only fix updated extensions not working either, witness Writer "View -> Toolbars -> Logo" missing.)

Stephan

On 06/24/2013 12:58 PM, Ariel Constenla-Haile wrote:
  framework/source/fwe/classes/addonsoptions.cxx                                      |   75 ++
  framework/source/layoutmanager/toolbarlayoutmanager.cxx                             |   19
  include/framework/addonsoptions.hxx                                                 |    7
  odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/Addons.xcu  |   75 +-
  odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/Addons.xcu |   75 +-
  odk/examples/DevelopersGuide/Extensions/DialogWithHelp/Addons.xcu                   |  107 +--
  odk/examples/cpp/complextoolbarcontrols/Addons.xcu                                  |  295 
+++++-----
  odk/examples/cpp/complextoolbarcontrols/CalcWindowState.xcu                         |   38 -
  odk/examples/cpp/complextoolbarcontrols/Makefile                                    |    8
  odk/examples/cpp/complextoolbarcontrols/WriterWindowState.xcu                       |   38 -
  odk/examples/java/Inspector/Addons.xcu                                              |   31 -
  officecfg/registry/schema/org/openoffice/Office/Addons.xcs                          |   16
  12 files changed, 409 insertions(+), 375 deletions(-)

New commits:
commit af572d9fbb744c9691abe465815d7927a9d11510
Author: Ariel Constenla-Haile <arielch@apache.org>
Date:   Fri Jan 4 18:57:41 2013 +0000

     Related: #i121577# Allow setting toolbar name in Addons.xcu

     (cherry picked from commit 96cd87ec89e5ebe9d174c90b0f2cab96b3772732)

     Conflicts:
        odk/examples/cpp/complextoolbarcontrols/CalcWindowState.xcu
        odk/examples/cpp/complextoolbarcontrols/WriterWindowState.xcu
        odk/examples/java/Inspector/Inspector.java

     Change-Id: I6a0c1a657c6084df4efd8e150dc252155b32ba0b

diff --git a/odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/Addons.xcu 
b/odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/Addons.xcu
index a6a1985..f8cf12b 100644
--- a/odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/Addons.xcu
+++ b/odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/Addons.xcu
@@ -136,41 +136,46 @@
          </node>
          <node oor:name="OfficeToolBar">
              <node oor:name="org.openoffice.Office.addon.example" oor:op="replace">
-                <node oor:name="m1" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>org.openoffice.Office.addon.example:Function1</value>
-                    </prop>
-                    <prop oor:name="ImageIdentifier" oor:type="xs:string">
-                        <value/>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value/>
-                        <value xml:lang="en-US">Function 1</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        <value>com.sun.star.text.TextDocument</value>
-                    </prop>
-                </node>
-                <node oor:name="m2" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>org.openoffice.Office.addon.example:Function2</value>
-                    </prop>
-                    <prop oor:name="ImageIdentifier" oor:type="xs:string">
-                        <value/>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value/>
-                        <value xml:lang="en-US">Function 2</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        <value>com.sun.star.text.TextDocument</value>
-                    </prop>
+                <prop oor:name="Title" oor:type="xs:string">
+                    <value xml:lang="en-US">Cpp Addon Example</value>
+                </prop>
+                <node oor:name="ToolBarItems">
+                    <node oor:name="m1" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>org.openoffice.Office.addon.example:Function1</value>
+                        </prop>
+                        <prop oor:name="ImageIdentifier" oor:type="xs:string">
+                            <value/>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value/>
+                            <value xml:lang="en-US">Function 1</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            <value>com.sun.star.text.TextDocument</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m2" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>org.openoffice.Office.addon.example:Function2</value>
+                        </prop>
+                        <prop oor:name="ImageIdentifier" oor:type="xs:string">
+                            <value/>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value/>
+                            <value xml:lang="en-US">Function 2</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            <value>com.sun.star.text.TextDocument</value>
+                        </prop>
+                    </node>
                  </node>
              </node>
          </node>
diff --git a/odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/Addons.xcu 
b/odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/Addons.xcu
index 5eefadb..32ec0f0 100644
--- a/odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/Addons.xcu
+++ b/odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_java/Addons.xcu
@@ -136,41 +136,46 @@
          </node>
          <node oor:name="OfficeToolBar">
              <node oor:name="org.openoffice.Office.addon.example" oor:op="replace">
-                <node oor:name="m1" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>org.openoffice.Office.addon.example:Function1</value>
-                    </prop>
-                    <prop oor:name="ImageIdentifier" oor:type="xs:string">
-                        <value/>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value/>
-                        <value xml:lang="en-US">Function 1</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        <value>com.sun.star.text.TextDocument</value>
-                    </prop>
-                </node>
-                <node oor:name="m2" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>org.openoffice.Office.addon.example:Function2</value>
-                    </prop>
-                    <prop oor:name="ImageIdentifier" oor:type="xs:string">
-                        <value/>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value/>
-                        <value xml:lang="en-US">Function 2</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        <value>com.sun.star.text.TextDocument</value>
-                    </prop>
+                <prop oor:name="Title" oor:type="xs:string">
+                    <value xml:lang="en-US">Java Addon Example</value>
+                </prop>
+                <node oor:name="ToolBarItems">
+                    <node oor:name="m1" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>org.openoffice.Office.addon.example:Function1</value>
+                        </prop>
+                        <prop oor:name="ImageIdentifier" oor:type="xs:string">
+                            <value/>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value/>
+                            <value xml:lang="en-US">Function 1</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            <value>com.sun.star.text.TextDocument</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m2" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>org.openoffice.Office.addon.example:Function2</value>
+                        </prop>
+                        <prop oor:name="ImageIdentifier" oor:type="xs:string">
+                            <value/>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value/>
+                            <value xml:lang="en-US">Function 2</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            <value>com.sun.star.text.TextDocument</value>
+                        </prop>
+                    </node>
                  </node>
              </node>
          </node>
diff --git a/odk/examples/DevelopersGuide/Extensions/DialogWithHelp/Addons.xcu 
b/odk/examples/DevelopersGuide/Extensions/DialogWithHelp/Addons.xcu
index 89136e9..a31753d 100644
--- a/odk/examples/DevelopersGuide/Extensions/DialogWithHelp/Addons.xcu
+++ b/odk/examples/DevelopersGuide/Extensions/DialogWithHelp/Addons.xcu
@@ -17,58 +17,63 @@
   *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  -->
  <oor:component-data xmlns:oor="http://openoffice.org/2001/registry"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
oor:name="Addons" oor:package="org.openoffice.Office">
-  <node oor:name="AddonUI">
-    <node oor:name="OfficeMenuBar">
-      <node oor:name="com.foocorp.foo-ext:Menu" oor:op="replace">
-        <prop oor:name="Title" oor:type="xs:string">
-          <value/>
-          <value xml:lang="en">Foo E~xtension</value>
-        </prop>
-        <prop oor:name="Target" oor:type="xs:string">
-          <value>_self</value>
-        </prop>
-        <prop oor:name="ImageIdentifier" oor:type="xs:string">
-          <value/>
-        </prop>
-        <node oor:name="Submenu">
-          <node oor:name="m1" oor:op="replace">
-            <prop oor:name="URL" oor:type="xs:string">
-              
<value>vnd.sun.star.script:DialogWithHelp.Module1.main?language=Basic&amp;location=application</value>
-            </prop>
-            <prop oor:name="ImageIdentifier" oor:type="xs:string">
-              <value/>
-            </prop>
-            <prop oor:name="Target" oor:type="xs:string">
-              <value>_self</value>
-            </prop>
-            <prop oor:name="Title" oor:type="xs:string">
-              <value/>
-              <value xml:lang="en">Start Foo Dialog...</value>
-            </prop>
-          </node>
-          <node oor:name="m3" oor:op="replace">
-          </node>
+    <node oor:name="AddonUI">
+        <node oor:name="OfficeMenuBar">
+            <node oor:name="com.foocorp.foo-ext:Menu" oor:op="replace">
+                <prop oor:name="Title" oor:type="xs:string">
+                    <value/>
+                    <value xml:lang="en">Foo E~xtension</value>
+                </prop>
+                <prop oor:name="Target" oor:type="xs:string">
+                    <value>_self</value>
+                </prop>
+                <prop oor:name="ImageIdentifier" oor:type="xs:string">
+                    <value/>
+                </prop>
+                <node oor:name="Submenu">
+                    <node oor:name="m1" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            
<value>vnd.sun.star.script:DialogWithHelp.Module1.main?language=Basic&amp;location=application</value>
+                        </prop>
+                        <prop oor:name="ImageIdentifier" oor:type="xs:string">
+                            <value/>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value/>
+                            <value xml:lang="en">Start Foo Dialog...</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m3" oor:op="replace">
+                    </node>
+                </node>
+            </node>
          </node>
-      </node>
-    </node>
-    <node oor:name="OfficeToolBar">
-      <node oor:name="com.foocorp.foo-ext:ToolbarItem1" oor:op="replace">
-        <node oor:name="m1" oor:op="replace">
-          <prop oor:name="URL">
-            
<value>vnd.sun.star.script:DialogWithHelp.Module1.main?language=Basic&amp;location=application</value>
-          </prop>
-          <prop oor:name="Title">
-            <value xml:lang="en-US">Foo Toolbar Item</value>
-            <value xml:lang="de">Foo Toolbar Eintrag</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
+        <node oor:name="OfficeToolBar">
+            <node oor:name="com.foocorp.foo-ext:ToolbarItem1" oor:op="replace">
+                <prop oor:name="Title" oor:type="xs:string">
+                    <value xml:lang="en-US">Foo Toolbar</value>
+                </prop>
+                <node oor:name="ToolBarItems">
+                    <node oor:name="m1" oor:op="replace">
+                        <prop oor:name="URL">
+                            
<value>vnd.sun.star.script:DialogWithHelp.Module1.main?language=Basic&amp;location=application</value>
+                        </prop>
+                        <prop oor:name="Title">
+                            <value xml:lang="en-US">Foo Toolbar Item</value>
+                            <value xml:lang="de">Foo Toolbar Eintrag</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            <value>com.sun.star.text.TextDocument</value>
+                        </prop>
+                    </node>
+                </node>
+            </node>
          </node>
-      </node>
      </node>
-  </node>
  </oor:component-data>
diff --git a/odk/examples/cpp/complextoolbarcontrols/Addons.xcu 
b/odk/examples/cpp/complextoolbarcontrols/Addons.xcu
index ce9aa26..e4edf15 100644
--- a/odk/examples/cpp/complextoolbarcontrols/Addons.xcu
+++ b/odk/examples/cpp/complextoolbarcontrols/Addons.xcu
@@ -20,151 +20,156 @@
      <node oor:name="AddonUI">
          <node oor:name="OfficeToolBar">
              <node oor:name="com.sun.star.comp.framework.addon.complextoolbarcontrols" 
oor:op="replace">
-                <node oor:name="m1" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>vnd.demo.complextoolbarcontrols.demoaddon:ImageButtonCmd</value>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value xml:lang="en-US">Image Button</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
-                    </prop>
-                    <prop oor:name="ControlType" oor:type="xs:string">
-                        <value>ImageButton</value>
-                    </prop>
-                </node>
-                <node oor:name="m2" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>vnd.demo.complextoolbarcontrols.demoaddon:ComboboxCmd</value>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value xml:lang="en-US">ComboBox</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
-                    </prop>
-                    <prop oor:name="ControlType" oor:type="xs:string">
-                        <value>Combobox</value>
-                    </prop>
-                    <prop oor:name="Width" oor:type="xs:long">
-                        <value>200</value>
-                    </prop>
-                </node>
-                <node oor:name="m3" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>private:separator</value>
-                    </prop>
-                </node>
-                <node oor:name="m4" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>vnd.demo.complextoolbarcontrols.demoaddon:SpinfieldCmd</value>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value xml:lang="en-US">Spinfield</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
-                    </prop>
-                    <prop oor:name="ControlType" oor:type="xs:string">
-                        <value>Spinfield</value>
-                    </prop>
-                    <prop oor:name="Width" oor:type="xs:long">
-                        <value>70</value>
-                    </prop>
-                </node>
-                <node oor:name="m5" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>private:separator</value>
-                    </prop>
-                </node>
-                <node oor:name="m6" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>vnd.demo.complextoolbarcontrols.demoaddon:EditfieldCmd</value>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value xml:lang="en-US">Editfield</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
-                    </prop>
-                    <prop oor:name="ControlType" oor:type="xs:string">
-                        <value>Editfield</value>
-                    </prop>
-                    <prop oor:name="Width" oor:type="xs:long">
-                        <value>130</value>
-                    </prop>
-                </node>
-                <node oor:name="m7" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>private:separator</value>
-                    </prop>
-                </node>
-                <node oor:name="m8" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>vnd.demo.complextoolbarcontrols.demoaddon:DropdownboxCmd</value>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value xml:lang="en-US">Dropdownbox</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
-                    </prop>
-                    <prop oor:name="ControlType" oor:type="xs:string">
-                        <value>Dropdownbox</value>
-                    </prop>
-                    <prop oor:name="Width" oor:type="xs:long">
-                        <value>80</value>
-                    </prop>
-                </node>
-                <node oor:name="m9" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        
<value>vnd.demo.complextoolbarcontrols.demoaddon:ToggleDropdownButtonCmd</value>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value xml:lang="en-US">Toggle Dropdown Button</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
-                    </prop>
-                    <prop oor:name="ControlType" oor:type="xs:string">
-                        <value>ToggleDropdownButton</value>
-                    </prop>
-                </node>
-                <node oor:name="m10" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>vnd.demo.complextoolbarcontrols.demoaddon:DropdownButtonCmd</value>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value xml:lang="en-US">Dropdown Button</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                        
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
-                    </prop>
-                    <prop oor:name="ControlType" oor:type="xs:string">
-                        <value>DropdownButton</value>
-                    </prop>
+                <prop oor:name="Title" oor:type="xs:string">
+                    <value xml:lang="en-US">Complex Toolbar Controls</value>
+                </prop>
+                <node oor:name="ToolBarItems">
+                    <node oor:name="m1" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>vnd.demo.complextoolbarcontrols.demoaddon:ImageButtonCmd</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value xml:lang="en-US">Image Button</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
+                        </prop>
+                        <prop oor:name="ControlType" oor:type="xs:string">
+                            <value>ImageButton</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m2" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>vnd.demo.complextoolbarcontrols.demoaddon:ComboboxCmd</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value xml:lang="en-US">ComboBox</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
+                        </prop>
+                        <prop oor:name="ControlType" oor:type="xs:string">
+                            <value>Combobox</value>
+                        </prop>
+                        <prop oor:name="Width" oor:type="xs:long">
+                            <value>200</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m3" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>private:separator</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m4" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>vnd.demo.complextoolbarcontrols.demoaddon:SpinfieldCmd</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value xml:lang="en-US">Spinfield</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
+                        </prop>
+                        <prop oor:name="ControlType" oor:type="xs:string">
+                            <value>Spinfield</value>
+                        </prop>
+                        <prop oor:name="Width" oor:type="xs:long">
+                            <value>70</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m5" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>private:separator</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m6" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>vnd.demo.complextoolbarcontrols.demoaddon:EditfieldCmd</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value xml:lang="en-US">Editfield</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
+                        </prop>
+                        <prop oor:name="ControlType" oor:type="xs:string">
+                            <value>Editfield</value>
+                        </prop>
+                        <prop oor:name="Width" oor:type="xs:long">
+                            <value>130</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m7" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>private:separator</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m8" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>vnd.demo.complextoolbarcontrols.demoaddon:DropdownboxCmd</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value xml:lang="en-US">Dropdownbox</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
+                        </prop>
+                        <prop oor:name="ControlType" oor:type="xs:string">
+                            <value>Dropdownbox</value>
+                        </prop>
+                        <prop oor:name="Width" oor:type="xs:long">
+                            <value>80</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m9" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            
<value>vnd.demo.complextoolbarcontrols.demoaddon:ToggleDropdownButtonCmd</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value xml:lang="en-US">Toggle Dropdown Button</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
+                        </prop>
+                        <prop oor:name="ControlType" oor:type="xs:string">
+                            <value>ToggleDropdownButton</value>
+                        </prop>
+                    </node>
+                    <node oor:name="m10" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            
<value>vnd.demo.complextoolbarcontrols.demoaddon:DropdownButtonCmd</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value xml:lang="en-US">Dropdown Button</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            
<value>com.sun.star.text.TextDocument,com.sun.star.sheet.SpreadsheetDocument</value>
+                        </prop>
+                        <prop oor:name="ControlType" oor:type="xs:string">
+                            <value>DropdownButton</value>
+                        </prop>
+                    </node>
                  </node>
              </node>
          </node>
diff --git a/odk/examples/cpp/complextoolbarcontrols/CalcWindowState.xcu 
b/odk/examples/cpp/complextoolbarcontrols/CalcWindowState.xcu
deleted file mode 100644
index 4d9f71c..0000000
--- a/odk/examples/cpp/complextoolbarcontrols/CalcWindowState.xcu
+++ /dev/null
@@ -1,38 +0,0 @@
-<?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/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 .
--->
-<oor:component-data xmlns:oor="http://openoffice.org/2001/registry"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
oor:name="CalcWindowState" oor:package="org.openoffice.Office.UI">
- <node oor:name="UIElements">
-  <node oor:name="States">
-   <node oor:name="private:resource/toolbar/addon_com.sun.star.comp.framework.addon.complextoolbarcontrols" 
oor:op="replace">
-    <prop oor:name="ContextSensitive" oor:type="xs:boolean">
-     <value>false</value>
-    </prop>
-    <prop oor:name="UIName" oor:type="xs:string">
-     <value xml:lang="en-US">Complex Toolbar Controls</value>
-    </prop>
-    <prop oor:name="Visible" oor:type="xs:boolean">
-     <value>true</value>
-    </prop>
-    <prop oor:name="Docked" oor:type="xs:boolean">
-     <value>false</value>
-    </prop>
-   </node>
-  </node>
- </node>
-</oor:component-data>
\ No newline at end of file
diff --git a/odk/examples/cpp/complextoolbarcontrols/Makefile 
b/odk/examples/cpp/complextoolbarcontrols/Makefile
index a8f1a18..0cc9f51 100644
--- a/odk/examples/cpp/complextoolbarcontrols/Makefile
+++ b/odk/examples/cpp/complextoolbarcontrols/Makefile
@@ -104,10 +104,6 @@ $(OUT_COMP_GEN)/%/manifest.xml :
        @echo $(SQM)  $(SQM)$(OSEP)manifest:file-entry 
manifest:media-type="$(QM)application/vnd.sun.star.configuration-data$(QM)" >> $@
        @echo $(SQM)                       $(SQM)manifest:full-path="$(QM)Addons.xcu$(QM)"/$(CSEP) 
>> $@
        @echo $(SQM)  $(SQM)$(OSEP)manifest:file-entry 
manifest:media-type="$(QM)application/vnd.sun.star.configuration-data$(QM)" >> $@
-       @echo $(SQM)                       
$(SQM)manifest:full-path="$(QM)WriterWindowState.xcu$(QM)"/$(CSEP) >> $@
-       @echo $(SQM)  $(SQM)$(OSEP)manifest:file-entry 
manifest:meda-type="$(QM)application/vnd.sun.star.configuration-data$(QM)" >> $@
-       @echo $(SQM)                       
$(SQM)manifest:full-path="$(QM)CalcWindowState.xcu$(QM)"/$(CSEP) >> $@
-       @echo $(SQM)  $(SQM)$(OSEP)manifest:file-entry 
manifest:media-type="$(QM)application/vnd.sun.star.configuration-data$(QM)" >> $@
        @echo $(SQM)                       
$(SQM)manifest:full-path="$(QM)ProtocolHandler.xcu$(QM)"/$(CSEP) >> $@
        @echo $(SQM)  $(SQM)$(OSEP)manifest:file-entry 
manifest:media-type="$(QM)application/vnd.sun.star.uno-components;platform=$(UNOPKG_PLATFORM)$(QM)">>
 $@
        @echo $(SQM)                       
$(SQM)manifest:full-path="$(QM)$(COMP_NAME).components$(QM)"/$(CSEP)>> $@
@@ -131,13 +127,13 @@ $(COMP_COMPONENTS) :
        @echo $(OSEP)/components$(CSEP) >> $@

  # rule for component package file
-$(COMP_PACKAGE) : $(SHAREDLIB_OUT)/$(COMP_IMPL_NAME) Addons.xcu ProtocolHandler.xcu 
WriterWindowState.xcu CalcWindowState.xcu $(COMP_UNOPKG_MANIFEST) $(COMP_COMPONENTS)
+$(COMP_PACKAGE) : $(SHAREDLIB_OUT)/$(COMP_IMPL_NAME) Addons.xcu ProtocolHandler.xcu 
$(COMP_UNOPKG_MANIFEST) $(COMP_COMPONENTS)
        -$(MKDIR) $(subst /,$(PS),$(@D)) && $(DEL) $(subst \\,\,$(subst /,$(PS),$@))
        -$(MKDIR) $(subst /,$(PS),$(OUT_COMP_GEN)/$(UNOPKG_PLATFORM))
        $(COPY) $(subst /,$(PS),$<) $(subst /,$(PS),$(OUT_COMP_GEN)/$(UNOPKG_PLATFORM))
        cd $(subst /,$(PS),$(OUT_COMP_GEN)) && $(SDK_ZIP) -u ../../bin/$(@F) $(COMP_NAME).components
        cd $(subst /,$(PS),$(OUT_COMP_GEN)) && $(SDK_ZIP) -u ../../bin/$(@F) 
$(UNOPKG_PLATFORM)/$(<F)
-       $(SDK_ZIP) -u $@ Addons.xcu ProtocolHandler.xcu WriterWindowState.xcu CalcWindowState.xcu 
logo_small.png logo_big.png
+       $(SDK_ZIP) -u $@ Addons.xcu ProtocolHandler.xcu logo_small.png logo_big.png
        cd $(subst /,$(PS),$(OUT_COMP_GEN)/$(subst .$(UNOOXT_EXT),,$(@F))) && $(SDK_ZIP) -u 
../../../bin/$(@F) META-INF/manifest.xml

  $(COMP_REGISTERFLAG) : $(COMP_PACKAGE)
diff --git a/odk/examples/cpp/complextoolbarcontrols/WriterWindowState.xcu 
b/odk/examples/cpp/complextoolbarcontrols/WriterWindowState.xcu
deleted file mode 100644
index e590f65..0000000
--- a/odk/examples/cpp/complextoolbarcontrols/WriterWindowState.xcu
+++ /dev/null
@@ -1,38 +0,0 @@
-<?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/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 .
--->
-<oor:component-data xmlns:oor="http://openoffice.org/2001/registry"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
oor:name="WriterWindowState" oor:package="org.openoffice.Office.UI">
- <node oor:name="UIElements">
-  <node oor:name="States">
-   <node oor:name="private:resource/toolbar/addon_com.sun.star.comp.framework.addon.complextoolbarcontrols" 
oor:op="replace">
-    <prop oor:name="ContextSensitive" oor:type="xs:boolean">
-     <value>false</value>
-    </prop>
-    <prop oor:name="UIName" oor:type="xs:string">
-     <value xml:lang="en-US">Complex Toolbar Controls</value>
-    </prop>
-    <prop oor:name="Visible" oor:type="xs:boolean">
-     <value>true</value>
-    </prop>
-    <prop oor:name="Docked" oor:type="xs:boolean">
-     <value>false</value>
-    </prop>
-   </node>
-  </node>
- </node>
-</oor:component-data>
\ No newline at end of file
diff --git a/odk/examples/java/Inspector/Addons.xcu b/odk/examples/java/Inspector/Addons.xcu
index 2ea6abd..d35cc0e 100644
--- a/odk/examples/java/Inspector/Addons.xcu
+++ b/odk/examples/java/Inspector/Addons.xcu
@@ -20,19 +20,24 @@
      <node oor:name="AddonUI">
          <node oor:name="OfficeToolBar">
              <node oor:name="org.openoffice.Office.addon.Inspector" oor:op="replace">
-                <node oor:name="toolBar_Inspector" oor:op="replace">
-                    <prop oor:name="URL" oor:type="xs:string">
-                        <value>org.openoffice.Office.addon.Inspector:inspect</value>
-                    </prop>
-                    <prop oor:name="Title" oor:type="xs:string">
-                        <value xml:lang="en-US">Object Inspector</value>
-                    </prop>
-                    <prop oor:name="Target" oor:type="xs:string">
-                        <value>_self</value>
-                    </prop>
-                    <prop oor:name="Context" oor:type="xs:string">
-                          <value></value>
-                    </prop>
+                <prop oor:name="Title" oor:type="xs:string">
+                    <value xml:lang="en-US">Object Inspector</value>
+                </prop>
+                <node oor:name="ToolBarItems">
+                    <node oor:name="toolBar_Inspector" oor:op="replace">
+                        <prop oor:name="URL" oor:type="xs:string">
+                            <value>org.openoffice.Office.addon.Inspector:inspect</value>
+                        </prop>
+                        <prop oor:name="Title" oor:type="xs:string">
+                            <value xml:lang="en-US">Object Inspector</value>
+                        </prop>
+                        <prop oor:name="Target" oor:type="xs:string">
+                            <value>_self</value>
+                        </prop>
+                        <prop oor:name="Context" oor:type="xs:string">
+                            <value></value>
+                        </prop>
+                    </node>
                  </node>
              </node>
          </node>
commit 85f072ef33ef47b5e3e0bcd51acb5c4179cde2c2
Author: Ariel Constenla-Haile <arielch@apache.org>
Date:   Fri Jan 4 18:57:29 2013 +0000

     Resolves: #i121577# Allow setting toolbar name in Addons.xcu

     (cherry picked from commit 37894067213a63c51c7a73083d7b0ace5f5c40da)

     Conflicts:
        framework/inc/framework/addonsoptions.hxx
        framework/source/fwe/classes/addonsoptions.cxx
        framework/source/layoutmanager/toolbarlayoutmanager.cxx
        officecfg/registry/schema/org/openoffice/Office/Addons.xcs

     Change-Id: Icc8ed1bb5ac2cfecd6c03c53c137c503dc78bc66

diff --git a/framework/source/fwe/classes/addonsoptions.cxx 
b/framework/source/fwe/classes/addonsoptions.cxx
index a94fe1c..3f9f656 100644
--- a/framework/source/fwe/classes/addonsoptions.cxx
+++ b/framework/source/fwe/classes/addonsoptions.cxx
@@ -49,8 +49,10 @@ using namespace ::com::sun::star::beans ;
  using namespace ::com::sun::star::lang  ;
  using namespace ::com::sun::star;

+#define STR_TOOLBARITEMS    "ToolBarItems"
  #define ROOTNODE_ADDONMENU                              OUString("Office.Addons" )
  #define PATHDELIMITER                                   OUString("/"             )
+#define TOOLBARITEMS                                    OUString(STR_TOOLBARITEMS)
  #define SEPARATOR_URL_STR                               "private:separator"
  #define SEPARATOR_URL                                   OUString( SEPARATOR_URL_STR )

@@ -62,6 +64,7 @@ using namespace ::com::sun::star;
  #define PROPERTYNAME_SUBMENU                            ADDONSMENUITEM_PROPERTYNAME_SUBMENU
  #define PROPERTYNAME_CONTROLTYPE                        ADDONSMENUITEM_PROPERTYNAME_CONTROLTYPE
  #define PROPERTYNAME_WIDTH                              ADDONSMENUITEM_PROPERTYNAME_WIDTH
+#define PROPERTYNAME_TOOLBARITEMS                       TOOLBARITEMS

  #define PROPERTYNAME_ALIGN                              STATUSBARITEM_PROPERTYNAME_ALIGN
  #define PROPERTYNAME_AUTOSIZE                           STATUSBARITEM_PROPERTYNAME_AUTOSIZE
@@ -92,7 +95,7 @@ using namespace ::com::sun::star;
  #define PROPERTYNAME_MERGETOOLBAR_MERGECOMMANDPARAMETER OUString("MergeCommandParameter" )
  #define PROPERTYNAME_MERGETOOLBAR_MERGEFALLBACK         OUString("MergeFallback" )
  #define PROPERTYNAME_MERGETOOLBAR_MERGECONTEXT          OUString("MergeContext" )
-#define PROPERTYNAME_MERGETOOLBAR_TOOLBARITEMS          OUString("ToolBarItems" )
+#define PROPERTYNAME_MERGETOOLBAR_TOOLBARITEMS          OUString(STR_TOOLBARITEMS)

  #define PROPERTYNAME_MERGESTATUSBAR_MERGEPOINT               
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("MergePoint" ))
  #define PROPERTYNAME_MERGESTATUSBAR_MERGECOMMAND             
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("MergeCommand" ))
@@ -113,7 +116,8 @@ using namespace ::com::sun::star;
  #define INDEX_ALIGN             8
  #define INDEX_AUTOSIZE          9
  #define INDEX_OWNERDRAW         10
-#define PROPERTYCOUNT_INDEX     11
+#define INDEX_TOOLBARITEMS      11
+#define PROPERTYCOUNT_INDEX     12

  // The following order is mandatory. Please add properties at the end!
  #define PROPERTYCOUNT_MENUITEM                          6
@@ -132,6 +136,11 @@ using namespace ::com::sun::star;
  #define OFFSET_POPUPMENU_URL                            3   // Used for property set

  // The following order is mandatory. Please add properties at the end!
+#define PROPERTYCOUNT_TOOLBAR                           2
+#define OFFSET_TOOLBAR_TITLE                            0
+#define OFFSET_TOOLBAR_TOOLBARITEMS                     1
+
+// The following order is mandatory. Please add properties at the end!
  #define PROPERTYCOUNT_TOOLBARITEM                       7
  #define OFFSET_TOOLBARITEM_URL                          0
  #define OFFSET_TOOLBARITEM_TITLE                        1
@@ -277,6 +286,7 @@ class AddonsOptions_Impl : public ConfigItem
          const Sequence< Sequence< PropertyValue > >&    GetAddonsMenuBarPart () const ;
          const Sequence< Sequence< PropertyValue > >&    GetAddonsToolBarPart ( sal_uInt32 nIndex 
) const ;
          const OUString                           GetAddonsToolbarResourceName( sal_uInt32 nIndex 
) const;
+        const OUString                           GetAddonsToolbarUIName( sal_uInt32 nIndex ) const;
          const Sequence< Sequence< PropertyValue > >&    GetAddonsHelpMenu    () const ;
          Image                                           GetImageFromURL( const OUString& aURL, 
sal_Bool bBig, sal_Bool bNoScale ) const;
          const MergeMenuInstructionContainer&            GetMergeMenuInstructions() const;
@@ -325,7 +335,9 @@ class AddonsOptions_Impl : public ConfigItem

          sal_Bool             ReadAddonMenuSet( Sequence< Sequence< PropertyValue > >& 
aAddonMenuSeq );
          sal_Bool             ReadOfficeMenuBarSet( Sequence< Sequence< PropertyValue > >& 
aAddonOfficeMenuBarSeq );
-        sal_Bool             ReadOfficeToolBarSet( AddonToolBars& rAddonOfficeToolBars, std::vector< 
OUString >& rAddonOfficeToolBarResNames );
+        sal_Bool             ReadOfficeToolBarSet( AddonToolBars& rAddonOfficeToolBars,
+                                                   std::vector< OUString >& 
rAddonOfficeToolBarResNames,
+                                                   std::vector< OUString >& 
rAddonOfficeToolBarUINames );
          sal_Bool             ReadToolBarItemSet( const OUString rToolBarItemSetNodeName, Sequence< 
Sequence< PropertyValue > >& aAddonOfficeToolBarSeq );
          sal_Bool             ReadOfficeHelpSet( Sequence< Sequence< PropertyValue > >& 
aAddonOfficeHelpMenuSeq );
          sal_Bool             ReadImages( ImageManager& aImageManager );
@@ -354,6 +366,7 @@ class AddonsOptions_Impl : public ConfigItem

          Sequence< OUString > GetPropertyNamesMenuItem( const OUString& aPropertyRootNode ) const;
          Sequence< OUString > GetPropertyNamesPopupMenu( const OUString& aPropertyRootNode ) const;
+        Sequence< OUString > GetPropertyNamesToolBar( const OUString& aPropertyRootNode ) const;
          Sequence< OUString > GetPropertyNamesToolBarItem( const OUString& aPropertyRootNode ) 
const;
          Sequence< OUString > GetPropertyNamesStatusbarItem( const ::rtl::OUString& 
aPropertyRootNode ) const;
          Sequence< OUString > GetPropertyNamesImages( const OUString& aPropertyRootNode ) const;
@@ -381,6 +394,7 @@ class AddonsOptions_Impl : public ConfigItem
          Sequence< Sequence< PropertyValue > >             m_aCachedMenuBarPartProperties;
          AddonToolBars                                     m_aCachedToolBarPartProperties;
          std::vector< OUString >                      m_aCachedToolBarPartResourceNames;
+        std::vector< OUString >                      m_aCachedToolBarPartUINames;
          Sequence< Sequence< PropertyValue > >             m_aCachedHelpMenuProperties;
          Reference< util::XMacroExpander >                 m_xMacroExpander;
          ImageManager                                      m_aImageManager;
@@ -414,6 +428,7 @@ AddonsOptions_Impl::AddonsOptions_Impl()
      m_aPropNames[ INDEX_ALIGN           ] = PROPERTYNAME_ALIGN;
      m_aPropNames[ INDEX_AUTOSIZE        ] = PROPERTYNAME_AUTOSIZE;
      m_aPropNames[ INDEX_OWNERDRAW       ] = PROPERTYNAME_OWNERDRAW;
+    m_aPropNames[ INDEX_TOOLBARITEMS    ] = PROPERTYNAME_TOOLBARITEMS;

      // initialize array with fixed images property names
      m_aPropImagesNames[ OFFSET_IMAGES_SMALL         ] = PROPERTYNAME_IMAGESMALL;
@@ -481,11 +496,14 @@ void AddonsOptions_Impl::ReadConfigurationData()
      m_aCachedToolBarPartProperties = AddonToolBars();
      m_aCachedHelpMenuProperties = Sequence< Sequence< PropertyValue > >();
      m_aCachedToolBarPartResourceNames.clear();
+    m_aCachedToolBarPartUINames.clear();
      m_aImageManager = ImageManager();

      ReadAddonMenuSet( m_aCachedMenuProperties );
      ReadOfficeMenuBarSet( m_aCachedMenuBarPartProperties );
-    ReadOfficeToolBarSet( m_aCachedToolBarPartProperties, m_aCachedToolBarPartResourceNames );
+    ReadOfficeToolBarSet( m_aCachedToolBarPartProperties,
+                          m_aCachedToolBarPartResourceNames,
+                          m_aCachedToolBarPartUINames );

      ReadOfficeHelpSet( m_aCachedHelpMenuProperties );
      ReadImages( m_aImageManager );
@@ -569,6 +587,15 @@ const OUString AddonsOptions_Impl::GetAddonsToolbarResourceName( sal_uInt32 
nInd
          return OUString();
  }

+
+const ::rtl::OUString AddonsOptions_Impl::GetAddonsToolbarUIName( sal_uInt32 nIndex ) const
+{
+    if ( nIndex < m_aCachedToolBarPartUINames.size() )
+        return m_aCachedToolBarPartUINames[nIndex];
+    else
+        return rtl::OUString();
+}
+
  
//*****************************************************************************************************************
  //  public method
  
//*****************************************************************************************************************
@@ -763,7 +790,10 @@ sal_Bool AddonsOptions_Impl::ReadOfficeMenuBarSet( Sequence< Sequence< 
PropertyV
  
//*****************************************************************************************************************
  //  private method
  
//*****************************************************************************************************************
-sal_Bool AddonsOptions_Impl::ReadOfficeToolBarSet( AddonToolBars& rAddonOfficeToolBars, std::vector< 
OUString >& rAddonOfficeToolBarResNames )
+sal_Bool AddonsOptions_Impl::ReadOfficeToolBarSet(
+    AddonToolBars& rAddonOfficeToolBars,
+    std::vector< OUString >& rAddonOfficeToolBarResNames,
+    std::vector< OUString >& rAddonOfficeToolBarUINames )
  {
      // Read the OfficeToolBar set and fill property sequences
      OUString             aAddonToolBarNodeName( "AddonUI/OfficeToolBar" );
@@ -774,10 +804,24 @@ sal_Bool AddonsOptions_Impl::ReadOfficeToolBarSet( AddonToolBars& 
rAddonOfficeTo

      for ( sal_uInt32 n = 0; n < nCount; n++ )
      {
-        OUString aToolBarItemNode( aAddonToolBarNode + aAddonToolBarNodeSeq[n] );
+        OUString aToolBarNode( aAddonToolBarNode + aAddonToolBarNodeSeq[n] + m_aPathDelimiter );
          rAddonOfficeToolBarResNames.push_back( aAddonToolBarNodeSeq[n] );
          rAddonOfficeToolBars.push_back( m_aEmptyAddonToolBar );
-        ReadToolBarItemSet( aToolBarItemNode, rAddonOfficeToolBars[n] );
+
+        Sequence< Any > aToolBarNodeValues = GetProperties( GetPropertyNamesToolBar( aToolBarNode 
) );
+
+        rtl::OUString aUIName;
+        aToolBarNodeValues[OFFSET_TOOLBAR_TITLE] >>= aUIName;
+        rAddonOfficeToolBarUINames.push_back( aUIName );
+
+        Reference < XInterface > xToolbarItems;
+        if ( ( aToolBarNodeValues[OFFSET_TOOLBAR_TOOLBARITEMS] >>= xToolbarItems ) && 
xToolbarItems.is() )
+        {
+            ::rtl::OUStringBuffer aBuffer;
+            aBuffer.append( aToolBarNode );
+            aBuffer.appendAscii( RTL_CONSTASCII_STRINGPARAM( STR_TOOLBARITEMS ) );
+            ReadToolBarItemSet( aBuffer.makeStringAndClear(), rAddonOfficeToolBars[n] );
+        }
      }

      return ( !rAddonOfficeToolBars.empty() );
@@ -1715,6 +1759,17 @@ Sequence< OUString > AddonsOptions_Impl::GetPropertyNamesPopupMenu( const 
OUStri
  
//*****************************************************************************************************************
  //  private method
  
//*****************************************************************************************************************
+Sequence< OUString > AddonsOptions_Impl::GetPropertyNamesToolBar( const OUString& 
aPropertyRootNode ) const
+{
+    Sequence< ::rtl::OUString > lResult( PROPERTYCOUNT_TOOLBAR );
+
+    // Create property names dependent from the root node name
+    lResult[OFFSET_TOOLBAR_TITLE]        = ::rtl::OUString( aPropertyRootNode + m_aPropNames[ 
INDEX_TITLE ] );
+    lResult[OFFSET_TOOLBAR_TOOLBARITEMS] = ::rtl::OUString( aPropertyRootNode + m_aPropNames[ 
INDEX_TOOLBARITEMS ] );
+
+    return lResult;
+}
+
  Sequence< OUString > AddonsOptions_Impl::GetPropertyNamesToolBarItem( const OUString& 
aPropertyRootNode ) const
  {
      Sequence< OUString > lResult( PROPERTYCOUNT_TOOLBARITEM );
@@ -1864,6 +1919,12 @@ const OUString AddonsOptions::GetAddonsToolbarResourceName( sal_uInt32 
nIndex )
      return m_pDataContainer->GetAddonsToolbarResourceName( nIndex );
  }

+const ::rtl::OUString AddonsOptions::GetAddonsToolbarUIName( sal_uInt32 nIndex ) const
+{
+    MutexGuard aGuard( GetOwnStaticMutex() );
+    return m_pDataContainer->GetAddonsToolbarUIName( nIndex );
+}
+
  
//*****************************************************************************************************************
  //  public method
  
//*****************************************************************************************************************
diff --git a/framework/source/layoutmanager/toolbarlayoutmanager.cxx 
b/framework/source/layoutmanager/toolbarlayoutmanager.cxx
index b590ddd..ebc5459 100644
--- a/framework/source/layoutmanager/toolbarlayoutmanager.cxx
+++ b/framework/source/layoutmanager/toolbarlayoutmanager.cxx
@@ -1031,7 +1031,8 @@ void ToolbarLayoutManager::implts_createAddonsToolBars()
                  }

                  OUString aAddonUIName = m_pAddonOptions->GetAddonsToolbarUIName( i );
-                OUString aAddonTitle = aAddonUIName.getLength() ?
+                const bool bAddonUIName = aAddonUIName.getLength();
+                OUString aAddonTitle = bAddonUIName ?
                      aAddonUIName : implts_generateGenericAddonToolbarTitle( i+1 );

                  if ( !aElement.m_aName.isEmpty() )
@@ -1040,7 +1041,7 @@ void ToolbarLayoutManager::implts_createAddonsToolBars()
                      // UI changes for this document.
                      implts_setElementData( aElement, xDockWindow );
                      aElement.m_xUIElement = xUIElement;
-                    if ( aElement.m_aUIName.isEmpty() )
+                    if ( aElement.m_aUIName.isEmpty() && !bAddonUIName)
                      {
                          aElement.m_aUIName = aAddonTitle;
                          implts_writeWindowStateData( aElement );
@@ -1053,7 +1054,7 @@ void ToolbarLayoutManager::implts_createAddonsToolBars()
                      aNewToolbar.m_bFloating = true;
                      implts_readWindowStateData( aAddonToolBarName, aNewToolbar );
                      implts_setElementData( aNewToolbar, xDockWindow );
-                    if ( aNewToolbar.m_aUIName.isEmpty() )
+                    if ( aNewToolbar.m_aUIName.isEmpty() && !bAddonUIName)
                      {
                          aNewToolbar.m_aUIName = aAddonTitle;
                          implts_writeWindowStateData( aNewToolbar );
diff --git a/include/framework/addonsoptions.hxx b/include/framework/addonsoptions.hxx
index 0a926b8..b441aea 100644
--- a/include/framework/addonsoptions.hxx
+++ b/include/framework/addonsoptions.hxx
@@ -282,6 +282,13 @@ class FWE_DLLPUBLIC AddonsOptions
          
*//*-*****************************************************************************************************/
          bool GetMergeToolbarInstructions( const OUString& rToolbarName, 
MergeToolbarInstructionContainer& rToolbar ) const;

+        /**
+         *  @short      Gets the UI name of a single addon toolbar
+         *  @return     The UI name of the toolbar as specified in the Addons.xcu configuration
+         *  @onerror    Returns an empty string
+         */
+        const ::rtl::OUString GetAddonsToolbarUIName( sal_uInt32 nIndex ) const;
+
          
/*-****************************************************************************************************//**
              @short      Gets the Add-On help menu part of all addon components registered
              @descr      -
diff --git a/officecfg/registry/schema/org/openoffice/Office/Addons.xcs 
b/officecfg/registry/schema/org/openoffice/Office/Addons.xcs
index ee78884..90d33d4 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Addons.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Addons.xcs
@@ -152,6 +152,22 @@
          </info>
        </set>
      </group>
+    <group oor:name="ToolBar">
+      <info>
+        <desc>Contains the structure of a toolbar.</desc>
+      </info>
+      <prop oor:name="Title" oor:type="xs:string" oor:localized="true">
+        <info>
+          <desc>A localized string used as the toolbar title.</desc>
+        </info>
+        <value></value>
+      </prop>
+      <set oor:name="ToolBarItems" oor:node-type="ToolBarItem">
+        <info>
+          <desc>Contains a list of sets of toolbar items that are part of add-on toolbars.</desc>
+        </info>
+      </set>
+    </group>
      <group oor:name="ToolBarItem">
        <info>
          <desc>Describes a toolbar item representing a function of of an external component. The name 
must be unique and should be written using a package-scheme like org.openoffice.external.applicationexecuter to 
minimize name clashes.</desc>
From 37762faf9fbb09fb11a0420f3384cbaffaa146fe Mon Sep 17 00:00:00 2001
From: Stephan Bergmann <sbergman@redhat.com>
Date: Tue, 23 Jul 2013 19:01:41 +0200
Subject: [PATCH] API CHANGE: Fix broken merge of Addons.xcs

...from 85f072ef33ef47b5e3e0bcd51acb5c4179cde2c2 "Resolves: #i121577# Allow
setting toolbar name in Addons.xcu."  However, these changes for i#121577
introduce an incompatibility that means toolbars from old extensions no longer
work (while without this fix toolbars from adapted extensions would not work,
either).

Change-Id: Ief80ce951072b81fb08e1dad9fc5547926346a87
---
 .../registry/data/org/openoffice/Office/Addons.xcu | 292 +++++++++++----------
 .../schema/org/openoffice/Office/Addons.xcs        |   2 +-
 2 files changed, 148 insertions(+), 146 deletions(-)

diff --git a/officecfg/registry/data/org/openoffice/Office/Addons.xcu 
b/officecfg/registry/data/org/openoffice/Office/Addons.xcu
index b01deb9..6ecc827 100644
--- a/officecfg/registry/data/org/openoffice/Office/Addons.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/Addons.xcu
@@ -11,151 +11,153 @@
   <node oor:name="AddonUI" install:module="librelogo">
     <node oor:name="OfficeToolBar">
       <node oor:name="LibreLogo.OfficeToolBar" oor:op="replace">
-        <node oor:name="m01" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$goforward?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Forward</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-        </node>
-        <node oor:name="m02" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$gobackward?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Back</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-        </node>
-        <node oor:name="m03" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$left?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Left</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-        </node>
-        <node oor:name="m04" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$right?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Right</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-        </node>
-        <node oor:name="m05" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$run?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Start Logo program (text or selected text of the 
document)</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-        </node>
-        <node oor:name="m06" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$stop?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Stop</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-        </node>
-        <node oor:name="m07" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$home?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Home</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-        </node>
-        <node oor:name="m08" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$clearscreen?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Clear screen</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-        </node>
-        <node oor:name="m09" oor:op="replace">
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$commandline?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Logo command line (press Enter for command execution or F1 for 
help)</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="ControlType" oor:type="xs:string">
-            <value>Editfield</value>
-          </prop>
-          <prop oor:name="Width" oor:type="xs:long">
-            <value>300</value>
-          </prop>
-        </node>
-        <node oor:name="m10" oor:op="replace">
-          <prop oor:name="Context" oor:type="xs:string">
-            <value>com.sun.star.text.TextDocument</value>
-          </prop>
-          <prop oor:name="URL" oor:type="xs:string">
-            
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$__translate__?language=Python&amp;location=share</value>
-          </prop>
-          <prop oor:name="Title" oor:type="xs:string">
-            <value xml:lang="en-US">Uppercase commands, also translate them to the language of the 
document</value>
-          </prop>
-          <prop oor:name="Target" oor:type="xs:string">
-            <value>_self</value>
-          </prop>
+        <node oor:name="ToolBarItems">
+          <node oor:name="m01" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$goforward?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Forward</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
+          <node oor:name="m02" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$gobackward?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Back</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
+          <node oor:name="m03" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$left?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Left</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
+          <node oor:name="m04" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$right?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Right</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
+          <node oor:name="m05" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$run?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Start Logo program (text or selected text of the 
document)</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
+          <node oor:name="m06" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$stop?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Stop</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
+          <node oor:name="m07" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$home?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Home</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
+          <node oor:name="m08" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$clearscreen?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Clear screen</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
+          <node oor:name="m09" oor:op="replace">
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$commandline?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Logo command line (press Enter for command execution or F1 
for help)</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="ControlType" oor:type="xs:string">
+              <value>Editfield</value>
+            </prop>
+            <prop oor:name="Width" oor:type="xs:long">
+              <value>300</value>
+            </prop>
+          </node>
+          <node oor:name="m10" oor:op="replace">
+            <prop oor:name="Context" oor:type="xs:string">
+              <value>com.sun.star.text.TextDocument</value>
+            </prop>
+            <prop oor:name="URL" oor:type="xs:string">
+              
<value>vnd.sun.star.script:LibreLogo|LibreLogo.py$__translate__?language=Python&amp;location=share</value>
+            </prop>
+            <prop oor:name="Title" oor:type="xs:string">
+              <value xml:lang="en-US">Uppercase commands, also translate them to the language of 
the document</value>
+            </prop>
+            <prop oor:name="Target" oor:type="xs:string">
+              <value>_self</value>
+            </prop>
+          </node>
         </node>
       </node>
     </node>
diff --git a/officecfg/registry/schema/org/openoffice/Office/Addons.xcs 
b/officecfg/registry/schema/org/openoffice/Office/Addons.xcs
index 90d33d4..a347538 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Addons.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Addons.xcs
@@ -411,7 +411,7 @@
           <desc>Contains a list of menu merging instructions of different add-ons.</desc>
         </info>
       </set>
-      <set oor:name="OfficeToolBar" oor:node-type="ToolBarItems">
+      <set oor:name="OfficeToolBar" oor:node-type="ToolBar">
         <info>
           <desc>Contains a list of sets of toolbar items that are part of add-on toolbars.</desc>
         </info>
-- 
1.8.1.4


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.