ooo-build r14482 - in branches/ooo-build-3-0: . patches/vba



Author: noelpwer
Date: Wed Nov 12 08:40:28 2008
New Revision: 14482
URL: http://svn.gnome.org/viewvc/ooo-build?rev=14482&view=rev

Log:
2008-11-12  Noel Power <noel power novell com>

        * patches/vba/vba-fix-range-select-focus.diff: Range.Select needs to
        set focus to the windos ( customer issue )
        * patches/vba/vba-workbook-worksheet-events.diff: ported from 
        trunk ( Worksheet_Activate fires before the sheet is changed )


Added:
   branches/ooo-build-3-0/patches/vba/vba-fix-range-select-focus.diff
Modified:
   branches/ooo-build-3-0/ChangeLog
   branches/ooo-build-3-0/patches/vba/vba-workbook-worksheet-events.diff

Added: branches/ooo-build-3-0/patches/vba/vba-fix-range-select-focus.diff
==============================================================================
--- (empty file)
+++ branches/ooo-build-3-0/patches/vba/vba-fix-range-select-focus.diff	Wed Nov 12 08:40:28 2008
@@ -0,0 +1,24 @@
+diff --git sc/source/ui/vba/vbarange.cxx sc/source/ui/vba/vbarange.cxx
+index 8724906..0d0b86a 100644
+--- sc/source/ui/vba/vbarange.cxx
++++ sc/source/ui/vba/vbarange.cxx
+@@ -1969,6 +1969,19 @@ ScVbaRange::Select() throw (uno::Runtime
+ 			xSelection->select( uno::makeAny( mxRanges ) );
+ 		else
+ 			xSelection->select( uno::makeAny( mxRange ) );
++		// set focus on document e.g.
++		// ThisComponent.CurrentController.Frame.getContainerWindow.SetFocus
++		try
++		{
++			uno::Reference< frame::XController > xController( getCurrentDocument()->getCurrentController(), uno::UNO_QUERY_THROW );
++			uno::Reference< frame::XFrame > xFrame( xController->getFrame(), uno::UNO_QUERY_THROW );
++			uno::Reference< awt::XWindow > xWin( xFrame->getContainerWindow(), uno::UNO_QUERY_THROW );
++			xWin->setFocus();
++		}
++		catch( uno::Exception& )
++		{
++		}		
++
+ 	}
+ }
+ 

Modified: branches/ooo-build-3-0/patches/vba/vba-workbook-worksheet-events.diff
==============================================================================
--- branches/ooo-build-3-0/patches/vba/vba-workbook-worksheet-events.diff	(original)
+++ branches/ooo-build-3-0/patches/vba/vba-workbook-worksheet-events.diff	Wed Nov 12 08:40:28 2008
@@ -2299,7 +2299,7 @@
 --- /home/feng/work/ooo-build/build/dev300-m14/sc/source/ui/view/tabview3.cxx	2008-06-16 21:30:17.000000000 +0800
 +++ sc/source/ui/view/tabview3.cxx	2008-06-05 18:11:39.000000000 +0800
 @@ -82,6 +82,10 @@
- #include "client.hxx"
+ #include "tabprotection.hxx"
  
  #include <com/sun/star/chart2/data/HighlightedRange.hpp>
 +#include <com/sun/star/document/XVbaEventsHelper.hpp>
@@ -2309,7 +2309,7 @@
  
  namespace
  {
-@@ -1685,6 +1689,17 @@ void ScTabView::SetTabNo( SCTAB nTab, BO
+@@ -1688,6 +1692,17 @@ void ScTabView::SetTabNo( SCTAB nTab, BO
  										//	nicht InputEnterHandler wegen Referenzeingabe !
  
  		ScDocument* pDoc = aViewData.GetDocument();
@@ -2327,12 +2327,14 @@
  		pDoc->MakeTable( nTab );
  
  		SCTAB nTabCount = pDoc->GetTableCount();
-@@ -1783,7 +1798,18 @@ void ScTabView::SetTabNo( SCTAB nTab, BO
+@@ -1786,8 +1801,20 @@ void ScTabView::SetTabNo( SCTAB nTab, BO
  					if ( pGridWin[i]->IsVisible() )
  						pGridWin[i]->UpdateEditViewPos();
  		}
 -
 +		
+ 		TabChanged();										// DrawView
++
 +		if( !bNew )
 +		{
 +            uno::Reference< document::XVbaEventsHelper > xVbaEventsHelper ( pDoc->GetVbaEventsHelper(), uno::UNO_QUERY );
@@ -2344,10 +2346,9 @@
 +            }
 +		}
 +			
- 		TabChanged();										// DrawView
  		aViewData.GetViewShell()->WindowChanged();			// falls das aktive Fenster anders ist
          if ( !bUnoRefDialog )
-
+             aViewData.GetViewShell()->DisconnectAllClients();   // important for floating frames
 --- /home/feng/work/ooo-build/build/dev300-m14/sc/source/ui/vba/makefile.mk	2008-06-16 21:30:17.000000000 +0800
 +++ sc/source/ui/vba/makefile.mk	2008-06-05 18:11:39.000000000 +0800
 @@ -128,7 +128,8 @@ SLOFILES= \



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]