[Libreoffice-commits] core.git: Branch 'feature/formula-core-rework' - 58 commits - basctl/source basic/source chart2/source configure.ac connectivity/Library_jdbc.mk connectivity/Library_kab1.mk connectivity/Library_macab1.mk connectivity/Library_mork.mk connectivity/Library_sdbc2.mk dbaccess/source extensions/Library_log.mk extensions/source filter/source framework/inc framework/Library_fwk.mk framework/Library_fwl.mk framework/source framework/util helpcontent2 icon-themes/galaxy include/framework include/oox include/sal include/sfx2 include/svtools include/toolkit include/tools include/vcl mdds/0001-Avoid-crash-when-_GLIBCXX_DEBUG-is-defined.patch mdds/UnpackedTarball_mdds.mk odk/Package_autodoc.mk offapi/com offapi/type_reference offapi/UnoApi_offapi.mk officecfg/registry oox/source reportdesign/source sc/CppunitTest_sc_filters_test.mk sc/inc scp2/CustomTarget_langmacros.mk scp2/macros scripting/source sc/source sc/util sdext/source sd/source sd/util sfx2/source svtools/source svx/so urce sw/qa sw/source toolkit/source tools/source translations ucb/Library_ucpext.mk vcl/generic vcl/source writerfilter/qa writerfilter/source xmlscript/Library_xmlscript.mk xmlscript/test xmlsecurity/workben

Kohei Yoshida kohei.yoshida at gmail.com
Tue May 21 13:00:12 PDT 2013


 basctl/source/basicide/baside3.cxx                                                 |   50 -
 basctl/source/basicide/basides3.cxx                                                |   10 
 basctl/source/basicide/moduldlg.cxx                                                |   35 -
 basctl/source/basicide/scriptdocument.cxx                                          |   26 -
 basctl/source/dlged/dlged.cxx                                                      |  180 +++---
 basctl/source/dlged/dlgedfac.cxx                                                   |   12 
 basic/source/classes/eventatt.cxx                                                  |   32 -
 basic/source/runtime/methods1.cxx                                                  |    2 
 basic/source/uno/dlgcont.cxx                                                       |   14 
 chart2/source/controller/chartapiwrapper/TitleWrapper.cxx                          |   10 
 chart2/source/controller/chartapiwrapper/TitleWrapper.hxx                          |    4 
 chart2/source/controller/chartapiwrapper/WrappedAxisAndGridExistenceProperties.cxx |    2 
 chart2/source/controller/dialogs/ObjectNameProvider.cxx                            |    2 
 chart2/source/controller/dialogs/TitleDialogData.cxx                               |    8 
 chart2/source/controller/main/ChartController_TextEdit.cxx                         |    2 
 chart2/source/inc/TitleHelper.hxx                                                  |   10 
 chart2/source/model/inc/Diagram.hxx                                                |    6 
 chart2/source/model/main/Axis.cxx                                                  |    8 
 chart2/source/model/main/Axis.hxx                                                  |    6 
 chart2/source/model/main/ChartModel.cxx                                            |    6 
 chart2/source/model/main/ChartModel.hxx                                            |    6 
 chart2/source/model/main/Diagram.cxx                                               |    8 
 chart2/source/model/main/Title.cxx                                                 |   34 +
 chart2/source/model/main/Title.hxx                                                 |   48 +
 chart2/source/tools/ObjectIdentifier.cxx                                           |    2 
 chart2/source/tools/TitleHelper.cxx                                                |  125 ++--
 chart2/source/view/main/ChartView.cxx                                              |    2 
 configure.ac                                                                       |    2 
 connectivity/Library_jdbc.mk                                                       |    1 
 connectivity/Library_kab1.mk                                                       |    1 
 connectivity/Library_macab1.mk                                                     |    1 
 connectivity/Library_mork.mk                                                       |    1 
 connectivity/Library_sdbc2.mk                                                      |    1 
 dbaccess/source/ext/macromigration/migrationengine.cxx                             |    3 
 dbaccess/source/ui/dlg/generalpage.cxx                                             |   10 
 dev/null                                                                           |binary
 extensions/Library_log.mk                                                          |    1 
 extensions/source/update/check/updatehdl.cxx                                       |   45 -
 filter/source/pdf/impdialog.cxx                                                    |    4 
 filter/source/pdf/impdialog.hxx                                                    |    6 
 filter/source/pdf/pdfdialog.cxx                                                    |    2 
 filter/source/t602/t602filter.cxx                                                  |   68 --
 framework/Library_fwk.mk                                                           |    3 
 framework/Library_fwl.mk                                                           |    3 
 framework/inc/classes/resource.hrc                                                 |    4 
 framework/inc/services.h                                                           |    3 
 framework/inc/uielement/genericstatusbarcontroller.hxx                             |   57 ++
 framework/inc/uielement/langselectionstatusbarcontroller.hxx                       |   22 
 framework/inc/uielement/logoimagestatusbarcontroller.hxx                           |   82 ---
 framework/inc/uielement/logotextstatusbarcontroller.hxx                            |   82 ---
 framework/inc/uielement/menubarmanager.hxx                                         |   10 
 framework/inc/uielement/simpletextstatusbarcontroller.hxx                          |   84 ---
 framework/inc/uielement/statusbaritem.hxx                                          |   79 +++
 framework/inc/uielement/statusbarmanager.hxx                                       |    5 
 framework/inc/uielement/statusbarmerger.hxx                                        |   81 +++
 framework/source/classes/resource.src                                              |   11 
 framework/source/fwe/classes/addonsoptions.cxx                                     |  236 ++++++++-
 framework/source/layoutmanager/layoutmanager.cxx                                   |    2 
 framework/source/register/registerservices.cxx                                     |    1 
 framework/source/register/registertemp.cxx                                         |    6 
 framework/source/uielement/genericstatusbarcontroller.cxx                          |  163 ++++++
 framework/source/uielement/generictoolbarcontroller.cxx                            |    2 
 framework/source/uielement/langselectionstatusbarcontroller.cxx                    |  176 +-----
 framework/source/uielement/logoimagestatusbarcontroller.cxx                        |  167 ------
 framework/source/uielement/logotextstatusbarcontroller.cxx                         |  170 ------
 framework/source/uielement/menubarmanager.cxx                                      |   67 +-
 framework/source/uielement/menubarwrapper.cxx                                      |    2 
 framework/source/uielement/simpletextstatusbarcontroller.cxx                       |  186 -------
 framework/source/uielement/statusbaritem.cxx                                       |  257 +++++++++
 framework/source/uielement/statusbarmanager.cxx                                    |  248 +++++++--
 framework/source/uielement/statusbarmerger.cxx                                     |  258 ++++++++++
 framework/source/uielement/toolbarmerger.cxx                                       |   50 -
 framework/util/fwl.component                                                       |    9 
 helpcontent2                                                                       |    2 
 icon-themes/galaxy/svx/res/symphony/_.png                                          |binary
 include/framework/addonsoptions.hxx                                                |   22 
 include/oox/core/filterbase.hxx                                                    |    4 
 include/oox/drawingml/chart/converterbase.hxx                                      |    4 
 include/sal/log-areas.dox                                                          |    3 
 include/sfx2/stbitem.hxx                                                           |    8 
 include/svtools/statusbarcontroller.hxx                                            |   15 
 include/toolkit/awt/vclxgraphics.hxx                                               |   80 +--
 include/toolkit/controls/dialogcontrol.hxx                                         |  231 ++++++++
 include/tools/diagnose_ex.h                                                        |   45 -
 include/vcl/status.hxx                                                             |   15 
 mdds/0001-Avoid-crash-when-_GLIBCXX_DEBUG-is-defined.patch                         |   31 +
 mdds/UnpackedTarball_mdds.mk                                                       |    1 
 odk/Package_autodoc.mk                                                             |    1 
 offapi/UnoApi_offapi.mk                                                            |   30 -
 offapi/com/sun/star/awt/ImageDrawMode.idl                                          |   55 ++
 offapi/com/sun/star/awt/UnoControlDialog.idl                                       |   20 
 offapi/com/sun/star/awt/UnoControlDialogModel.idl                                  |  122 ----
 offapi/com/sun/star/awt/XGraphics.idl                                              |   44 -
 offapi/com/sun/star/awt/XGraphics2.idl                                             |   79 +++
 offapi/com/sun/star/awt/XUnoControlDialog.idl                                      |   58 ++
 offapi/com/sun/star/awt/XUnoControlDialogModel.idl                                 |  169 ++++++
 offapi/com/sun/star/chart2/ExponentialRegressionCurve.idl                          |   38 +
 offapi/com/sun/star/chart2/ExponentialScaling.idl                                  |    7 
 offapi/com/sun/star/chart2/LinearRegressionCurve.idl                               |   38 +
 offapi/com/sun/star/chart2/LinearScaling.idl                                       |    7 
 offapi/com/sun/star/chart2/LogarithmicRegressionCurve.idl                          |   38 +
 offapi/com/sun/star/chart2/LogarithmicScaling.idl                                  |    7 
 offapi/com/sun/star/chart2/PotentialRegressionCurve.idl                            |   38 +
 offapi/com/sun/star/chart2/PowerScaling.idl                                        |    7 
 offapi/com/sun/star/chart2/Scaling.idl                                             |    7 
 offapi/com/sun/star/chart2/Title.idl                                               |   63 --
 offapi/com/sun/star/chart2/XTitle2.idl                                             |   86 +++
 offapi/com/sun/star/chart2/XTitled.idl                                             |    6 
 offapi/com/sun/star/frame/StatusbarController.idl                                  |   72 --
 offapi/com/sun/star/frame/XStatusbarController.idl                                 |   82 ++-
 offapi/com/sun/star/oox/ExcelFilterExport.idl                                      |   37 +
 offapi/com/sun/star/oox/PowerPointExport.idl                                       |   37 +
 offapi/com/sun/star/resource/XStringResourceManager.idl                            |    2 
 offapi/com/sun/star/resource/XStringResourceResolver.idl                           |    2 
 offapi/com/sun/star/ui/XStatusbarItem.idl                                          |  111 ++++
 offapi/type_reference/offapi.rdb                                                   |binary
 officecfg/registry/data/org/openoffice/Office/UI/Controller.xcu                    |   22 
 officecfg/registry/schema/org/openoffice/Office/Addons.xcs                         |  107 ++++
 oox/source/core/filterbase.cxx                                                     |   11 
 oox/source/core/xmlfilterbase.cxx                                                  |   14 
 oox/source/drawingml/chart/axisconverter.cxx                                       |   13 
 oox/source/drawingml/chart/converterbase.cxx                                       |   15 
 oox/source/drawingml/chart/titleconverter.cxx                                      |    4 
 oox/source/export/shapes.cxx                                                       |    5 
 oox/source/ppt/pptimport.cxx                                                       |   30 -
 oox/source/ppt/timenode.cxx                                                        |    2 
 reportdesign/source/ui/inc/DataProviderHandler.hxx                                 |    2 
 reportdesign/source/ui/inc/statusbarcontroller.hxx                                 |   15 
 reportdesign/source/ui/inspection/DataProviderHandler.cxx                          |   29 -
 reportdesign/source/ui/misc/statusbarcontroller.cxx                                |   64 +-
 sc/CppunitTest_sc_filters_test.mk                                                  |    1 
 sc/inc/document.hxx                                                                |    4 
 sc/source/core/data/columniterator.cxx                                             |    4 
 sc/source/core/data/documen2.cxx                                                   |    1 
 sc/source/core/data/documen6.cxx                                                   |    2 
 sc/source/core/data/documen8.cxx                                                   |    2 
 sc/source/core/data/dpobject.cxx                                                   |    4 
 sc/source/core/data/poolhelp.cxx                                                   |    2 
 sc/source/core/data/table3.cxx                                                     |    2 
 sc/source/filter/excel/xechart.cxx                                                 |   10 
 sc/source/filter/excel/xestream.cxx                                                |    9 
 sc/source/filter/excel/xestyle.cxx                                                 |    4 
 sc/source/filter/excel/xichart.cxx                                                 |   75 +-
 sc/source/filter/inc/xichart.hxx                                                   |    7 
 sc/source/filter/inc/xlchart.hxx                                                   |    7 
 sc/source/filter/oox/excelfilter.cxx                                               |   21 
 sc/source/filter/xml/xmlimprt.cxx                                                  |    4 
 sc/source/ui/docshell/docsh.cxx                                                    |    2 
 sc/source/ui/docshell/docsh2.cxx                                                   |    2 
 sc/source/ui/docshell/impex.cxx                                                    |   12 
 sc/source/ui/drawfunc/fuconstr.cxx                                                 |    7 
 sc/source/ui/unoobj/forbiuno.cxx                                                   |    2 
 sc/source/ui/xmlsource/xmlsourcedlg.cxx                                            |    6 
 sc/util/scfilt.component                                                           |    2 
 scp2/CustomTarget_langmacros.mk                                                    |    1 
 scp2/macros/macro.pl                                                               |   12 
 scripting/source/dlgprov/DialogModelProvider.cxx                                   |    9 
 scripting/source/dlgprov/DialogModelProvider.hxx                                   |    7 
 scripting/source/dlgprov/dlgprov.cxx                                               |  109 +---
 scripting/source/dlgprov/dlgprov.hxx                                               |   32 -
 sd/source/filter/eppt/pptx-epptooxml.cxx                                           |    5 
 sd/util/sdfilt.component                                                           |    1 
 sdext/source/minimizer/informationdialog.cxx                                       |   31 -
 sdext/source/minimizer/optimizerdialog.cxx                                         |   35 -
 sdext/source/minimizer/unodialog.cxx                                               |   78 +--
 sdext/source/minimizer/unodialog.hxx                                               |   20 
 sfx2/source/bastyp/fltfnc.cxx                                                      |   10 
 sfx2/source/doc/guisaveas.cxx                                                      |   18 
 sfx2/source/doc/objxtor.cxx                                                        |    7 
 sfx2/source/statbar/stbitem.cxx                                                    |    7 
 svtools/source/uno/statusbarcontroller.cxx                                         |   73 +-
 svx/source/core/graphichelper.cxx                                                  |   26 -
 svx/source/form/fmservs.cxx                                                        |   56 --
 svx/source/sidebar/nbdtmg.cxx                                                      |   14 
 sw/qa/extras/rtfimport/data/n818997.rtf                                            |   77 ++
 sw/qa/extras/rtfimport/rtfimport.cxx                                               |    8 
 sw/source/filter/ww8/docxexport.cxx                                                |   22 
 sw/source/filter/ww8/docxexport.hxx                                                |    1 
 toolkit/source/awt/vclxgraphics.cxx                                                |  173 +++++-
 toolkit/source/controls/dialogcontrol.cxx                                          |   62 ++
 tools/source/debug/debug.cxx                                                       |   49 +
 translations                                                                       |    2 
 ucb/Library_ucpext.mk                                                              |    1 
 vcl/generic/fontmanager/fontconfig.cxx                                             |   14 
 vcl/source/gdi/impimagetree.cxx                                                    |   65 --
 vcl/source/window/status.cxx                                                       |  175 ++++++
 writerfilter/qa/cppunittests/doctok/testdoctok.cxx                                 |   18 
 writerfilter/source/dmapper/DomainMapper.cxx                                       |   13 
 writerfilter/source/dmapper/DomainMapper_Impl.cxx                                  |   15 
 writerfilter/source/dmapper/DomainMapper_Impl.hxx                                  |    1 
 writerfilter/source/rtftok/rtfdocumentimpl.cxx                                     |    4 
 writerfilter/source/rtftok/rtfdocumentimpl.hxx                                     |    2 
 xmlscript/Library_xmlscript.mk                                                     |    1 
 xmlscript/test/imexp.cxx                                                           |   31 -
 xmlsecurity/workben/signaturetest.cxx                                              |    2 
 195 files changed, 4184 insertions(+), 2674 deletions(-)

New commits:
commit 9c26159130518a6397889e2e538b6481c938111f
Author: Kohei Yoshida <kohei.yoshida at gmail.com>
Date:   Tue May 21 16:01:06 2013 -0400

    Try not to crash in mdds when _GLIBCXX_DEBUG is defined.
    
    Change-Id: Id3a5ca97129177cae27cc38ec044f4fa62f08477

diff --git a/mdds/0001-Avoid-crash-when-_GLIBCXX_DEBUG-is-defined.patch b/mdds/0001-Avoid-crash-when-_GLIBCXX_DEBUG-is-defined.patch
new file mode 100644
index 0000000..acddb8b
--- /dev/null
+++ b/mdds/0001-Avoid-crash-when-_GLIBCXX_DEBUG-is-defined.patch
@@ -0,0 +1,31 @@
+From e77d3ba18a2fd53488048b78264be011db5423f6 Mon Sep 17 00:00:00 2001
+From: Kohei Yoshida <kohei.yoshida at gmail.com>
+Date: Tue, 21 May 2013 15:38:51 -0400
+Subject: [PATCH] Avoid crash when _GLIBCXX_DEBUG is defined.
+
+I'm not sure why gcc's STL debug complains when swapping two iterators
+when one of them is a singular, but doesn't when I assign one to the
+other via assignment. But whichever works....
+---
+ include/mdds/multi_type_vector_itr.hpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/include/mdds/multi_type_vector_itr.hpp b/include/mdds/multi_type_vector_itr.hpp
+index a7954d2..7923a22 100644
+--- a/b/include/mdds/multi_type_vector_itr.hpp
++++ u/r/screwed/include/mdds/multi_type_vector_itr.hpp
+@@ -216,8 +216,9 @@ public:
+ 
+     iterator_common_base& operator= (const iterator_common_base& other)
+     {
+-        iterator_common_base assigned(other);
+-        swap(assigned);
++        m_cur_node = other.m_cur_node;
++        m_pos = other.m_pos;
++        m_end = other.m_end;
+         return *this;
+     }
+ 
+-- 
+1.8.0
+
diff --git a/mdds/UnpackedTarball_mdds.mk b/mdds/UnpackedTarball_mdds.mk
index b33bc1b..1891f29 100644
--- a/mdds/UnpackedTarball_mdds.mk
+++ b/mdds/UnpackedTarball_mdds.mk
@@ -17,6 +17,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,mdds,\
 	mdds/mdds_0.6.0.patch \
 	mdds/0001-Workaround-for-gcc-bug.patch \
 	mdds/mdds_0.7.0_unreachable_warning.patch.1 \
+	mdds/0001-Avoid-crash-when-_GLIBCXX_DEBUG-is-defined.patch \
 ))
 
 # vim: set noet sw=4 ts=4:
commit dd0b079c9298331a090e3690a85321781d16ed3c
Author: Adam Co <rattles2013 at gmail.com>
Date:   Tue May 21 16:48:56 2013 +0300

    fdo#64826: fix for exporting to DOCX that didnt save track 'changes state'
    
    Change-Id: If5b3198769a08cc751d542f8305fd7f41c73ec26
    Reviewed-on: https://gerrit.libreoffice.org/3991
    Reviewed-by: Fridrich Strba <fridrich at documentfoundation.org>
    Tested-by: Fridrich Strba <fridrich at documentfoundation.org>

diff --git a/sw/source/filter/ww8/docxexport.cxx b/sw/source/filter/ww8/docxexport.cxx
index 9840c45..ca46cae 100644
--- a/sw/source/filter/ww8/docxexport.cxx
+++ b/sw/source/filter/ww8/docxexport.cxx
@@ -686,18 +686,33 @@ void DocxExport::WriteSettings()
     // Zoom
     OString aZoom(OString::valueOf(sal_Int32(pViewShell->GetViewOptions()->GetZoom())));
     pFS->singleElementNS(XML_w, XML_zoom, FSNS(XML_w, XML_percent), aZoom.getStr(), FSEND);
+
+    // Track Changes
+    if ( settings.trackRevisions )
+        pFS->singleElementNS( XML_w, XML_trackRevisions, FSEND );
+
+    // Embed Fonts
     if( pDoc->get( IDocumentSettingAccess::EMBED_FONTS ))
         pFS->singleElementNS( XML_w, XML_embedTrueTypeFonts, FSEND );
+
+    // Embed System Fonts
     if( pDoc->get( IDocumentSettingAccess::EMBED_SYSTEM_FONTS ))
         pFS->singleElementNS( XML_w, XML_embedSystemFonts, FSEND );
+
+    // Default Tab Stop
     if( settings.defaultTabStop != 0 )
         pFS->singleElementNS( XML_w, XML_defaultTabStop, FSNS( XML_w, XML_val ),
             OString::valueOf( sal_Int32( settings.defaultTabStop )).getStr(), FSEND );
+
+    // Even and Odd Headers
     if( settings.evenAndOddHeaders )
         pFS->singleElementNS( XML_w, XML_evenAndOddHeaders, FSEND );
 
+    // Has Footnotes
     if( m_pAttrOutput->HasFootnotes())
         m_pAttrOutput->WriteFootnoteEndnotePr( pFS, XML_footnotePr, pDoc->GetFtnInfo(), XML_footnote );
+
+    // Has Endnotes
     if( m_pAttrOutput->HasEndnotes())
         m_pAttrOutput->WriteFootnoteEndnotePr( pFS, XML_endnotePr, pDoc->GetEndNoteInfo(), XML_endnote );
 
@@ -809,6 +824,9 @@ DocxExport::DocxExport( DocxExportFilter *pFilter, SwDoc *pDocument, SwPaM *pCur
       m_nFooters( 0 ),
       m_pVMLExport( NULL )
 {
+    // Set the 'Track Revisions' flag in the settings structure
+    settings.trackRevisions = 0 != ( nsRedlineMode_t::REDLINE_ON & mnRedlineMode );
+
     // Write the document properies
     WriteProperties( );
 
@@ -840,6 +858,7 @@ DocxExport::~DocxExport()
 DocxSettingsData::DocxSettingsData()
 : evenAndOddHeaders( false )
 , defaultTabStop( 0 )
+, trackRevisions( false )
 {
 }
 
@@ -849,6 +868,9 @@ bool DocxSettingsData::hasData() const
         return true;
     if( defaultTabStop != 0 )
         return true;
+    if ( trackRevisions )
+        return true;
+
     return false;
 }
 
diff --git a/sw/source/filter/ww8/docxexport.hxx b/sw/source/filter/ww8/docxexport.hxx
index 16bf73e..2348349 100644
--- a/sw/source/filter/ww8/docxexport.hxx
+++ b/sw/source/filter/ww8/docxexport.hxx
@@ -54,6 +54,7 @@ struct DocxSettingsData
     bool hasData() const; /// returns true if there are any non-default settings (i.e. something to write)
     bool evenAndOddHeaders;
     int defaultTabStop;
+    bool trackRevisions;    // Should 'Track Revisions' be set
 };
 
 /// The class that does all the actual DOCX export-related work.
commit 3d77112ceb6b49b0bba00832cd75d9a03ee8af26
Author: Marcos Paulo de Souza <marcos.souza.org at gmail.com>
Date:   Tue May 21 10:49:27 2013 -0300

    Remove dead log-area
    
    The nullcanvas was removed in 1cd9b5d859a6468164b043b0fcaaf49c1907500c
    
    Change-Id: I2d718d1a18bb405e72b198ced548fc7cb885c6d7
    Reviewed-on: https://gerrit.libreoffice.org/3992
    Reviewed-by: Tor Lillqvist <tml at iki.fi>
    Tested-by: Tor Lillqvist <tml at iki.fi>

diff --git a/include/sal/log-areas.dox b/include/sal/log-areas.dox
index 90eeecd..6db37e5 100644
--- a/include/sal/log-areas.dox
+++ b/include/sal/log-areas.dox
@@ -42,7 +42,6 @@ certain functionality.
 
 @li @c canvas
 @li @c canvas.cairo
- at li @c canvas.null
 @li @c canvas.vcl
 
 @section chart2
commit 8ab7e0dd4e1b238db28de6abe5434d91a5bf32ff
Author: Petr Mladek <pmladek at suse.cz>
Date:   Tue May 21 13:36:57 2013 +0200

    Updated core
    Project: translations  66306b922014c7941665d67e1310a88e3e85f99d

diff --git a/translations b/translations
index 6148d02..66306b9 160000
--- a/translations
+++ b/translations
@@ -1 +1 @@
-Subproject commit 6148d0296697632af52c5e39787cd09c2a748fd7
+Subproject commit 66306b922014c7941665d67e1310a88e3e85f99d
commit 2b4b867304a666b8d412fd6ff0f88519a3db753b
Author: Tor Lillqvist <tml at iki.fi>
Date:   Tue May 21 16:49:04 2013 +0300

    WaE: unused variables
    
    Change-Id: Ib46ec040c4adc5bdab3c5219157ae60582604c63

diff --git a/svx/source/sidebar/nbdtmg.cxx b/svx/source/sidebar/nbdtmg.cxx
index e88c9f5..0976150 100644
--- a/svx/source/sidebar/nbdtmg.cxx
+++ b/svx/source/sidebar/nbdtmg.cxx
@@ -302,7 +302,7 @@ BulletsTypeMgr::BulletsTypeMgr(const BulletsTypeMgr& aTypeMgr):
 void BulletsTypeMgr::Init()
 {
     Font& rActBulletFont = lcl_GetDefaultBulletFont();
-    String sName = rActBulletFont.GetName();
+
     if( Application::GetSettings().GetLayoutRTL() )
     {
         for (sal_uInt16 i=0;i<DEFAULT_BULLET_TYPES;i++)
@@ -679,7 +679,6 @@ sal_Bool GraphyicBulletsTypeMgr::RelplaceNumRule(SvxNumRule& aNum,sal_uInt16 nIn
     else
         return sal_False;
 
-    String sEmpty;
     if ( pGrf )
     {
         const String* pGrfName = pBrsh->GetGraphicLink();
@@ -988,14 +987,12 @@ sal_uInt16 MixBulletsTypeMgr::GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16
     if( eNumType == SVX_NUM_CHAR_SPECIAL)
     {
         sal_Unicode cChar = aFmt.GetBulletChar();
-        const Font* pFont = aFmt.GetBulletFont();
-        String sName = pFont?pFont->GetName():String();
+        // const Font* pFont = aFmt.GetBulletFont();
 
         for(sal_uInt16 i = nFromIndex; i < DEFAULT_BULLET_TYPES; i++)
         {
             if ( pActualBullets[i]->eType == eNBType::BULLETS )
             {
-                String ssName = ((BulletsSettings_Impl*)(pActualBullets[i]->pBullets))->aFont.GetName();
                 if ( (cChar == ((BulletsSettings_Impl*)(pActualBullets[i]->pBullets))->cBulletChar||
                     (cChar == 9830 && 57356 == ((BulletsSettings_Impl*)(pActualBullets[i]->pBullets))->cBulletChar) ||
                     (cChar == 9632 && 57354 == ((BulletsSettings_Impl*)(pActualBullets[i]->pBullets))->cBulletChar)))//&&
@@ -1161,7 +1158,6 @@ sal_Bool MixBulletsTypeMgr::RelplaceNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,s
             else
                 return sal_False;
 
-            String sEmpty;
             const String* pGrfName = 0;
             if ( pGrf )
             {
@@ -1498,7 +1494,6 @@ sal_uInt16 NumberingTypeMgr::GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16 m
     //sal_Unicode cSuffix = rtl::OUString(aFmt.GetSuffix()).getStr()[0];
     String sPreFix = aFmt.GetPrefix();
     String sLclSuffix = aFmt.GetSuffix();
-    String sEmpty;
     sal_Int16 eNumType = aFmt.GetNumberingType();
 
     sal_uInt16 nCount = pNumberSettingsArr->size();
@@ -1757,14 +1752,13 @@ sal_uInt16 OutlineTypeMgr::GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16 /*m
             SvxNumberFormat aFmt(aNum.GetLevel(iLevel));
             String sPreFix = aFmt.GetPrefix();
             String sLclSuffix = aFmt.GetSuffix();
-            String sEmpty;
                 sal_Int16 eNumType = aFmt.GetNumberingType();
                 if( eNumType == SVX_NUM_CHAR_SPECIAL)
             {
                 sal_Unicode cChar = aFmt.GetBulletChar();
                 //const Font* pFont = aFmt.GetBulletFont();
                 sal_Unicode ccChar = _pSet->sBulletChar.getStr()[0];
-                rtl::OUString sFont = _pSet->sBulletFont;
+                // rtl::OUString sFont = _pSet->sBulletFont;
                 if ( !((cChar == ccChar) && //pFont && sFont.compareTo(pFont->GetName()) &&
                     _pSet->eLabelFollowedBy == aFmt.GetLabelFollowedBy() &&
                     _pSet->nTabValue == aFmt.GetListtabPos() &&
commit 61493e499f44821405c10c4347038bde16a9072c
Author: Tor Lillqvist <tml at iki.fi>
Date:   Tue May 21 16:46:10 2013 +0300

    Fix warning: statement aligned as second statement in if body ... [loplugin]
    
    Change-Id: Ic3ef17414cbae5fea5a62d61d33e64727603d058

diff --git a/svx/source/sidebar/nbdtmg.cxx b/svx/source/sidebar/nbdtmg.cxx
index 2acc98d..e88c9f5 100644
--- a/svx/source/sidebar/nbdtmg.cxx
+++ b/svx/source/sidebar/nbdtmg.cxx
@@ -1953,7 +1953,7 @@ sal_Bool OutlineTypeMgr::ApplyNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uIn
                          aFmt.SetBulletFont( &aCreateFont );
                         }
             }else
-            aFmt.SetBulletFont( &rActBulletFont );
+                aFmt.SetBulletFont( &rActBulletFont );
 
             sal_Unicode cChar = 0;
             if( pLevelSettings->sBulletChar.getLength() )
commit ff72e05c9f99ab694685536a2d05558021b14b14
Author: Tor Lillqvist <tml at iki.fi>
Date:   Tue May 21 16:28:58 2013 +0300

    WaE: 'AddonStatusbarItemData' struct/class confusion
    
    Change-Id: I20b0b17dffe98ec27b686e0adfe8aaf6e10068ab

diff --git a/framework/inc/uielement/genericstatusbarcontroller.hxx b/framework/inc/uielement/genericstatusbarcontroller.hxx
index 3f73df8..bc4a71d 100644
--- a/framework/inc/uielement/genericstatusbarcontroller.hxx
+++ b/framework/inc/uielement/genericstatusbarcontroller.hxx
@@ -25,7 +25,7 @@
 namespace framework
 {
 
-class AddonStatusbarItemData;
+struct AddonStatusbarItemData;
 
 class GenericStatusbarController : public svt::StatusbarController
 {
commit 0dfa58bdd9bd2ee12fe00674e7a9a1b55939a84b
Author: Tor Lillqvist <tml at iki.fi>
Date:   Tue May 21 16:24:42 2013 +0300

    Add tl for DbgUnhandledException()
    
    Change-Id: I612f0e473280342f4e406ebee7002a40622fbbf0

diff --git a/connectivity/Library_macab1.mk b/connectivity/Library_macab1.mk
index 8c33fda..263d0b1 100644
--- a/connectivity/Library_macab1.mk
+++ b/connectivity/Library_macab1.mk
@@ -23,6 +23,7 @@ $(eval $(call gb_Library_use_libraries,macab1,\
 	dbtools \
 	sal \
 	salhelper \
+	tl \
 ))
 
 $(eval $(call gb_Library_set_include,macab1,\
commit a43c99589fcd01aaacb50a7aabca8c46a8479519
Author: Tor Lillqvist <tml at iki.fi>
Date:   Tue May 21 16:18:55 2013 +0300

    Add "canvas.vcl"
    
    Change-Id: I761217ac3791b631c58ccead73b7c45818db0589

diff --git a/include/sal/log-areas.dox b/include/sal/log-areas.dox
index e23c414..90eeecd 100644
--- a/include/sal/log-areas.dox
+++ b/include/sal/log-areas.dox
@@ -43,6 +43,7 @@ certain functionality.
 @li @c canvas
 @li @c canvas.cairo
 @li @c canvas.null
+ at li @c canvas.vcl
 
 @section chart2
 
commit b40fe8e5a5037d2745cc7b1c9cc408ce6c79b9d9
Author: Miklos Vajna <vmiklos at suse.cz>
Date:   Tue May 21 14:56:45 2013 +0200

    bnc#818997 RTF import: don't ignore page breaks between shapes
    
    Change-Id: Ief71ba9a3c60356714e73d08e88d0a3105b17b1a

diff --git a/sw/qa/extras/rtfimport/data/n818997.rtf b/sw/qa/extras/rtfimport/data/n818997.rtf
new file mode 100644
index 0000000..2ce4404
--- /dev/null
+++ b/sw/qa/extras/rtfimport/data/n818997.rtf
@@ -0,0 +1,77 @@
+{\rtf 
+{\shp 
+{\*\shpinst\shpleft2310\shpright6060\shptop8685\shpbottom8985\shpbxpage
+\shpbypage\shpwr3\shpz2 
+{\sp 
+{\sn shapeType}
+{\sv 202}
+}
+{\sp 
+{\sn dxTextLeft}
+{\sv 
+0}
+}
+{\sp 
+{\sn dxTextRight}
+{\sv 0}
+}
+{\sp 
+{\sn dyTextTop}
+{\sv 0}
+}
+{\sp 
+{\sn 
+dyTextBottom}
+{\sv 0}
+}
+{\sp 
+{\sn fLine}
+{\sv 0}
+}
+{\shptxt\plain\pard\f29\fs24 
+On first page.\par}
+{\sp 
+{\sn fFilled}
+{\sv 0}
+}
+}
+}
+\page
+{\shp 
+{\*\shpinst\shpleft4800\shpright8025\shptop780\shpbottom1080\shpbxpage
+\shpbypage\shpwr3\shpz2 
+{\sp 
+{\sn shapeType}
+{\sv 202}
+}
+{\sp 
+{\sn dxTextLeft}
+{\sv 
+0}
+}
+{\sp 
+{\sn dxTextRight}
+{\sv 0}
+}
+{\sp 
+{\sn dyTextTop}
+{\sv 0}
+}
+{\sp 
+{\sn 
+dyTextBottom}
+{\sv 0}
+}
+{\sp 
+{\sn fLine}
+{\sv 0}
+}
+{\shptxt\plain\pard\f29\fs24\b 
+On second page.\par}
+{\sp 
+{\sn fFilled}
+{\sv 0}
+}
+}
+}
+}
diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx
index d2ccfba..c0ceabc 100644
--- a/sw/qa/extras/rtfimport/rtfimport.cxx
+++ b/sw/qa/extras/rtfimport/rtfimport.cxx
@@ -135,6 +135,7 @@ public:
     void testFdo63023();
     void testFdo42109();
     void testFdo62977();
+    void testN818997();
 
     CPPUNIT_TEST_SUITE(Test);
 #if !defined(MACOSX) && !defined(WNT)
@@ -259,6 +260,7 @@ void Test::run()
         {"fdo63023.rtf", &Test::testFdo63023},
         {"fdo42109.rtf", &Test::testFdo42109},
         {"fdo62977.rtf", &Test::testFdo62977},
+        {"n818997.rtf", &Test::testN818997},
     };
     header();
     for (unsigned int i = 0; i < SAL_N_ELEMENTS(aMethods); ++i)
@@ -1232,6 +1234,12 @@ void Test::testFdo62977()
     getRun(getParagraph(1), 1, OUString("\xE5\xB9\xB4\xEF\xBC\x94\xE6\x9C\x88", 9, RTL_TEXTENCODING_UTF8));
 }
 
+void Test::testN818997()
+{
+    // \page was ignored between two \shp tokens.
+    CPPUNIT_ASSERT_EQUAL(2, getPages());
+}
+
 CPPUNIT_TEST_SUITE_REGISTRATION(Test);
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index 9de2fa6..10a018a 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -3486,6 +3486,19 @@ void DomainMapper::lcl_startShape( uno::Reference< drawing::XShape > xShape )
 {
     if (m_pImpl->GetTopContext())
     {
+        // If there is a deferred page break, handle it now, so that the
+        // started shape will be on the correct page.
+        if (m_pImpl->isBreakDeferred(PAGE_BREAK))
+        {
+            m_pImpl->clearDeferredBreak(PAGE_BREAK);
+            lcl_startCharacterGroup();
+            sal_uInt8 sBreak[] = { 0xd };
+            lcl_text(sBreak, 1);
+            lcl_endCharacterGroup();
+            lcl_endParagraphGroup();
+            lcl_startParagraphGroup();
+            m_pImpl->GetTopContext()->Insert(PROP_BREAK_TYPE, true, uno::makeAny( com::sun::star::style::BreakType_PAGE_BEFORE));
+        }
         m_pImpl->PushShapeContext( xShape );
         lcl_startParagraphGroup();
     }
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index c05750c..fa6b36d 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -644,6 +644,21 @@ bool DomainMapper_Impl::isBreakDeferred( BreakType deferredBreakType )
     }
 }
 
+void DomainMapper_Impl::clearDeferredBreak(BreakType deferredBreakType)
+{
+    switch (deferredBreakType)
+    {
+    case COLUMN_BREAK:
+        m_bIsColumnBreakDeferred = false;
+        break;
+    case PAGE_BREAK:
+        m_bIsPageBreakDeferred = false;
+        break;
+    default:
+        break;
+    }
+}
+
 void DomainMapper_Impl::clearDeferredBreaks()
 {
     m_bIsColumnBreakDeferred = false;
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.hxx b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
index 60faa83..b7da3a9 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.hxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
@@ -445,6 +445,7 @@ public:
     void deferBreak( BreakType deferredBreakType );
     bool isBreakDeferred( BreakType deferredBreakType );
     void clearDeferredBreaks();
+    void clearDeferredBreak(BreakType deferredBreakType);
     void finishParagraph( PropertyMapPtr pPropertyMap );
     void appendTextPortion( const OUString& rString, PropertyMapPtr pPropertyMap );
     void appendTextContent( const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent >,
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 9943d74..a5e3f75 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -230,6 +230,7 @@ RTFDocumentImpl::RTFDocumentImpl(uno::Reference<uno::XComponentContext> const& x
     m_bFirstRun(true),
     m_bNeedPap(true),
     m_bNeedCr(false),
+    m_bNeedCrOrig(false),
     m_bNeedPar(true),
     m_bNeedFinalPar(false),
     m_aListTableSprms(),
@@ -1317,6 +1318,7 @@ int RTFDocumentImpl::dispatchDestination(RTFKeyword nKeyword)
             m_aStates.top().nDestinationState = DESTINATION_SHAPEPROPERTYVALUE;
             break;
         case RTF_SHP:
+            m_bNeedCrOrig = m_bNeedCr;
             m_aStates.top().nDestinationState = DESTINATION_SHAPE;
             break;
         case RTF_SHPINST:
@@ -1937,6 +1939,7 @@ int RTFDocumentImpl::dispatchSymbol(RTFKeyword nKeyword)
                     Mapper().text(sBreak, 1);
                     if (!m_bNeedPap)
                         parBreak();
+                    m_bNeedCr = true;
                 }
             }
             break;
@@ -4134,6 +4137,7 @@ int RTFDocumentImpl::popState()
             }
             break;
         case DESTINATION_SHAPE:
+            m_bNeedCr = m_bNeedCrOrig;
             if (aState.aFrame.inFrame())
             {
                 // parBreak modify m_aStates.top() so we can't apply resetFrame directly on aState
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
index 163413b..d6216f4 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
@@ -516,6 +516,8 @@ namespace writerfilter {
                 bool m_bNeedPap;
                 /// If we need to emit a CR at the end of substream.
                 bool m_bNeedCr;
+                /// Original value of m_bNeedCr -- saved/restored before/after textframes.
+                bool m_bNeedCrOrig;
                 bool m_bNeedPar;
                 /// If set, an empty paragraph will be added at the end of the document.
                 bool m_bNeedFinalPar;
commit 2304089b4b7205fbcbc66762368e9781051ef27b
Author: Tor Lillqvist <tml at iki.fi>
Date:   Tue May 21 16:07:23 2013 +0300

    Also plain "tools" is used as a sal logging area
    
    Change-Id: I98a578f3934fda9ed49c31d1a1d171d4b6f6ed91

diff --git a/include/sal/log-areas.dox b/include/sal/log-areas.dox
index bee62d6..e23c414 100644
--- a/include/sal/log-areas.dox
+++ b/include/sal/log-areas.dox
@@ -222,6 +222,7 @@ certain functionality.
 
 @section tools
 
+ at li @c tools
 @li @c tools.debug
 @li @c tools.datetime
 @li @c tools.generic
commit f59d23fedc89890f47eac3b05f54bdcb7325f7af
Author: Ariel Constenla-Haile <arielch at apache.org>
Date:   Fri Dec 7 04:19:15 2012 +0000

    Remove unused commented code
    
    (cherry picked from commit d8933b9c61e3e15f788f43043975f48d9d5b6cfd)
    
    Change-Id: I9856e1f26f9467c281ebaabe3d520e4fa59163c4

diff --git a/framework/source/uielement/statusbarmerger.cxx b/framework/source/uielement/statusbarmerger.cxx
index b0e9624..098c621 100644
--- a/framework/source/uielement/statusbarmerger.cxx
+++ b/framework/source/uielement/statusbarmerger.cxx
@@ -168,17 +168,6 @@ static bool lcl_RemoveItems( StatusBar* pStatusbar,
     return true;
 }
 
-/*
-static ::cppu::OWeakObject* CreateController(
-    ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xSMGR,
-    ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame > xFrame,
-    StatusBar* pStatusbar,
-    const ::rtl::OUString& rCommandURL,
-    sal_uInt16 nId,
-    sal_uInt16 nWidth,
-    const ::rtl::OUString& rControlType );
-
-*/
 }
 
 bool StatusbarMerger::IsCorrectContext(
commit 3f0dbd2cbe17f276ac3b2445ac76ff0cafc260c6
Author: Ariel Constenla-Haile <arielch at apache.org>
Date:   Fri Dec 7 04:14:25 2012 +0000

    Fix build breaker: missing css::uno::XInterface include
    
    (cherry picked from commit 9a421d5c9c0fd4f04c08c10e24275255fdf34f83)
    
    Change-Id: I27c4602a5144fddb18190698d0928b9b96af8a9b

diff --git a/offapi/com/sun/star/ui/XStatusbarItem.idl b/offapi/com/sun/star/ui/XStatusbarItem.idl
index 182af2f..5bb6791 100644
--- a/offapi/com/sun/star/ui/XStatusbarItem.idl
+++ b/offapi/com/sun/star/ui/XStatusbarItem.idl
@@ -18,6 +18,7 @@
 #ifndef __com_sun_star_ui_XStatusbarItem_idl__
 #define __com_sun_star_ui_XStatusbarItem_idl__
 
+#include <com/sun/star/uno/XInterface.idl>
 #include <com/sun/star/awt/Rectangle.idl>
 
 module com {  module sun {  module star {  module ui {
commit 4fcda14828d2fa65cc2541ed3e3cb93dd7bc9ac8
Author: Ariel Constenla-Haile <arielch at apache.org>
Date:   Thu Dec 6 12:30:14 2012 +0000

    Related: #i121442# Remove unused UNO StatusbarControllers
    
    (cherry picked from commit 06b91eb4cc81dde86875445c5acaa5c57111333b)
    
    Conflicts:
    	framework/inc/uielement/logoimagestatusbarcontroller.hxx
    	framework/inc/uielement/logotextstatusbarcontroller.hxx
    	framework/inc/uielement/simpletextstatusbarcontroller.hxx
    	framework/source/classes/resource.src
    	framework/source/register/registerservices.cxx
    	framework/source/uielement/logoimagestatusbarcontroller.cxx
    	framework/source/uielement/logotextstatusbarcontroller.cxx
    	framework/source/uielement/simpletextstatusbarcontroller.cxx
    	officecfg/registry/data/org/openoffice/Office/UI/Controller.xcu
    
    Change-Id: I799bd0fa29191efce4fe9a09f74247e38d8f8873

diff --git a/framework/Library_fwl.mk b/framework/Library_fwl.mk
index fb8b385..afcb77c 100644
--- a/framework/Library_fwl.mk
+++ b/framework/Library_fwl.mk
@@ -66,12 +66,9 @@ $(eval $(call gb_Library_add_exception_objects,fwl,\
     framework/source/uielement/footermenucontroller \
     framework/source/uielement/headermenucontroller \
     framework/source/uielement/langselectionmenucontroller \
-    framework/source/uielement/logoimagestatusbarcontroller \
-    framework/source/uielement/logotextstatusbarcontroller \
     framework/source/uielement/macrosmenucontroller \
     framework/source/uielement/newmenucontroller \
     framework/source/uielement/popupmenucontroller \
-    framework/source/uielement/simpletextstatusbarcontroller \
     framework/source/uielement/toolbarsmenucontroller \
 ))
 
diff --git a/framework/inc/classes/resource.hrc b/framework/inc/classes/resource.hrc
index 8d1d236..673e90d 100644
--- a/framework/inc/classes/resource.hrc
+++ b/framework/inc/classes/resource.hrc
@@ -33,7 +33,7 @@
 #define STR_SAVECOPYDOC                         (RID_STR_START+5)
 #define STR_NODOCUMENT                          (RID_STR_START+6)
 #define STR_TOOLBAR_TITLE_ADDON                 (RID_STR_START+7)
-#define STR_STATUSBAR_LOGOTEXT                  (RID_STR_START+8)
+
 #define STR_FULL_DISC_RETRY_BUTTON              (RID_STR_START+9)  // used by AuotSave to show error state: full disc
 #define STR_FULL_DISC_MSG                       (RID_STR_START+10) // used by AuotSave to show error state: full disc
 #define STR_RESTORE_TOOLBARS                    (RID_STR_START+11)
@@ -60,8 +60,6 @@
 #define MENUITEM_TOOLBAR_LOCKTOOLBARPOSITION    5
 #define MENUITEM_TOOLBAR_CLOSE                  6
 
-#define RID_IMAGE_STATUSBAR_LOGO                (RID_IMAGE_START+0)
-
 // License Dialog
 #define DLG_LICENSE                             (RID_FWK_DIALOG_START+256)
 #define ML_LICENSE                              (RID_FWK_DIALOG_START+11)
diff --git a/framework/inc/services.h b/framework/inc/services.h
index cda8d13..cd3eb2b 100644
--- a/framework/inc/services.h
+++ b/framework/inc/services.h
@@ -108,13 +108,10 @@ namespace framework{
 #define IMPLEMENTATIONNAME_SESSIONLISTENER                      DECLARE_ASCII("com.sun.star.comp.frame.SessionListener"             )
 #define IMPLEMENTATIONNAME_HELPONSTARTUP                        DECLARE_ASCII("com.sun.star.comp.framework.HelpOnStartup"           )
 #define IMPLEMENTATIONNAME_SHELLJOB                             DECLARE_ASCII("com.sun.star.comp.framework.ShellJob"                )
-#define IMPLEMENTATIONNAME_LOGOIMAGESTATUSBARCONTROLLER         DECLARE_ASCII("com.sun.star.comp.framework.LogoImageStatusbarController" )
-#define IMPLEMENTATIONNAME_LOGOTEXTSTATUSBARCONTROLLER          DECLARE_ASCII("com.sun.star.comp.framework.LogoTextStatusbarController" )
 #define IMPLEMENTATIONNAME_FWK_TASKCREATOR                      DECLARE_ASCII("com.sun.star.comp.framework.TaskCreator"                 )
 #define IMPLEMENTATIONNAME_TABWINFACTORY                        DECLARE_ASCII("com.sun.star.comp.framework.TabWindowFactory"        )
 #define IMPLEMENTATIONNAME_TABWINDOW                            DECLARE_ASCII("com.sun.star.comp.framework.TabWindow"               )
 #define IMPLEMENTATIONNAME_SYSTEMEXEC                           DECLARE_ASCII("com.sun.star.comp.framework.SystemExecute"           )
-#define IMPLEMENTATIONNAME_SIMPLETEXTSTATUSBARCONTROLLER        DECLARE_ASCII("com.sun.star.comp.framework.SimpleTextStatusbarController" )
 #define IMPLEMENTATIONNAME_URIABBREVIATION                      DECLARE_ASCII("com.sun.star.comp.framework.UriAbbreviation"         )
 #define IMPLEMENTATIONNAME_POPUPMENUDISPATCHER                  DECLARE_ASCII("com.sun.star.comp.framework.PopupMenuControllerDispatcher" )
 #define IMPLEMENTATIONNAME_LANGSELECTIONSTATUSBARCONTROLLER     DECLARE_ASCII("com.sun.star.comp.framework.LangSelectionStatusbarController"  )
diff --git a/framework/inc/uielement/logoimagestatusbarcontroller.hxx b/framework/inc/uielement/logoimagestatusbarcontroller.hxx
deleted file mode 100644
index 3492c8a..0000000
--- a/framework/inc/uielement/logoimagestatusbarcontroller.hxx
+++ /dev/null
@@ -1,82 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * 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 .
- */
-
-#ifndef __FRAMEWORK_UIELEMENT_LOGOIMAGESTATUSBARCONTROLLER_HXX_
-#define __FRAMEWORK_UIELEMENT_LOGOIMAGESTATUSBARCONTROLLER_HXX_
-
-#include <macros/generic.hxx>
-#include <macros/xinterface.hxx>
-#include <macros/xtypeprovider.hxx>
-#include <macros/xserviceinfo.hxx>
-#include <stdtypes.h>
-#include <svtools/statusbarcontroller.hxx>
-#include <vcl/image.hxx>
-
-namespace framework
-{
-
-class LogoImageStatusbarController : public svt::StatusbarController
-{
-    public:
-        LogoImageStatusbarController( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
-        virtual ~LogoImageStatusbarController();
-
-        // XServiceInfo
-        DECLARE_XSERVICEINFO
-
-        // XInterface
-        virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL acquire() throw ();
-        virtual void SAL_CALL release() throw ();
-
-        // XInitialization
-        virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
-
-        // XComponent
-        virtual void SAL_CALL dispose() throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XEventListener
-        virtual void SAL_CALL disposing( const com::sun::star::lang::EventObject& Source ) throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XStatusListener
-        virtual void SAL_CALL statusChanged( const ::com::sun::star::frame::FeatureStateEvent& Event ) throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XStatusbarController
-        virtual ::sal_Bool SAL_CALL mouseButtonDown( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual ::sal_Bool SAL_CALL mouseMove( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual ::sal_Bool SAL_CALL mouseButtonUp( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL command( const ::com::sun::star::awt::Point& aPos,
-                                       ::sal_Int32 nCommand,
-                                       ::sal_Bool bMouseEvent,
-                                       const ::com::sun::star::uno::Any& aData ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL paint( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
-                                     const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-                                     ::sal_Int32 nItemId, ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL click() throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL doubleClick() throw (::com::sun::star::uno::RuntimeException);
-
-    private:
-        Image   m_aLogoImage;
-};
-
-}
-
-#endif // __FRAMEWORK_UIELEMENT_LOGOIMAGESTATUSBARCONTROLLER_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/inc/uielement/logotextstatusbarcontroller.hxx b/framework/inc/uielement/logotextstatusbarcontroller.hxx
deleted file mode 100644
index 4b52656..0000000
--- a/framework/inc/uielement/logotextstatusbarcontroller.hxx
+++ /dev/null
@@ -1,82 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * 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 .
- */
-
-#ifndef __FRAMEWORK_UIELEMENT_LOGOTEXTSTATUSBARCONTROLLER_HXX_
-#define __FRAMEWORK_UIELEMENT_LOGOTEXTSTATUSBARCONTROLLER_HXX_
-
-#include <macros/generic.hxx>
-#include <macros/xinterface.hxx>
-#include <macros/xtypeprovider.hxx>
-#include <macros/xserviceinfo.hxx>
-#include <stdtypes.h>
-#include <svtools/statusbarcontroller.hxx>
-#include <vcl/image.hxx>
-
-namespace framework
-{
-
-class LogoTextStatusbarController : public svt::StatusbarController
-{
-    public:
-        LogoTextStatusbarController( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
-        virtual ~LogoTextStatusbarController();
-
-        // XServiceInfo
-        DECLARE_XSERVICEINFO
-
-        // XInterface
-        virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL acquire() throw ();
-        virtual void SAL_CALL release() throw ();
-
-        // XInitialization
-        virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
-
-        // XComponent
-        virtual void SAL_CALL dispose() throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XEventListener
-        virtual void SAL_CALL disposing( const com::sun::star::lang::EventObject& Source ) throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XStatusListener
-        virtual void SAL_CALL statusChanged( const ::com::sun::star::frame::FeatureStateEvent& Event ) throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XStatusbarController
-        virtual ::sal_Bool SAL_CALL mouseButtonDown( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual ::sal_Bool SAL_CALL mouseMove( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual ::sal_Bool SAL_CALL mouseButtonUp( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL command( const ::com::sun::star::awt::Point& aPos,
-                                       ::sal_Int32 nCommand,
-                                       ::sal_Bool bMouseEvent,
-                                       const ::com::sun::star::uno::Any& aData ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL paint( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
-                                     const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-                                     ::sal_Int32 nItemId, ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL click() throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL doubleClick() throw (::com::sun::star::uno::RuntimeException);
-
-    private:
-        OUString   m_aLogoText;
-};
-
-}
-
-#endif // __FRAMEWORK_UIELEMENT_LOGOTEXTSTATUSBARCONTROLLER_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/inc/uielement/simpletextstatusbarcontroller.hxx b/framework/inc/uielement/simpletextstatusbarcontroller.hxx
deleted file mode 100644
index a40d122..0000000
--- a/framework/inc/uielement/simpletextstatusbarcontroller.hxx
+++ /dev/null
@@ -1,84 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * 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 .
- */
-
-#ifndef __FRAMEWORK_UIELEMENT_SIMPLETEXTSTATUSBARCONTROLLER_HXX_
-#define __FRAMEWORK_UIELEMENT_SIMPLETEXTSTATUSBARCONTROLLER_HXX_
-
-#include <macros/generic.hxx>
-#include <macros/xinterface.hxx>
-#include <macros/xtypeprovider.hxx>
-#include <macros/xserviceinfo.hxx>
-#include <stdtypes.h>
-
-#include <boost/unordered_map.hpp>
-#include <svtools/statusbarcontroller.hxx>
-#include <vcl/image.hxx>
-
-namespace framework
-{
-
-class SimpleTextStatusbarController : public svt::StatusbarController
-{
-    public:
-        SimpleTextStatusbarController( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
-        virtual ~SimpleTextStatusbarController();
-
-        // XServiceInfo
-        DECLARE_XSERVICEINFO
-
-        // XInterface
-        virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL acquire() throw ();
-        virtual void SAL_CALL release() throw ();
-
-        // XInitialization
-        virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
-
-        // XComponent
-        virtual void SAL_CALL dispose() throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XEventListener
-        virtual void SAL_CALL disposing( const com::sun::star::lang::EventObject& Source ) throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XStatusListener
-        virtual void SAL_CALL statusChanged( const ::com::sun::star::frame::FeatureStateEvent& Event ) throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XStatusbarController
-        virtual ::sal_Bool SAL_CALL mouseButtonDown( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual ::sal_Bool SAL_CALL mouseMove( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual ::sal_Bool SAL_CALL mouseButtonUp( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL command( const ::com::sun::star::awt::Point& aPos,
-                                       ::sal_Int32 nCommand,
-                                       ::sal_Bool bMouseEvent,
-                                       const ::com::sun::star::uno::Any& aData ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL paint( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
-                                     const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-                                     ::sal_Int32 nItemId, ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL click() throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL doubleClick() throw (::com::sun::star::uno::RuntimeException);
-
-    private:
-        OUString   m_aText;
-};
-
-}
-
-#endif // __FRAMEWORK_UIELEMENT_SIMPLETEXTSTATUSBARCONTROLLER_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/source/classes/resource.src b/framework/source/classes/resource.src
index 24874e5..8b1587a 100644
--- a/framework/source/classes/resource.src
+++ b/framework/source/classes/resource.src
@@ -119,11 +119,6 @@ String STR_TOOLBAR_TITLE_ADDON
     Text [ en-US ] = "Add-On %num%";
 };
 
-String STR_STATUSBAR_LOGOTEXT
-{
-    Text [ en-US ] = "A %PRODUCTNAME product by %OOOVENDOR";
-};
-
 // ***********************************************************************
 //       License Dialog
 // ***********************************************************************
@@ -273,12 +268,6 @@ ModalDialog DLG_LICENSE
 
 };
 
-Image RID_IMAGE_STATUSBAR_LOGO
-{
-    ImageBitmap = Bitmap { File = "logo.png" ; };
-    MaskColor = Color { Red = 0xFFFF; Green = 0x0000; Blue = 0xFFFF; };
-};
-
 String STR_FULL_DISC_RETRY_BUTTON
 {
     Text [ en-US ] = "Retry" ;
diff --git a/framework/source/register/registerservices.cxx b/framework/source/register/registerservices.cxx
index 33ce118..8d9c058 100644
--- a/framework/source/register/registerservices.cxx
+++ b/framework/source/register/registerservices.cxx
@@ -66,6 +66,7 @@
 #include <uiconfiguration/uicategorydescription.hxx>
 #include <services/sessionlistener.hxx>
 #include <services/taskcreatorsrv.hxx>
+
 #include <uielement/langselectionstatusbarcontroller.hxx>
 #include <uiconfiguration/imagemanager.hxx>
 #include <uifactory/windowcontentfactorymanager.hxx>
diff --git a/framework/source/register/registertemp.cxx b/framework/source/register/registertemp.cxx
index 9d9e673..1f0967d 100644
--- a/framework/source/register/registertemp.cxx
+++ b/framework/source/register/registertemp.cxx
@@ -42,9 +42,6 @@
 #include <recording/dispatchrecordersupplier.hxx>
 #include <services/license.hxx>
 #include <services/uriabbreviation.hxx>
-#include <uielement/simpletextstatusbarcontroller.hxx>
-#include <uielement/logoimagestatusbarcontroller.hxx>
-#include <uielement/logotextstatusbarcontroller.hxx>
 #include <uielement/fontmenucontroller.hxx>
 #include <uielement/fontsizemenucontroller.hxx>
 #include <uielement/footermenucontroller.hxx>
@@ -59,14 +56,11 @@ COMPONENTGETFACTORY ( fwl,
                         IFFACTORY( ::framework::MediaTypeDetectionHelper        )
                         IFFACTORY( ::framework::MailToDispatcher                        ) else
                         IFFACTORY( ::framework::ServiceHandler                          )   else
-                        IFFACTORY( ::framework::LogoTextStatusbarController             )   else
-                        IFFACTORY( ::framework::LogoImageStatusbarController            )   else
                         IFFACTORY( ::framework::License                                 )   else
                         IFFACTORY( ::framework::PopupMenuDispatcher                     )   else
                         IFFACTORY( ::framework::DispatchHelper                          )   else
                         IFFACTORY( ::framework::DispatchRecorder                        )   else
                         IFFACTORY( ::framework::DispatchRecorderSupplier                )   else
-                        IFFACTORY( ::framework::SimpleTextStatusbarController           )   else
                         IFFACTORY( ::framework::ToolbarsMenuController                  )   else
                         IFFACTORY( ::framework::FontMenuController                      )   else
                         IFFACTORY( ::framework::MacrosMenuController                    )   else
diff --git a/framework/source/uielement/logoimagestatusbarcontroller.cxx b/framework/source/uielement/logoimagestatusbarcontroller.cxx
deleted file mode 100644
index f2032c7..0000000
--- a/framework/source/uielement/logoimagestatusbarcontroller.cxx
+++ /dev/null
@@ -1,167 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * 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 .
- */
-
-#include <uielement/logoimagestatusbarcontroller.hxx>
-#include <classes/fwlresid.hxx>
-#include <services.h>
-#include <classes/resource.hrc>
-#include <osl/mutex.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/status.hxx>
-#include <toolkit/unohlp.hxx>
-#include <toolkit/helper/convert.hxx>
-
-using namespace ::rtl;
-using namespace ::cppu;
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::frame;
-
-namespace framework
-{
-
-DEFINE_XSERVICEINFO_MULTISERVICE        (   LogoImageStatusbarController            ,
-                                            OWeakObject                             ,
-                                            SERVICENAME_STATUSBARCONTROLLER         ,
-                                            IMPLEMENTATIONNAME_LOGOIMAGESTATUSBARCONTROLLER
-                                        )
-
-DEFINE_INIT_SERVICE                     (   LogoImageStatusbarController, {} )
-
-LogoImageStatusbarController::LogoImageStatusbarController( const uno::Reference< lang::XMultiServiceFactory >& xServiceManager ) :
-    svt::StatusbarController( xServiceManager, uno::Reference< frame::XFrame >(), OUString(), 0 )
-{
-    Image aImage( FwlResId( RID_IMAGE_STATUSBAR_LOGO ));
-    m_aLogoImage = aImage;
-}
-
-LogoImageStatusbarController::~LogoImageStatusbarController()
-{
-}
-
-// XInterface
-Any SAL_CALL LogoImageStatusbarController::queryInterface( const Type& rType )
-throw ( RuntimeException )
-{
-    return svt::StatusbarController::queryInterface( rType );
-}
-
-void SAL_CALL LogoImageStatusbarController::acquire() throw ()
-{
-    svt::StatusbarController::acquire();
-}
-
-void SAL_CALL LogoImageStatusbarController::release() throw ()
-{
-    svt::StatusbarController::release();
-}
-
-void SAL_CALL LogoImageStatusbarController::initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
-throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException)
-{
-    SolarMutexGuard aSolarMutexGuard;
-
-    svt::StatusbarController::initialize( aArguments );
-}
-
-// XComponent
-void SAL_CALL LogoImageStatusbarController::dispose()
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::dispose();
-}
-
-// XEventListener
-void SAL_CALL LogoImageStatusbarController::disposing( const EventObject& Source )
-throw ( RuntimeException )
-{
-    svt::StatusbarController::disposing( Source );
-}
-
-// XStatusListener
-void SAL_CALL LogoImageStatusbarController::statusChanged( const FeatureStateEvent& )
-throw ( RuntimeException )
-{
-}
-
-// XStatusbarController
-::sal_Bool SAL_CALL LogoImageStatusbarController::mouseButtonDown(
-    const awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-::sal_Bool SAL_CALL LogoImageStatusbarController::mouseMove(
-    const awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-::sal_Bool SAL_CALL LogoImageStatusbarController::mouseButtonUp(
-    const awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-void SAL_CALL LogoImageStatusbarController::command(
-    const awt::Point& aPos,
-    ::sal_Int32 nCommand,
-    ::sal_Bool bMouseEvent,
-    const ::com::sun::star::uno::Any& aData )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::command( aPos, nCommand, bMouseEvent, aData );
-}
-
-void SAL_CALL LogoImageStatusbarController::paint(
-    const ::com::sun::star::uno::Reference< awt::XGraphics >& xGraphics,
-    const awt::Rectangle& rOutputRectangle,
-    ::sal_Int32 /*nItemId*/,
-    ::sal_Int32 /*nStyle*/ )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    SolarMutexGuard aGuard;
-
-    OutputDevice* pOutDev = VCLUnoHelper::GetOutputDevice( xGraphics );;
-    if ( pOutDev )
-    {
-        ::Rectangle aRect = VCLRectangle( rOutputRectangle );
-        pOutDev->DrawImage( aRect.TopLeft(), aRect.GetSize(), m_aLogoImage );
-    }
-}
-
-void SAL_CALL LogoImageStatusbarController::click()
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::click();
-}
-
-void SAL_CALL LogoImageStatusbarController::doubleClick() throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::doubleClick();
-}
-
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/source/uielement/logotextstatusbarcontroller.cxx b/framework/source/uielement/logotextstatusbarcontroller.cxx
deleted file mode 100644
index 32259c2..0000000
--- a/framework/source/uielement/logotextstatusbarcontroller.cxx
+++ /dev/null
@@ -1,170 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * 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 .
- */
-
-#include <uielement/logotextstatusbarcontroller.hxx>
-#include <classes/fwlresid.hxx>
-#include <services.h>
-#include <classes/resource.hrc>
-#include <osl/mutex.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/status.hxx>
-#include <toolkit/unohlp.hxx>
-#include <toolkit/helper/convert.hxx>
-
-using namespace ::rtl;
-using namespace ::cppu;
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::awt;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::frame;
-
-namespace framework
-{
-
-DEFINE_XSERVICEINFO_MULTISERVICE        (   LogoTextStatusbarController             ,
-                                            OWeakObject                             ,
-                                            SERVICENAME_STATUSBARCONTROLLER         ,
-                                            IMPLEMENTATIONNAME_LOGOTEXTSTATUSBARCONTROLLER
-                                        )
-
-DEFINE_INIT_SERVICE                     (   LogoTextStatusbarController, {} )
-
-LogoTextStatusbarController::LogoTextStatusbarController( const uno::Reference< lang::XMultiServiceFactory >& xServiceManager ) :
-    svt::StatusbarController( xServiceManager, uno::Reference< frame::XFrame >(), OUString(), 0 )
-{
-    m_aLogoText = String( FwlResId( STR_STATUSBAR_LOGOTEXT ));
-}
-
-LogoTextStatusbarController::~LogoTextStatusbarController()
-{
-}
-
-// XInterface
-Any SAL_CALL LogoTextStatusbarController::queryInterface( const Type& rType )
-throw ( RuntimeException )
-{
-    return svt::StatusbarController::queryInterface( rType );
-}
-
-void SAL_CALL LogoTextStatusbarController::acquire() throw ()
-{
-    svt::StatusbarController::acquire();
-}
-
-void SAL_CALL LogoTextStatusbarController::release() throw ()
-{
-    svt::StatusbarController::release();
-}
-
-void SAL_CALL LogoTextStatusbarController::initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
-throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException)
-{
-    SolarMutexGuard aSolarMutexGuard;
-
-    svt::StatusbarController::initialize( aArguments );
-
-    if ( m_xParentWindow.is() && m_nID > 0 )
-    {
-        Window* pWindow = VCLUnoHelper::GetWindow( m_xParentWindow );
-        if ( pWindow && ( pWindow->GetType() == WINDOW_STATUSBAR ))
-        {
-            StatusBar* pStatusBar = (StatusBar *)pWindow;
-            pStatusBar->SetItemText( m_nID, m_aLogoText );
-        }
-    }
-}
-
-// XComponent
-void SAL_CALL LogoTextStatusbarController::dispose()
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::dispose();
-}
-
-// XEventListener
-void SAL_CALL LogoTextStatusbarController::disposing( const EventObject& Source )
-throw ( RuntimeException )
-{
-    svt::StatusbarController::disposing( Source );
-}
-
-// XStatusListener
-void SAL_CALL LogoTextStatusbarController::statusChanged( const FeatureStateEvent& )
-throw ( RuntimeException )
-{
-}
-
-// XStatusbarController
-::sal_Bool SAL_CALL LogoTextStatusbarController::mouseButtonDown(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-::sal_Bool SAL_CALL LogoTextStatusbarController::mouseMove(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-::sal_Bool SAL_CALL LogoTextStatusbarController::mouseButtonUp(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-void SAL_CALL LogoTextStatusbarController::command(
-    const ::com::sun::star::awt::Point& aPos,
-    ::sal_Int32 nCommand,
-    ::sal_Bool bMouseEvent,
-    const ::com::sun::star::uno::Any& aData )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::command( aPos, nCommand, bMouseEvent, aData );
-}
-
-void SAL_CALL LogoTextStatusbarController::paint(
-    const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
-    const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-    ::sal_Int32 nItemId,
-    ::sal_Int32 nStyle )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::paint( xGraphics, rOutputRectangle, nItemId, nStyle );
-}
-
-void SAL_CALL LogoTextStatusbarController::click()
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::click();
-}
-
-void SAL_CALL LogoTextStatusbarController::doubleClick() throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::doubleClick();
-}
-
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/source/uielement/simpletextstatusbarcontroller.cxx b/framework/source/uielement/simpletextstatusbarcontroller.cxx
deleted file mode 100644
index e0b3807..0000000
--- a/framework/source/uielement/simpletextstatusbarcontroller.cxx
+++ /dev/null
@@ -1,186 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * 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 .
- */
-
-#include <uielement/simpletextstatusbarcontroller.hxx>
-#include <classes/fwkresid.hxx>
-#include <services.h>
-#include <classes/resource.hrc>
-#include <osl/mutex.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/status.hxx>
-#include <toolkit/unohlp.hxx>
-#include <toolkit/helper/convert.hxx>
-
-using namespace ::rtl;
-using namespace ::cppu;
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::awt;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::frame;
-
-namespace framework
-{
-
-DEFINE_XSERVICEINFO_MULTISERVICE        (   SimpleTextStatusbarController           ,
-                                            OWeakObject                             ,
-                                            SERVICENAME_STATUSBARCONTROLLER         ,
-                                            IMPLEMENTATIONNAME_SIMPLETEXTSTATUSBARCONTROLLER
-                                        )
-
-DEFINE_INIT_SERVICE                     (   SimpleTextStatusbarController, {} )
-
-SimpleTextStatusbarController::SimpleTextStatusbarController( const uno::Reference< lang::XMultiServiceFactory >& xServiceManager ) :
-    svt::StatusbarController( xServiceManager, uno::Reference< frame::XFrame >(), OUString(), 0 )
-{
-}
-
-SimpleTextStatusbarController::~SimpleTextStatusbarController()
-{
-}
-
-// XInterface
-Any SAL_CALL SimpleTextStatusbarController::queryInterface( const Type& rType )
-throw ( RuntimeException )
-{
-    return svt::StatusbarController::queryInterface( rType );
-}
-
-void SAL_CALL SimpleTextStatusbarController::acquire() throw ()
-{
-    svt::StatusbarController::acquire();
-}
-
-void SAL_CALL SimpleTextStatusbarController::release() throw ()
-{
-    svt::StatusbarController::release();
-}
-
-void SAL_CALL SimpleTextStatusbarController::initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
-throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException)
-{
-    const OUString aPropValueName( "Value" );
-
-    SolarMutexGuard aSolarMutexGuard;
-
-    svt::StatusbarController::initialize( aArguments );
-
-    OUString        aValue;
-    beans::PropertyValue aPropValue;
-
-    // Check arguments for optional "Value" property. We need it
-    // to set our internal simple text.
-    for ( int i = 0; i < aArguments.getLength(); i++ )
-    {
-        if (( aArguments[i] >>= aPropValue ) && ( aPropValue.Name.equals( aPropValueName )))
-        {
-            aPropValue.Value >>= aValue;
-            break;
-        }
-    }
-
-    m_aText = aValue;
-    if ( m_xParentWindow.is() && m_nID > 0 )
-    {
-        Window* pWindow = VCLUnoHelper::GetWindow( m_xParentWindow );
-        if ( pWindow && ( pWindow->GetType() == WINDOW_STATUSBAR ))
-        {
-            StatusBar* pStatusBar = (StatusBar *)pWindow;
-            pStatusBar->SetItemText( m_nID, m_aText );
-        }
-    }
-}
-
-// XComponent
-void SAL_CALL SimpleTextStatusbarController::dispose()
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::dispose();
-}
-
-// XEventListener
-void SAL_CALL SimpleTextStatusbarController::disposing( const EventObject& Source )
-throw ( RuntimeException )
-{
-    svt::StatusbarController::disposing( Source );
-}
-
-// XStatusListener
-void SAL_CALL SimpleTextStatusbarController::statusChanged( const FeatureStateEvent& )
-throw ( RuntimeException )
-{
-}
-
-// XStatusbarController
-::sal_Bool SAL_CALL SimpleTextStatusbarController::mouseButtonDown(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-::sal_Bool SAL_CALL SimpleTextStatusbarController::mouseMove(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-::sal_Bool SAL_CALL SimpleTextStatusbarController::mouseButtonUp(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    return sal_False;
-}
-
-void SAL_CALL SimpleTextStatusbarController::command(
-    const ::com::sun::star::awt::Point& aPos,
-    ::sal_Int32 nCommand,
-    ::sal_Bool bMouseEvent,
-    const ::com::sun::star::uno::Any& aData )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::command( aPos, nCommand, bMouseEvent, aData );
-}
-
-void SAL_CALL SimpleTextStatusbarController::paint(
-    const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
-    const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-    ::sal_Int32 nItemId,
-    ::sal_Int32 nStyle )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::paint( xGraphics, rOutputRectangle, nItemId, nStyle );
-}
-
-void SAL_CALL SimpleTextStatusbarController::click()
-throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::click();
-}
-
-void SAL_CALL SimpleTextStatusbarController::doubleClick() throw (::com::sun::star::uno::RuntimeException)
-{
-    svt::StatusbarController::doubleClick();
-}
-
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/util/fwl.component b/framework/util/fwl.component
index b4a7ed3..9aaef32 100644
--- a/framework/util/fwl.component
+++ b/framework/util/fwl.component
@@ -43,12 +43,6 @@
   <implementation name="com.sun.star.comp.framework.License">
     <service name="com.sun.star.task.Job"/>
   </implementation>
-  <implementation name="com.sun.star.comp.framework.LogoImageStatusbarController">
-    <service name="com.sun.star.frame.StatusbarController"/>
-  </implementation>
-  <implementation name="com.sun.star.comp.framework.LogoTextStatusbarController">
-    <service name="com.sun.star.frame.StatusbarController"/>
-  </implementation>
   <implementation name="com.sun.star.comp.framework.MacrosMenuController">
     <service name="com.sun.star.frame.PopupMenuController"/>
   </implementation>
@@ -73,9 +67,6 @@
   <implementation name="com.sun.star.comp.framework.ServiceHandler">
     <service name="com.sun.star.frame.ProtocolHandler"/>
   </implementation>
-  <implementation name="com.sun.star.comp.framework.SimpleTextStatusbarController">
-    <service name="com.sun.star.frame.StatusbarController"/>
-  </implementation>
   <implementation name="com.sun.star.comp.framework.ToolBarsMenuController">
     <service name="com.sun.star.frame.PopupMenuController"/>
   </implementation>
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/Controller.xcu b/officecfg/registry/data/org/openoffice/Office/UI/Controller.xcu
index 56055d4..5abc0a8 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/Controller.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/Controller.xcu
@@ -587,28 +587,6 @@
       </node>
       <node oor:name="c5" oor:op="replace">
         <prop oor:name="Command">
-          <value>.uno:StatusbarLogo</value>
-        </prop>
-        <prop oor:name="Module">
-          <value/>
-        </prop>
-        <prop oor:name="Controller">
-          <value>com.sun.star.comp.framework.LogoImageStatusbarController</value>
-        </prop>
-      </node>
-      <node oor:name="c6" oor:op="replace">
-        <prop oor:name="Command">
-          <value>.uno:StatusbarLogoText</value>
-        </prop>
-        <prop oor:name="Module">
-          <value/>
-        </prop>
-        <prop oor:name="Controller">
-          <value>com.sun.star.comp.framework.LogoTextStatusbarController</value>
-        </prop>
-      </node>
-      <node oor:name="c7" oor:op="replace">
-        <prop oor:name="Command">
           <value>.uno:LanguageStatus</value>
         </prop>
         <prop oor:name="Module">
commit 819840979b82a7b19329eda63db0d5f8a291b9de
Author: Ariel Constenla-Haile <arielch at apache.org>
Date:   Thu Dec 6 12:29:55 2012 +0000

    Related: #i121442# - Refactor UNO StatusbarControllers
    
    (cherry picked from commit 3f1dd0f6b392c104e0a7c7c2623d5d688f8622c0)
    
    Conflicts:
    	framework/source/uielement/langselectionstatusbarcontroller.cxx
    
    Change-Id: I1e8f87d1fbd12bab98b38282cedc730ac23694c3

diff --git a/framework/inc/uielement/langselectionstatusbarcontroller.hxx b/framework/inc/uielement/langselectionstatusbarcontroller.hxx
index 560e627..71896ef 100644
--- a/framework/inc/uielement/langselectionstatusbarcontroller.hxx
+++ b/framework/inc/uielement/langselectionstatusbarcontroller.hxx
@@ -47,36 +47,18 @@ class LangSelectionStatusbarController : public svt::StatusbarController
         // XServiceInfo
         DECLARE_XSERVICEINFO
 
-        // XInterface
-        virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL acquire() throw ();
-        virtual void SAL_CALL release() throw ();
-
         // XInitialization
         virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
 
-        // XComponent
-        virtual void SAL_CALL dispose() throw ( ::com::sun::star::uno::RuntimeException );
-
-        // XEventListener
-        virtual void SAL_CALL disposing( const com::sun::star::lang::EventObject& Source ) throw ( ::com::sun::star::uno::RuntimeException );
-
         // XStatusListener
         virtual void SAL_CALL statusChanged( const ::com::sun::star::frame::FeatureStateEvent& Event ) throw ( ::com::sun::star::uno::RuntimeException );
 
         // XStatusbarController
-        virtual ::sal_Bool SAL_CALL mouseButtonDown( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual ::sal_Bool SAL_CALL mouseMove( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
-        virtual ::sal_Bool SAL_CALL mouseButtonUp( const ::com::sun::star::awt::MouseEvent& aMouseEvent ) throw (::com::sun::star::uno::RuntimeException);
         virtual void SAL_CALL command( const ::com::sun::star::awt::Point& aPos,
                                        ::sal_Int32 nCommand,
                                        ::sal_Bool bMouseEvent,
                                        const ::com::sun::star::uno::Any& aData ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL paint( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
-                                     const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-                                     ::sal_Int32 nItemId, ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL click() throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL doubleClick() throw (::com::sun::star::uno::RuntimeException);
+        virtual void SAL_CALL click( const ::com::sun::star::awt::Point& aPos ) throw (::com::sun::star::uno::RuntimeException);
 
     private:
         virtual ~LangSelectionStatusbarController() {}
@@ -91,7 +73,7 @@ class LangSelectionStatusbarController : public svt::StatusbarController
         OUString     m_aGuessedTextLang;     // the 'guessed' language for the selection, "" if none could be guessed
         LanguageGuessingHelper      m_aLangGuessHelper;
 
-        void LangMenu() throw (::com::sun::star::uno::RuntimeException);
+        void LangMenu( const ::com::sun::star::awt::Point& aPos ) throw (::com::sun::star::uno::RuntimeException);
 };
 
 } // framework namespace
diff --git a/framework/source/uielement/langselectionstatusbarcontroller.cxx b/framework/source/uielement/langselectionstatusbarcontroller.cxx
index d8d5451..09c0a3d 100644
--- a/framework/source/uielement/langselectionstatusbarcontroller.cxx
+++ b/framework/source/uielement/langselectionstatusbarcontroller.cxx
@@ -26,7 +26,6 @@
 #include <vcl/svapp.hxx>
 #include <vcl/window.hxx>
 #include <vcl/status.hxx>
-#include <toolkit/unohlp.hxx>
 #include <toolkit/helper/convert.hxx>
 
 #include <com/sun/star/frame/XPopupMenuController.hpp>
@@ -49,6 +48,7 @@
 #include <com/sun/star/util/XURLTransformer.hpp>
 #include <comphelper/processfactory.hxx>
 
+#include <toolkit/helper/vclunohelper.hxx>
 #include <tools/gen.hxx>
 #include <com/sun/star/awt/Command.hpp>
 #include <svl/languageoptions.hxx>
@@ -56,6 +56,8 @@
 
 #include "helper/mischelper.hxx"
 
+#include <rtl/ustrbuf.hxx>
+
 #include <map>
 #include <set>
 
@@ -67,12 +69,12 @@ using namespace ::com::sun::star::frame;
 using namespace ::com::sun::star::i18n;
 using namespace ::com::sun::star::document;
 
+using ::rtl::OUStringBuffer;
 
 
 namespace framework
 {
 
-
 DEFINE_XSERVICEINFO_MULTISERVICE        (   LangSelectionStatusbarController            ,
                                             OWeakObject                             ,
                                             SERVICENAME_STATUSBARCONTROLLER         ,
@@ -89,23 +91,6 @@ LangSelectionStatusbarController::LangSelectionStatusbarController( const uno::R
 {
 }
 
-// XInterface
-Any SAL_CALL LangSelectionStatusbarController::queryInterface( const Type& rType )
-throw ( RuntimeException )
-{
-    return svt::StatusbarController::queryInterface( rType );
-}
-
-void SAL_CALL LangSelectionStatusbarController::acquire() throw ()
-{
-    svt::StatusbarController::acquire();
-}
-
-void SAL_CALL LangSelectionStatusbarController::release() throw ()
-{
-    svt::StatusbarController::release();
-}
-
 void SAL_CALL LangSelectionStatusbarController::initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
 throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException)
 {
@@ -114,59 +99,14 @@ throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException
 
     svt::StatusbarController::initialize( aArguments );
 
-    if ( m_xParentWindow.is() && m_nID > 0 )
+    if ( m_xStatusbarItem.is() )
     {
-        Window* pWindow = VCLUnoHelper::GetWindow( m_xParentWindow );
-        if ( pWindow && ( pWindow->GetType() == WINDOW_STATUSBAR ))
-        {
-            StatusBar* pStatusBar = (StatusBar *)pWindow;
-            pStatusBar->SetItemText( m_nID, FwkResId( STR_LANGSTATUS_MULTIPLE_LANGUAGES ) );
-        }
+        m_xStatusbarItem->setText( String( FwkResId( STR_LANGSTATUS_MULTIPLE_LANGUAGES ) ) );
     }
 }
 
-// XComponent
-void SAL_CALL LangSelectionStatusbarController::dispose()
-throw (::com::sun::star::uno::RuntimeException)
-{
-    RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::dispose" );
-    svt::StatusbarController::dispose();
-}
-
-// XEventListener
-void SAL_CALL LangSelectionStatusbarController::disposing( const com::sun::star::lang::EventObject& Source )
-throw ( RuntimeException )
-{
-    RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::disposing" );
-    svt::StatusbarController::disposing( Source );
-}
-
-// XStatusbarController
-::sal_Bool SAL_CALL LangSelectionStatusbarController::mouseButtonDown(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::mouseButtonDown" );
-    return sal_False;
-}
-
-::sal_Bool SAL_CALL LangSelectionStatusbarController::mouseMove(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::mouseMove" );
-    return sal_False;
-}
-
-::sal_Bool SAL_CALL LangSelectionStatusbarController::mouseButtonUp(
-    const ::com::sun::star::awt::MouseEvent& )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::mouseButtonUp" );
-    return sal_False;
-}
-
-void LangSelectionStatusbarController::LangMenu()
+void LangSelectionStatusbarController::LangMenu(
+    const ::com::sun::star::awt::Point& aPos )
 throw (::com::sun::star::uno::RuntimeException)
 {
     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::LangMenu" );
@@ -200,7 +140,7 @@ throw (::com::sun::star::uno::RuntimeException)
         {
             DBG_ASSERT( MID_LANG_SEL_1 <= nItemId && nItemId <= MID_LANG_SEL_9,
                     "nItemId outside of expected range!" );
-            xPopupMenu->insertItem( nItemId, rStr, css::awt::MenuItemStyle::RADIOCHECK, nItemId );
+            xPopupMenu->insertItem( nItemId, rStr, 0, nItemId );
             if ( rStr == m_aCurLang )
             {
                 //make a sign for the current language
@@ -210,10 +150,10 @@ throw (::com::sun::star::uno::RuntimeException)
             ++nItemId;
         }
     }
-    xPopupMenu->insertItem( MID_LANG_SEL_NONE,  String( FwkResId( STR_LANGSTATUS_NONE )), css::awt::MenuItemStyle::RADIOCHECK, MID_LANG_SEL_NONE );
+
+    xPopupMenu->insertItem( MID_LANG_SEL_NONE,  String( FwkResId( STR_LANGSTATUS_NONE )), 0, MID_LANG_SEL_NONE );
     if ( aLanguageTable.GetString( LANGUAGE_NONE ) == m_aCurLang )
         xPopupMenu->checkItem( MID_LANG_SEL_NONE, sal_True );
-
     xPopupMenu->insertItem( MID_LANG_SEL_RESET, String( FwkResId( STR_RESET_TO_DEFAULT_LANGUAGE )), 0, MID_LANG_SEL_RESET );
     xPopupMenu->insertItem( MID_LANG_SEL_MORE,  String( FwkResId( STR_LANGSTATUS_MORE )), 0, MID_LANG_SEL_MORE );
 
@@ -246,77 +186,65 @@ throw (::com::sun::star::uno::RuntimeException)
     // now display the popup menu and execute every command ...
 
     Reference< awt::XWindowPeer > xParent( m_xParentWindow, UNO_QUERY );
-
     com::sun::star::awt::Rectangle aRectangle;
-    Window* pWindow = VCLUnoHelper::GetWindow( m_xParentWindow );
-    const Point mMousePos = pWindow->GetPointerPosPixel();
-    aRectangle.X = mMousePos.X();
-    aRectangle.Y = mMousePos.Y();
+    aRectangle.X = aPos.X;
+    aRectangle.Y = aPos.Y;
     sal_Int16 nId = xPopupMenu->execute( xParent, aRectangle, com::sun::star::awt::PopupMenuDirection::EXECUTE_UP+16 );
     //click "More..."
     if ( nId && m_xFrame.is() )
     {
-        uno::Reference< XDispatchProvider > xDispatchProvider( m_xFrame, UNO_QUERY );
-        util::URL aURL;
+        OUStringBuffer aBuff;
+        //set selected language as current language for selection
+        const OUString aSelectedLang = aLangMap[nId];
 
         if (MID_LANG_SEL_1 <= nId && nId <= MID_LANG_SEL_9)
         {
-            //set selected language as current language for selection
-            String aSelectedLang = aLangMap[nId];
-            aURL.Complete += ".uno:LanguageStatus?Language:string=Current_";
-            aURL.Complete += aSelectedLang;
+            aBuff.appendAscii( RTL_CONSTASCII_STRINGPARAM( (".uno:LanguageStatus?Language:string=Current_") ));
+            aBuff.append( aSelectedLang );
         }
         else if (nId == MID_LANG_SEL_NONE)
         {
             //set None as current language for selection
-            aURL.Complete += ".uno:LanguageStatus?Language:string=Current_LANGUAGE_NONE";
+            aBuff.appendAscii( RTL_CONSTASCII_STRINGPARAM( (".uno:LanguageStatus?Language:string=Current_LANGUAGE_NONE") ));
         }
         else if (nId == MID_LANG_SEL_RESET)
         {
             // reset language attributes for selection
-            aURL.Complete += ".uno:LanguageStatus?Language:string=Current_RESET_LANGUAGES";
+            aBuff.appendAscii( RTL_CONSTASCII_STRINGPARAM( (".uno:LanguageStatus?Language:string=Current_RESET_LANGUAGES") ));
         }
         else if (nId == MID_LANG_SEL_MORE)
         {
             //open the dialog "format/character" for current selection
-            aURL.Complete += ".uno:FontDialog?Language:string=*";
+            aBuff.appendAscii( RTL_CONSTASCII_STRINGPARAM( (".uno:FontDialog?Language:string=*") ));
         }
         else if (MID_LANG_PARA_1 <= nId && nId <= MID_LANG_PARA_9)
         {
-            //set selected language for current paragraph
-            String aSelectedLang = aLangMap[nId];
-            aURL.Complete += ".uno:LanguageStatus?Language:string=Paragraph_";
-            aURL.Complete += aSelectedLang;
+            aBuff.appendAscii( RTL_CONSTASCII_STRINGPARAM( (".uno:LanguageStatus?Language:string=Paragraph_") ));
+            aBuff.append( aSelectedLang );
         }
         else if (nId == MID_LANG_PARA_NONE)
         {
             //set None as language for current paragraph
-            aURL.Complete += ".uno:LanguageStatus?Language:string=Paragraph_LANGUAGE_NONE";
+            aBuff.appendAscii( RTL_CONSTASCII_STRINGPARAM( (".uno:LanguageStatus?Language:string=Paragraph_LANGUAGE_NONE") ));
         }
         else if (nId == MID_LANG_PARA_RESET)
         {
             // reset language attributes for paragraph
-            aURL.Complete += ".uno:LanguageStatus?Language:string=Paragraph_RESET_LANGUAGES";
+            aBuff.appendAscii( RTL_CONSTASCII_STRINGPARAM( (".uno:LanguageStatus?Language:string=Paragraph_RESET_LANGUAGES") ));
         }
         else if (nId == MID_LANG_PARA_MORE)
         {
             //open the dialog "format/character" for current paragraph
-            aURL.Complete += ".uno:FontDialogForParagraph";
+            aBuff.appendAscii( RTL_CONSTASCII_STRINGPARAM( (".uno:FontDialogForParagraph") ));
         }
 
-        uno::Reference< util::XURLTransformer > xURLTransformer( util::URLTransformer::create(::comphelper::getComponentContext(m_xServiceManager)) );
-        xURLTransformer->parseStrict( aURL );
-        uno::Reference< XDispatch > xDispatch = xDispatchProvider->queryDispatch(aURL, OUString(), 0);
-        if( xDispatch.is() )
-        {
-            uno::Sequence< beans::PropertyValue > aPV;
-            xDispatch->dispatch( aURL, aPV);
-        }
+        const Sequence< beans::PropertyValue > aDummyArgs;
+        execute( aBuff.makeStringAndClear(), aDummyArgs );
     }
 }
 
 void SAL_CALL LangSelectionStatusbarController::command(
-    const ::com::sun::star::awt::Point& /*aPos*/,
+    const ::com::sun::star::awt::Point& aPos,
     ::sal_Int32 nCommand,
     ::sal_Bool /*bMouseEvent*/,
     const ::com::sun::star::uno::Any& /*aData*/ )
@@ -325,33 +253,16 @@ throw (::com::sun::star::uno::RuntimeException)
     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::command" );
     if ( nCommand & ::awt::Command::CONTEXTMENU )
     {
-        LangMenu();
+        LangMenu( aPos );
     }
 }
 
-void SAL_CALL LangSelectionStatusbarController::paint(
-    const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
-    const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-    ::sal_Int32 nItemId,
-    ::sal_Int32 nStyle )
-throw (::com::sun::star::uno::RuntimeException)
-{
-    RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::paint" );
-    svt::StatusbarController::paint( xGraphics, rOutputRectangle, nItemId, nStyle );
-}
-
-void SAL_CALL LangSelectionStatusbarController::click()
+void SAL_CALL LangSelectionStatusbarController::click(
+    const ::com::sun::star::awt::Point& aPos )
 throw (::com::sun::star::uno::RuntimeException)
 {
     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::click" );
-    LangMenu();
-}
-
-void SAL_CALL LangSelectionStatusbarController::doubleClick()
-throw (::com::sun::star::uno::RuntimeException)
-{
-    RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen at sun.com", "LangSelectionStatusbarController::doubleClick" );
-    svt::StatusbarController::doubleClick();
+    LangMenu( aPos );
 }
 
 // XStatusListener
@@ -372,26 +283,25 @@ throw ( RuntimeException )
         return;
 
     m_bShowMenu = sal_True;
-
     m_nScriptType = LS_SCRIPT_LATIN | LS_SCRIPT_ASIAN | LS_SCRIPT_COMPLEX;  //set the default value
-    Window* pWindow = VCLUnoHelper::GetWindow( m_xParentWindow );
-    if ( pWindow && pWindow->GetType() == WINDOW_STATUSBAR && m_nID != 0 )
+
+    if ( m_xStatusbarItem.is() )
     {
-        OUString               aStrValue;
+        OUString aStrValue;
         Sequence< OUString > aSeq;
 
-        StatusBar*    pStatusBar = (StatusBar *)pWindow;
         if ( Event.State >>= aStrValue )
-            pStatusBar->SetItemText( m_nID, aStrValue );
+            m_xStatusbarItem->setText( aStrValue );
         else if ( Event.State >>= aSeq )
         {
             if ( aSeq.getLength() == 4 )
             {
-                const String aMultipleLangText( FwkResId( STR_LANGSTATUS_MULTIPLE_LANGUAGES ) );
                 OUString aStatusText = aSeq[0];
-                if ( 0 == aStatusText.compareToAscii( "*" ))
-                    aStatusText = aMultipleLangText;
-                pStatusBar->SetItemText( m_nID, aStatusText );
+                if (aStatusText == "*")
+                {
+                    aStatusText = String( FwkResId( STR_LANGSTATUS_MULTIPLE_LANGUAGES ) );
+                }
+                m_xStatusbarItem->setText( aStatusText );
 
                 // Retrieve all other values from the sequence and
                 // store it members!
@@ -403,7 +313,7 @@ throw ( RuntimeException )
         }
         else if ( !Event.State.hasValue() )
         {
-            pStatusBar->SetItemText( m_nID, String() );
+            m_xStatusbarItem->setText( OUString() );
             m_bShowMenu = sal_False;    // no language -> no menu
         }
     }
commit 25ec90bfa85ab829e47f442742c63dd41960b973
Author: Ariel Constenla-Haile <arielch at apache.org>
Date:   Thu Dec 6 12:29:42 2012 +0000

    Related: #i121442# Adapt existing code in other modules
    
    (cherry picked from commit 6c640ee420df6f7c9f3ab981e49ee304f1d2319e)
    
    Conflicts:
    	reportdesign/source/ui/misc/statusbarcontroller.cxx
    	sfx2/inc/sfx2/stbitem.hxx
    	svtools/inc/svtools/statusbarcontroller.hxx
    	svtools/source/uno/statusbarcontroller.cxx
    
    Change-Id: If03a201214a4afe09efa4e3e996aded9b6a57bdf

diff --git a/include/sfx2/stbitem.hxx b/include/sfx2/stbitem.hxx
index d94e768..0512c31 100644
--- a/include/sfx2/stbitem.hxx
+++ b/include/sfx2/stbitem.hxx
@@ -90,10 +90,10 @@ protected:
                                     ::sal_Bool bMouseEvent,
                                     const ::com::sun::star::uno::Any& aData ) throw (::com::sun::star::uno::RuntimeException);
     virtual void SAL_CALL paint( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
-                                    const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-                                    ::sal_Int32 nItemId, ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
-    virtual void SAL_CALL click() throw (::com::sun::star::uno::RuntimeException);
-    virtual void SAL_CALL doubleClick() throw (::com::sun::star::uno::RuntimeException);
+                                 const ::com::sun::star::awt::Rectangle& rOutputRectangle,
+                                 ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
+    virtual void SAL_CALL click( const ::com::sun::star::awt::Point& aPos ) throw (::com::sun::star::uno::RuntimeException);
+    virtual void SAL_CALL doubleClick( const ::com::sun::star::awt::Point& aPos ) throw (::com::sun::star::uno::RuntimeException);
 
     // Old sfx2 interface
     virtual void    StateChanged( sal_uInt16 nSID, SfxItemState eState,
diff --git a/include/svtools/statusbarcontroller.hxx b/include/svtools/statusbarcontroller.hxx
index eba45e5..9d094fa 100644
--- a/include/svtools/statusbarcontroller.hxx
+++ b/include/svtools/statusbarcontroller.hxx
@@ -21,12 +21,10 @@
 #define _SVTOOLS_STATUSBARCONTROLLER_HXX
 
 #include "svtools/svtdllapi.h"
+#include <com/sun/star/ui/XStatusbarItem.hpp>
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/lang/XInitialization.hpp>
-#include <com/sun/star/util/XUpdatable.hpp>
 #include <com/sun/star/frame/XFrame.hpp>
 #include <com/sun/star/frame/XDispatch.hpp>
-#include <com/sun/star/frame/XStatusListener.hpp>
 #include <com/sun/star/frame/XStatusbarController.hpp>
 #include <com/sun/star/util/XURLTransformer.hpp>
 #include <com/sun/star/frame/XLayoutManager.hpp>
@@ -41,10 +39,8 @@
 namespace svt
 {
 
-class SVT_DLLPUBLIC StatusbarController : public ::com::sun::star::frame::XStatusListener,
+class SVT_DLLPUBLIC StatusbarController :
                             public ::com::sun::star::frame::XStatusbarController,
-                            public ::com::sun::star::lang::XInitialization,
-                            public ::com::sun::star::util::XUpdatable,
                             public ::com::sun::star::lang::XComponent,
                             public ::comphelper::OBaseMutex,
                             public ::cppu::OWeakObject
@@ -94,9 +90,9 @@ class SVT_DLLPUBLIC StatusbarController : public ::com::sun::star::frame::XStatu
                                        const ::com::sun::star::uno::Any& aData ) throw (::com::sun::star::uno::RuntimeException);
         virtual void SAL_CALL paint( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
                                      const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-                                     ::sal_Int32 nItemId, ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL click() throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL doubleClick() throw (::com::sun::star::uno::RuntimeException);
+                                     ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
+        virtual void SAL_CALL click( const ::com::sun::star::awt::Point& aPos ) throw (::com::sun::star::uno::RuntimeException);
+        virtual void SAL_CALL doubleClick( const ::com::sun::star::awt::Point& aPos ) throw (::com::sun::star::uno::RuntimeException);
 
     protected:
         struct Listener
@@ -132,6 +128,7 @@ class SVT_DLLPUBLIC StatusbarController : public ::com::sun::star::frame::XStatu
         URLToDispatchMap                                                                    m_aListenerMap;
         ::cppu::OMultiTypeInterfaceContainerHelper                                          m_aListenerContainer;   /// container for ALL Listener
         mutable ::com::sun::star::uno::Reference< ::com::sun::star::util::XURLTransformer > m_xURLTransformer;
+        ::com::sun::star::uno::Reference< ::com::sun::star::ui::XStatusbarItem >           m_xStatusbarItem;
 };
 
 }
diff --git a/reportdesign/source/ui/inc/statusbarcontroller.hxx b/reportdesign/source/ui/inc/statusbarcontroller.hxx
index 413cca6..6e6fda9 100644
--- a/reportdesign/source/ui/inc/statusbarcontroller.hxx
+++ b/reportdesign/source/ui/inc/statusbarcontroller.hxx
@@ -23,20 +23,19 @@
 #include <comphelper/uno3.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <cppuhelper/implbase1.hxx>
-#include <comphelper/implementationreference.hxx>
 
 class SfxStatusBarControl;
 namespace rptui
 {
-    typedef ::comphelper::ImplementationReference<SfxStatusBarControl,::com::sun::star::frame::XStatusbarController> TStatusbarHelper;
+    typedef com::sun::star::uno::Reference< com::sun::star::frame::XStatusbarController > TStatusbarRef;
 
     typedef ::cppu::ImplHelper1 <   ::com::sun::star::lang::XServiceInfo> OStatusbarController_BASE;
     class OStatusbarController : public ::svt::StatusbarController,
                                  public OStatusbarController_BASE
     {
-        TStatusbarHelper m_pController;
-        sal_uInt16       m_nSlotId;
-        sal_uInt16       m_nId;
+        TStatusbarRef   m_rController;
+        sal_uInt16      m_nSlotId;
+        sal_uInt16      m_nId;
     public:
         OStatusbarController(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB);
 
@@ -75,9 +74,9 @@ namespace rptui
                                        const ::com::sun::star::uno::Any& aData ) throw (::com::sun::star::uno::RuntimeException);
         virtual void SAL_CALL paint( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
                                      const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-                                     ::sal_Int32 nItemId, ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL click() throw (::com::sun::star::uno::RuntimeException);
-        virtual void SAL_CALL doubleClick() throw (::com::sun::star::uno::RuntimeException);
+                                     ::sal_Int32 nStyle ) throw (::com::sun::star::uno::RuntimeException);
+        virtual void SAL_CALL click( const ::com::sun::star::awt::Point& aPos ) throw (::com::sun::star::uno::RuntimeException);
+        virtual void SAL_CALL doubleClick( const ::com::sun::star::awt::Point& aPos ) throw (::com::sun::star::uno::RuntimeException);
     };
 }
 #endif // DBAUI_STATUSBARCONTROLLER_HXX
diff --git a/reportdesign/source/ui/misc/statusbarcontroller.cxx b/reportdesign/source/ui/misc/statusbarcontroller.cxx
index 6f73dad..9bb946e 100644
--- a/reportdesign/source/ui/misc/statusbarcontroller.cxx
+++ b/reportdesign/source/ui/misc/statusbarcontroller.cxx
@@ -99,19 +99,25 @@ void SAL_CALL OStatusbarController::initialize( const Sequence< Any >& _rArgumen
                 break;
             }
         }
+
+        SfxStatusBarControl *pController = 0;
         if ( m_aCommandURL == ".uno:ZoomSlider" )
         {
-            m_pController = TStatusbarHelper::createFromQuery(new SvxZoomSliderControl(m_nSlotId = SID_ATTR_ZOOMSLIDER,m_nId,*pStatusBar));
+            pController = new SvxZoomSliderControl(m_nSlotId = SID_ATTR_ZOOMSLIDER,m_nId,*pStatusBar);
         }
         else if ( m_aCommandURL == ".uno:Zoom" )
         {
-            m_pController = TStatusbarHelper::createFromQuery(new SvxZoomStatusBarControl(m_nSlotId = SID_ATTR_ZOOM,m_nId,*pStatusBar));
+            pController = new SvxZoomStatusBarControl(m_nSlotId = SID_ATTR_ZOOM,m_nId,*pStatusBar);
         }
 
-        if ( m_pController.is() )
+        if ( pController )
         {
-            m_pController->initialize(_rArguments);
-            m_pController->update();
+            m_rController.set( pController );
+            if ( m_rController.is() )
+            {
+                m_rController->initialize(_rArguments);
+                m_rController->update();
+            }
         }
 
         addStatusListener(m_aCommandURL);
@@ -124,7 +130,7 @@ void SAL_CALL OStatusbarController::statusChanged( const FeatureStateEvent& _aEv
     SolarMutexGuard aSolarGuard;
     ::osl::MutexGuard aGuard(m_aMutex);
 
-    if ( m_pController.is() )
+    if ( m_rController.is() )
     {
         if ( m_aCommandURL == ".uno:ZoomSlider" )
         {
@@ -133,7 +139,7 @@ void SAL_CALL OStatusbarController::statusChanged( const FeatureStateEvent& _aEv
             {
                 SvxZoomSliderItem aZoomSlider(100,20,400);
                 aZoomSlider.PutValue(_aEvent.State);
-                static_cast<SvxZoomSliderControl*>(m_pController.get())->StateChanged(m_nSlotId,SFX_ITEM_AVAILABLE,&aZoomSlider);
+                static_cast<SvxZoomSliderControl*>(m_rController.get())->StateChanged(m_nSlotId,SFX_ITEM_AVAILABLE,&aZoomSlider);
             }
         }
         else if ( m_aCommandURL == ".uno:Zoom" )
@@ -143,7 +149,7 @@ void SAL_CALL OStatusbarController::statusChanged( const FeatureStateEvent& _aEv
             {
                 SvxZoomItem aZoom;
                 aZoom.PutValue(_aEvent.State);
-                static_cast<SvxZoomStatusBarControl*>(m_pController.get())->StateChanged(m_nSlotId,SFX_ITEM_AVAILABLE,&aZoom);
+                static_cast<SvxZoomStatusBarControl*>(m_rController.get())->StateChanged(m_nSlotId,SFX_ITEM_AVAILABLE,&aZoom);
             }
         }
     }
@@ -152,17 +158,17 @@ void SAL_CALL OStatusbarController::statusChanged( const FeatureStateEvent& _aEv
 // XStatusbarController
 ::sal_Bool SAL_CALL OStatusbarController::mouseButtonDown(const ::com::sun::star::awt::MouseEvent& _aEvent)throw (::com::sun::star::uno::RuntimeException)
 {
-    return m_pController.is() && m_pController.getRef()->mouseButtonDown(_aEvent);
+    return m_rController.is() && m_rController->mouseButtonDown(_aEvent);
 }
 
 ::sal_Bool SAL_CALL OStatusbarController::mouseMove(    const ::com::sun::star::awt::MouseEvent& _aEvent)throw (::com::sun::star::uno::RuntimeException)
 {
-    return m_pController.is() && m_pController.getRef()->mouseMove(_aEvent);
+    return m_rController.is() && m_rController->mouseMove(_aEvent);
 }
 
 ::sal_Bool SAL_CALL OStatusbarController::mouseButtonUp(    const ::com::sun::star::awt::MouseEvent& _aEvent)throw (::com::sun::star::uno::RuntimeException)
 {
-    return m_pController.is() && m_pController.getRef()->mouseButtonUp(_aEvent);
+    return m_rController.is() && m_rController->mouseButtonUp(_aEvent);
 }
 
 void SAL_CALL OStatusbarController::command(
@@ -172,47 +178,49 @@ void SAL_CALL OStatusbarController::command(
     const ::com::sun::star::uno::Any& aData )
 throw (::com::sun::star::uno::RuntimeException)
 {
-    if ( m_pController.is() )
-        m_pController.getRef()->command( aPos, nCommand, bMouseEvent, aData );
+    if ( m_rController.is() )
+        m_rController->command( aPos, nCommand, bMouseEvent, aData );
 }
 
 void SAL_CALL OStatusbarController::paint(
     const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XGraphics >& xGraphics,
     const ::com::sun::star::awt::Rectangle& rOutputRectangle,
-    ::sal_Int32 nItemId,
     ::sal_Int32 nStyle )
 throw (::com::sun::star::uno::RuntimeException)
 {
-    if ( m_pController.is() )
-        m_pController.getRef()->paint( xGraphics, rOutputRectangle, nItemId, nStyle );
+    if ( m_rController.is() )
+        m_rController->paint( xGraphics, rOutputRectangle, nStyle );
 }
 
-void SAL_CALL OStatusbarController::click() throw (::com::sun::star::uno::RuntimeException)
+void SAL_CALL OStatusbarController::click(
+    const ::com::sun::star::awt::Point& aPos )
+throw (::com::sun::star::uno::RuntimeException)
 {
-    if ( m_pController.is() )
-        m_pController.getRef()->click();
+    if ( m_rController.is() )
+        m_rController->click( aPos );
 }
 
-void SAL_CALL OStatusbarController::doubleClick() throw (::com::sun::star::uno::RuntimeException)
+void SAL_CALL OStatusbarController::doubleClick(
+    const ::com::sun::star::awt::Point& aPos )
+throw (::com::sun::star::uno::RuntimeException)
 {
-    if ( m_pController.is() )
-        m_pController.getRef()->doubleClick();
+    if ( m_rController.is() )
+        m_rController->doubleClick( aPos );
 }
 // -----------------------------------------------------------------------------
 void SAL_CALL OStatusbarController::update() throw ( RuntimeException )
 {
     ::svt::StatusbarController::update();
-    Reference< XUpdatable > xUp(m_pController.getRef(),UNO_QUERY);
-    if ( xUp.is() )
-        xUp->update();
+    if ( m_rController.is() )
+        m_rController->update();
 }
 // -----------------------------------------------------------------------------
 // XComponent
 void SAL_CALL OStatusbarController::dispose() throw (::com::sun::star::uno::RuntimeException)
 {
-    Reference< XComponent > xComp( m_pController.getRef(), UNO_QUERY );
-    ::comphelper::disposeComponent(xComp);
-    m_pController.dispose();
+    if ( m_rController.is() )
+        ::comphelper::disposeComponent( m_rController );
+
     svt::StatusbarController::dispose();
 }
 // =============================================================================
diff --git a/sfx2/source/statbar/stbitem.cxx b/sfx2/source/statbar/stbitem.cxx
index 63c1cdc..6095504 100644
--- a/sfx2/source/statbar/stbitem.cxx
+++ b/sfx2/source/statbar/stbitem.cxx
@@ -387,7 +387,6 @@ throw (::com::sun::star::uno::RuntimeException)
 void SAL_CALL SfxStatusBarControl::paint(
     const uno::Reference< awt::XGraphics >& xGraphics,
     const awt::Rectangle& rOutputRectangle,
-    ::sal_Int32 nItemId,
     ::sal_Int32 nStyle )
 throw ( ::uno::RuntimeException )
 {
@@ -397,14 +396,14 @@ throw ( ::uno::RuntimeException )
     if ( pOutDev )
     {
         ::Rectangle aRect = VCLRectangle( rOutputRectangle );
-        UserDrawEvent aUserDrawEvent( pOutDev, aRect, (sal_uInt16)nItemId, (sal_uInt16)nStyle );
+        UserDrawEvent aUserDrawEvent( pOutDev, aRect, pBar->GetCurItemId(), (sal_uInt16)nStyle );
         Paint( aUserDrawEvent );
     }
 }
 
 //--------------------------------------------------------------------
 
-void SAL_CALL SfxStatusBarControl::click()
+void SAL_CALL SfxStatusBarControl::click( const awt::Point& )
 throw ( uno::RuntimeException )
 {
     SolarMutexGuard aGuard;
@@ -413,7 +412,7 @@ throw ( uno::RuntimeException )
 
 //--------------------------------------------------------------------
 
-void SAL_CALL SfxStatusBarControl::doubleClick()
+void SAL_CALL SfxStatusBarControl::doubleClick( const awt::Point& )
 throw ( uno::RuntimeException )
 {
     SolarMutexGuard aGuard;
diff --git a/svtools/source/uno/statusbarcontroller.cxx b/svtools/source/uno/statusbarcontroller.cxx
index cee30a4..d93feed 100644
--- a/svtools/source/uno/statusbarcontroller.cxx
+++ b/svtools/source/uno/statusbarcontroller.cxx
@@ -30,7 +30,7 @@
 #include <vcl/status.hxx>
 #include <svtools/imgdef.hxx>
 #include <svtools/miscopt.hxx>
-#include <toolkit/unohlp.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
 #include <comphelper/processfactory.hxx>
 
 using namespace ::cppu;
@@ -153,6 +153,8 @@ throw ( Exception, RuntimeException )
                     aPropValue.Value >>= m_xParentWindow;
                 else if ( aPropValue.Name == "Identifier" )
                     aPropValue.Value >>= m_nID;
+                else if ( aPropValue.Name == "StatusbarItem" )
+                    aPropValue.Value >>= m_xStatusbarItem;
             }
         }
 
@@ -220,6 +222,7 @@ throw (::com::sun::star::uno::RuntimeException)
     m_xServiceManager.clear();
     m_xFrame.clear();
     m_xParentWindow.clear();
+    m_xStatusbarItem.clear();
 
     m_bDisposed = sal_True;
 }

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list