summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorMaxim Monastirsky <momonasmon@gmail.com>2015-07-21 10:58:39 +0300
committerMaxim Monastirsky <momonasmon@gmail.com>2015-07-21 17:36:09 +0300
commit74cc3fbc17235f5c0010c363342a9a9adaf85c4e (patch)
tree102212f766aa8a0abd5691b15e37e48462360ae7 /sc
parent3c7a7b538e8ca8b310ae9778ae9ace5ae937a4f1 (diff)
tdf#36796 Status updates for custom shapes buttons
We're dealing here with 2 bugs: 1. Single shape buttons (like rectangle, ellipse etc.) don't get the pressed state when active. The cause is that all commands of the same kind (Basic Shapes, Symbol Shapes etc.) are handled as one internally, allowing only one type of status updates. It used to transport the current active shape, but it was changed to a boolean value in the fix for i#41753, and since then used for the pressed state of the group buttons. 2. The pressed state of a group button shows always, even when a user activates a shape from a place other than the drop-down of that button. But in this case the image of the group button doesn't update with the current shape, thus confusing the user on what is currently active. The cause here is that we use (since i#41753) the XSubToolbarController interface to update the last selected function (instead of the old-style status based update), and ToolBarManager notifies a controller about a new selection only if it was made from a particular toolbar that the controller claimed to use in the getSubToolbarName method. Since 7352a7c17875e5adcc4226c45f4a03e11c44ff49 there is a similar regression for other group buttons in sd (like lines, 3D Objects and other), with the same cause. This is also fixed now. Change-Id: Ida074a001ff78bf5bd5bcb8151516daa6e27cbce
Diffstat (limited to 'sc')
-rw-r--r--sc/source/ui/view/tabvwsh2.cxx2
1 files changed, 1 insertions, 1 deletions
diff --git a/sc/source/ui/view/tabvwsh2.cxx b/sc/source/ui/view/tabvwsh2.cxx
index 6bf6439cbbeb..6e229523d346 100644
--- a/sc/source/ui/view/tabvwsh2.cxx
+++ b/sc/source/ui/view/tabvwsh2.cxx
@@ -440,7 +440,7 @@ void ScTabViewShell::GetDrawState(SfxItemSet &rSet)
case SID_DRAWTBX_CS_FLOWCHART:
case SID_DRAWTBX_CS_CALLOUT:
case SID_DRAWTBX_CS_STAR:
- rSet.Put( SfxBoolItem( nWhich, nDrawSfxId == nWhich ) );
+ rSet.Put( SfxStringItem( nWhich, nDrawSfxId == nWhich ? sDrawCustom : OUString() ) );
break;
}
nWhich = aIter.NextWhich();