42 std::unique_ptr<DataStream, o3tl::default_delete<DataStream>>
mpDataStream;
58 for (
const auto& pLinkSource : aTemp)
59 pLinkSource->Closed();
61 if (!linkManager->
GetLinks().empty())
82 return mpImpl->mpDataStream.get();
87 return mpImpl->mpDataStream.get();
92 if (bCreate &&
mpImpl->mpShell)
94 [
this]() { return new sfx2::LinkManager(mpImpl->mpShell); } );
95 return mpImpl->mpLinkManager;
100 return mpImpl->mpLinkManager;
109 bool bAnyLeft =
false;
111 for (
const auto & rLink : rLinks)
143 for (
const auto & rLink : rLinks)
146 if (bDde &&
dynamic_cast<ScDdeLink*
>(pBase))
164 for (
const auto & rLink : rLinks)
185 for (
const auto & rLink : rLinks)
199 pIFrameLink->Update();
206 pWebserviceLink->
Update();
219 const OUString& aFile = pDdeLink->
GetTopic();
220 const OUString& aElem = pDdeLink->
GetItem();
221 const OUString& aType = pDdeLink->
GetAppl();
224 ScResId(SCSTR_DDEDOC_NOT_LOADED) +
233 VclMessageType::Warning, VclButtonsType::Ok,
252 for (
const auto & rLink : rLinks)
259 if ( pDdeLink->
GetAppl() == rAppl &&
275 size_t nDdeCount = 0;
277 for (
const auto & rLink : rLinks)
static weld::MessageDialog * CreateMessageDialog(weld::Widget *pParent, VclMessageType eMessageType, VclButtonsType eButtonType, const OUString &rPrimaryMessage, const ILibreOfficeKitNotifier *pNotifier=nullptr)
const OUString & GetItem() const
const OUString & GetAppl() const
const OUString & GetTopic() const
const sfx2::LinkManager * getExistingLinkManager() const
bool hasDdeOrOleOrWebServiceLinks() const
DataStream * getDataStream()
bool hasExternalRefLinks() const
std::unique_ptr< DocumentLinkManagerImpl > mpImpl
sfx2::LinkManager * getLinkManager(bool bCreate=true)
void setDataStream(DataStream *p)
void updateDdeLink(std::u16string_view rAppl, std::u16string_view rTopic, std::u16string_view rItem)
size_t getDdeLinkCount() const
DocumentLinkManager(SfxObjectShell *pShell)
bool updateDdeOrOleOrWebServiceLinks(weld::Window *pWin)
const SvLinkSources & GetServers() const
void Remove(SvBaseLink const *pLink)
const SvBaseLinks & GetLinks() const
static Type * doubleCheckedInit(std::atomic< Type * > &pointer, Function function, GuardCtor guardCtor=osl::GetGlobalMutex())
CAUTION! The following defines must be in the same namespace as the respective type.
std::vector< tools::SvRef< SvBaseLink > > SvBaseLinks
OUString ScResId(TranslateId aId)
~DocumentLinkManagerImpl()
DocumentLinkManagerImpl(const DocumentLinkManagerImpl &)=delete
DocumentLinkManagerImpl(SfxObjectShell *pShell)
std::unique_ptr< DataStream, o3tl::default_delete< DataStream > > mpDataStream
std::atomic< sfx2::LinkManager * > mpLinkManager
const DocumentLinkManagerImpl & operator=(const DocumentLinkManagerImpl &)=delete