diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-05-07 20:09:01 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2020-05-08 10:10:22 +0200 |
commit | fe2bc1012932cbb6c902b9034d9d1497609e57a5 (patch) | |
tree | d5d0a616031fc7f70bf008eec337125c17224fe5 /vcl/source/control/button.cxx | |
parent | ea6a978d873c5320d3cc2526f97636f815efde06 (diff) |
move DisclosureButton out of public headers
Change-Id: If267be2c5d02d185eddada7c4e0de0bc5af0b19c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93677
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl/source/control/button.cxx')
-rw-r--r-- | vcl/source/control/button.cxx | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/vcl/source/control/button.cxx b/vcl/source/control/button.cxx index 829b390a31f7..b818fef15f68 100644 --- a/vcl/source/control/button.cxx +++ b/vcl/source/control/button.cxx @@ -3702,73 +3702,4 @@ TriStateBox::TriStateBox( vcl::Window* pParent, WinBits nStyle ) : EnableTriState(); } -DisclosureButton::DisclosureButton( vcl::Window* pParent ) : - CheckBox( pParent, 0 ) -{ -} - -void DisclosureButton::ImplDrawCheckBoxState(vcl::RenderContext& rRenderContext) -{ - /* HACK: DisclosureButton is currently assuming, that the disclosure sign - will fit into the rectangle occupied by a normal checkbox on all themes. - If this does not hold true for some theme, ImplGetCheckImageSize - would have to be overridden for DisclosureButton; also GetNativeControlRegion - for ControlType::ListNode would have to be implemented and taken into account - */ - - tools::Rectangle aStateRect(GetStateRect()); - - ImplControlValue aControlValue(GetState() == TRISTATE_TRUE ? ButtonValue::On : ButtonValue::Off); - tools::Rectangle aCtrlRegion(aStateRect); - ControlState nState = ControlState::NONE; - - if (HasFocus()) - nState |= ControlState::FOCUSED; - if (GetButtonState() & DrawButtonFlags::Default) - nState |= ControlState::DEFAULT; - if (Window::IsEnabled()) - nState |= ControlState::ENABLED; - if (IsMouseOver() && GetMouseRect().IsInside(GetPointerPosPixel())) - nState |= ControlState::ROLLOVER; - - if (rRenderContext.DrawNativeControl(ControlType::ListNode, ControlPart::Entire, aCtrlRegion, - nState, aControlValue, OUString())) - return; - - ImplSVCtrlData& rCtrlData(ImplGetSVData()->maCtrlData); - if (!rCtrlData.mpDisclosurePlus) - rCtrlData.mpDisclosurePlus.reset(new Image(StockImage::Yes, SV_DISCLOSURE_PLUS)); - if (!rCtrlData.mpDisclosureMinus) - rCtrlData.mpDisclosureMinus.reset(new Image(StockImage::Yes, SV_DISCLOSURE_MINUS)); - - Image* pImg - = IsChecked() ? rCtrlData.mpDisclosureMinus.get() : rCtrlData.mpDisclosurePlus.get(); - - DrawImageFlags nStyle = DrawImageFlags::NONE; - if (!IsEnabled()) - nStyle |= DrawImageFlags::Disable; - - Size aSize(aStateRect.GetSize()); - Size aImgSize(pImg->GetSizePixel()); - Point aOff((aSize.Width() - aImgSize.Width()) / 2, - (aSize.Height() - aImgSize.Height()) / 2); - aOff += aStateRect.TopLeft(); - rRenderContext.DrawImage(aOff, *pImg, nStyle); -} - -void DisclosureButton::KeyInput( const KeyEvent& rKEvt ) -{ - vcl::KeyCode aKeyCode = rKEvt.GetKeyCode(); - - if( !aKeyCode.GetModifier() && - ( ( aKeyCode.GetCode() == KEY_ADD ) || - ( aKeyCode.GetCode() == KEY_SUBTRACT ) ) - ) - { - Check( aKeyCode.GetCode() == KEY_ADD ); - } - else - CheckBox::KeyInput( rKEvt ); -} - /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |