sw/source/uibase/utlui/content.cxx | 46 +++++++++++++++++++++++++++---------- 1 file changed, 34 insertions(+), 12 deletions(-)
New commits: commit d813620196646bebecd91536d47da67b725fdb95 Author: Jim Raykowski <rayk...@gmail.com> AuthorDate: Thu Apr 29 23:52:02 2021 -0800 Commit: Jim Raykowski <rayk...@gmail.com> CommitDate: Fri Apr 30 16:50:42 2021 +0200 reinterpret_cast to SwPostItContent when field type is postit Change-Id: I4ed914479c07c786fdc3401c56f7d793777df751 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114897 Tested-by: Jenkins Reviewed-by: Jim Raykowski <rayk...@gmail.com> diff --git a/sw/source/uibase/utlui/content.cxx b/sw/source/uibase/utlui/content.cxx index d6486712d8f8..747d99eac8a5 100644 --- a/sw/source/uibase/utlui/content.cxx +++ b/sw/source/uibase/utlui/content.cxx @@ -3383,21 +3383,43 @@ void SwContentTree::UpdateTracking() m_xTreeView->expand_row(*xIter); // assure content type entry is expanded while (m_xTreeView->iter_next(*xIter) && lcl_IsContent(*xIter, *m_xTreeView)) { - SwTextFieldContent* pCnt = reinterpret_cast<SwTextFieldContent*>(m_xTreeView->get_id(*xIter).toInt64()); - if (pCnt && pField == pCnt->GetFormatField()->GetField()) + if (pField->GetTypeId() == SwFieldTypesEnum::Postit) { - // get first selected for comparison - std::unique_ptr<weld::TreeIter> xFirstSelected(m_xTreeView->make_iterator()); - if (!m_xTreeView->get_selected(xFirstSelected.get())) - xFirstSelected.reset(); - if (m_xTreeView->count_selected_rows() != 1 || - m_xTreeView->iter_compare(*xIter, *xFirstSelected) != 0) + SwPostItContent* pCnt = reinterpret_cast<SwPostItContent*>(m_xTreeView->get_id(*xIter).toInt64()); + if (pCnt && pField == pCnt->GetPostIt()->GetField()) { - // unselect all entries and make passed entry visible and selected - m_xTreeView->set_cursor(*xIter); - Select(); + // get first selected for comparison + std::unique_ptr<weld::TreeIter> xFirstSelected(m_xTreeView->make_iterator()); + if (!m_xTreeView->get_selected(xFirstSelected.get())) + xFirstSelected.reset(); + if (m_xTreeView->count_selected_rows() != 1 || + m_xTreeView->iter_compare(*xIter, *xFirstSelected) != 0) + { + // unselect all entries and make passed entry visible and selected + m_xTreeView->set_cursor(*xIter); + Select(); + } + break; + } + } + else + { + SwTextFieldContent* pCnt = reinterpret_cast<SwTextFieldContent*>(m_xTreeView->get_id(*xIter).toInt64()); + if (pCnt && pField == pCnt->GetFormatField()->GetField()) + { + // get first selected for comparison + std::unique_ptr<weld::TreeIter> xFirstSelected(m_xTreeView->make_iterator()); + if (!m_xTreeView->get_selected(xFirstSelected.get())) + xFirstSelected.reset(); + if (m_xTreeView->count_selected_rows() != 1 || + m_xTreeView->iter_compare(*xIter, *xFirstSelected) != 0) + { + // unselect all entries and make passed entry visible and selected + m_xTreeView->set_cursor(*xIter); + Select(); + } + break; } - break; } } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits