1*96821c26SAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*96821c26SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*96821c26SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*96821c26SAndrew Rist  * distributed with this work for additional information
6*96821c26SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*96821c26SAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*96821c26SAndrew Rist  * "License"); you may not use this file except in compliance
9*96821c26SAndrew Rist  * with the License.  You may obtain a copy of the License at
10*96821c26SAndrew Rist  *
11*96821c26SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*96821c26SAndrew Rist  *
13*96821c26SAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*96821c26SAndrew Rist  * software distributed under the License is distributed on an
15*96821c26SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*96821c26SAndrew Rist  * KIND, either express or implied.  See the License for the
17*96821c26SAndrew Rist  * specific language governing permissions and limitations
18*96821c26SAndrew Rist  * under the License.
19*96821c26SAndrew Rist  *
20*96821c26SAndrew Rist  *************************************************************/
21*96821c26SAndrew Rist 
22*96821c26SAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir #ifndef _IDERDLL2_HXX
25cdf0e10cSrcweir #define _IDERDLL2_HXX
26cdf0e10cSrcweir 
27cdf0e10cSrcweir class StarBASIC;
28cdf0e10cSrcweir class SvxSearchItem;
29cdf0e10cSrcweir class Accelerator;
30cdf0e10cSrcweir 
31cdf0e10cSrcweir #include <tools/string.hxx>
32cdf0e10cSrcweir #include <tools/gen.hxx>
33cdf0e10cSrcweir #include <tools/link.hxx>
34cdf0e10cSrcweir 
35cdf0e10cSrcweir #include <bastypes.hxx>
36cdf0e10cSrcweir #include <bastype2.hxx>
37cdf0e10cSrcweir 
38cdf0e10cSrcweir #define INVPOSITION	0x7fff
39cdf0e10cSrcweir 
40cdf0e10cSrcweir class BasicIDEData
41cdf0e10cSrcweir {
42cdf0e10cSrcweir private:
43cdf0e10cSrcweir 	Accelerator*	pAccelerator;
44cdf0e10cSrcweir 	SvxSearchItem*	pSearchItem;
45cdf0e10cSrcweir 
46cdf0e10cSrcweir 	LibInfos		aLibInfos;
47cdf0e10cSrcweir 
48cdf0e10cSrcweir     BasicEntryDescriptor    m_aLastEntryDesc;
49cdf0e10cSrcweir 
50cdf0e10cSrcweir 	Point			aObjCatPos;
51cdf0e10cSrcweir 	Size			aObjCatSize;
52cdf0e10cSrcweir 
53cdf0e10cSrcweir 	String			aAddLibPath;
54cdf0e10cSrcweir 	String			aAddLibFilter;
55cdf0e10cSrcweir 
56cdf0e10cSrcweir 	sal_uInt16			nBasicDialogCount;
57cdf0e10cSrcweir 
58cdf0e10cSrcweir 	sal_Bool			OLD_bRelMacroRecording;
59cdf0e10cSrcweir 	sal_Bool			bChoosingMacro;
60cdf0e10cSrcweir 	sal_Bool			bShellInCriticalSection;
61cdf0e10cSrcweir 
62cdf0e10cSrcweir protected:
63cdf0e10cSrcweir     DECL_LINK( GlobalBasicBreakHdl, StarBASIC * );
64cdf0e10cSrcweir 
65cdf0e10cSrcweir public:
66cdf0e10cSrcweir 							BasicIDEData();
67cdf0e10cSrcweir 							~BasicIDEData();
68cdf0e10cSrcweir 
GetLibInfos()69cdf0e10cSrcweir 	LibInfos&				GetLibInfos() { return aLibInfos; }
70cdf0e10cSrcweir 
GetLastEntryDescriptor()71cdf0e10cSrcweir     BasicEntryDescriptor&   GetLastEntryDescriptor()    { return m_aLastEntryDesc; }
SetLastEntryDescriptor(BasicEntryDescriptor & rDesc)72cdf0e10cSrcweir     void                    SetLastEntryDescriptor( BasicEntryDescriptor& rDesc ) { m_aLastEntryDesc = rDesc; }
73cdf0e10cSrcweir 
ChoosingMacro()74cdf0e10cSrcweir 	sal_Bool&					ChoosingMacro() 			{ return bChoosingMacro; }
ShellInCriticalSection()75cdf0e10cSrcweir 	sal_Bool&					ShellInCriticalSection()	{ return bShellInCriticalSection; }
76cdf0e10cSrcweir 
GetBasicDialogCount() const77cdf0e10cSrcweir 	sal_uInt16					GetBasicDialogCount() const { return nBasicDialogCount; }
IncBasicDialogCount()78cdf0e10cSrcweir 	void					IncBasicDialogCount() 		{ nBasicDialogCount++; }
DecBasicDialogCount()79cdf0e10cSrcweir 	void					DecBasicDialogCount()		{ nBasicDialogCount--; }
80cdf0e10cSrcweir 
81cdf0e10cSrcweir 	SvxSearchItem&			GetSearchItem() const;
82cdf0e10cSrcweir 	void					SetSearchItem( const SvxSearchItem& rItem );
83cdf0e10cSrcweir 
SetObjectCatalogPos(const Point & rPnt)84cdf0e10cSrcweir 	void					SetObjectCatalogPos( const Point& rPnt )
85cdf0e10cSrcweir 								{ aObjCatPos = rPnt; }
GetObjectCatalogPos() const86cdf0e10cSrcweir 	const Point&			GetObjectCatalogPos() const
87cdf0e10cSrcweir 								{ return aObjCatPos; }
88cdf0e10cSrcweir 
SetObjectCatalogSize(const Size & rSize)89cdf0e10cSrcweir 	void					SetObjectCatalogSize( const Size& rSize )
90cdf0e10cSrcweir 								{ aObjCatSize = rSize; }
GetObjectCatalogSize() const91cdf0e10cSrcweir 	const Size&				GetObjectCatalogSize() const
92cdf0e10cSrcweir 								{ return aObjCatSize; }
93cdf0e10cSrcweir 
GetAddLibPath() const94cdf0e10cSrcweir 	const String&			GetAddLibPath() const	{ return aAddLibPath; }
SetAddLibPath(const String & rPath)95cdf0e10cSrcweir 	void					SetAddLibPath( const String& rPath ) { aAddLibPath = rPath; }
96cdf0e10cSrcweir 
GetAddLibFilter() const97cdf0e10cSrcweir 	const String&			GetAddLibFilter() const	{ return aAddLibFilter; }
SetAddLibFilter(const String & rFilter)98cdf0e10cSrcweir 	void					SetAddLibFilter( const String& rFilter )  { aAddLibFilter = rFilter; }
99cdf0e10cSrcweir };
100cdf0e10cSrcweir 
101cdf0e10cSrcweir 
102cdf0e10cSrcweir #endif //_IDERDLL2_HXX
103