summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorMikhail Voytenko <mav@openoffice.org>2011-01-06 14:57:12 +0100
committerMikhail Voytenko <mav@openoffice.org>2011-01-06 14:57:12 +0100
commite672cd42fd750b9d2b033b743e544597fe137703 (patch)
tree3bdf80aa94e50ad3ad278ec7a5ed16cc1d474ce5 /sd
parentc1dfee3e9860e0e6abad45551d014ab46a94cb06 (diff)
parent0bafb5a5e88a430440cb7a3ea42d787c6d1dcd79 (diff)
removetooltypes01: rebase to DEV300_m96
Diffstat (limited to 'sd')
-rwxr-xr-x[-rw-r--r--]sd/inc/pch/precompiled_sd.hxx3
-rw-r--r--sd/prj/build.lst2
-rw-r--r--[-rwxr-xr-x]sd/source/filter/eppt/epptso.cxx23
-rwxr-xr-x[-rw-r--r--]sd/source/filter/eppt/escherex.cxx18
-rw-r--r--[-rwxr-xr-x]sd/source/filter/ppt/propread.cxx2
-rwxr-xr-x[-rw-r--r--]sd/source/ui/animations/CustomAnimationList.cxx2
-rw-r--r--sd/source/ui/app/accel_tmpl.src117
-rwxr-xr-xsd/source/ui/dlg/dlgassim.cxx4
-rwxr-xr-xsd/source/ui/dlg/navigatr.cxx3
-rwxr-xr-xsd/source/ui/dlg/sdtreelb.cxx9
-rwxr-xr-xsd/source/ui/dlg/tpaction.cxx4
-rwxr-xr-x[-rw-r--r--]sd/source/ui/func/fuexpand.cxx3
-rwxr-xr-x[-rw-r--r--]sd/source/ui/inc/dlgsnap.hxx2
-rwxr-xr-x[-rw-r--r--]sd/source/ui/inc/morphdlg.hxx2
-rwxr-xr-xsd/source/ui/inc/sdtreelb.hxx1
-rwxr-xr-x[-rw-r--r--]sd/source/ui/inc/vectdlg.hxx2
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSlotManager.cxx25
-rwxr-xr-xsd/source/ui/toolpanel/ToolPanelViewShell.cxx24
-rwxr-xr-xsd/source/ui/unoidl/sddetect.cxx14
-rwxr-xr-xsd/source/ui/view/GraphicViewShellBase.cxx6
-rwxr-xr-xsd/source/ui/view/ImpressViewShellBase.cxx6
-rwxr-xr-xsd/source/ui/view/OutlineViewShellBase.cxx6
-rwxr-xr-xsd/source/ui/view/PresentationViewShellBase.cxx7
-rwxr-xr-xsd/source/ui/view/SlideSorterViewShellBase.cxx6
-rw-r--r--sd/source/ui/view/ViewShellBase.cxx6
-rwxr-xr-xsd/source/ui/view/drviews7.cxx28
-rwxr-xr-xsd/source/ui/view/outlnvsh.cxx21
-rwxr-xr-xsd/source/ui/view/sdview4.cxx3
-rwxr-xr-xsd/source/ui/view/sdview5.cxx2
-rw-r--r--sd/source/ui/view/viewshe3.cxx7
-rwxr-xr-xsd/util/makefile.mk2
31 files changed, 138 insertions, 222 deletions
diff --git a/sd/inc/pch/precompiled_sd.hxx b/sd/inc/pch/precompiled_sd.hxx
index 7e92020eb88f..2a80030b7560 100644..100755
--- a/sd/inc/pch/precompiled_sd.hxx
+++ b/sd/inc/pch/precompiled_sd.hxx
@@ -617,7 +617,6 @@
#include "svx/galbrws.hxx"
#include "svx/gallery.hxx"
#include "svx/globl3d.hxx"
-#include "svx/globlac.hrc"
#include "svx/globlmn.hrc"
#include "svx/grafctrl.hxx"
#include "svx/hlnkitem.hxx"
@@ -865,7 +864,7 @@
#include "vcl/group.hxx"
#include "vcl/help.hxx"
#include "vcl/image.hxx"
-#include "vcl/imagebtn.hxx"
+#include "vcl/button.hxx"
#include "vcl/jobset.hxx"
#include "vcl/lineinfo.hxx"
#include "vcl/lstbox.hxx"
diff --git a/sd/prj/build.lst b/sd/prj/build.lst
index 9e8bf7a1db1f..0816f2de7255 100644
--- a/sd/prj/build.lst
+++ b/sd/prj/build.lst
@@ -1,4 +1,4 @@
-sd sd : filter l10n animations svx sfx2 stoc canvas NULL
+sd sd : filter l10n animations svx sfx2 stoc canvas LIBXSLT:libxslt NULL
sd sd usr1 - all sd_mkout NULL
sd sd\inc nmake - all sd_inc NULL
sd sd\prj get - all sd_prj NULL
diff --git a/sd/source/filter/eppt/epptso.cxx b/sd/source/filter/eppt/epptso.cxx
index 764d56906620..7372cbdcf5d3 100755..100644
--- a/sd/source/filter/eppt/epptso.cxx
+++ b/sd/source/filter/eppt/epptso.cxx
@@ -5010,7 +5010,7 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a
continue;
}
else if ( ( mType == "drawing.OLE2" ) || ( mType == "presentation.OLE2" )
- || ( mType == "presentation.Chart" ) || ( mType == "presentation.Table" )
+ || ( mType == "presentation.Chart" ) || ( mType == "presentation.Calc" )
|| ( mType == "presentation.OrgChart" ) )
{
mpPptEscherEx->OpenContainer( ESCHER_SpContainer );
@@ -5201,7 +5201,7 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a
}
}
}
- else if ( mType == "drawing.Table" )
+ else if ( (mType == "drawing.Table") || (mType == "presentation.Table") )
{
SvMemoryStream* pTmp = NULL;
if ( bEffect && !mbUseNewAnimations )
@@ -5390,7 +5390,10 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a
ImplFlipBoundingBox( aPropOpt );
aPropOpt.CreateShapeProperties( mXShape );
aPropOpt.Commit( *mpStrm );
- mpPptEscherEx->AddClientAnchor( maRect );
+ if ( GetCurrentGroupLevel() > 0 )
+ mpPptEscherEx->AddChildAnchor( maRect );
+ else
+ mpPptEscherEx->AddClientAnchor( maRect );
if ( pClientData )
{
@@ -5460,7 +5463,10 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a
aPropOpt.CreateShapeProperties( mXShape );
aPropOpt.Commit( *mpStrm );
- mpPptEscherEx->AddClientAnchor( maRect );
+ if ( GetCurrentGroupLevel() > 0 )
+ mpPptEscherEx->AddChildAnchor( maRect );
+ else
+ mpPptEscherEx->AddClientAnchor( maRect );
*mpStrm << (sal_uInt32)( ( ESCHER_ClientTextbox << 16 ) | 0xf )
<< (sal_uInt32)pClientTextBox->Tell();
@@ -5639,11 +5645,10 @@ void PPTWriter::ImplCreateTable( uno::Reference< drawing::XShape >& rXShape, Esc
aPropOpt.CreateShapeProperties( rXShape );
aPropOpt.Commit( *mpStrm );
aPropOpt2.Commit( *mpStrm, 3, ESCHER_UDefProp );
- mpPptEscherEx->AddAtom( 8, ESCHER_ClientAnchor );
- *mpStrm << (sal_Int16)maRect.Top()
- << (sal_Int16)maRect.Left()
- << (sal_Int16)( maRect.GetWidth() + maRect.Left() )
- << (sal_Int16)( maRect.GetHeight() + maRect.Top() );
+ if ( GetCurrentGroupLevel() > 0 )
+ mpPptEscherEx->AddChildAnchor( maRect );
+ else
+ mpPptEscherEx->AddClientAnchor( maRect );
mpPptEscherEx->CloseContainer();
diff --git a/sd/source/filter/eppt/escherex.cxx b/sd/source/filter/eppt/escherex.cxx
index fbb94de67ae7..9ef58c082b6e 100644..100755
--- a/sd/source/filter/eppt/escherex.cxx
+++ b/sd/source/filter/eppt/escherex.cxx
@@ -270,9 +270,21 @@ sal_uInt32 PptEscherEx::EnterGroup( Rectangle* pBoundRect, SvMemoryStream* pClie
else
{
AddShape( ESCHER_ShpInst_Min, 0x201, nShapeId ); // Flags: Group | HaveAnchor
- AddAtom( 8, ESCHER_ClientAnchor );
- PtReplaceOrInsert( ESCHER_Persist_Grouping_Logic | mnGroupLevel, mpOutStrm->Tell() );
- *mpOutStrm << (INT16)aRect.Top() << (INT16)aRect.Left() << (INT16)aRect.Right() << (INT16)aRect.Bottom();
+ if ( mnGroupLevel == 1 )
+ {
+ AddAtom( 8, ESCHER_ClientAnchor );
+ PtReplaceOrInsert( ESCHER_Persist_Grouping_Logic | mnGroupLevel, mpOutStrm->Tell() );
+ *mpOutStrm << (INT16)aRect.Top() << (INT16)aRect.Left() << (INT16)aRect.Right() << (INT16)aRect.Bottom();
+ }
+ else
+ {
+ AddAtom( 16, ESCHER_ChildAnchor );
+ PtReplaceOrInsert( ESCHER_Persist_Grouping_Snap | mnGroupLevel, mpOutStrm->Tell() );
+ *mpOutStrm << (sal_Int32)aRect.Left()
+ << (sal_Int32)aRect.Top()
+ << (sal_Int32)aRect.Right()
+ << (sal_Int32)aRect.Bottom();
+ }
}
if ( pClientData )
{
diff --git a/sd/source/filter/ppt/propread.cxx b/sd/source/filter/ppt/propread.cxx
index ff1250bdf090..b77c2563fc03 100755..100644
--- a/sd/source/filter/ppt/propread.cxx
+++ b/sd/source/filter/ppt/propread.cxx
@@ -99,7 +99,7 @@ static xub_StrLen lcl_getMaxSafeStrLen(sal_uInt32 nSize)
if (nSize > STRING_MAXLEN)
nSize = STRING_MAXLEN;
- return nSize;
+ return static_cast< xub_StrLen >( nSize );
}
BOOL PropItem::Read( String& rString, sal_uInt32 nStringType, sal_Bool bAlign )
diff --git a/sd/source/ui/animations/CustomAnimationList.cxx b/sd/source/ui/animations/CustomAnimationList.cxx
index 7c07ec76127a..8dbb9fd95c41 100644..100755
--- a/sd/source/ui/animations/CustomAnimationList.cxx
+++ b/sd/source/ui/animations/CustomAnimationList.cxx
@@ -477,7 +477,7 @@ CustomAnimationList::CustomAnimationList( ::Window* pParent, const ResId& rResId
, mpController( pController )
, mpLastParentEntry(0)
{
- SetWindowBits( WinBits( WB_TABSTOP | WB_BORDER | WB_HASLINES | WB_HASBUTTONS | WB_HASBUTTONSATROOT ) );
+ SetStyle( GetStyle() | WB_TABSTOP | WB_BORDER | WB_HASLINES | WB_HASBUTTONS | WB_HASBUTTONSATROOT );
EnableContextMenuHandling();
SetSelectionMode( MULTIPLE_SELECTION );
diff --git a/sd/source/ui/app/accel_tmpl.src b/sd/source/ui/app/accel_tmpl.src
deleted file mode 100644
index 467c5e2ae466..000000000000
--- a/sd/source/ui/app/accel_tmpl.src
+++ /dev/null
@@ -1,117 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef SD_ACCELERATOR
-#define SD_ACCELERATOR RID_DRAW_DEFAULTACCEL
-#include "accelids.src"
-#endif
-
-#ifndef _GLOBALACC_SRC
-#include <svx/globlac.hrc>
-#endif
-
-/** For the presentation we change some accelerator keys:
- The navigator is moved from F5 to Shift-F5.
- The presentation is started for F5, F9, Control-F2. The later two are
- defined in svx/globalac.hrc.
-*/
-#define AI_SD_NAVIGATOR ACC_CODE(SID_NAVIGATOR, KEY_F5, TRUE, FALSE, FALSE )
-#define AI_PRESENTATION_F5 ACC_CODE(SID_PRESENTATION, KEY_F5, FALSE, FALSE, FALSE )
-
-Accelerator SD_ACCELERATOR
-{
- ItemList =
- {
- // Funktionstasten
- AI_ATTR_CHAR
-#if SD_ACCELERATOR != RID_GRAPHIC_DEFAULTACCEL
- AI_PRESENTATION_F5
- AI_PRESENTATION
- AI_PRESENTATION_COMPAT
-#endif
- AI_ENTER_GROUP
- AI_COPYOBJECTS
- AI_LEAVE_GROUP
- AI_ATTR_TRANSFORM
- // AI_NAVIGATOR
- AI_SD_NAVIGATOR
- AI_SPELLING
- AI_THESAURUS
- AI_BEZIER_EDIT
- AI_ATTR_TEXT_FITTOSIZE
- AI_STYLE_DESIGNER
-#if SD_ACCELERATOR != RID_GRAPHIC_DEFAULTACCEL
- AI_OUTLINEMODE
- AI_DRAWINGMODE
-#endif
- // A-Z Acceleratoren
- AI_ATTR_PARA_LINESPACE_10
- AI_ATTR_PARA_LINESPACE_20
- AI_ATTR_PARA_LINESPACE_15
- AI_SHOW_ITEMBROWSER
- AI_ATTR_PARA_ADJUST_BLOCK
- AI_ATTR_PARA_ADJUST_CENTER
- AI_ATTR_CHAR_WEIGHT
- AI_GROUP
- AI_UNGROUP
- // Weitersuchen ...
- AI_SET_SUPER_SCRIPT
- AI_ATTR_CHAR_POSTURE
- AI_COMBINE
- AI_DISMANTLE
- AI_ATTR_PARA_ADJUST_LEFT
- AI_ATTR_PARA_ADJUST_RIGHT
- AI_SET_SUB_SCRIPT
- AI_ATTR_CHAR_UNDERLINE
- AI_STYLE_CATALOG
-#if SD_ACCELERATOR != RID_PLUGINACCEL
-// Ob das wirklich richtig ist (PlugIn-Accel) sollte mal geprueft werden !!!
- // Anordnung
- AI_FRAME_TO_TOP
- AI_MOREFRONT
- AI_FRAME_TO_BOTTOM
- AI_MOREBACK
- // sonstige Acceleratoren
- AI_NEWDOC
- AI_OPENDOC
-#endif
- AI_SAVEDOC
- AI_PRINTDOC
- AI_QUITAPP
- AI_CUT
- AI_COPY
- AI_PASTE
- AI( SID_PASTE2, KEY_V, TRUE, TRUE, FALSE )
- AI_UNDO
- AI_REDO
- AI_REPEAT
- AI_DELETE
- };
-};
-
-
-
diff --git a/sd/source/ui/dlg/dlgassim.cxx b/sd/source/ui/dlg/dlgassim.cxx
index f9dcf5046189..aa2e234b0868 100755
--- a/sd/source/ui/dlg/dlgassim.cxx
+++ b/sd/source/ui/dlg/dlgassim.cxx
@@ -49,10 +49,10 @@ SdPageListControl::SdPageListControl(
: SvTreeListBox(pParent, rResId)
{
// Tree-ListBox mit Linien versehen
- SetWindowBits( WinBits( WB_TABSTOP | WB_BORDER | WB_HASLINES |
+ SetStyle( GetStyle() | WB_TABSTOP | WB_BORDER | WB_HASLINES |
WB_HASBUTTONS | WB_HASLINESATROOT |
WB_HSCROLL | // #31562#
- WB_HASBUTTONSATROOT ) );
+ WB_HASBUTTONSATROOT );
SetNodeDefaultImages ();
m_pCheckButton = new SvLBoxButtonData(this);
diff --git a/sd/source/ui/dlg/navigatr.cxx b/sd/source/ui/dlg/navigatr.cxx
index 2b21802b7a9e..488737fa6b56 100755
--- a/sd/source/ui/dlg/navigatr.cxx
+++ b/sd/source/ui/dlg/navigatr.cxx
@@ -44,10 +44,10 @@
#include <sfx2/viewfrm.hxx>
#include <sfx2/dockwin.hxx>
+#include <sfx2/sfxresid.hxx>
#include "pres.hxx"
#include "navigatr.hxx"
-//#include "navichld.hxx"
#include "navigatr.hrc"
#include "pgjump.hxx"
#include "app.hrc"
@@ -345,7 +345,6 @@ IMPL_LINK( SdNavigatorWin, DropdownClickToolBoxHdl, ToolBox*, pBox )
pMenu->Execute( this, maToolbox.GetItemRect( nId ), POPUPMENU_EXECUTE_DOWN );
pBox->EndSelection();
delete pMenu;
- //pBox->Invalidate();
}
break;
diff --git a/sd/source/ui/dlg/sdtreelb.cxx b/sd/source/ui/dlg/sdtreelb.cxx
index 275d39af4ea5..c0a72d539add 100755
--- a/sd/source/ui/dlg/sdtreelb.cxx
+++ b/sd/source/ui/dlg/sdtreelb.cxx
@@ -258,10 +258,11 @@ SdPageObjsTLB::SdPageObjsTLB( Window* pParentWin, const SdResId& rSdResId )
{
// Tree-ListBox mit Linien versehen
- SetWindowBits( WinBits( WB_TABSTOP | WB_BORDER | WB_HASLINES |
- WB_HASBUTTONS | // WB_HASLINESATROOT |
- WB_HSCROLL | // #31562#
- WB_HASBUTTONSATROOT ) );
+ SetStyle( GetStyle() | WB_TABSTOP | WB_BORDER | WB_HASLINES |
+ WB_HASBUTTONS | // WB_HASLINESATROOT |
+ WB_HSCROLL | // #31562#
+ WB_HASBUTTONSATROOT |
+ WB_QUICK_SEARCH /* i31275 */ );
SetNodeBitmaps( Bitmap( SdResId( BMP_EXPAND ) ),
Bitmap( SdResId( BMP_COLLAPSE ) ) );
diff --git a/sd/source/ui/dlg/tpaction.cxx b/sd/source/ui/dlg/tpaction.cxx
index af2668fc9dad..c7404b820ed7 100755
--- a/sd/source/ui/dlg/tpaction.cxx
+++ b/sd/source/ui/dlg/tpaction.cxx
@@ -46,7 +46,7 @@
#include <com/sun/star/embed/VerbAttributes.hpp>
#include "sdattr.hxx"
-
+#include <sfx2/sfxresid.hxx>
#include <vcl/waitobj.hxx>
#include <osl/file.hxx>
@@ -489,7 +489,7 @@ void SdTPAction::OpenFileDialog()
// filter makes the (Windows system) open file dialog follow
// links on the desktop to directories.
aFileDialog.AddFilter (
- String (SdResId (STR_SFX_FILTERNAME_ALL)),
+ String (SfxResId (STR_SFX_FILTERNAME_ALL)),
String (RTL_CONSTASCII_USTRINGPARAM("*.*")));
diff --git a/sd/source/ui/func/fuexpand.cxx b/sd/source/ui/func/fuexpand.cxx
index 281e4c692228..e45b8ce36673 100644..100755
--- a/sd/source/ui/func/fuexpand.cxx
+++ b/sd/source/ui/func/fuexpand.cxx
@@ -84,6 +84,9 @@ FunctionReference FuExpandPage::Create( ViewShell* pViewSh, ::sd::Window* pWin,
void FuExpandPage::DoExecute( SfxRequest& )
{
+ if ( mpView && mpView->IsTextEdit() )
+ mpView->SdrEndTextEdit();
+
// Selektierte Seite finden (nur Standard-Seiten)
SdPage* pActualPage = NULL;
USHORT i = 0;
diff --git a/sd/source/ui/inc/dlgsnap.hxx b/sd/source/ui/inc/dlgsnap.hxx
index 970a54b24339..6362d1e476a2 100644..100755
--- a/sd/source/ui/inc/dlgsnap.hxx
+++ b/sd/source/ui/inc/dlgsnap.hxx
@@ -31,7 +31,7 @@
#ifndef _IMAGEBTN_HXX //autogen
-#include <vcl/imagebtn.hxx>
+#include <vcl/button.hxx>
#endif
#ifndef _FIXED_HXX //autogen
#include <vcl/fixed.hxx>
diff --git a/sd/source/ui/inc/morphdlg.hxx b/sd/source/ui/inc/morphdlg.hxx
index 90682ce9d3f1..ca431d1d74b9 100644..100755
--- a/sd/source/ui/inc/morphdlg.hxx
+++ b/sd/source/ui/inc/morphdlg.hxx
@@ -28,7 +28,7 @@
#ifndef SD_MORPH_DLG_HXX
#define SD_MORPH_DLG_HXX
-#include <vcl/imagebtn.hxx>
+#include <vcl/button.hxx>
#include <vcl/group.hxx>
#include <vcl/fixed.hxx>
#include <vcl/field.hxx>
diff --git a/sd/source/ui/inc/sdtreelb.hxx b/sd/source/ui/inc/sdtreelb.hxx
index dc98929a9ed1..1aea2d34156e 100755
--- a/sd/source/ui/inc/sdtreelb.hxx
+++ b/sd/source/ui/inc/sdtreelb.hxx
@@ -218,6 +218,7 @@ public:
static BOOL IsInDrag();
using SvLBox::ExecuteDrop;
+ using SvTreeListBox::SelectEntry;
private:
/** This flag controls whether all shapes are shown as children of pages
and group shapes or only the named shapes.
diff --git a/sd/source/ui/inc/vectdlg.hxx b/sd/source/ui/inc/vectdlg.hxx
index 0df81c78d652..310926fd49b3 100644..100755
--- a/sd/source/ui/inc/vectdlg.hxx
+++ b/sd/source/ui/inc/vectdlg.hxx
@@ -29,7 +29,7 @@
#ifndef _SD_VECTDLG_HXX
#define _SD_VECTDLG_HXX
-#include <vcl/imagebtn.hxx>
+#include <vcl/button.hxx>
#include <vcl/group.hxx>
#include <vcl/fixed.hxx>
#include <vcl/field.hxx>
diff --git a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
index ded7c2ebfdde..0ab4b9e3bdc3 100644
--- a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
@@ -29,6 +29,8 @@
#include <com/sun/star/presentation/XPresentation2.hpp>
+#include <editeng/outlobj.hxx>
+
#include "controller/SlsSlotManager.hxx"
#include "SlideSorter.hxx"
#include "SlideSorterViewShell.hxx"
@@ -558,8 +560,27 @@ void SlotManager::GetMenuState (SfxItemSet& rSet)
{
SdPage* pPage = aSelectedPages.GetNextElement()->GetPage();
SdrObject* pObj = pPage->GetPresObj(PRESOBJ_OUTLINE);
- if (pObj!=NULL && !pObj->IsEmptyPresObj())
- bDisable = false;
+ if (pObj!=NULL )
+ {
+ if( !pObj->IsEmptyPresObj() )
+ {
+ bDisable = false;
+ }
+ else
+ {
+ // check if the object is in edit, than its temporarely not empty
+ SdrTextObj* pTextObj = dynamic_cast< SdrTextObj* >( pObj );
+ if( pTextObj )
+ {
+ OutlinerParaObject* pParaObj = pTextObj->GetEditOutlinerParaObject();
+ if( pParaObj )
+ {
+ delete pParaObj;
+ bDisable = false;
+ }
+ }
+ }
+ }
}
}
diff --git a/sd/source/ui/toolpanel/ToolPanelViewShell.cxx b/sd/source/ui/toolpanel/ToolPanelViewShell.cxx
index f499e10b418c..fbbcebe7ab7f 100755
--- a/sd/source/ui/toolpanel/ToolPanelViewShell.cxx
+++ b/sd/source/ui/toolpanel/ToolPanelViewShell.cxx
@@ -512,13 +512,18 @@ ToolPanelViewShell::ToolPanelViewShell( SfxViewFrame* pFrame, ViewShellBase& rVi
SetName( String( RTL_CONSTASCII_USTRINGPARAM( "ToolPanelViewShell" ) ) );
- // Some recent changes to the toolpanel make it necessary to create the
- // accessibility object now. Creating it on demand would lead to a
- // pointer cycle in the tree of accessibility objects and would lead
- // e.g. the accerciser AT tool into an infinite loop.
- // It would be nice to get rid of this workaround in the future.
+ // enforce the creation of the Accessible object here.
+ // In some not-always-to-reproduce situations, creating the accessible on demand only leads to some
+ // cycliy parenthood references between the involved objects, which make some AT tools (accerciser, in particular)
+ // loop (which is /not/ a bug in the tool, of course).
+ // However, since those situations were not reproducible anymore, we deliberately leave the Accessible creation
+ // (which originally was intended as a workaround) herein. Better to be safe ...
+ // Note that this is not a performance problem: The implementation of the ToolPanelDeck's Accessible
+ // is separated from the implementation of its AccessibleContext (which even is in a separate library) - we only
+ // create the former here, the latter is still created on demand, when somebody requests it.
+ // #i113671# / 2010-09-17 / frank.schoenheit@oracle.com
if (mpContentWindow.get())
- mpContentWindow->SetAccessible(mpImpl->CreateAccessible(*mpContentWindow));
+ mpContentWindow->GetAccessible( TRUE );
// For accessibility we have to shortly hide the content window. This
// triggers the construction of a new accessibility object for the new
@@ -629,12 +634,7 @@ DockingWindow* ToolPanelViewShell::GetDockingWindow()
Reference< XAccessible > ToolPanelViewShell::CreateAccessibleDocumentView( ::sd::Window* i_pWindow )
{
ENSURE_OR_RETURN( i_pWindow, "ToolPanelViewShell::CreateAccessibleDocumentView: illegal window!", NULL );
- // As said above, we have to create the accessibility object
- // (unconditionally) in the constructor, not here on demand, or
- // otherwise we would create a cycle in the tree of accessible objects
- // which could lead to infinite loops in AT tools.
- // return mpImpl->CreateAccessible( *i_pWindow );
- return Reference<XAccessible>();
+ return mpImpl->CreateAccessible( *i_pWindow );
}
// ---------------------------------------------------------------------------------------------------------------------
diff --git a/sd/source/ui/unoidl/sddetect.cxx b/sd/source/ui/unoidl/sddetect.cxx
index 9f268dec0cfa..f462d22a780e 100755
--- a/sd/source/ui/unoidl/sddetect.cxx
+++ b/sd/source/ui/unoidl/sddetect.cxx
@@ -291,20 +291,16 @@ SdFilterDetect::~SdFilterDetect()
if ( !bRepairPackage )
{
// ask the user whether he wants to try to repair
- RequestPackageReparation* pRequest = new RequestPackageReparation( aDocumentTitle );
- uno::Reference< task::XInteractionRequest > xRequest ( pRequest );
-
- xInteraction->handle( xRequest );
-
- bRepairAllowed = pRequest->isApproved();
+ RequestPackageReparation aRequest( aDocumentTitle );
+ xInteraction->handle( aRequest.GetRequest() );
+ bRepairAllowed = aRequest.isApproved();
}
if ( !bRepairAllowed )
{
// repair either not allowed or not successful
- NotifyBrokenPackage* pNotifyRequest = new NotifyBrokenPackage( aDocumentTitle );
- uno::Reference< task::XInteractionRequest > xRequest ( pNotifyRequest );
- xInteraction->handle( xRequest );
+ NotifyBrokenPackage aNotifyRequest( aDocumentTitle );
+ xInteraction->handle( aNotifyRequest.GetRequest() );
}
}
diff --git a/sd/source/ui/view/GraphicViewShellBase.cxx b/sd/source/ui/view/GraphicViewShellBase.cxx
index 99e45a0d05d6..e63ce8d62fa1 100755
--- a/sd/source/ui/view/GraphicViewShellBase.cxx
+++ b/sd/source/ui/view/GraphicViewShellBase.cxx
@@ -45,12 +45,6 @@ TYPEINIT1(GraphicViewShellBase, ViewShellBase);
// We have to expand the SFX_IMPL_VIEWFACTORY macro to call LateInit() after a
// new GraphicViewShellBase object has been constructed.
-/*
-SFX_IMPL_VIEWFACTORY(GraphicViewShellBase, SdResId(STR_DEFAULTVIEW))
-{
- SFX_VIEW_REGISTRATION(GraphicDocShell);
-}
-*/
SfxViewFactory* GraphicViewShellBase::pFactory;
SfxViewShell* __EXPORT GraphicViewShellBase::CreateInstance (
SfxViewFrame *pFrame, SfxViewShell *pOldView)
diff --git a/sd/source/ui/view/ImpressViewShellBase.cxx b/sd/source/ui/view/ImpressViewShellBase.cxx
index 69906fbfd5d8..17815dcc9554 100755
--- a/sd/source/ui/view/ImpressViewShellBase.cxx
+++ b/sd/source/ui/view/ImpressViewShellBase.cxx
@@ -45,12 +45,6 @@ TYPEINIT1(ImpressViewShellBase, ViewShellBase);
// We have to expand the SFX_IMPL_VIEWFACTORY macro to call LateInit() after a
// new ImpressViewShellBase object has been constructed.
-/*
-SFX_IMPL_VIEWFACTORY(ImpressViewShellBase, SdResId(STR_DEFAULTVIEW))
-{
- SFX_VIEW_REGISTRATION(DrawDocShell);
-}
-*/
SfxViewFactory* ImpressViewShellBase::pFactory;
SfxViewShell* __EXPORT ImpressViewShellBase::CreateInstance (
SfxViewFrame *pFrame, SfxViewShell *pOldView)
diff --git a/sd/source/ui/view/OutlineViewShellBase.cxx b/sd/source/ui/view/OutlineViewShellBase.cxx
index 3c31155a9fb5..4e0827727e79 100755
--- a/sd/source/ui/view/OutlineViewShellBase.cxx
+++ b/sd/source/ui/view/OutlineViewShellBase.cxx
@@ -43,12 +43,6 @@ TYPEINIT1(OutlineViewShellBase, ViewShellBase);
// We have to expand the SFX_IMPL_VIEWFACTORY macro to call LateInit() after a
// new OutlineViewShellBase object has been constructed.
-/*
-SFX_IMPL_VIEWFACTORY(OutlineViewShellBase, SdResId(STR_DEFAULTVIEW))
-{
- SFX_VIEW_REGISTRATION(DrawDocShell);
-}
-*/
SfxViewFactory* OutlineViewShellBase::pFactory;
SfxViewShell* __EXPORT OutlineViewShellBase::CreateInstance (
SfxViewFrame *pFrame, SfxViewShell *pOldView)
diff --git a/sd/source/ui/view/PresentationViewShellBase.cxx b/sd/source/ui/view/PresentationViewShellBase.cxx
index 0fcb421a9888..ac7fb4ac32d6 100755
--- a/sd/source/ui/view/PresentationViewShellBase.cxx
+++ b/sd/source/ui/view/PresentationViewShellBase.cxx
@@ -52,12 +52,6 @@ TYPEINIT1(PresentationViewShellBase, ViewShellBase);
// We have to expand the SFX_IMPL_VIEWFACTORY macro to call LateInit() after a
// new PresentationViewShellBase object has been constructed.
-/*
-SFX_IMPL_VIEWFACTORY(PresentationViewShellBase, SdResId(STR_DEFAULTVIEW))
-{
- SFX_VIEW_REGISTRATION(DrawDocShell);
-}
-*/
SfxViewFactory* PresentationViewShellBase::pFactory;
SfxViewShell* __EXPORT PresentationViewShellBase::CreateInstance (
SfxViewFrame *_pFrame, SfxViewShell *pOldView)
@@ -118,7 +112,6 @@ PresentationViewShellBase::~PresentationViewShellBase (void)
-
void PresentationViewShellBase::InitializeFramework (void)
{
com::sun::star::uno::Reference<com::sun::star::frame::XController>
diff --git a/sd/source/ui/view/SlideSorterViewShellBase.cxx b/sd/source/ui/view/SlideSorterViewShellBase.cxx
index 7944d2cf4b2e..792555904f60 100755
--- a/sd/source/ui/view/SlideSorterViewShellBase.cxx
+++ b/sd/source/ui/view/SlideSorterViewShellBase.cxx
@@ -43,12 +43,6 @@ TYPEINIT1(SlideSorterViewShellBase, ViewShellBase);
// We have to expand the SFX_IMPL_VIEWFACTORY macro to call LateInit() after a
// new SlideSorterViewShellBase object has been constructed.
-/*
-SFX_IMPL_VIEWFACTORY(SlideSorterViewShellBase, SdResId(STR_DEFAULTVIEW))
-{
- SFX_VIEW_REGISTRATION(DrawDocShell);
-}
-*/
SfxViewFactory* SlideSorterViewShellBase::pFactory;
SfxViewShell* __EXPORT SlideSorterViewShellBase::CreateInstance (
SfxViewFrame *pFrame, SfxViewShell *pOldView)
diff --git a/sd/source/ui/view/ViewShellBase.cxx b/sd/source/ui/view/ViewShellBase.cxx
index c748ffbc05e0..e7a39c9d3369 100644
--- a/sd/source/ui/view/ViewShellBase.cxx
+++ b/sd/source/ui/view/ViewShellBase.cxx
@@ -241,12 +241,6 @@ TYPEINIT1(ViewShellBase, SfxViewShell);
// We have to expand the SFX_IMPL_VIEWFACTORY macro to call LateInit() after a
// new ViewShellBase object has been constructed.
-/*
-SFX_IMPL_VIEWFACTORY(ViewShellBase, SdResId(STR_DEFAULTVIEW))
-{
- SFX_VIEW_REGISTRATION(DrawDocShell);
-}
-*/
SfxViewFactory* ViewShellBase::pFactory;
SfxViewShell* __EXPORT ViewShellBase::CreateInstance (
SfxViewFrame *pFrame, SfxViewShell *pOldView)
diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx
index fa2ddf1120d0..ab70090c5263 100755
--- a/sd/source/ui/view/drviews7.cxx
+++ b/sd/source/ui/view/drviews7.cxx
@@ -34,12 +34,9 @@
#include <svx/globl3d.hxx>
#include <svx/svdouno.hxx>
#include <editeng/eeitem.hxx>
-#ifndef _FLDITEM_HXX
#include <editeng/flditem.hxx>
-#endif
-#ifndef _SVXIDS_HXX
+#include <editeng/outlobj.hxx>
#include <svx/svxids.hrc>
-#endif
#include <svx/svdpagv.hxx>
#include <svx/clipfmtitem.hxx>
#include <svx/fmshell.hxx>
@@ -310,7 +307,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
if(bDisable)
{
- rSet.DisableItem(SID_EXPAND_PAGE);
+ rSet.DisableItem(SID_ASSIGN_LAYOUT);
}
}
@@ -325,9 +322,26 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
{
SdrObject* pObj = pPage->GetPresObj(PRESOBJ_OUTLINE);
- if(pObj && !pObj->IsEmptyPresObj())
+ if (pObj!=NULL )
{
- bDisable = false;
+ if( !pObj->IsEmptyPresObj() )
+ {
+ bDisable = false;
+ }
+ else
+ {
+ // check if the object is in edit, than its temporarely not empty
+ SdrTextObj* pTextObj = dynamic_cast< SdrTextObj* >( pObj );
+ if( pTextObj )
+ {
+ OutlinerParaObject* pParaObj = pTextObj->GetEditOutlinerParaObject();
+ if( pParaObj )
+ {
+ delete pParaObj;
+ bDisable = false;
+ }
+ }
+ }
}
}
}
diff --git a/sd/source/ui/view/outlnvsh.cxx b/sd/source/ui/view/outlnvsh.cxx
index 61f513970662..1282688fdd18 100755
--- a/sd/source/ui/view/outlnvsh.cxx
+++ b/sd/source/ui/view/outlnvsh.cxx
@@ -1030,9 +1030,26 @@ void OutlineViewShell::GetMenuState( SfxItemSet &rSet )
{
SdrObject* pObj = pPage->GetPresObj(PRESOBJ_OUTLINE);
- if (pObj && !pObj->IsEmptyPresObj())
+ if (pObj!=NULL )
{
- bDisable = FALSE;
+ if( !pObj->IsEmptyPresObj() )
+ {
+ bDisable = false;
+ }
+ else
+ {
+ // check if the object is in edit, than its temporarely not empty
+ SdrTextObj* pTextObj = dynamic_cast< SdrTextObj* >( pObj );
+ if( pTextObj )
+ {
+ OutlinerParaObject* pParaObj = pTextObj->GetEditOutlinerParaObject();
+ if( pParaObj )
+ {
+ delete pParaObj;
+ bDisable = false;
+ }
+ }
+ }
}
}
diff --git a/sd/source/ui/view/sdview4.cxx b/sd/source/ui/view/sdview4.cxx
index 9fbe223c276a..9932628c4f86 100755
--- a/sd/source/ui/view/sdview4.cxx
+++ b/sd/source/ui/view/sdview4.cxx
@@ -99,6 +99,7 @@ SdrGrafObj* View::InsertGraphic( const Graphic& rGraphic, sal_Int8& rAction,
SdrGrafObj* pNewGrafObj = NULL;
SdrPageView* pPV = GetSdrPageView();
SdrObject* pPickObj = pObj;
+ const bool bOnMaster = pPV && pPV->GetPage() && pPV->GetPage()->IsMasterPage();
if(pPV && this->ISA(::sd::slidesorter::view::SlideSorterView))
{
@@ -115,7 +116,7 @@ SdrGrafObj* View::InsertGraphic( const Graphic& rGraphic, sal_Int8& rAction,
if( mnAction == DND_ACTION_LINK && pPickObj && pPV )
{
const bool bIsGraphic = pPickObj->ISA( SdrGrafObj );
- if( bIsGraphic || pObj->IsEmptyPresObj() )
+ if( bIsGraphic || (pObj->IsEmptyPresObj() && !bOnMaster) )
{
if( IsUndoEnabled() )
BegUndo(String(SdResId(STR_INSERTGRAPHIC)));
diff --git a/sd/source/ui/view/sdview5.cxx b/sd/source/ui/view/sdview5.cxx
index 156544c235ab..c84f098b3269 100755
--- a/sd/source/ui/view/sdview5.cxx
+++ b/sd/source/ui/view/sdview5.cxx
@@ -60,7 +60,7 @@ SdrObject* View::GetEmptyPresentationObject( PresObjKind eKind )
if( pPV )
{
SdPage* pPage = static_cast< SdPage* >( pPV->GetPage() );
- if( pPage )
+ if( pPage && !pPage->IsMasterPage() )
{
// first try selected shape
if ( AreObjectsMarked() )
diff --git a/sd/source/ui/view/viewshe3.cxx b/sd/source/ui/view/viewshe3.cxx
index 7ce0b577ed9e..363ff91edf36 100644
--- a/sd/source/ui/view/viewshe3.cxx
+++ b/sd/source/ui/view/viewshe3.cxx
@@ -34,8 +34,9 @@
#include "GraphicViewShellBase.hxx"
#include <sfx2/viewfrm.hxx>
+#include <svtools/svtools.hrc>
#include <com/sun/star/lang/Locale.hpp>
-
+#include <svtools/svtdata.hxx>
#include <utility>
#include <vector>
@@ -165,7 +166,7 @@ void ViewShell::GetMenuState( SfxItemSet &rSet )
{
// #87229# Set the necessary string like in
// sfx2/source/view/viewfrm.cxx ver 1.23 ln 1072 ff.
- String aTmp(ResId(STR_UNDO, *SFX_APP()->GetSfxResManager()));
+ String aTmp( SvtResId( STR_UNDO ) );
aTmp += pUndoManager->GetUndoActionComment(0);
rSet.Put(SfxStringItem(SID_UNDO, aTmp));
}
@@ -193,7 +194,7 @@ void ViewShell::GetMenuState( SfxItemSet &rSet )
{
// #87229# Set the necessary string like in
// sfx2/source/view/viewfrm.cxx ver 1.23 ln 1081 ff.
- String aTmp(ResId(STR_REDO, *SFX_APP()->GetSfxResManager()));
+ String aTmp(SvtResId(STR_REDO));
aTmp += pUndoManager->GetRedoActionComment(0);
rSet.Put(SfxStringItem(SID_REDO, aTmp));
}
diff --git a/sd/util/makefile.mk b/sd/util/makefile.mk
index ac01158b5b85..5794696b84e4 100755
--- a/sd/util/makefile.mk
+++ b/sd/util/makefile.mk
@@ -54,7 +54,7 @@ RESLIB1SRSFILES=\
$(SRS)$/uitable.srs \
$(SRS)$/view.srs \
$(SRS)$/uiannotations.srs \
- $(SOLARCOMMONRESDIR)$/sfx.srs
+
# --- StarDraw DLL