diff options
author | Caolán McNamara <caolanm@redhat.com> | 2014-02-19 12:26:47 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-02-19 15:32:00 +0000 |
commit | 49cecd8b41cac29cc9642944eaae5b5f63a1bd46 (patch) | |
tree | 133343199ab3a5f06e7ea1b858a88125466bcc5a /sw | |
parent | e77819f578b4b01314359380e6f115bacb9967f5 (diff) |
Related: fdo#74242 hook up a selection and caret change for multiline edits
a) split the textengine selection changed broadcast into a text selection changed
and text caret change event
b) handle both in existing places that handled the text selection event
c) listen for them in VclMultiLineEdit and translate to
VCLEVENT_EDIT_SELECTIONCHANGED VCLEVENT_EDIT_CARETCHANGED events
d) profit from the VCLEVENT_EDIT_SELECTIONCHANGED and
VCLEVENT_EDIT_CARETCHANGED handling in
accessibility/source/standard/vclxaccessibleedit.cxx for VCLXAccessibleEdits
Change-Id: I09187e76ae4eb189ee9469e388374154087faf80
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/ui/dbui/mmaddressblockpage.cxx | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/sw/source/ui/dbui/mmaddressblockpage.cxx b/sw/source/ui/dbui/mmaddressblockpage.cxx index bdb084880cd7..18b97076239c 100644 --- a/sw/source/ui/dbui/mmaddressblockpage.cxx +++ b/sw/source/ui/dbui/mmaddressblockpage.cxx @@ -1293,13 +1293,16 @@ AddressMultiLineEdit::~AddressMultiLineEdit() EndListening(*GetTextEngine()); } -void AddressMultiLineEdit::Notify( SfxBroadcaster& /*rBC*/, const SfxHint& rHint ) +void AddressMultiLineEdit::Notify(SfxBroadcaster& /*rBC*/, const SfxHint& rHint) { - if(rHint.ISA(TextHint) && - static_cast<const TextHint&>(rHint).GetId() == TEXT_HINT_VIEWSELECTIONCHANGED && - m_aSelectionLink.IsSet()) + if (m_aSelectionLink.IsSet() && rHint.ISA(TextHint)) { - m_aSelectionLink.Call(this); + const TextHint& rTextHint = static_cast<const TextHint&>(rHint); + if (rTextHint.GetId() == TEXT_HINT_VIEWSELECTIONCHANGED || + rTextHint.GetId() == TEXT_HINT_VIEWCARETCHANGED) + { + m_aSelectionLink.Call(this); + } } } |