28#include <document.hxx>
29#include <osl/diagnose.h>
30#include <osl/thread.h>
43 mpFuncData(pFuncData),
45 meType(pFuncData->GetAsyncType()),
49 pDocs->insert( pDoc );
65 auto it = std::find_if(
67 [nHandleP](std::unique_ptr<ScAddInAsync>
const & el)
68 { return el->nHandle == nHandleP; });
76 auto asyncIt = std::find_if(
78 [nHandleP](std::unique_ptr<ScAddInAsync>
const & el)
79 { return el->nHandle == nHandleP; });
84 if ( !
p->HasListeners() )
93 p->nVal = *
static_cast<double*
>(
pData);
99 *
p->pStr = OUString(
pChar, strlen(
pChar),osl_getThreadTextEncoding() );
101 p->pStr =
new OUString(
pChar, strlen(
pChar), osl_getThreadTextEncoding() );
105 OSL_FAIL(
"unknown AsyncType" );
124 ScAddInDocs::iterator iter2 =
p->find( pDocumentP );
125 if( iter2 !=
p->end() )
ScAddInAsyncs theAddInAsyncTbl
void CALLTYPE ScAddInAsyncCallBack(double &nHandle, void *pData)
std::set< ScDocument * > ScAddInDocs
std::set< std::unique_ptr< ScAddInAsync >, CompareScAddInAsync > ScAddInAsyncs
void Unadvice(double nHandle)
static ScAddInAsync * Get(sal_uLong nHandle)
virtual ~ScAddInAsync() override
static void CallBack(sal_uLong nHandle, void *pData)
std::unique_ptr< ScAddInDocs > pDocs
static void RemoveDocument(ScDocument *pDocument)
LegacyFuncData * mpFuncData
ScAddInAsync(sal_uLong nHandle, LegacyFuncData *pFuncData, ScDocument *pDoc)
void TrackFormulas(SfxHintId nHintId=SfxHintId::ScDataChanged)
SfxObjectShell * GetDocumentShell() const
std::unique_ptr< sal_Int32[]> pData