summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2019-10-30 11:34:27 +0000
committerCaolán McNamara <caolanm@redhat.com>2019-10-31 13:30:59 +0100
commite2aa85a6fbc039e8b1950f0e4b8484595d0b47eb (patch)
tree2658525d24372ee535be570d682c9f1ca75a178b
parent32c53b465bc2052c2756f12294699fabae754756 (diff)
avoid intermediate vcl::Windows
Change-Id: Iac6bc83265e007a699a8993b89ac2efaa3739d95 Reviewed-on: https://gerrit.libreoffice.org/81761 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--editeng/inc/edtspell.hxx5
-rw-r--r--editeng/source/editeng/edtspell.cxx6
-rw-r--r--editeng/source/editeng/impedit4.cxx3
-rw-r--r--editeng/source/misc/splwrap.cxx22
-rw-r--r--forms/source/component/ImageControl.cxx5
-rw-r--r--include/editeng/splwrap.hxx11
-rw-r--r--sw/source/uibase/lingu/hyp.cxx2
7 files changed, 23 insertions, 31 deletions
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 ),