[ooo-build-commit] 2 commits - patches/dev300 src/icons

Thorsten Behrens thorsten at kemper.freedesktop.org
Sun Sep 20 14:28:18 PDT 2009


 patches/dev300/apply                          |    6 
 patches/dev300/impress-autolayout.diff        |   37 
 patches/dev300/writer-navigation-buttons.diff | 1011 ++++++++++++++++++++++++++
 src/icons/lc_navigateback.png                 |binary
 src/icons/lc_navigateforward.png              |binary
 src/icons/lch_navigateback.png                |binary
 src/icons/lch_navigateforward.png             |binary
 src/icons/sc_navigateback.png                 |binary
 src/icons/sc_navigateforward.png              |binary
 src/icons/sch_navigateback.png                |binary
 src/icons/sch_navigateforward.png             |binary
 11 files changed, 1036 insertions(+), 18 deletions(-)

New commits:
commit 2ff65ee157102e3ad3b90cb40f635e7bae9ae4f9
Author: Thorsten Behrens <tbehrens at novell.com>
Date:   Sun Sep 20 18:00:19 2009 +0200

    Ovcica's Writer navigation button feature
    
    Grabbed from Cedric's blog, tweaked a bit to work
    
    * patches/dev300/apply: added the patch
    * patches/dev300/writer-navigation-buttons.diff: the full feature
    * src/icons/lc_navigateback.png: grabbed from default_images for the
      while
    * src/icons/lc_navigateforward.png: dito
    * src/icons/lch_navigateback.png: dito
    * src/icons/lch_navigateforward.png: dito
    * src/icons/sc_navigateback.png: dito
    * src/icons/sc_navigateforward.png: dito
    * src/icons/sch_navigateback.png: dito
    * src/icons/sch_navigateforward.png: dito

diff --git a/patches/dev300/apply b/patches/dev300/apply
index d853e3b..8fb230e 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -34,7 +34,8 @@ Experimental: VBAUntested, ArkOnlyExperimental, \
 	      PostgreSQL, SELinux, VOSremoval, Glib2, \
 	      UnitBootstrap, RadioButtons, UnstableLibwpd, WWInProgress, \
 	      KDE4Experimental, MinGW, CalcExperimental, Mono24, \
-	      OOXMLExportExperimental, CrossWin32Patches, AutoLayout
+	      OOXMLExportExperimental, CrossWin32Patches, AutoLayout, \
+		  WriterNavigation
 DebianLooseSections: DebianBaseNoHelpContent
 # Optional sections
 Optional : DejaVuFonts, NovellOnlyExtensionFixes, Win32OnlyExtensionFixes, Linux32OnlyExtensionFixes
@@ -3379,6 +3380,9 @@ stream-read-csv-always-single-line.diff, n#523517, kohei
 [ AutoLayout ]
 impress-autolayout.diff, cocofan
 
+[ WriterNavigation ]
+writer-navigation-buttons.diff, ovcica
+
 [ MySQL ]
 cws-mysqlnative-20090916.diff
 
diff --git a/patches/dev300/writer-navigation-buttons.diff b/patches/dev300/writer-navigation-buttons.diff
new file mode 100644
index 0000000..acd5a89
--- /dev/null
+++ b/patches/dev300/writer-navigation-buttons.diff
@@ -0,0 +1,1011 @@
+Ovcica's writer nagivation patches
+
+From: Thorsten Behrens <thb at openoffice.org>
+
+
+---
+
+ .../org/openoffice/Office/UI/WriterCommands.xcu    |   16 ++
+ .../Office/UI/WriterGlobalWindowState.xcu          |   23 +++
+ .../org/openoffice/Office/UI/WriterWindowState.xcu |   23 +++
+ packimages/pack/image-sort.lst                     |    1 
+ sfx2/source/appl/workwin.cxx                       |    1 
+ sw/inc/cmdid.h                                     |    3 
+ sw/inc/helpid.h                                    |    1 
+ sw/inc/shellid.hxx                                 |    1 
+ sw/sdi/_navsh.sdi                                  |   49 ++++++
+ sw/sdi/makefile.mk                                 |    2 
+ sw/sdi/navsh.sdi                                   |   34 +++++
+ sw/sdi/swriter.sdi                                 |   51 +++++++
+ sw/sdi/swslots.sdi                                 |    2 
+ sw/sdi/swslots.src                                 |    8 +
+ sw/source/ui/app/swmodule.cxx                      |    2 
+ sw/source/ui/inc/navmgr.hxx                        |   62 ++++++++
+ sw/source/ui/inc/navsh.hxx                         |   51 +++++++
+ sw/source/ui/inc/shells.hrc                        |    5 +
+ sw/source/ui/inc/view.hxx                          |    3 
+ sw/source/ui/inc/wrtsh.hxx                         |    4 +
+ sw/source/ui/shells/makefile.mk                    |    1 
+ sw/source/ui/shells/navsh.cxx                      |  151 ++++++++++++++++++++
+ sw/source/ui/shells/shells.src                     |   37 +++++
+ sw/source/ui/uiview/view.cxx                       |   10 +
+ sw/source/ui/utlui/content.cxx                     |    7 +
+ sw/source/ui/wrtsh/makefile.mk                     |    1 
+ sw/source/ui/wrtsh/navmgr.cxx                      |   73 ++++++++++
+ sw/source/ui/wrtsh/wrtsh1.cxx                      |    6 +
+ .../swriter/toolbar/navigationobjectbar.xml        |    7 +
+ 29 files changed, 633 insertions(+), 2 deletions(-)
+ create mode 100644 sw/sdi/_navsh.sdi
+ create mode 100644 sw/sdi/navsh.sdi
+ create mode 100644 sw/source/ui/inc/navmgr.hxx
+ create mode 100644 sw/source/ui/inc/navsh.hxx
+ create mode 100644 sw/source/ui/shells/navsh.cxx
+ create mode 100644 sw/source/ui/wrtsh/navmgr.cxx
+ create mode 100644 sw/uiconfig/swriter/toolbar/navigationobjectbar.xml
+
+
+diff --git officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
+index 33397c0..3a1de0b 100644
+--- officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
++++ officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu
+@@ -2252,6 +2252,22 @@
+                     <value xml:lang="en-US">Continue previous numbering</value>
+                 </prop>
+             </node>
++            <node oor:name=".uno:NavigateBack" oor:op="replace">
++                <prop oor:name="Label" oor:type="xs:string">
++                    <value xml:lang="en-US">Back</value>
++                </prop>
++                <prop oor:name="Properties" oor:type="xs:int">
++                    <value>1</value>
++                </prop>
++            </node>
++            <node oor:name=".uno:NavigateForward" oor:op="replace">
++                <prop oor:name="Label" oor:type="xs:string">
++                    <value xml:lang="en-US">Forward</value>
++                </prop>
++                <prop oor:name="Properties" oor:type="xs:int">
++                    <value>1</value>
++                </prop>
++            </node>
+         </node>
+     </node>
+ </oor:component-data>
+diff --git officecfg/registry/data/org/openoffice/Office/UI/WriterGlobalWindowState.xcu officecfg/registry/data/org/openoffice/Office/UI/WriterGlobalWindowState.xcu
+index aeb443e..dc62716 100644
+--- officecfg/registry/data/org/openoffice/Office/UI/WriterGlobalWindowState.xcu
++++ officecfg/registry/data/org/openoffice/Office/UI/WriterGlobalWindowState.xcu
+@@ -446,6 +446,29 @@
+                     <value>true</value>
+                 </prop>
+             </node>
++			<node oor:name="private:resource/toolbar/navigationobjectbar" oor:op="replace">
++				<prop oor:name="DockingArea" oor:type="xs:int">
++					<value>0</value>
++				</prop>
++				<prop oor:name="DockPos" oor:type="xs:string">
++					<value>0,1</value>
++				</prop>
++				<prop oor:name="Docked" oor:type="xs:boolean">
++					<value>true</value>
++				</prop>
++				<prop oor:name="Visible" oor:type="xs:boolean">
++					<value>true</value>
++				</prop>
++				<prop oor:name="UIName" oor:type="xs:string">
++					<value xml:lang="en-US">Navigation</value>
++				</prop>
++				<prop oor:name="HideFromToolbarMenu" oor:type="xs:boolean">
++					<value>false</value>
++				</prop>
++				<prop oor:name="ContextSensitive" oor:type="xs:boolean">
++				    <value>false</value>
++				</prop>
++			</node>
+             <node oor:name="private:resource/toolbar/viewerbar" oor:op="replace">
+                 <prop oor:name="DockingArea" oor:type="xs:int">
+                     <value>0</value>
+diff --git officecfg/registry/data/org/openoffice/Office/UI/WriterWindowState.xcu officecfg/registry/data/org/openoffice/Office/UI/WriterWindowState.xcu
+index 12cc7a9..3400db3 100644
+--- officecfg/registry/data/org/openoffice/Office/UI/WriterWindowState.xcu
++++ officecfg/registry/data/org/openoffice/Office/UI/WriterWindowState.xcu
+@@ -452,6 +452,29 @@
+                     <value>true</value>
+                 </prop>
+             </node>
++			<node oor:name="private:resource/toolbar/navigationobjectbar" oor:op="replace">
++				<prop oor:name="DockingArea" oor:type="xs:int">
++					<value>0</value>
++				</prop>
++				<prop oor:name="DockPos" oor:type="xs:string">
++					<value>0,1</value>
++				</prop>
++				<prop oor:name="Docked" oor:type="xs:boolean">
++					<value>true</value>
++				</prop>
++				<prop oor:name="Visible" oor:type="xs:boolean">
++					<value>true</value>
++				</prop>
++				<prop oor:name="UIName" oor:type="xs:string">
++					<value xml:lang="en-US">Navigation</value>
++				</prop>
++				<prop oor:name="HideFromToolbarMenu" oor:type="xs:boolean">
++					<value>false</value>
++				</prop>
++				<prop oor:name="ContextSensitive" oor:type="xs:boolean">
++				    <value>false</value>
++				</prop>
++			</node>
+             <node oor:name="private:resource/toolbar/viewerbar" oor:op="replace">
+                 <prop oor:name="DockingArea" oor:type="xs:int">
+                     <value>0</value>
+diff --git packimages/pack/image-sort.lst packimages/pack/image-sort.lst
+index 43202b8..1118b3a 100644
+--- packimages/pack/image-sort.lst
++++ packimages/pack/image-sort.lst
+@@ -303,6 +303,7 @@ uiconfig/modules/swriter/toolbar/graphicobjectbar.xml
+ uiconfig/modules/swriter/toolbar/insertbar.xml
+ uiconfig/modules/swriter/toolbar/mediaobjectbar.xml
+ uiconfig/modules/swriter/toolbar/moreformcontrols.xml
++uiconfig/modules/swriter/toolbar/navigationobjectbar.xml
+ uiconfig/modules/swriter/toolbar/numobjectbar.xml
+ uiconfig/modules/swriter/toolbar/oleobjectbar.xml
+ uiconfig/modules/swriter/toolbar/optimizetablebar.xml
+diff --git sfx2/source/appl/workwin.cxx sfx2/source/appl/workwin.cxx
+index d6bfb67..b7a5de9 100644
+--- sfx2/source/appl/workwin.cxx
++++ sfx2/source/appl/workwin.cxx
+@@ -143,6 +143,7 @@ static const ResIdToResName pToolBarResToName[] =
+     { 23031,    "mediaobjectbar"       },      //draw/impress
+     { 25060,    "mediaobjectbar"       },      //calc
+     { 23311,    "mediaobjectbar"       },      //writer
++    { 23313,    "navigationobjectbar"  },      //writer
+     { 0,        ""                     }
+ };
+ 
+diff --git sw/inc/cmdid.h sw/inc/cmdid.h
+index d1ed2c6..ebc7fa7 100644
+--- sw/inc/cmdid.h
++++ sw/inc/cmdid.h
+@@ -912,6 +912,9 @@ Achtung: Ab sofort sind in diesem File keine C++-Kommentare (//) mehr
+ #define FN_UNO_PARA_CONT_PREV_SUBTREE       (FN_EXTRA2 + 109)
+ #define FN_UNO_PARA_NUM_STRING              (FN_EXTRA2 + 110)
+ 
++#define FN_NAVIGATION_BACK                  (FN_EXTRA2 + 111)
++#define FN_NAVIGATION_FORWARD               (FN_EXTRA2 + 112)
++
+ /*--------------------------------------------------------------------
+     Bereich: Hilfe
+  --------------------------------------------------------------------*/
+diff --git sw/inc/helpid.h sw/inc/helpid.h
+index b4afd73..8ffe632 100644
+--- sw/inc/helpid.h
++++ sw/inc/helpid.h
+@@ -985,3 +985,4 @@
+ #define HID_MM_HEADER_12                            (HID_BASE + 2279)
+ #define HID_MM_HEADER_13                            (HID_BASE + 2280)
+ 
++#define HID_NAVIGATION_TOOLBOX                      (HID_BASE + 2281)
+diff --git sw/inc/shellid.hxx sw/inc/shellid.hxx
+index df82192..a3676a5 100644
+--- sw/inc/shellid.hxx
++++ sw/inc/shellid.hxx
+@@ -73,4 +73,5 @@
+ #define SW_MEDIASHELL 			(SFX_INTERFACE_SW_START + 31)
+ #define SW_ANNOTATIONSHELL 		(SFX_INTERFACE_SW_START + 32)
+ 
++#define SW_NAVIGATIONSHELL              (SFX_INTERFACE_SW_START + 33)
+ #endif // _UIPARAM_HXX
+diff --git sw/sdi/_navsh.sdi sw/sdi/_navsh.sdi
+new file mode 100644
+index 0000000..deb4fb9
+--- /dev/null
++++ sw/sdi/_navsh.sdi
+@@ -0,0 +1,49 @@
++/*************************************************************************
++ *
++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++ * 
++ * Copyright 2008 by Sun Microsystems, Inc.
++ *
++ * OpenOffice.org - a multi-platform office productivity suite
++ *
++ * $RCSfile: _navsh.sdi,v $
++ * $Revision: 1.0 $
++ *
++ * This file is part of OpenOffice.org.
++ *
++ * OpenOffice.org is free software: you can redistribute it and/or modify
++ * it under the terms of the GNU Lesser General Public License version 3
++ * only, as published by the Free Software Foundation.
++ *
++ * OpenOffice.org is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU Lesser General Public License version 3 for more details
++ * (a copy is included in the LICENSE file that accompanied this code).
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * version 3 along with OpenOffice.org.  If not, see
++ * <http://www.openoffice.org/license.html>
++ * for a copy of the LGPLv3 License.
++ *
++ ************************************************************************/
++
++interface _Navigation
++[ Automation = FALSE; ]
++{
++	SfxVoidItem NavigateBack FN_NAVIGATION_BACK
++	[
++		ExecMethod = Execute ;
++		StateMethod = GetState;
++		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
++	]	
++	
++	SfxVoidItem NavigateForward FN_NAVIGATION_FORWARD
++	[
++		ExecMethod = Execute ;
++		StateMethod = GetState;
++		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
++	]	
++
++}
++
+diff --git sw/sdi/makefile.mk sw/sdi/makefile.mk
+index 1a3f17a..7c707b8 100644
+--- sw/sdi/makefile.mk
++++ sw/sdi/makefile.mk
+@@ -95,6 +95,8 @@ SVSDI1DEPEND= \
+         mediash.sdi\
+         _annotsh.sdi\
+         annotsh.sdi\
++		_navsh.sdi \
++		navsh.sdi \
+         swslots.hrc \
+         $(INC)$/globals.hrc \
+         $(INC)$/cmdid.h
+diff --git sw/sdi/navsh.sdi sw/sdi/navsh.sdi
+new file mode 100644
+index 0000000..791ec99
+--- /dev/null
++++ sw/sdi/navsh.sdi
+@@ -0,0 +1,34 @@
++/*************************************************************************
++ *
++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++ * 
++ * Copyright 2008 by Sun Microsystems, Inc.
++ *
++ * OpenOffice.org - a multi-platform office productivity suite
++ *
++ * $RCSfile: annotsh.sdi,v $
++ * $Revision: 1.6 $
++ *
++ * This file is part of OpenOffice.org.
++ *
++ * OpenOffice.org is free software: you can redistribute it and/or modify
++ * it under the terms of the GNU Lesser General Public License version 3
++ * only, as published by the Free Software Foundation.
++ *
++ * OpenOffice.org is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU Lesser General Public License version 3 for more details
++ * (a copy is included in the LICENSE file that accompanied this code).
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * version 3 along with OpenOffice.org.  If not, see
++ * <http://www.openoffice.org/license.html>
++ * for a copy of the LGPLv3 License.
++ *
++ ************************************************************************/
++
++shell SwNavigationShell
++{
++	import _Navigation[Automation];
++}
+diff --git sw/sdi/swriter.sdi sw/sdi/swriter.sdi
+index b736807..7888e1b 100644
+--- sw/sdi/swriter.sdi
++++ sw/sdi/swriter.sdi
+@@ -10441,3 +10441,54 @@ SfxVoidItem CopyHyperlinkLocation FN_COPY_HYPERLINK_LOCATION
+     ToolBoxConfig = TRUE,
+     GroupId = GID_EDIT;
+ ]
++
++//--------------------------------------------------------------------------
++SfxVoidItem NavigateBack FN_NAVIGATION_BACK
++[
++    /* flags: */
++    AutoUpdate = TRUE,
++    Cachable = Cachable,
++    FastCall = FALSE,
++    HasCoreId = FALSE,
++    HasDialog = FALSE,
++    ReadOnlyDoc = FALSE,
++    Toggle = FALSE,
++    Container = FALSE,
++    RecordAbsolute = FALSE,
++    RecordPerSet;
++    Asynchron;
++
++    Readonly = FALSE,
++
++    /* config: */
++    AccelConfig = TRUE,
++    MenuConfig = TRUE,
++    StatusBarConfig = FALSE,
++    ToolBoxConfig = TRUE,
++    GroupId = GID_NAVIGATOR;
++]
++//--------------------------------------------------------------------------
++SfxVoidItem NavigateForward FN_NAVIGATION_FORWARD
++[
++    /* flags: */
++    AutoUpdate = TRUE,
++    Cachable = Cachable,
++    FastCall = FALSE,
++    HasCoreId = FALSE,
++    HasDialog = FALSE,
++    ReadOnlyDoc = FALSE,
++    Toggle = FALSE,
++    Container = FALSE,
++    RecordAbsolute = FALSE,
++    RecordPerSet;
++    Asynchron;
++
++    Readonly = FALSE,
++
++    /* config: */
++    AccelConfig = TRUE,
++    MenuConfig = TRUE,
++    StatusBarConfig = FALSE,
++    ToolBoxConfig = TRUE,
++    GroupId = GID_NAVIGATOR;
++]
+diff --git sw/sdi/swslots.sdi sw/sdi/swslots.sdi
+index 789301f..9997bd1 100644
+--- sw/sdi/swslots.sdi
++++ sw/sdi/swslots.sdi
+@@ -120,6 +120,8 @@ ModulePrefix( "Sw" )
+     include "_annotsh.sdi"
+     include "annotsh.sdi"
+ 
++	include "_navsh.sdi"
++    include "navsh.sdi"
+ }
+ 
+ 
+diff --git sw/sdi/swslots.src sw/sdi/swslots.src
+index 5839b2b..f0b7c53 100644
+--- sw/sdi/swslots.src
++++ sw/sdi/swslots.src
+@@ -1496,4 +1496,12 @@ SfxSlotInfo FN_VIEW_NOTES
+ {
+     Slotname [ en-US ] = "Notes";
+ };
++SfxSlotInfo FN_NAVIGATION_BACK
++{
++	SlotName [ en-US ] = "Back";
++};
++SfxSlotInfo FN_NAVIGATION_FORWARD
++{
++	SlotName [ en-US ] = "Forward";
++}
+ 
+diff --git sw/source/ui/app/swmodule.cxx sw/source/ui/app/swmodule.cxx
+index 6c8d10c..0fce83e 100644
+--- sw/source/ui/app/swmodule.cxx
++++ sw/source/ui/app/swmodule.cxx
+@@ -165,6 +165,7 @@
+ #include <avmedia/mediatoolbox.hxx>
+ 
+ #include <annotsh.hxx>
++#include <navsh.hxx>
+ 
+ #include <app.hrc>
+ #include <svx/xmlsecctrl.hxx>
+@@ -359,6 +360,7 @@ void SwDLL::RegisterInterfaces()
+     SwBezierShell::RegisterInterface(pMod);
+     SwGrfShell::RegisterInterface(pMod);
+     SwOleShell::RegisterInterface(pMod);
++	SwNavigationShell::RegisterInterface(pMod);
+     SwWebTextShell::RegisterInterface(pMod);
+     SwWebFrameShell::RegisterInterface(pMod);
+     SwWebGrfShell::RegisterInterface(pMod);
+diff --git sw/source/ui/inc/navmgr.hxx sw/source/ui/inc/navmgr.hxx
+new file mode 100644
+index 0000000..68b43f2
+--- /dev/null
++++ sw/source/ui/inc/navmgr.hxx
+@@ -0,0 +1,62 @@
++/*************************************************************************
++ *
++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++ * 
++ * Copyright 2008 by Sun Microsystems, Inc.
++ *
++ * OpenOffice.org - a multi-platform office productivity suite
++ *
++ * $RCSfile: navmgr.hxx,v $
++ * $Revision: 1.0 $
++ *
++ * This file is part of OpenOffice.org.
++ *
++ * OpenOffice.org is free software: you can redistribute it and/or modify
++ * it under the terms of the GNU Lesser General Public License version 3
++ * only, as published by the Free Software Foundation.
++ *
++ * OpenOffice.org is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU Lesser General Public License version 3 for more details
++ * (a copy is included in the LICENSE file that accompanied this code).
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * version 3 along with OpenOffice.org.  If not, see
++ * <http://www.openoffice.org/license.html>
++ * for a copy of the LGPLv3 License.
++ *
++ ************************************************************************/
++#ifndef _NAVMGR_HXX
++#define _NAVMGR_HXX
++
++#include "swtypes.hxx"
++#include "pam.hxx"
++#include <svx/svxenum.hxx>
++#include <tools/gen.hxx>
++#include "swdllapi.h"
++
++class	SwWrtShell;
++struct  SwPosition;
++
++class SW_DLLPUBLIC SwNavigationMgr
++{
++private:
++	std::vector<SwPosition*>::iterator _iCurrent;
++	std::vector<SwPosition*> _entries; 
++	int _nCurrent;
++	SwWrtShell* _pMyShell;
++	
++	void GotoSwPosition(SwPosition* aPos);
++
++public:
++	SwNavigationMgr();
++    void setShell( SwWrtShell* pShell );
++
++	BOOL backEnabled() ;
++	BOOL forwardEnabled();
++	void goBack() ;
++	void goForward() ;
++	void addEntry(SwPosition* aPos);
++};
++#endif
+diff --git sw/source/ui/inc/navsh.hxx sw/source/ui/inc/navsh.hxx
+new file mode 100644
+index 0000000..5f0c3c6
+--- /dev/null
++++ sw/source/ui/inc/navsh.hxx
+@@ -0,0 +1,51 @@
++/*************************************************************************
++ *
++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++ * 
++ * Copyright 2008 by Sun Microsystems, Inc.
++ *
++ * OpenOffice.org - a multi-platform office productivity suite
++ *
++ * $RCSfile: navsh.hxx,v $
++ * $Revision: 1.2 $
++ *
++ * This file is part of OpenOffice.org.
++ *
++ * OpenOffice.org is free software: you can redistribute it and/or modify
++ * it under the terms of the GNU Lesser General Public License version 3
++ * only, as published by the Free Software Foundation.
++ *
++ * OpenOffice.org is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU Lesser General Public License version 3 for more details
++ * (a copy is included in the LICENSE file that accompanied this code).
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * version 3 along with OpenOffice.org.  If not, see
++ * <http://www.openoffice.org/license.html>
++ * for a copy of the LGPLv3 License.
++ *
++ ************************************************************************/
++#ifndef _SWNAVIGATIONSH_HXX
++#define _SWNAVIGATIONSH_HXX
++
++#include "frmsh.hxx"
++
++class SfxItemSet;
++class SwWrtShell;
++
++
++
++class SwNavigationShell: public SwBaseShell
++{
++public:
++  SFX_DECL_INTERFACE(SW_NAVIGATIONSHELL)
++  
++  SwNavigationShell(SwView &rView);
++  
++  void	GetState(SfxItemSet &);
++  void 	Execute(SfxRequest &);
++};
++
++#endif
+diff --git sw/source/ui/inc/shells.hrc sw/source/ui/inc/shells.hrc
+index feb200c..92a11bb 100644
+--- sw/source/ui/inc/shells.hrc
++++ sw/source/ui/inc/shells.hrc
+@@ -105,7 +105,10 @@
+ 
+ #define RID_MEDIA_TOOLBOX         	(RC_SHELLS_BEGIN + 61)
+ 
+-#define SHELLS_ACT_END              RID_MEDIA_TOOLBOX
++#define STR_SHELLNAME_NAVIGATION   (RC_SHELLS_BEGIN +  62)
++#define RID_NAVIGATION_TOOLBOX     (RC_SHELLS_BEGIN +  63)
++
++#define SHELLS_ACT_END              RID_NAVIGATION_TOOLBOX
+ 
+ #if SHELLS_ACT_END > RC_SHELLS_END
+ #error Resource-Id Ueberlauf in #file, #line
+diff --git sw/source/ui/inc/view.hxx sw/source/ui/inc/view.hxx
+index 72c5b35..57e2fe5 100644
+--- sw/source/ui/inc/view.hxx
++++ sw/source/ui/inc/view.hxx
+@@ -130,7 +130,8 @@ enum ShellModes
+     SHELL_MODE_MEDIA,
+     SHELL_MODE_EXTRUDED_CUSTOMSHAPE,
+     SHELL_MODE_FONTWORK,
+-    SHELL_MODE_POSTIT
++	SHELL_MODE_POSTIT,
++	SHELL_MODE_NAVIGATION
+ };
+ 
+ /*--------------------------------------------------------------------
+diff --git sw/source/ui/inc/wrtsh.hxx sw/source/ui/inc/wrtsh.hxx
+index b36588c..3082ec5 100644
+--- sw/source/ui/inc/wrtsh.hxx
++++ sw/source/ui/inc/wrtsh.hxx
+@@ -36,6 +36,7 @@
+ #include <sortopt.hxx>
+ #include <swurl.hxx>
+ 
++#include "navmgr.hxx"
+ class Window;
+ class OutputDevice;
+ class SbxArray;
+@@ -86,6 +87,7 @@ namespace nsSelectionType
+     const SelectionType SEL_EXTRUDED_CUSTOMSHAPE = 0x008000; 	// extruded custom shape
+     const SelectionType SEL_FONTWORK  		= 0x010000;	// fontwork
+     const SelectionType SEL_POSTIT			= 0x020000;	//annotation
++    const SelectionType SEL_NAV             = 0x040000; //navigation buttons
+ }
+ 
+ 
+@@ -473,6 +475,7 @@ typedef BOOL (SwWrtShell:: *FNSimpleMove)();
+ 
+     String GetSelDescr() const;
+ 
++    SwNavigationMgr& GetNavigationMgr();
+ private:
+ 
+     SW_DLLPRIVATE void	OpenMark();
+@@ -529,6 +532,7 @@ private:
+     } *pCrsrStack;
+ 
+     SwView	&rView;
++	SwNavigationMgr aNavigationMgr;
+ 
+     Point	aDest;
+     BOOL	bDestOnStack;
+diff --git sw/source/ui/shells/makefile.mk sw/source/ui/shells/makefile.mk
+index 2e4a96c..44478cb 100644
+--- sw/source/ui/shells/makefile.mk
++++ sw/source/ui/shells/makefile.mk
+@@ -62,6 +62,7 @@ SLOFILES =  \
+         $(SLO)$/grfshex.obj \
+         $(SLO)$/mediash.obj \
+         $(SLO)$/listsh.obj \
++		$(SLO)$/navsh.obj \
+         $(SLO)$/olesh.obj \
+         $(SLO)$/slotadd.obj \
+         $(SLO)$/tabsh.obj \
+diff --git sw/source/ui/shells/navsh.cxx sw/source/ui/shells/navsh.cxx
+new file mode 100644
+index 0000000..21106b9
+--- /dev/null
++++ sw/source/ui/shells/navsh.cxx
+@@ -0,0 +1,151 @@
++/*************************************************************************
++ *
++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++ * 
++ * Copyright 2008 by Sun Microsystems, Inc.
++ *
++ * OpenOffice.org - a multi-platform office productivity suite
++ *
++ * $RCSfile: navsh.cxx,v $
++ * $Revision: 1.0 $
++ *
++ * This file is part of OpenOffice.org.
++ *
++ * OpenOffice.org is free software: you can redistribute it and/or modify
++ * it under the terms of the GNU Lesser General Public License version 3
++ * only, as published by the Free Software Foundation.
++ *
++ * OpenOffice.org is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU Lesser General Public License version 3 for more details
++ * (a copy is included in the LICENSE file that accompanied this code).
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * version 3 along with OpenOffice.org.  If not, see
++ * <http://www.openoffice.org/license.html>
++ * for a copy of the LGPLv3 License.
++ *
++ ************************************************************************/
++
++// MARKER(update_precomp.py): autogen include statement, do not remove
++#include "precompiled_sw.hxx"
++
++
++#include "cmdid.h"
++#include <svx/svdview.hxx>
++#include <svx/srchitem.hxx>
++#include <svtools/eitem.hxx>
++#include <svtools/whiter.hxx>
++#include <svx/svdopath.hxx>
++#include <sfx2/request.hxx>
++#include <sfx2/dispatch.hxx>
++#include <sfx2/objface.hxx>
++
++#include "wrtsh.hxx"
++#include "view.hxx"
++#include "edtwin.hxx"
++#include "helpid.h"
++#include "globals.hrc"
++
++#include "navsh.hxx"
++
++
++#include "popup.hrc"
++#include "shells.hrc"
++#define SwNavigationShell
++#include "itemdef.hxx"
++#include "swslots.hxx"
++
++#include <unomid.h>
++
++#include "navmgr.hxx"
++
++#if DEBUG
++#include <iostream>
++using namespace std;
++#endif
++
++SFX_IMPL_INTERFACE(SwNavigationShell, SwBaseShell, SW_RES(STR_SHELLNAME_NAVIGATION))
++{
++  SFX_OBJECTBAR_REGISTRATION(SFX_OBJECTBAR_OBJECT, SW_RES(RID_NAVIGATION_TOOLBOX));
++}
++
++SwNavigationShell::SwNavigationShell(SwView &_rView):
++SwBaseShell( _rView )
++
++{
++  SetName(C2S("Navigation"));
++  SetHelpId(SW_NAVIGATIONSHELL);
++}
++
++void SwNavigationShell::Execute(SfxRequest &rReq)
++{
++  SwWrtShell *pSh = &GetShell();
++  SdrView*	pSdrView = pSh->GetDrawView();
++  const SfxItemSet *pArgs = rReq.GetArgs();
++  USHORT		nSlotId = rReq.GetSlot();
++  BOOL		bChanged = pSdrView->GetModel()->IsChanged();
++  pSdrView->GetModel()->SetChanged(FALSE);
++  SwNavigationMgr& mgr = pSh->GetNavigationMgr();
++  const SfxPoolItem* pItem;
++  if(pArgs)
++    pArgs->GetItemState(nSlotId, FALSE, &pItem);
++  
++  switch (nSlotId) 
++    {
++    case FN_NAVIGATION_BACK:
++		mgr.goBack();
++		break;
++    
++    case FN_NAVIGATION_FORWARD:
++		mgr.goForward();
++      break;
++    default:
++      break;
++    }
++  if (pSdrView->GetModel()->IsChanged())
++    GetShell().SetModified();
++  else if (bChanged)
++    pSdrView->GetModel()->SetChanged(TRUE);
++}
++
++/*--------------------------------------------------------------------
++  set buttons to enabled/disabled
++  --------------------------------------------------------------------*/
++
++
++void SwNavigationShell::GetState(SfxItemSet &rSet)
++{
++  SwWrtShell *pSh = &GetShell();
++  SfxWhichIter aIter( rSet );
++  USHORT nWhich = aIter.FirstWhich();
++  SwNavigationMgr& aNavigationMgr = pSh->GetNavigationMgr();
++  while( nWhich )
++    {
++      switch( nWhich )
++	{
++	case FN_NAVIGATION_BACK:
++    {
++#if DEBUG
++        clog << "SwNavigationShell::GetState( FN_NAVIGATION_BACK )" << endl;
++#endif
++	  if (!aNavigationMgr.backEnabled())
++	    rSet.DisableItem(FN_NAVIGATION_BACK);
++    }
++	break;
++	case FN_NAVIGATION_FORWARD:
++    {
++#if DEBUG
++      clog << "SwNavigationShell::GetState( FN_NAVIGATION_FORWARD )" << endl;
++#endif
++	  if (!aNavigationMgr.forwardEnabled()) 
++	    rSet.DisableItem(FN_NAVIGATION_FORWARD);
++    }
++    break;
++	default:
++	  break;
++	}
++      nWhich = aIter.NextWhich();
++    }
++}
+diff --git sw/source/ui/shells/shells.src sw/source/ui/shells/shells.src
+index 9140062..35e7e80 100644
+--- sw/source/ui/shells/shells.src
++++ sw/source/ui/shells/shells.src
+@@ -1033,6 +1033,43 @@ ToolBox RID_NUM_TOOLBOX
+     };
+     Scroll = TRUE ;
+ };
++
++
++ToolBox RID_NAVIGATION_TOOLBOX
++{
++  HelpID = HID_NAVIGATION_TOOLBOX ;
++  Border = TRUE ;
++  SVLook = TRUE ;
++  Dockable = TRUE ;
++  Moveable = TRUE ;
++  Sizeable = TRUE ;
++  Closeable = TRUE ;
++  Zoomable = TRUE ;
++  LineSpacing = TRUE ;
++  Customize = TRUE ;
++  MenuStrings = TRUE ;
++  Scroll = TRUE ;
++  ItemList =
++    {
++      ToolBoxItem
++      {
++	Identifier = FN_NAVIGATION_BACK ;
++	HelpID = FN_NAVIGATION_BACK ;
++      };
++      ToolBoxItem
++      {
++	Identifier = FN_NAVIGATION_FORWARD ;
++	HelpID = FN_NAVIGATION_FORWARD ;
++      };    
++    };
++};
++
++
++String RID_NAVIGATION_TOOLBOX
++{
++  Text [ en-US ] = "Navigation Bar" ;
++  Text [ x-comment ] = " ";
++};
+ String STR_SHELLNAME_TEXT
+ {
+         Text [ en-US ] = "Text" ;
+diff --git sw/source/ui/uiview/view.cxx sw/source/ui/uiview/view.cxx
+index 63b04d2..f6e897e 100644
+--- sw/source/ui/uiview/view.cxx
++++ sw/source/ui/uiview/view.cxx
+@@ -105,6 +105,9 @@
+ #ifndef _BEZIERSH_HXX
+ #include <beziersh.hxx>
+ #endif
++#ifndef _SWNAVIGATIONSH_HXX
++#include <navsh.hxx>
++#endif
+ #ifndef _GLOBDOC_HXX
+ #include <globdoc.hxx>
+ #endif
+@@ -396,6 +399,13 @@ void SwView::SelectShell()
+         if ( !( nSelectionType & nsSelectionType::SEL_FOC_FRM_CTRL ) )
+             rDispatcher.Push( *pFormShell );
+ 
++        if ( nSelectionType & nsSelectionType::SEL_NAV )
++        {
++            eShellMode = SHELL_MODE_NAVIGATION;
++            pShell = new SwNavigationShell( *this );
++            rDispatcher.Push( *pShell );
++        }
++
+         if ( nSelectionType & nsSelectionType::SEL_OLE )
+         {
+             eShellMode = SHELL_MODE_OBJECT;
+diff --git sw/source/ui/utlui/content.cxx sw/source/ui/utlui/content.cxx
+index 6ee8f3e..d1c7dd1 100644
+--- sw/source/ui/utlui/content.cxx
++++ sw/source/ui/utlui/content.cxx
+@@ -118,6 +118,7 @@
+ #include "globals.hrc"
+ #include <unomid.h>
+ 
++#include "navmgr.hxx"
+ 
+ #define CTYPE_CNT	0
+ #define CTYPE_CTT	1
+@@ -3171,6 +3172,12 @@ void SwContentTree::GotoContent(SwContent* pCnt)
+ 
+     sal_Bool bSel = sal_False;
+     sal_uInt16 nJumpType = pCnt->GetParent()->GetType();
++	SwNavigationMgr& aNavigationMgr = pActiveShell->GetNavigationMgr();
++	SwPaM* pPaM = pActiveShell->GetCrsr();
++	  
++	if(pPaM->HasMark()) 
++		pPaM->DeleteMark(); //If there was a selection, get rid of it
++	aNavigationMgr.addEntry(pPaM->GetPoint());
+     switch(nJumpType)
+     {
+         case CONTENT_TYPE_OUTLINE	:
+diff --git sw/source/ui/wrtsh/makefile.mk sw/source/ui/wrtsh/makefile.mk
+index b082743..370c790 100644
+--- sw/source/ui/wrtsh/makefile.mk
++++ sw/source/ui/wrtsh/makefile.mk
+@@ -47,6 +47,7 @@ SRC1FILES =  \
+         wrtsh.src
+ 
+ SLOFILES =  \
++		$(SLO)$/navmgr.obj \
+         $(SLO)$/move.obj \
+         $(SLO)$/select.obj \
+         $(SLO)$/wrtsh1.obj \
+diff --git sw/source/ui/wrtsh/navmgr.cxx sw/source/ui/wrtsh/navmgr.cxx
+new file mode 100644
+index 0000000..f5f0a93
+--- /dev/null
++++ sw/source/ui/wrtsh/navmgr.cxx
+@@ -0,0 +1,73 @@
++/*************************************************************************
++ *
++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++ * 
++ * Copyright 2008 by Sun Microsystems, Inc.
++ *
++ * OpenOffice.org - a multi-platform office productivity suite
++ *
++ * $RCSfile: navmgr.cxx,v $
++ * $Revision: 1.0 $
++ *
++ * This file is part of OpenOffice.org.
++ *
++ * OpenOffice.org is free software: you can redistribute it and/or modify
++ * it under the terms of the GNU Lesser General Public License version 3
++ * only, as published by the Free Software Foundation.
++ *
++ * OpenOffice.org is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU Lesser General Public License version 3 for more details
++ * (a copy is included in the LICENSE file that accompanied this code).
++ *
++ * You should have received a copy of the GNU Lesser General Public License
++ * version 3 along with OpenOffice.org.  If not, see
++ * <http://www.openoffice.org/license.html>
++ * for a copy of the LGPLv3 License.
++ *
++ ************************************************************************/
++#include "navmgr.hxx"
++#include "wrtsh.hxx"
++void SwNavigationMgr::GotoSwPosition(SwPosition* aPos) {
++	SwWrtShell& rSh = *_pMyShell;
++	rSh.LockView( TRUE );
++	rSh.StartAllAction();
++	SwPaM* pPaM = rSh.GetCrsr();
++	  
++	if(pPaM->HasMark()) 
++		pPaM->DeleteMark(); //If there was a selection, get rid of it
++	*pPaM->GetPoint() = *aPos;        // Position Cursor
++	  
++	rSh.EndAllAction();
++	rSh.LockView( FALSE );
++}
++
++SwNavigationMgr::SwNavigationMgr() {
++	 _nCurrent = -1;
++	_iCurrent = _entries.begin();
++}
++void SwNavigationMgr::setShell(SwWrtShell* shell) {
++	_pMyShell = shell;
++}
++BOOL SwNavigationMgr::backEnabled() {
++	return (_nCurrent >= 0);
++}
++BOOL SwNavigationMgr::forwardEnabled() {
++	return (_nCurrent < (int)(_entries.size() - 1));
++}
++void SwNavigationMgr::goBack()  {
++	_nCurrent--; 
++	_iCurrent--;
++	GotoSwPosition(*_iCurrent);
++}
++void SwNavigationMgr::goForward() {
++	_nCurrent++; 
++	_iCurrent++;
++	GotoSwPosition(*_iCurrent);
++}
++void SwNavigationMgr::addEntry(SwPosition* aPos) {
++	_entries.erase(_iCurrent, _entries.end() );
++	_entries.push_back(aPos);
++	_iCurrent = _entries.end(); _nCurrent = _entries.size() - 1;
++}
+diff --git sw/source/ui/wrtsh/wrtsh1.cxx sw/source/ui/wrtsh/wrtsh1.cxx
+index daed60c..dd3f4b2 100644
+--- sw/source/ui/wrtsh/wrtsh1.cxx
++++ sw/source/ui/wrtsh/wrtsh1.cxx
+@@ -1496,6 +1496,8 @@ SelectionType SwWrtShell::GetSelectionType() const
+             return nsSelectionType::SEL_FRM;
+     }
+ 
++    nCnt |= nsSelectionType::SEL_NAV;
++
+     if ( IsCrsrInTbl() )
+         nCnt |= nsSelectionType::SEL_TBL;
+ 
+@@ -1584,6 +1586,9 @@ SwFrmFmt *SwWrtShell::GetTblStyle(const String &rFmtName)
+     return 0;
+ }
+ 
++SwNavigationMgr& SwWrtShell::GetNavigationMgr() {
++	return aNavigationMgr;
++}
+ 
+ /*------------------------------------------------------------------------
+  Beschreibung:	Anwenden der Vorlagen
+@@ -1733,6 +1738,7 @@ SwWrtShell::SwWrtShell( SwWrtShell& rSh, Window *_pWin, SwView &rShell )
+ 	if (IsFormProtected() && (pBM=GetNextFieldBookmark())!=NULL) {
+ 	    GotoFieldBookmark(pBM);
+ 	}
++	aNavigationMgr.setShell(this);
+ }
+ 
+ 
+diff --git sw/uiconfig/swriter/toolbar/navigationobjectbar.xml sw/uiconfig/swriter/toolbar/navigationobjectbar.xml
+new file mode 100644
+index 0000000..f30056f
+--- /dev/null
++++ sw/uiconfig/swriter/toolbar/navigationobjectbar.xml
+@@ -0,0 +1,7 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!DOCTYPE toolbar:toolbar PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "toolbar.dtd">
++<toolbar:toolbar xmlns:toolbar="http://openoffice.org/2001/toolbar" xmlns:xlink="http://www.w3.org/1999/xlink" toolbar:id="toolbar">
++  <toolbar:toolbaritem xlink:href=".uno:NavigateBack" toolbar:helpid="helpid:22311"/>
++  <toolbar:toolbarseparator/>
++  <toolbar:toolbaritem xlink:href=".uno:NavigateForward" toolbar:helpid="helpid:22312"/>
++</toolbar:toolbar>
diff --git a/src/icons/lc_navigateback.png b/src/icons/lc_navigateback.png
new file mode 100644
index 0000000..17ac643
Binary files /dev/null and b/src/icons/lc_navigateback.png differ
diff --git a/src/icons/lc_navigateforward.png b/src/icons/lc_navigateforward.png
new file mode 100644
index 0000000..429ce34
Binary files /dev/null and b/src/icons/lc_navigateforward.png differ
diff --git a/src/icons/lch_navigateback.png b/src/icons/lch_navigateback.png
new file mode 100644
index 0000000..20913a1
Binary files /dev/null and b/src/icons/lch_navigateback.png differ
diff --git a/src/icons/lch_navigateforward.png b/src/icons/lch_navigateforward.png
new file mode 100644
index 0000000..37c11e4
Binary files /dev/null and b/src/icons/lch_navigateforward.png differ
diff --git a/src/icons/sc_navigateback.png b/src/icons/sc_navigateback.png
new file mode 100644
index 0000000..5f9b973
Binary files /dev/null and b/src/icons/sc_navigateback.png differ
diff --git a/src/icons/sc_navigateforward.png b/src/icons/sc_navigateforward.png
new file mode 100644
index 0000000..7cc4c09
Binary files /dev/null and b/src/icons/sc_navigateforward.png differ
diff --git a/src/icons/sch_navigateback.png b/src/icons/sch_navigateback.png
new file mode 100644
index 0000000..be9eb86
Binary files /dev/null and b/src/icons/sch_navigateback.png differ
diff --git a/src/icons/sch_navigateforward.png b/src/icons/sch_navigateforward.png
new file mode 100644
index 0000000..14266bf
Binary files /dev/null and b/src/icons/sch_navigateforward.png differ
commit b14320a532690a2835ee0baea22d1cbd87233fa8
Author: Thorsten Behrens <tbehrens at novell.com>
Date:   Sun Sep 20 17:50:14 2009 +0200

    More gentle tweaks to the Impress autolayout patch
    
    * patches/dev300/impress-autolayout.diff: cosmetic changes

diff --git a/patches/dev300/impress-autolayout.diff b/patches/dev300/impress-autolayout.diff
index 5a8369a..d77e846 100644
--- a/patches/dev300/impress-autolayout.diff
+++ b/patches/dev300/impress-autolayout.diff
@@ -37,8 +37,8 @@ From: Thorsten Behrens <thb at openoffice.org>
  sd/test/layouttest.cxx                             |  323 +++++
  sd/test/makefile.mk                                |   91 +
  sd/util/makefile.mk                                |    3 
- xmloff/source/draw/sdxmlexp.cxx                    |  680 +++-------
- 33 files changed, 4022 insertions(+), 1013 deletions(-)
+ xmloff/source/draw/sdxmlexp.cxx                    |  683 +++-------
+ 33 files changed, 4024 insertions(+), 1014 deletions(-)
  create mode 100644 offapi/com/sun/star/presentation/XLayoutList.idl
  create mode 100644 sd/inc/Test.hxx
  create mode 100644 sd/inc/layoutlist.hxx
@@ -5009,7 +5009,7 @@ index 2458fb2..f7da7aa 100644
  SHL1LIBS= $(LIB3TARGET) $(LIB5TARGET) $(LIB6TARGET)
  SHL1DEPN+=	makefile.mk
 diff --git xmloff/source/draw/sdxmlexp.cxx xmloff/source/draw/sdxmlexp.cxx
-index 49c1510..484fa67 100644
+index 49c1510..2068e46 100644
 --- xmloff/source/draw/sdxmlexp.cxx
 +++ xmloff/source/draw/sdxmlexp.cxx
 @@ -47,6 +47,11 @@
@@ -5040,16 +5040,20 @@ index 49c1510..484fa67 100644
      ImpXMLEXPPageMasterInfo*	mpPageMasterInfo;
      OUString					msLayoutName;
      Rectangle					maTitleRect;
-@@ -222,7 +229,7 @@ class ImpXMLAutoLayoutInfo
+@@ -221,8 +228,11 @@ class ImpXMLAutoLayoutInfo
+     sal_Int32					mnGapX;
      sal_Int32					mnGapY;
  
++	ImpXMLAutoLayoutInfo(const ImpXMLAutoLayoutInfo&);
++	ImpXMLAutoLayoutInfo& operator=(const ImpXMLAutoLayoutInfo&);
++
  public:
 -    ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterInfo* pInf);
-+	ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterInfo* pInf, Reference< XLayoutList > rLList);
++	ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterInfo* pInf, const Reference<XLayoutList>& rLList);
  
      BOOL operator==(const ImpXMLAutoLayoutInfo& rInfo) const;
  
-@@ -235,18 +242,13 @@ public:
+@@ -235,34 +245,40 @@ public:
  
      const Rectangle& GetTitleRectangle() const { return maTitleRect; }
      const Rectangle& GetPresRectangle() const { return maPresRect; }
@@ -5069,16 +5073,15 @@ index 49c1510..484fa67 100644
 -        return FALSE;
 -    return TRUE;
 -}
-+
- 
+-
  BOOL ImpXMLAutoLayoutInfo::operator==(const ImpXMLAutoLayoutInfo& rInfo) const
  {
-@@ -254,15 +256,28 @@ BOOL ImpXMLAutoLayoutInfo::operator==(const ImpXMLAutoLayoutInfo& rInfo) const
+     return ((mnType == rInfo.mnType
          && mpPageMasterInfo == rInfo.mpPageMasterInfo));
  }
  
 -ImpXMLAutoLayoutInfo::ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterInfo* pInf)
-+ImpXMLAutoLayoutInfo::ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterInfo* pInf, Reference< XLayoutList > rLList)
++ImpXMLAutoLayoutInfo::ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterInfo* pInf, const Reference<XLayoutList>& rLList)
  :	mnType(nTyp),
      mpPageMasterInfo(pInf)
  {
@@ -5104,7 +5107,7 @@ index 49c1510..484fa67 100644
      if(mpPageMasterInfo)
      {
          aPagePos = Point(mpPageMasterInfo->GetBorderLeft(), mpPageMasterInfo->GetBorderTop());
-@@ -270,85 +285,86 @@ ImpXMLAutoLayoutInfo::ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterI
+@@ -270,85 +286,86 @@ ImpXMLAutoLayoutInfo::ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterI
          aPageInnerSize = aPageSize;
          aPageInnerSize.Width() -= mpPageMasterInfo->GetBorderLeft() + mpPageMasterInfo->GetBorderRight();
          aPageInnerSize.Height() -= mpPageMasterInfo->GetBorderTop() + mpPageMasterInfo->GetBorderBottom();
@@ -5266,7 +5269,7 @@ index 49c1510..484fa67 100644
          mnGapX = (aPageSize.Width() - aPageInnerSize.Width()) / 2;
          mnGapY = (aPageSize.Height() - aPageInnerSize.Height()) / 2;
  
-@@ -363,47 +379,12 @@ ImpXMLAutoLayoutInfo::ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterI
+@@ -363,47 +380,12 @@ ImpXMLAutoLayoutInfo::ImpXMLAutoLayoutInfo(sal_uInt16 nTyp, ImpXMLEXPPageMasterI
  
          if(mnGapY < aPageInnerSize.Height() / 10)
              mnGapY = aPageInnerSize.Height() / 10;
@@ -5319,7 +5322,7 @@ index 49c1510..484fa67 100644
  }
  
  DECLARE_LIST(ImpXMLAutoLayoutInfoList, ImpXMLAutoLayoutInfo*)
-@@ -868,8 +849,6 @@ BOOL SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, OUStr
+@@ -868,8 +850,6 @@ BOOL SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, OUStr
          aAny = xPropSet->getPropertyValue(OUString(RTL_CONSTASCII_USTRINGPARAM("Layout")));
          if(aAny >>= nType)
          {
@@ -5328,7 +5331,7 @@ index 49c1510..484fa67 100644
                  ImpXMLEXPPageMasterInfo* pInfo = 0L;
  
                  // get master-page info
-@@ -887,9 +866,21 @@ BOOL SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, OUStr
+@@ -887,9 +867,21 @@ BOOL SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, OUStr
                          }
                      }
                  }
@@ -5351,7 +5354,7 @@ index 49c1510..484fa67 100644
                  BOOL bDidExist(FALSE);
  
                  for(sal_uInt32 nCnt = 0L; !bDidExist && nCnt < mpAutoLayoutInfoList->Count(); nCnt++)
-@@ -915,7 +906,7 @@ BOOL SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, OUStr
+@@ -915,7 +907,7 @@ BOOL SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, OUStr
                  rName = pNew->GetLayoutName();
                  bRetval = TRUE;
              }
@@ -5360,7 +5363,7 @@ index 49c1510..484fa67 100644
      }
  
      return bRetval;
-@@ -925,6 +916,17 @@ BOOL SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, OUStr
+@@ -925,6 +917,17 @@ BOOL SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, OUStr
  
  void SdXMLExport::ImpWriteAutoLayoutInfos()
  {
@@ -5378,7 +5381,7 @@ index 49c1510..484fa67 100644
      if(mpAutoLayoutInfoList->Count())
      {
          for(sal_uInt32 nCnt = 0L; nCnt < mpAutoLayoutInfoList->Count(); nCnt++)
-@@ -938,328 +940,100 @@ void SdXMLExport::ImpWriteAutoLayoutInfos()
+@@ -938,328 +941,100 @@ void SdXMLExport::ImpWriteAutoLayoutInfos()
                  // write draw-style attributes
                  SvXMLElementExport aDSE(*this, XML_NAMESPACE_STYLE, XML_PRESENTATION_PAGE_LAYOUT, sal_True, sal_True);
  


More information about the ooo-build-commit mailing list