xref: /trunk/main/sfx2/source/notify/hintpost.cxx (revision d119d52d)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 // MARKER(update_precomp.py): autogen include statement, do not remove
25 #include "precompiled_sfx2.hxx"
26 
27 #ifndef GCC
28 #endif
29 
30 #include "arrdecl.hxx"
31 #include <sfx2/hintpost.hxx>
32 #include <sfx2/app.hxx>
33 #include "sfxtypes.hxx"
34 
35 //====================================================================
36 
RegisterEvent()37 void SfxHintPoster::RegisterEvent()
38 {
39 	DBG_MEMTEST();
40 }
41 
42 //--------------------------------------------------------------------
43 
SfxHintPoster()44 SfxHintPoster::SfxHintPoster()
45 {
46 	RegisterEvent();
47 }
48 
49 //--------------------------------------------------------------------
50 
SfxHintPoster(const GenLink & rLink)51 SfxHintPoster::SfxHintPoster( const GenLink& rLink ):
52 	aLink(rLink)
53 {
54 }
55 
56 
57 //--------------------------------------------------------------------
58 
~SfxHintPoster()59 SfxHintPoster::~SfxHintPoster()
60 {
61 }
62 
63 //--------------------------------------------------------------------
64 
Post(SfxHint * pHintToPost)65 void SfxHintPoster::Post( SfxHint* pHintToPost )
66 {
67     GetpApp()->PostUserEvent( ( LINK(this, SfxHintPoster, DoEvent_Impl) ), pHintToPost );
68 	AddRef();
69 }
70 
71 //--------------------------------------------------------------------
72 
IMPL_LINK_INLINE_START(SfxHintPoster,DoEvent_Impl,SfxHint *,pPostedHint)73 IMPL_LINK_INLINE_START( SfxHintPoster, DoEvent_Impl, SfxHint *, pPostedHint )
74 {
75 	DBG_MEMTEST();
76 	Event( pPostedHint );
77 	ReleaseRef();
78 	return 0;
79 }
IMPL_LINK_INLINE_END(SfxHintPoster,DoEvent_Impl,SfxHint *,pPostedHint)80 IMPL_LINK_INLINE_END( SfxHintPoster, DoEvent_Impl, SfxHint *, pPostedHint )
81 
82 //--------------------------------------------------------------------
83 
84 void SfxHintPoster::Event( SfxHint* pPostedHint )
85 {
86 	aLink.Call( pPostedHint );
87 }
88 
89 //--------------------------------------------------------------------
90 
SetEventHdl(const GenLink & rLink)91 void SfxHintPoster::SetEventHdl( const GenLink& rLink )
92 {
93 	DBG_MEMTEST();
94 	aLink = rLink;
95 }
96 
97 
98 #define LOG( x )
99 #if 0
100 #define LOG( x )												\
101 {																\
102 	SvFileStream aStrm( "f:\\temp\\log", STREAM_READWRITE );	\
103 	aStrm.Seek( STREAM_SEEK_TO_END );							\
104 	aStrm << x.GetStr() << '\n';								\
105 }
106 #endif
107