ooo-build r12464 - in trunk: . patches/dev300 patches/vba
- From: pflin svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r12464 - in trunk: . patches/dev300 patches/vba
- Date: Mon, 5 May 2008 07:16:54 +0100 (BST)
Author: pflin
Date: Mon May 5 06:16:54 2008
New Revision: 12464
URL: http://svn.gnome.org/viewvc/ooo-build?rev=12464&view=rev
Log:
* patches/vba/vba-hyperlink-service.diff,
* patches/vba/vba-workbook-worksheet-events-dev300.diff:
updated based on m10.
* patches/test/vba/vba-event-mouseclick.diff: made event handler as
a XEnhancedMouseClickHandler.
Modified:
trunk/ChangeLog
trunk/patches/dev300/apply
trunk/patches/vba/vba-hyperlink-service.diff
trunk/patches/vba/vba-workbook-worksheet-events-dev300.diff
Modified: trunk/patches/dev300/apply
==============================================================================
--- trunk/patches/dev300/apply (original)
+++ trunk/patches/dev300/apply Mon May 5 06:16:54 2008
@@ -1377,9 +1377,8 @@
vba-support-export-palette.diff, i#68900
-vba-workbook-worksheet-events.diff
+vba-workbook-worksheet-events-dev300.diff
vba-workbook-worksheet-events-buildfix.diff
-vba-workbook-worksheet-events2.diff
# superceeded by vbaevens-service-sources.diff
# leave here for a while 'till we are sure all is ok
@@ -1451,6 +1450,7 @@
vba-stringtodouble.diff, n#359943, noelpwer
#fix for n#309981
vba-fixup-singlerange-sheetref.diff, n#309981, noelpwer
+vba-hyperlink-service.diff, Fong
[ VBAUntested ]
SectionOwner => noelpwer
Modified: trunk/patches/vba/vba-hyperlink-service.diff
==============================================================================
--- trunk/patches/vba/vba-hyperlink-service.diff (original)
+++ trunk/patches/vba/vba-hyperlink-service.diff Mon May 5 06:16:54 2008
@@ -1,6 +1,6 @@
---- oovbaapi/org/openoffice/excel/makefile.mk.orig 2008-04-23 18:01:09.000000000 +0800
-+++ oovbaapi/org/openoffice/excel/makefile.mk 2008-04-23 14:42:23.000000000 +0800
-@@ -96,6 +96,8 @@ IDLFILES= XApplication.idl\
+--- backup/oovbaapi/org/openoffice/excel/makefile.mk 2008-04-30 06:51:43.000000000 +0800
++++ oovbaapi/org/openoffice/excel/makefile.mk 2008-04-30 07:09:52.000000000 +0800
+@@ -92,6 +92,8 @@ IDLFILES= XApplication.idl\
Workbook.idl \
Worksheet.idl \
Window.idl \
@@ -9,8 +9,8 @@
# ------------------------------------------------------------------
---- /dev/null 2007-09-22 03:12:45.000000000 +0800
-+++ oovbaapi/org/openoffice/excel/Hyperlink.idl 2008-04-23 14:41:30.000000000 +0800
+--- /dev/null 2007-05-04 18:54:36.000000000 +0800
++++ oovbaapi/org/openoffice/excel/Hyperlink.idl 2008-04-30 07:09:52.000000000 +0800
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
@@ -66,9 +66,9 @@
+}; }; };
+
+#endif
---- /dev/null 2007-09-22 03:12:45.000000000 +0800
-+++ oovbaapi/org/openoffice/excel/XHyperlink.idl 2008-04-23 14:41:30.000000000 +0800
-@@ -0,0 +1,67 @@
+--- /dev/null 2007-05-04 18:54:36.000000000 +0800
++++ oovbaapi/org/openoffice/excel/XHyperlink.idl 2008-04-30 07:24:49.000000000 +0800
+@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
@@ -134,20 +134,9 @@
+}; }; };
+
+#endif
-+
---- backup/sc/source/ui/vba/makefile.mk 2008-04-23 13:51:53.000000000 +0800
-+++ sc/source/ui/vba/makefile.mk 2008-04-23 14:41:30.000000000 +0800
-@@ -121,6 +121,7 @@ SLOFILES= \
- $(SLO)$/vbacommandbarcontrols.obj \
- $(SLO)$/vbacommandbar.obj \
- $(SLO)$/vbacommandbars.obj \
-+ $(SLO)$/vbahyperlink.obj \
- $(SLO)$/service.obj \
-
-
---- backup/sc/source/ui/vba/service.cxx 2008-04-23 13:51:52.000000000 +0800
-+++ sc/source/ui/vba/service.cxx 2008-04-23 14:44:16.000000000 +0800
-@@ -66,6 +66,10 @@ namespace globals
+--- backup/sc/source/ui/vba/service.cxx 2008-04-30 06:51:18.000000000 +0800
++++ sc/source/ui/vba/service.cxx 2008-04-30 07:13:46.000000000 +0800
+@@ -65,6 +65,10 @@ namespace userform
{
extern sdecl::ServiceDecl const serviceDecl;
}
@@ -157,8 +146,8 @@
+}
-
-@@ -85,7 +89,7 @@ extern "C"
+ extern "C"
+@@ -83,7 +87,7 @@ extern "C"
// Component registration
if ( component_writeInfoHelper( pServiceManager, pRegistryKey,
@@ -167,7 +156,7 @@
{
// Singleton registration
try
-@@ -113,7 +117,7 @@ extern "C"
+@@ -111,7 +115,7 @@ extern "C"
{
OSL_TRACE("In component_getFactory for %s", pImplName );
void* pRet = component_getFactoryHelper(
@@ -176,8 +165,8 @@
OSL_TRACE("Ret is 0x%x", pRet);
return pRet;
}
---- /dev/null 2007-09-22 03:12:45.000000000 +0800
-+++ sc/source/ui/vba/vbahyperlink.hxx 2008-04-29 11:01:18.000000000 +0800
+--- /dev/null 2007-05-04 18:54:36.000000000 +0800
++++ sc/source/ui/vba/vbahyperlink.hxx 2008-04-30 07:13:46.000000000 +0800
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
@@ -251,8 +240,8 @@
+};
+#endif /* SC_VBA_HYPERLINK_HXX */
+
---- /dev/null 2007-09-22 03:12:45.000000000 +0800
-+++ sc/source/ui/vba/vbahyperlink.cxx 2008-04-29 11:08:20.000000000 +0800
+--- /dev/null 2007-05-04 18:54:36.000000000 +0800
++++ sc/source/ui/vba/vbahyperlink.cxx 2008-04-30 07:13:46.000000000 +0800
@@ -0,0 +1,139 @@
+/*************************************************************************
+ *
@@ -393,3 +382,13 @@
+ "ScVbaHyperlink",
+ "org.openoffice.excel.Hyperlink" );
+}
+--- sc/source/ui/vba/makefile.mk.orig 2008-05-04 12:10:31.000000000 +0800
++++ sc/source/ui/vba/makefile.mk 2008-05-04 12:10:45.000000000 +0800
+@@ -125,6 +125,7 @@ SLOFILES= \
+ $(SLO)$/vbacommandbarcontrols.obj \
+ $(SLO)$/vbacommandbar.obj \
+ $(SLO)$/vbacommandbars.obj \
++ $(SLO)$/vbahyperlink.obj \
+ $(SLO)$/service.obj \
+
+
Modified: trunk/patches/vba/vba-workbook-worksheet-events-dev300.diff
==============================================================================
--- trunk/patches/vba/vba-workbook-worksheet-events-dev300.diff (original)
+++ trunk/patches/vba/vba-workbook-worksheet-events-dev300.diff Mon May 5 06:16:54 2008
@@ -1,7 +1,7 @@
-diff -urp backup/sc/inc/document.hxx sc/inc/document.hxx
---- backup/sc/inc/document.hxx 2008-04-23 13:51:49.000000000 +0800
-+++ sc/inc/document.hxx 2008-04-23 14:32:58.000000000 +0800
-@@ -166,6 +166,7 @@ class ScAutoNameCache;
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/inc/document.hxx sc/inc/document.hxx
+--- backup/sc/inc/document.hxx 2008-04-30 18:58:37.000000000 +0800
++++ sc/inc/document.hxx 2008-04-30 19:02:20.000000000 +0800
+@@ -132,6 +132,7 @@ class ScAutoNameCache;
class ScTemporaryChartLock;
class ScLookupCache;
struct ScLookupCacheMapImpl;
@@ -9,7 +9,7 @@
namespace com { namespace sun { namespace star {
namespace lang {
-@@ -340,6 +341,8 @@ private:
+@@ -306,6 +307,8 @@ private:
Timer aTrackTimer;
@@ -18,7 +18,7 @@
public:
ScTabOpList aTableOpList; // list of ScInterpreterTableOpParams currently in use
ScInterpreterTableOpParams aLastTableOpParams; // remember last params
-@@ -1740,6 +1743,8 @@ public:
+@@ -1713,6 +1716,8 @@ public:
void GetSortParam( ScSortParam& rParam, SCTAB nTab );
void SetSortParam( ScSortParam& rParam, SCTAB nTab );
@@ -27,10 +27,10 @@
/** Should only be GRAM_PODF or GRAM_ODFF. */
void SetStorageGrammar( ScGrammar::Grammar eGrammar );
ScGrammar::Grammar GetStorageGrammar() const
-diff -urp backup/sc/source/core/data/documen2.cxx sc/source/core/data/documen2.cxx
---- backup/sc/source/core/data/documen2.cxx 2008-04-23 13:51:57.000000000 +0800
-+++ sc/source/core/data/documen2.cxx 2008-04-23 14:29:57.000000000 +0800
-@@ -106,6 +106,7 @@
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/core/data/documen2.cxx sc/source/core/data/documen2.cxx
+--- backup/sc/source/core/data/documen2.cxx 2008-04-30 18:58:42.000000000 +0800
++++ sc/source/core/data/documen2.cxx 2008-04-30 19:02:20.000000000 +0800
+@@ -93,6 +93,7 @@
#include "listenercalls.hxx"
#include "recursionhelper.hxx"
#include "lookupcache.hxx"
@@ -38,7 +38,7 @@
// pImpl because including lookupcache.hxx in document.hxx isn't wanted, and
// dtor is convenient.
-@@ -159,6 +160,7 @@ ScDocument::ScDocument( ScDocumentMode e
+@@ -146,6 +147,7 @@ ScDocument::ScDocument( ScDocumentMode e
pRecursionHelper( NULL ),
pAutoNameCache( NULL ),
pLookupCacheMapImpl( NULL ),
@@ -46,7 +46,7 @@
nUnoObjectId( 0 ),
nRangeOverflowType( 0 ),
aCurTextWidthCalcPos(MAXCOL,0,0),
-@@ -447,6 +449,12 @@ ScDocument::~ScDocument()
+@@ -434,6 +436,12 @@ ScDocument::~ScDocument()
delete pOtherObjects;
delete pRecursionHelper;
@@ -59,7 +59,7 @@
DBG_ASSERT( !pAutoNameCache, "AutoNameCache still set in dtor" );
}
-@@ -1870,3 +1878,13 @@ void ScDocument::RemoveLookupCache( ScLo
+@@ -1857,3 +1865,13 @@ void ScDocument::RemoveLookupCache( ScLo
EndListeningArea( pCache->getRange(), &rCache);
}
}
@@ -73,10 +73,10 @@
+
+ return pVbaEventsHelper;
+}
-diff -urp backup/sc/source/core/data/documen7.cxx sc/source/core/data/documen7.cxx
---- backup/sc/source/core/data/documen7.cxx 2008-04-23 13:51:57.000000000 +0800
-+++ sc/source/core/data/documen7.cxx 2008-04-23 14:29:57.000000000 +0800
-@@ -67,6 +67,9 @@
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/core/data/documen7.cxx sc/source/core/data/documen7.cxx
+--- backup/sc/source/core/data/documen7.cxx 2008-04-30 18:58:42.000000000 +0800
++++ sc/source/core/data/documen7.cxx 2008-04-30 19:02:20.000000000 +0800
+@@ -59,6 +59,9 @@
#include "globstr.hrc"
@@ -86,7 +86,7 @@
extern const ScFormulaCell* pLastFormulaTreeTop; // cellform.cxx Err527 WorkAround
-@@ -457,6 +460,7 @@ void ScDocument::TrackFormulas( ULONG nH
+@@ -449,6 +452,7 @@ void ScDocument::TrackFormulas( ULONG nH
ScFormulaCell* pTrack;
ScFormulaCell* pNext;
pTrack = pFormulaTrack;
@@ -94,7 +94,7 @@
do
{
ScHint aHint( nHintId, pTrack->aPos, pTrack );
-@@ -466,6 +470,12 @@ void ScDocument::TrackFormulas( ULONG nH
+@@ -458,6 +462,12 @@ void ScDocument::TrackFormulas( ULONG nH
// Repaint fuer bedingte Formate mit relativen Referenzen:
if ( pCondFormList )
pCondFormList->SourceChanged( pTrack->aPos );
@@ -107,7 +107,7 @@
pTrack = pTrack->GetNextTrack();
} while ( pTrack );
pTrack = pFormulaTrack;
-@@ -488,6 +498,14 @@ void ScDocument::TrackFormulas( ULONG nH
+@@ -480,6 +490,14 @@ void ScDocument::TrackFormulas( ULONG nH
else
SetForcedFormulaPending( TRUE );
}
@@ -122,10 +122,10 @@
}
DBG_ASSERT( nFormulaTrackCount==0, "TrackFormulas: nFormulaTrackCount!=0" );
}
-diff -urp backup/sc/source/core/tool/makefile.mk sc/source/core/tool/makefile.mk
---- backup/sc/source/core/tool/makefile.mk 2008-04-23 13:52:00.000000000 +0800
-+++ sc/source/core/tool/makefile.mk 2008-04-23 14:34:12.000000000 +0800
-@@ -114,7 +114,8 @@ SLOFILES = \
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/core/tool/makefile.mk sc/source/core/tool/makefile.mk
+--- backup/sc/source/core/tool/makefile.mk 2008-04-30 18:58:42.000000000 +0800
++++ sc/source/core/tool/makefile.mk 2008-04-30 19:02:20.000000000 +0800
+@@ -110,7 +110,8 @@ SLOFILES = \
$(SLO)$/unitconv.obj \
$(SLO)$/userlist.obj \
$(SLO)$/viewopti.obj \
@@ -135,7 +135,7 @@
EXCEPTIONSFILES= \
$(SLO)$/addincol.obj \
-@@ -130,6 +131,7 @@ EXCEPTIONSFILES= \
+@@ -126,6 +127,7 @@ EXCEPTIONSFILES= \
$(SLO)$/interpr5.obj \
$(SLO)$/lookupcache.obj \
$(SLO)$/prnsave.obj \
@@ -143,10 +143,10 @@
$(SLO)$/token.obj
# [kh] POWERPC compiler problem
-diff -urp backup/sc/source/ui/docshell/docsh.cxx sc/source/ui/docshell/docsh.cxx
---- backup/sc/source/ui/docshell/docsh.cxx 2008-04-23 14:28:47.000000000 +0800
-+++ sc/source/ui/docshell/docsh.cxx 2008-04-23 16:43:55.000000000 +0800
-@@ -33,6 +33,8 @@
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/ui/docshell/docsh.cxx sc/source/ui/docshell/docsh.cxx
+--- backup/sc/source/ui/docshell/docsh.cxx 2008-04-30 18:58:42.000000000 +0800
++++ sc/source/ui/docshell/docsh.cxx 2008-04-30 19:30:43.000000000 +0800
+@@ -28,6 +28,8 @@
*
************************************************************************/
@@ -155,24 +155,17 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sc.hxx"
// System - Includes -----------------------------------------------------
-@@ -146,12 +148,16 @@
- #include "docsh.hxx"
- #include "docshimp.hxx"
-
-+#include "uiitems.hxx"
-+
- #ifndef _RTL_LOGFILE_HXX_
+@@ -131,6 +133,9 @@
#include <rtl/logfile.hxx>
- #endif
#include <comphelper/processfactory.hxx>
-
++#include "uiitems.hxx"
+#include "vbaeventshelper.hxx"
-+
++#include "cellsuno.hxx"
+
using namespace com::sun::star;
- // STATIC DATA -----------------------------------------------------------
-@@ -692,7 +698,6 @@ BOOL ScDocShell::SaveXML( SfxMedium* pSa
+@@ -672,7 +677,6 @@ BOOL ScDocShell::SaveXML( SfxMedium* pSa
BOOL __EXPORT ScDocShell::Load( SfxMedium& rMedium )
{
RTL_LOGFILE_CONTEXT_AUTHOR ( aLog, "sc", "nn93723", "ScDocShell::Load" );
@@ -180,7 +173,7 @@
ScRefreshTimerProtector( aDocument.GetRefreshTimerControlAddress() );
// only the latin script language is loaded
-@@ -735,10 +740,43 @@ BOOL __EXPORT ScDocShell::Load( SfxMediu
+@@ -715,10 +719,43 @@ BOOL __EXPORT ScDocShell::Load( SfxMediu
aDocument.InvalidateTableArea();
bIsEmpty = FALSE;
@@ -224,7 +217,7 @@
void __EXPORT ScDocShell::Notify( SfxBroadcaster&, const SfxHint& rHint )
{
-@@ -774,6 +812,12 @@ void __EXPORT ScDocShell::Notify( SfxBro
+@@ -754,6 +791,12 @@ void __EXPORT ScDocShell::Notify( SfxBro
pAutoStyleList = new ScAutoStyleList(this);
pAutoStyleList->AddInitial( aRange, aName1, nTimeout, aName2 );
}
@@ -237,7 +230,7 @@
else if ( rHint.ISA( SfxEventHint ) )
{
ULONG nEventId = ((SfxEventHint&)rHint).GetEventId();
-@@ -945,6 +989,13 @@ void __EXPORT ScDocShell::Notify( SfxBro
+@@ -940,6 +983,13 @@ void __EXPORT ScDocShell::Notify( SfxBro
}
}
break;
@@ -251,7 +244,7 @@
default:
{
}
-@@ -1438,6 +1489,10 @@ BOOL __EXPORT ScDocShell::ConvertFrom( S
+@@ -1433,6 +1483,10 @@ BOOL __EXPORT ScDocShell::ConvertFrom( S
if ( bSetRowHeights )
UpdateAllRowHeights(); // with vdev or printer, depending on configuration
}
@@ -262,7 +255,7 @@
FinishedLoading( SFX_LOADED_MAINDOCUMENT | SFX_LOADED_IMAGES );
// #73762# invalidate eventually temporary table areas
-@@ -2214,7 +2269,6 @@ BOOL __EXPORT ScDocShell::SaveCompleted(
+@@ -2209,7 +2263,6 @@ BOOL __EXPORT ScDocShell::SaveCompleted(
return SfxObjectShell::SaveCompleted( xStor );
}
@@ -270,7 +263,7 @@
BOOL __EXPORT ScDocShell::DoSaveCompleted( SfxMedium * pNewStor )
{
BOOL bRet = SfxObjectShell::DoSaveCompleted( pNewStor );
-@@ -2251,6 +2305,11 @@ USHORT __EXPORT ScDocShell::PrepareClose
+@@ -2246,6 +2299,11 @@ USHORT __EXPORT ScDocShell::PrepareClose
DoEnterHandler();
@@ -282,10 +275,53 @@
USHORT nRet = SfxObjectShell::PrepareClose( bUI, bForBrowsing );
if (nRet == TRUE) // TRUE = schliessen
aDocument.DisableIdle(TRUE); // nicht mehr drin rumpfuschen !!!
-diff -urp backup/sc/source/ui/inc/docsh.hxx sc/source/ui/inc/docsh.hxx
---- backup/sc/source/ui/inc/docsh.hxx 2008-04-23 14:28:42.000000000 +0800
-+++ sc/source/ui/inc/docsh.hxx 2008-04-23 17:05:42.000000000 +0800
-@@ -200,6 +200,7 @@ public:
+@@ -2455,6 +2513,42 @@ void ScDocShell::SetModified( BOOL bModi
+ }
+ }
+
++void ScDocShell::PostContentChanged( const ScRange& rRange )
++{
++// OSL_TRACE("ScDocShell::PostContentChanged. Changed Range Address: nTab1 = %d, nCol1 = %d, nRow1 = %d; nTab2 = %d, nCol2 = %d, nRow2 = %d;", rRange.aStart.Tab(), rRange.aStart.Col(), rRange.aStart.Row(), rRange.aEnd.Tab(), rRange.aEnd.Col(), rRange.aEnd.Row() );
++
++ ScRangeList aList;
++ aList.Append(rRange);
++ PostContentChanged(aList);
++}
++
++void ScDocShell::PostContentChanged( const ScRangeList& rList )
++{
++#if 0
++ String aStr;
++ rList.Format(aStr, SCR_ABS, &aDocument, ScAddress::CONV_XL_A1);
++ fprintf(stdout, "ScDocShell::PostContentChanged: range = '%s'\n",
++ rtl::OUStringToOString(aStr, RTL_TEXTENCODING_UTF8).getStr());
++#endif
++
++ ScCellRangesBase* pObj = NULL;
++ const ScRange& rRange = *(rList.GetObject(0));
++ if( rList.Count() == 1 )
++ {
++ if (rRange.aStart == rRange.aEnd)
++ pObj = new ScCellObj( this, rRange.aStart );
++ else
++ pObj = new ScCellRangeObj( this, rRange );
++ }
++ else
++ pObj = new ScCellRangesObj( this, rList );
++
++ uno::Sequence< uno::Any > aArgs(1);
++ aArgs[0] = uno::makeAny(uno::Reference<uno::XInterface>(static_cast<cppu::OWeakObject*>(pObj)));
++
++ SCTAB nTab = rRange.aStart.Tab();
++ aDocument.GetVbaEventsHelper()->executeSheetMacro( SC_VBAEVENT_SHEET_CHANGE, nTab, aArgs );
++}
+
+ void ScDocShell::SetDocumentModified( BOOL bIsModified /* = TRUE */ )
+ {
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/ui/inc/docsh.hxx sc/source/ui/inc/docsh.hxx
+--- backup/sc/source/ui/inc/docsh.hxx 2008-04-30 18:58:38.000000000 +0800
++++ sc/source/ui/inc/docsh.hxx 2008-04-30 19:10:47.000000000 +0800
+@@ -178,6 +178,7 @@ public:
using SfxShell::Activate; // with BOOL bMDI
using SfxShell::Deactivate; // with BOOL bMDI
using SfxObjectShell::Print; // print styles
@@ -293,20 +329,210 @@
virtual void Activate();
virtual void Deactivate();
-diff -urp backup/sc/source/ui/unoobj/viewuno.cxx sc/source/ui/unoobj/viewuno.cxx
---- backup/sc/source/ui/unoobj/viewuno.cxx 2008-04-23 14:28:47.000000000 +0800
-+++ sc/source/ui/unoobj/viewuno.cxx 2008-04-23 14:29:57.000000000 +0800
-@@ -85,7 +85,8 @@
- #ifndef SC_ACCESSIBILITYHINTS_HXX
+@@ -326,6 +327,8 @@ public:
+ void PostPaintExtras();
+
+ void PostDataChanged();
++ void PostContentChanged( const ScRange& rRange ); // for worsheet/workbook changed event
++ void PostContentChanged( const ScRangeList& rList );
+
+ void UpdatePaintExt( USHORT& rExtFlags, SCCOL nStartCol, SCROW nStartRow, SCTAB nStartTab,
+ SCCOL nEndCol, SCROW nEndRow, SCTAB nEndTab );
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/ui/undo/undoblk3.cxx sc/source/ui/undo/undoblk3.cxx
+--- backup/sc/source/ui/undo/undoblk3.cxx 2008-04-30 18:58:39.000000000 +0800
++++ sc/source/ui/undo/undoblk3.cxx 2008-04-30 19:10:47.000000000 +0800
+@@ -112,6 +112,15 @@ ScUndoDeleteContents::ScUndoDeleteConten
+ if ( !(aMarkData.IsMarked() || aMarkData.IsMultiMarked()) ) // keine Zelle markiert:
+ aMarkData.SetMarkArea( aRange ); // Zelle unter Cursor markieren
+
++ if (aMarkData.IsMarked() || aMarkData.IsMultiMarked())
++ {
++ ScRangeList aList;
++ aMarkData.FillRangeListWithMarks(&aList, false);
++ pDocShell->PostContentChanged(aList);
++ }
++ else
++ pDocShell->PostContentChanged( aRange );
++
+ SetChangeTrack();
+ }
+
+@@ -202,6 +211,15 @@ void ScUndoDeleteContents::DoChange( con
+ if (pViewShell)
+ pViewShell->CellContentChanged();
+
++ if (aMarkData.IsMarked() || aMarkData.IsMultiMarked())
++ {
++ ScRangeList aList;
++ aMarkData.FillRangeListWithMarks(&aList, false);
++ pDocShell->PostContentChanged(aList);
++ }
++ else
++ pDocShell->PostContentChanged( aRange );
++
+ ShowTable( aRange );
+ }
+
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/ui/undo/undoblk.cxx sc/source/ui/undo/undoblk.cxx
+--- backup/sc/source/ui/undo/undoblk.cxx 2008-04-30 18:58:39.000000000 +0800
++++ sc/source/ui/undo/undoblk.cxx 2008-04-30 19:10:47.000000000 +0800
+@@ -124,6 +124,7 @@ ScUndoInsertCells::ScUndoInsertCells( Sc
+ aEffRange.aEnd.SetRow(MAXROW);
+ }
+
++ pDocShell->PostContentChanged( aEffRange );
+ SetChangeTrack();
+ }
+
+@@ -259,6 +260,7 @@ void ScUndoInsertCells::DoChange( const
+ if (pViewShell)
+ pViewShell->CellContentChanged();
+
++ pDocShell->PostContentChanged( aEffRange );
+ ShowTable( aEffRange.aStart.Tab() );
+ }
+
+@@ -332,6 +334,8 @@ ScUndoDeleteCells::ScUndoDeleteCells( Sc
+ aEffRange.aEnd.SetRow(MAXROW);
+ }
+
++ pDocShell->PostContentChanged( aEffRange );
++
+ SetChangeTrack();
+ }
+
+@@ -464,6 +468,7 @@ void ScUndoDeleteCells::DoChange( const
+
+ pDocShell->PostDataChanged();
+ // CellContentChanged kommt mit der Markierung
++ pDocShell->PostContentChanged( aWorkRange );
+
+ ShowTable( aEffRange.aStart.Tab() );
+ }
+@@ -713,6 +718,7 @@ ScUndoCut::ScUndoCut( ScDocShell* pNewDo
+ pUndoDoc( pNewUndoDoc ),
+ aExtendedRange( aRange )
+ {
++ pDocShell->PostContentChanged( aExtendedRange );
+ SetChangeTrack();
+ }
+
+@@ -771,6 +777,7 @@ void ScUndoCut::DoChange( const BOOL bUn
+ pDocShell->PostDataChanged();
+ if (pViewShell)
+ pViewShell->CellContentChanged();
++ pDocShell->PostContentChanged( aExtendedRange );
+ }
+
+ void __EXPORT ScUndoCut::Undo()
+@@ -837,6 +844,7 @@ ScUndoPaste::ScUndoPaste( ScDocShell* pN
+
+ if ( pOptions )
+ aPasteOptions = *pOptions; // used only for Repeat
++ pDocShell->PostContentChanged( aBlockRange );
+
+ SetChangeTrack();
+ }
+@@ -1012,6 +1020,7 @@ void ScUndoPaste::DoChange( const BOOL b
+ pDocShell->PostDataChanged();
+ if (pViewShell)
+ pViewShell->CellContentChanged();
++ pDocShell->PostContentChanged( aDrawRange );
+ }
+
+ void __EXPORT ScUndoPaste::Undo()
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/ui/undo/undocell.cxx sc/source/ui/undo/undocell.cxx
+--- backup/sc/source/ui/undo/undocell.cxx 2008-04-30 18:58:39.000000000 +0800
++++ sc/source/ui/undo/undocell.cxx 2008-04-30 19:10:47.000000000 +0800
+@@ -213,6 +213,7 @@ ScUndoEnterData::ScUndoEnterData( ScDocS
+ nTab( nNewTab ),
+ nCount( nNewCount )
+ {
++ pDocShell->PostContentChanged( ScRange( ScAddress( nCol, nRow, nTab ) ) );
+ SetChangeTrack();
+ }
+
+@@ -249,6 +250,7 @@ void ScUndoEnterData::DoChange() const
+ pViewShell->MoveCursorAbs( nCol, nRow, SC_FOLLOW_JUMP, FALSE, FALSE );
+ }
+
++ pDocShell->PostContentChanged( ScRange( ScAddress( nCol, nRow, nTab ) ) );
+ pDocShell->PostDataChanged();
+ }
+
+@@ -370,6 +372,7 @@ ScUndoEnterValue::ScUndoEnterValue( ScDo
+ nValue ( nVal ),
+ bNeedHeight ( bHeight )
+ {
++ pDocShell->PostContentChanged( ScRange( aPos ) );
+ SetChangeTrack();
+ }
+
+@@ -420,6 +423,8 @@ void __EXPORT ScUndoEnterValue::Undo()
+
+ pDocShell->PostPaintCell( aPos.Col(), aPos.Row(), aPos.Tab() );
+
++ pDocShell->PostContentChanged( ScRange( aPos ) );
++
+ ScChangeTrack* pChangeTrack = pDoc->GetChangeTrack();
+ if ( pChangeTrack )
+ pChangeTrack->Undo( nEndChangeAction, nEndChangeAction );
+@@ -435,6 +440,8 @@ void __EXPORT ScUndoEnterValue::Redo()
+ pDoc->SetValue( aPos.Col(), aPos.Row(), aPos.Tab(), nValue );
+ pDocShell->PostPaintCell( aPos.Col(), aPos.Row(), aPos.Tab() );
+
++ pDocShell->PostContentChanged( ScRange( aPos ) );
++
+ SetChangeTrack();
+
+ EndRedo();
+@@ -464,6 +471,7 @@ ScUndoPutCell::ScUndoPutCell( ScDocShell
+ pEnteredCell( pRedoCell ),
+ bNeedHeight ( bHeight )
+ {
++ pDocShell->PostContentChanged( ScRange( aPos ) );
+ SetChangeTrack();
+ }
+
+@@ -516,6 +524,8 @@ void __EXPORT ScUndoPutCell::Undo()
+
+ pDocShell->PostPaintCell( aPos.Col(), aPos.Row(), aPos.Tab() );
+
++ pDocShell->PostContentChanged( ScRange( aPos ) );
++
+ ScChangeTrack* pChangeTrack = pDoc->GetChangeTrack();
+ if ( pChangeTrack )
+ pChangeTrack->Undo( nEndChangeAction, nEndChangeAction );
+@@ -546,6 +556,8 @@ void __EXPORT ScUndoPutCell::Redo()
+
+ pDocShell->PostPaintCell( aPos.Col(), aPos.Row(), aPos.Tab() );
+
++ pDocShell->PostContentChanged( ScRange( aPos ) );
++
+ SetChangeTrack();
+
+ EndRedo();
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/ui/unoobj/viewuno.cxx sc/source/ui/unoobj/viewuno.cxx
+--- backup/sc/source/ui/unoobj/viewuno.cxx 2008-04-30 18:58:41.000000000 +0800
++++ sc/source/ui/unoobj/viewuno.cxx 2008-05-05 12:23:04.000000000 +0800
+@@ -71,6 +71,8 @@
+ #include "gridwin.hxx"
+ #include <com/sun/star/view/DocumentZoomType.hpp>
#include "AccessibilityHints.hxx"
- #endif
--
+#include <com/sun/star/awt/MouseButton.hpp>
+#include "vbaeventshelper.hxx"
+
using namespace com::sun::star;
- //------------------------------------------------------------------------
-@@ -1192,36 +1193,64 @@ sal_Bool ScTabViewObj::MousePressed( con
+@@ -480,7 +482,6 @@ ScTabViewObj::ScTabViewObj( ScTabViewShe
+ aActivationListeners( 0 ),
+ bDrawSelModeSet(sal_False)
+ {
+- //! Listening oder so
+ }
+
+ ScTabViewObj::~ScTabViewObj()
+@@ -1206,36 +1207,64 @@ sal_Bool ScTabViewObj::MousePressed( con
{
sal_Bool bReturn(sal_False);
@@ -340,7 +566,7 @@
- if (xTarget.is())
- {
- awt::EnhancedMouseEvent aMouseEvent;
-+ pViewData->GetDocument()->GetVbaEventsHelper()->executeSheetMacro( SC_VBAEVENT_SHEET_BEFOREDOUBLECLICK, pViewData->GetTabNo(), aArgs );
++ pViewData->GetDocument()->GetVbaEventsHelper()->executeSheetMacro( nEvent, pViewData->GetTabNo(), aArgs );
- aMouseEvent.Buttons = e.Buttons;
- aMouseEvent.X = e.X;
@@ -393,7 +619,7 @@
return bReturn;
}
-@@ -1695,6 +1724,18 @@ void SAL_CALL ScTabViewObj::removeSelect
+@@ -1709,6 +1738,18 @@ void SAL_CALL ScTabViewObj::removeSelect
void ScTabViewObj::SelectionChanged()
{
@@ -412,19 +638,20 @@
lang::EventObject aEvent;
aEvent.Source.set(static_cast<cppu::OWeakObject*>(this));
for ( USHORT n=0; n<aSelectionListeners.Count(); n++ )
-diff -urp backup/sc/source/ui/view/gridwin.cxx sc/source/ui/view/gridwin.cxx
---- backup/sc/source/ui/view/gridwin.cxx 2008-04-23 13:51:54.000000000 +0800
-+++ sc/source/ui/view/gridwin.cxx 2008-04-23 14:29:57.000000000 +0800
-@@ -167,6 +167,8 @@
- #ifndef _SV_SVAPP_HXX //autogen
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/ui/view/gridwin.cxx sc/source/ui/view/gridwin.cxx
+--- backup/sc/source/ui/view/gridwin.cxx 2008-04-30 18:58:39.000000000 +0800
++++ sc/source/ui/view/gridwin.cxx 2008-05-05 10:52:37.000000000 +0800
+@@ -149,6 +149,9 @@
+ #include <svx/sdr/overlay/overlaymanager.hxx>
#include <vcl/svapp.hxx>
- #endif
-+#include "vbaeventshelper.hxx"
-+#include "cellsuno.hxx"
++#include "vbaeventshelper.hxx"
++#include "cellsuno.hxx"
++
using namespace com::sun::star;
using ::com::sun::star::uno::Sequence;
-@@ -417,6 +419,31 @@ void lcl_UnLockComment( SdrView* pView,
+ using ::com::sun::star::uno::Any;
+@@ -398,6 +401,32 @@ void lcl_UnLockComment( SdrView* pView,
}
@@ -453,10 +680,20 @@
+
+ return bFound;
+}
++
//==================================================================
// WB_DIALOGCONTROL noetig fuer UNO-Controls
-@@ -2140,6 +2167,24 @@ void __EXPORT ScGridWindow::MouseButtonU
+@@ -1441,6 +1470,8 @@ void ScGridWindow::HandleMouseButtonDown
+ SCCOL nOldColFBox = bWasFilterBox ? pFilterBox->GetCol() : 0;
+ SCROW nOldRowFBox = bWasFilterBox ? pFilterBox->GetRow() : 0;
+ #endif
++#include "vbaeventshelper.hxx"
++#include "cellsuno.hxx"
+
+ ClickExtern(); // loescht FilterBox, wenn vorhanden
+
+@@ -2121,6 +2152,24 @@ void __EXPORT ScGridWindow::MouseButtonU
{
nMouseStatus = SC_GM_NONE; // keinen Doppelklick anfangen
ScGlobal::OpenURL( aUrl, aTarget );
@@ -481,12 +718,11 @@
return;
}
}
-@@ -2459,13 +2504,14 @@ long ScGridWindow::PreNotify( NotifyEven
+@@ -2440,13 +2489,13 @@ long ScGridWindow::PreNotify( NotifyEven
if (xController.is())
{
ScTabViewObj* pImp = ScTabViewObj::getImplementation( xController );
- if (pImp && pImp->IsMouseListening())
-+ //if (pImp && pImp->IsMouseListening())
+ if (pImp)
{
::com::sun::star::awt::MouseEvent aEvent;
@@ -498,7 +734,7 @@
pImp->MousePressed( aEvent );
else
pImp->MouseReleased( aEvent );
-@@ -4837,26 +4883,9 @@ BOOL ScGridWindow::GetEditUrlOrError( BO
+@@ -4856,26 +4905,9 @@ BOOL ScGridWindow::GetEditUrlOrError( BO
ScDocument* pDoc = pDocSh->GetDocument();
ScBaseCell* pCell = NULL;
@@ -528,10 +764,10 @@
ScHideTextCursor aHideCursor( pViewData, eWhich ); // before GetEditArea (MapMode is changed)
-diff -urp backup/sc/source/ui/view/tabview3.cxx sc/source/ui/view/tabview3.cxx
---- backup/sc/source/ui/view/tabview3.cxx 2008-04-23 13:51:53.000000000 +0800
-+++ sc/source/ui/view/tabview3.cxx 2008-04-23 14:29:57.000000000 +0800
-@@ -85,6 +85,7 @@
+diff -urp --exclude=CVS --exclude=unxlngx6.pro backup/sc/source/ui/view/tabview3.cxx sc/source/ui/view/tabview3.cxx
+--- backup/sc/source/ui/view/tabview3.cxx 2008-04-30 18:58:39.000000000 +0800
++++ sc/source/ui/view/tabview3.cxx 2008-04-30 19:02:20.000000000 +0800
+@@ -80,6 +80,7 @@
#include "rangeutl.hxx"
#include "client.hxx"
#include "tabprotection.hxx"
@@ -539,7 +775,7 @@
#include <com/sun/star/chart2/data/HighlightedRange.hpp>
-@@ -1688,6 +1689,12 @@ void ScTabView::SetTabNo( SCTAB nTab, BO
+@@ -1684,6 +1685,12 @@ void ScTabView::SetTabNo( SCTAB nTab, BO
// nicht InputEnterHandler wegen Referenzeingabe !
ScDocument* pDoc = aViewData.GetDocument();
@@ -552,7 +788,7 @@
pDoc->MakeTable( nTab );
SCTAB nTabCount = pDoc->GetTableCount();
-@@ -1786,7 +1793,13 @@ void ScTabView::SetTabNo( SCTAB nTab, BO
+@@ -1782,7 +1789,13 @@ void ScTabView::SetTabNo( SCTAB nTab, BO
if ( pGridWin[i]->IsVisible() )
pGridWin[i]->UpdateEditViewPos();
}
@@ -568,8 +804,8 @@
aViewData.GetViewShell()->WindowChanged(); // falls das aktive Fenster anders ist
if ( !bUnoRefDialog )
--- /dev/null 2007-09-22 03:12:45.000000000 +0800
-+++ sc/inc/vbaeventshelper.hxx 2008-04-23 16:41:08.000000000 +0800
-@@ -0,0 +1,94 @@
++++ sc/inc/vbaeventshelper.hxx 2008-05-05 10:49:36.000000000 +0800
+@@ -0,0 +1,96 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
@@ -609,7 +845,9 @@
+#define SC_VBAEVENTS_HXX
+
+#include "document.hxx"
++#include <cppuhelper/implbase1.hxx>
+#include <com/sun/star/container/XNameReplace.hpp>
++#include <com/sun/star/awt/XEnhancedMouseClickHandler.hpp>
+
+using namespace com::sun::star;
+
@@ -665,8 +903,8 @@
+#endif
+
--- /dev/null 2007-09-22 03:12:45.000000000 +0800
-+++ sc/source/core/tool/vbaeventshelper.cxx 2008-04-23 17:02:52.000000000 +0800
-@@ -0,0 +1,916 @@
++++ sc/source/core/tool/vbaeventshelper.cxx 2008-05-05 10:50:30.000000000 +0800
+@@ -0,0 +1,918 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
@@ -728,6 +966,8 @@
+#include <com/sun/star/awt/XWindowListener.hpp>
+#include <com/sun/star/awt/WindowEvent.hpp>
+#include <com/sun/star/lang/EventObject.hpp>
++#include <com/sun/star/awt/MouseButton.hpp>
++#include "cellsuno.hxx"
+using namespace com::sun::star;
+
+const static String sLibrary( RTL_CONSTASCII_USTRINGPARAM("Standard"));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]