summaryrefslogtreecommitdiff
path: root/sc/source/ui/cctrl
diff options
context:
space:
mode:
authorKohei Yoshida <kohei@openoffice.org>2009-08-26 22:59:36 +0000
committerKohei Yoshida <kohei@openoffice.org>2009-08-26 22:59:36 +0000
commit984236d8b16fbb1c2728a7f4f2d25146865c6dee (patch)
treefbd3b22536eaa54de444badebb33d5e4c8c9465f /sc/source/ui/cctrl
parent5e8d3e43d3e4689d91d2f94d826146c076f907e6 (diff)
Use the new "fake focus" flag of Window to simulate focus state, in order to implement tab stops inside floating windows.
Diffstat (limited to 'sc/source/ui/cctrl')
-rw-r--r--sc/source/ui/cctrl/dpcontrol.cxx4
1 files changed, 3 insertions, 1 deletions
diff --git a/sc/source/ui/cctrl/dpcontrol.cxx b/sc/source/ui/cctrl/dpcontrol.cxx
index 4c9dee6b4af1..32fd88421a84 100644
--- a/sc/source/ui/cctrl/dpcontrol.cxx
+++ b/sc/source/ui/cctrl/dpcontrol.cxx
@@ -1169,6 +1169,7 @@ void ScDPFieldPopupWindow::selectCurrentMemberOnly(bool bSet)
void ScDPFieldPopupWindow::cycleFocus(bool bReverse)
{
+ maTabStopCtrls[mnCurTabStop]->SetFakeFocus(false);
maTabStopCtrls[mnCurTabStop]->LoseFocus();
if (mnCurTabStop == 0)
clearSelectedMenuItem();
@@ -1186,7 +1187,8 @@ void ScDPFieldPopupWindow::cycleFocus(bool bReverse)
if (mnCurTabStop >= maTabStopCtrls.size())
mnCurTabStop = 0;
}
- maTabStopCtrls[mnCurTabStop]->GetFocus();
+ maTabStopCtrls[mnCurTabStop]->SetFakeFocus(true);
+ maTabStopCtrls[mnCurTabStop]->GrabFocus();
}
IMPL_LINK( ScDPFieldPopupWindow, ButtonHdl, Button*, pBtn )