41 std::unique_ptr<DataStream, o3tl::default_delete<DataStream>>
mpDataStream;
57 for (
const auto& pLinkSource : aTemp)
58 pLinkSource->Closed();
60 if (!linkManager->
GetLinks().empty())
81 return mpImpl->mpDataStream.get();
86 return mpImpl->mpDataStream.get();
91 if (bCreate &&
mpImpl->mpShell)
93 [
this]() { return new sfx2::LinkManager(mpImpl->mpShell); } );
94 return mpImpl->mpLinkManager;
99 return mpImpl->mpLinkManager;
108 bool bAnyLeft =
false;
110 for (
const auto & rLink : rLinks)
142 for (
const auto & rLink : rLinks)
145 if (bDde &&
dynamic_cast<ScDdeLink*
>(pBase))
167 for (
const auto & rLink : rLinks)
181 pWebserviceLink->
Update();
194 const OUString& aFile = pDdeLink->
GetTopic();
195 const OUString& aElem = pDdeLink->
GetItem();
196 const OUString& aType = pDdeLink->
GetAppl();
199 ScResId(SCSTR_DDEDOC_NOT_LOADED) +
208 VclMessageType::Warning, VclButtonsType::Ok,
227 for (
const auto & rLink : rLinks)
234 if ( pDdeLink->
GetAppl() == rAppl &&
250 size_t nDdeCount = 0;
252 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()
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