summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/svl/svdde.hxx4
-rw-r--r--svl/source/svdde/ddesvr.cxx10
-rw-r--r--svl/unx/source/svdde/ddedummy.cxx8
3 files changed, 22 insertions, 0 deletions
diff --git a/include/svl/svdde.hxx b/include/svl/svdde.hxx
index 9889774f3226..43f4618aeba3 100644
--- a/include/svl/svdde.hxx
+++ b/include/svl/svdde.hxx
@@ -288,6 +288,8 @@ class SVL_DLLPUBLIC DdeTopic
SVL_DLLPRIVATE void _Disconnect( sal_IntPtr );
public:
+ void Connect( sal_IntPtr );
+ void Disconnect( sal_IntPtr );
virtual DdeData* Get(SotClipboardFormatId);
virtual bool Put( const DdeData* );
virtual bool Execute( const OUString* );
@@ -307,6 +309,8 @@ private:
DdeString* pName;
OUString aItem;
std::vector<DdeItem*> aItems;
+ Link<> aConnectLink;
+ Link<> aDisconnectLink;
public:
DdeTopic( SAL_UNUSED_PARAMETER const OUString& );
diff --git a/svl/source/svdde/ddesvr.cxx b/svl/source/svdde/ddesvr.cxx
index 9af669bfbf53..7f09c429719f 100644
--- a/svl/source/svdde/ddesvr.cxx
+++ b/svl/source/svdde/ddesvr.cxx
@@ -678,6 +678,16 @@ void DdeTopic::NotifyClient( const OUString& rItem )
}
}
+void DdeTopic::Connect( sal_IntPtr nId )
+{
+ aConnectLink.Call( (void*)nId );
+}
+
+void DdeTopic::Disconnect( sal_IntPtr nId )
+{
+ aDisconnectLink.Call( (void*)nId );
+}
+
void DdeTopic::_Disconnect( sal_IntPtr nId )
{
std::vector<DdeItem*>::iterator iter;
diff --git a/svl/unx/source/svdde/ddedummy.cxx b/svl/unx/source/svdde/ddedummy.cxx
index b504b5fe38fd..4813dc36b5da 100644
--- a/svl/unx/source/svdde/ddedummy.cxx
+++ b/svl/unx/source/svdde/ddedummy.cxx
@@ -145,6 +145,14 @@ DdeTopic::~DdeTopic()
{
}
+void DdeTopic::Connect( SAL_UNUSED_PARAMETER long )
+{
+}
+
+void DdeTopic::Disconnect( SAL_UNUSED_PARAMETER long )
+{
+}
+
void DdeTopic::InsertItem( SAL_UNUSED_PARAMETER DdeItem* )
{
}