editeng/inc/edtspell.hxx | 5 +---- editeng/source/editeng/edtspell.cxx | 6 +++--- editeng/source/editeng/impedit4.cxx | 3 ++- editeng/source/misc/splwrap.cxx | 22 +++++++++------------- forms/source/component/ImageControl.cxx | 5 ++--- include/editeng/splwrap.hxx | 11 +++++------ sw/source/uibase/lingu/hyp.cxx | 2 +- 7 files changed, 23 insertions(+), 31 deletions(-)
New commits: commit e2aa85a6fbc039e8b1950f0e4b8484595d0b47eb Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Wed Oct 30 11:34:27 2019 +0000 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Thu Oct 31 13:30:59 2019 +0100 avoid intermediate vcl::Windows Change-Id: Iac6bc83265e007a699a8993b89ac2efaa3739d95 Reviewed-on: https://gerrit.libreoffice.org/81761 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/editeng/inc/edtspell.hxx b/editeng/inc/edtspell.hxx index d21ce140cf8c..51e4df5e0635 100644 --- a/editeng/inc/edtspell.hxx +++ b/editeng/inc/edtspell.hxx @@ -50,10 +50,7 @@ protected: virtual bool SpellMore() override; public: - EditSpellWrapper( vcl::Window* pWin, - bool bIsStart, - EditView* pView ); - + EditSpellWrapper(weld::Window* pWin, bool bIsStart, EditView* pView); }; /** diff --git a/editeng/source/editeng/edtspell.cxx b/editeng/source/editeng/edtspell.cxx index 93bdb213da52..e64b052ba65c 100644 --- a/editeng/source/editeng/edtspell.cxx +++ b/editeng/source/editeng/edtspell.cxx @@ -38,9 +38,9 @@ using namespace com::sun::star::beans; using namespace com::sun::star::linguistic2; -EditSpellWrapper::EditSpellWrapper( vcl::Window* _pWin, - bool bIsStart, EditView* pView ) : - SvxSpellWrapper( _pWin, bIsStart, false/*bIsAllRight*/ ) +EditSpellWrapper::EditSpellWrapper(weld::Window* pWindow, + bool bIsStart, EditView* pView ) + : SvxSpellWrapper(pWindow, bIsStart, false/*bIsAllRight*/) { SAL_WARN_IF( !pView, "editeng", "One view has to be abandoned!" ); // Keep IgnoreList, delete ReplaceList... diff --git a/editeng/source/editeng/impedit4.cxx b/editeng/source/editeng/impedit4.cxx index f1cb5072735b..fe130230ee65 100644 --- a/editeng/source/editeng/impedit4.cxx +++ b/editeng/source/editeng/impedit4.cxx @@ -1447,7 +1447,8 @@ EESpellState ImpEditEngine::Spell( EditView* pEditView, bool bMultipleDoc ) else if ( CreateEPaM( aEditDoc.GetStartPaM() ) == pSpellInfo->aSpellStart ) bIsStart = true; - std::unique_ptr<EditSpellWrapper> pWrp(new EditSpellWrapper( Application::GetDefDialogParent(), + vcl::Window* pParent = Application::GetDefDialogParent(); + std::unique_ptr<EditSpellWrapper> pWrp(new EditSpellWrapper(pParent ? pParent->GetFrameWeld() : nullptr, bIsStart, pEditView )); pWrp->SpellDocument(); pWrp.reset(); diff --git a/editeng/source/misc/splwrap.cxx b/editeng/source/misc/splwrap.cxx index 979be61afa71..0c9e23f360fc 100644 --- a/editeng/source/misc/splwrap.cxx +++ b/editeng/source/misc/splwrap.cxx @@ -45,10 +45,6 @@ #include <map> #include <memory> -#define WAIT_ON() if(pWin != nullptr) { pWin->EnterWait(); } - -#define WAIT_OFF() if(pWin != nullptr) { pWin->LeaveWait(); } - using namespace ::com::sun::star; using namespace ::com::sun::star::uno; using namespace ::com::sun::star::beans; @@ -139,7 +135,7 @@ SvxSpellWrapper::~SvxSpellWrapper() * --------------------------------------------------------------------*/ -SvxSpellWrapper::SvxSpellWrapper( vcl::Window* pWn, +SvxSpellWrapper::SvxSpellWrapper( weld::Window* pWn, const bool bStart, const bool bIsAllRight ) : pWin ( pWn ), @@ -156,7 +152,7 @@ SvxSpellWrapper::SvxSpellWrapper( vcl::Window* pWn, } -SvxSpellWrapper::SvxSpellWrapper( vcl::Window* pWn, +SvxSpellWrapper::SvxSpellWrapper( weld::Window* pWn, Reference< XHyphenator > const &xHyphenator, const bool bStart, const bool bOther ) : pWin ( pWn ), @@ -275,7 +271,7 @@ void SvxSpellWrapper::SpellDocument( ) { EditAbstractDialogFactory* pFact = EditAbstractDialogFactory::Create(); ScopedVclPtr<AbstractHyphenWordDialog> pDlg(pFact->CreateHyphenWordDialog( - pWin ? pWin->GetFrameWeld() : nullptr, + pWin, xHyphWord->getWord(), LanguageTag( xHyphWord->getLocale() ).getLanguageType(), xHyph, this )); @@ -347,16 +343,16 @@ bool SvxSpellWrapper::SpellNext( ) else { // a BODY_area done, ask for the other BODY_area - WAIT_OFF(); + xWait.reset(); const char* pResId = bReverse ? RID_SVXSTR_QUERY_BW_CONTINUE : RID_SVXSTR_QUERY_CONTINUE; - std::unique_ptr<weld::MessageDialog> xBox(Application::CreateMessageDialog(pWin ? pWin->GetFrameWeld() : nullptr, + std::unique_ptr<weld::MessageDialog> xBox(Application::CreateMessageDialog(pWin, VclMessageType::Question, VclButtonsType::YesNo, EditResId(pResId))); if (xBox->run() != RET_YES) { // sacrifice the other area if necessary ask for special area - WAIT_ON(); + xWait.reset(new weld::WaitObject(pWin)); bStartDone = bEndDone = true; return SpellNext(); } @@ -366,7 +362,7 @@ bool SvxSpellWrapper::SpellNext( ) SpellStart( bStartChk ? SvxSpellArea::BodyStart : SvxSpellArea::BodyEnd ); bGoOn = true; } - WAIT_ON(); + xWait.reset(new weld::WaitObject(pWin)); } return bGoOn; } @@ -419,7 +415,7 @@ bool SvxSpellWrapper::FindSpellError() { ShowLanguageErrors(); - WAIT_ON(); + xWait.reset(new weld::WaitObject(pWin)); bool bSpell = true; Reference< XDictionary > xAllRightDic; @@ -465,7 +461,7 @@ bool SvxSpellWrapper::FindSpellError() bSpell = SpellNext(); } } - WAIT_OFF(); + xWait.reset(); return GetLast().is(); } diff --git a/forms/source/component/ImageControl.cxx b/forms/source/component/ImageControl.cxx index 7f5d323fe691..12d44e59e963 100644 --- a/forms/source/component/ImageControl.cxx +++ b/forms/source/component/ImageControl.cxx @@ -776,10 +776,9 @@ bool OImageControlControl::implInsertGraphics() // build some arguments for the upcoming dialog try { - Reference< XWindowPeer > xWindowPeer = getPeer(); - VclPtr<vcl::Window> xWin = VCLUnoHelper::GetWindow(xWindowPeer); + Reference< XWindow > xWindow( static_cast< ::cppu::OWeakObject* >( this ), UNO_QUERY ); ::sfx2::FileDialogHelper aDialog(TemplateDescription::FILEOPEN_LINK_PREVIEW, FileDialogFlags::Graphic, - xWin ? xWin->GetFrameWeld() : nullptr); + Application::GetFrameWeld(xWindow)); aDialog.SetTitle( sTitle ); Reference< XFilePickerControlAccess > xController( aDialog.GetFilePicker(), UNO_QUERY_THROW ); diff --git a/include/editeng/splwrap.hxx b/include/editeng/splwrap.hxx index dbb6576fbbfd..69dfbbc6c780 100644 --- a/include/editeng/splwrap.hxx +++ b/include/editeng/splwrap.hxx @@ -24,7 +24,7 @@ #include <i18nlangtag/lang.h> #include <rtl/ustring.hxx> #include <com/sun/star/uno/Reference.hxx> -#include <vcl/vclptr.hxx> +#include <vcl/weld.hxx> // forward --------------------------------------------------------------- @@ -34,8 +34,6 @@ namespace com { namespace sun { namespace star { namespace linguistic2 { class XHyphenator; }}}} -namespace vcl { class Window; } - // misc functions --------------------------------------------------------------- void EDITENG_DLLPUBLIC SvxPrepareAutoCorrect( OUString &rOldText, const OUString &rNewText ); @@ -50,7 +48,8 @@ private: friend class SvxHyphenWordDialog; friend struct SvxHyphenWordDialog_Impl; - VclPtr<vcl::Window> pWin; + weld::Window* pWin; + std::unique_ptr<weld::WaitObject> xWait; css::uno::Reference< css::uno::XInterface > xLast; // result of last spelling/hyphenation attempt css::uno::Reference< @@ -71,9 +70,9 @@ private: void operator =(SvxSpellWrapper const &) = delete; public: - SvxSpellWrapper( vcl::Window* pWn, + SvxSpellWrapper( weld::Window* pWn, const bool bStart, const bool bIsAllRight ); - SvxSpellWrapper( vcl::Window* pWn, + SvxSpellWrapper( weld::Window* pWn, css::uno::Reference< css::linguistic2::XHyphenator > const &xHyphenator, const bool bStart, const bool bOther ); diff --git a/sw/source/uibase/lingu/hyp.cxx b/sw/source/uibase/lingu/hyp.cxx index 4382a490ed99..e26333e8d481 100644 --- a/sw/source/uibase/lingu/hyp.cxx +++ b/sw/source/uibase/lingu/hyp.cxx @@ -45,7 +45,7 @@ using namespace ::com::sun::star; SwHyphWrapper::SwHyphWrapper( SwView* pVw, uno::Reference< linguistic2::XHyphenator > const &rxHyph, bool bStart, bool bOther, bool bSelect ) : - SvxSpellWrapper( &pVw->GetEditWin(), rxHyph, bStart, bOther ), + SvxSpellWrapper( pVw->GetEditWin().GetFrameWeld(), rxHyph, bStart, bOther ), pView( pVw ), nPageCount( 0 ), nPageStart( 0 ), _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits