1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2008 by Sun Microsystems, Inc.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * $RCSfile:  $
10  *
11  * $Revision:  $
12  *
13  * This file is part of OpenOffice.org.
14  *
15  * OpenOffice.org is free software: you can redistribute it and/or modify
16  * it under the terms of the GNU Lesser General Public License version 3
17  * only, as published by the Free Software Foundation.
18  *
19  * OpenOffice.org is distributed in the hope that it will be useful,
20  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22  * GNU Lesser General Public License version 3 for more details
23  * (a copy is included in the LICENSE file that accompanied this code).
24  *
25  * You should have received a copy of the GNU Lesser General Public License
26  * version 3 along with OpenOffice.org.  If not, see
27  * <http://www.openoffice.org/license.html>
28  * for a copy of the LGPLv3 License.
29  *
30  ************************************************************************/
31 
32 #ifndef _SIDEBARTXTCONTROL_HXX
33 #define _SIDEBARTXTCONTROL_HXX
34 
35 #include <vcl/ctrl.hxx>
36 
37 class OutlinerView;
38 class SwView;
39 class SwPostItMgr;
40 class SpellCallbackInfo;
41 
42 namespace sw { namespace sidebarwindows {
43 
44 class SwSidebarWin;
45 
46 class SidebarTxtControl : public Control
47 {
48 	private:
49         SwSidebarWin& mrSidebarWin;
50         SwView& mrDocView;
51         SwPostItMgr& mrPostItMgr;
52 
53         bool mbMouseOver;
54 
55 	protected:
56 		virtual void	Paint( const Rectangle& rRect);
57         virtual void    KeyInput( const KeyEvent& rKeyEvt );
58 		virtual void	MouseMove( const MouseEvent& rMEvt );
59 		virtual void	MouseButtonDown( const MouseEvent& rMEvt );
60 		virtual void	MouseButtonUp( const MouseEvent& rMEvt );
61 		virtual void	Command( const CommandEvent& rCEvt );
62 		virtual void 	LoseFocus();
63 		virtual void	RequestHelp(const HelpEvent &rEvt);
64 		virtual XubString GetSurroundingText() const;
65 		virtual Selection GetSurroundingTextSelection() const;
66 
67         DECL_LINK( Select, Menu* );
68 
69 	public:
70         SidebarTxtControl( SwSidebarWin& rSidebarWin,
71                            WinBits nBits,
72                            SwView& rDocView,
73                            SwPostItMgr& rPostItMgr );
74         ~SidebarTxtControl();
75 
76         virtual void GetFocus();
77 
78         OutlinerView* GetTextView() const;
79 
80         DECL_LINK( OnlineSpellCallback, SpellCallbackInfo*);
81 
82         virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > CreateAccessible();
83 };
84 
85 } } // end of namespace sw::sidebarwindows
86 
87 #endif
88