Blob Blame History Raw
From b797ad256580c32b36f6bdce797ef67edf394dcf Mon Sep 17 00:00:00 2001
From: Henry Castro <hcastro@collabora.com>
Date: Thu, 13 Aug 2015 16:08:46 -0400
Subject: [PATCH 093/398] sc: fix LOKit invalidate setPart

The bindings invalidate correct tiles.

Change-Id: Id28a7a78157030243ef1ad798daba9583746f0d3
(cherry picked from commit 6609b05765e674f2f4694854097a5318b617fd54)
---
 sc/source/ui/unoobj/docuno.cxx | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx
index 84b2857b6542..1a59f887b7d7 100644
--- a/sc/source/ui/unoobj/docuno.cxx
+++ b/sc/source/ui/unoobj/docuno.cxx
@@ -496,7 +496,22 @@ void ScModelObj::paintTile( VirtualDevice& rDevice,
 void ScModelObj::setPart( int nPart )
 {
     ScViewData* pViewData = ScDocShell::GetViewData();
-    pViewData->SetTabNo( nPart );
+    SfxUInt16Item aItem( SID_CURRENTTAB, nPart + 1 );
+    SfxDispatcher& rDisp = pViewData->GetDispatcher();
+
+    rDisp.Execute( SID_CURRENTTAB, SfxCallMode::SLOT | SfxCallMode::RECORD, &aItem, nullptr );
+
+    SfxBindings& rBind = pViewData->GetBindings();
+    rBind.Invalidate( FID_FILL_TAB );
+    rBind.Invalidate( FID_TAB_DESELECTALL );
+    rBind.Invalidate( FID_INS_TABLE );
+    rBind.Invalidate( FID_TAB_APPEND );
+    rBind.Invalidate( FID_TAB_MOVE );
+    rBind.Invalidate( FID_TAB_RENAME );
+    rBind.Invalidate( FID_DELETE_TABLE );
+    rBind.Invalidate( FID_TABLE_SHOW );
+    rBind.Invalidate( FID_TABLE_HIDE );
+    rBind.Invalidate( FID_TAB_SET_TAB_BG_COLOR );
 }
 
 int ScModelObj::getParts()
-- 
2.12.0