xref: /AOO41X/main/dbaccess/source/ui/inc/querycontainerwindow.hxx (revision 2e2212a7c22e96cf6f6fab0dd042c34a45a64bd6)
1*2e2212a7SAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*2e2212a7SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*2e2212a7SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*2e2212a7SAndrew Rist  * distributed with this work for additional information
6*2e2212a7SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*2e2212a7SAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*2e2212a7SAndrew Rist  * "License"); you may not use this file except in compliance
9*2e2212a7SAndrew Rist  * with the License.  You may obtain a copy of the License at
10cdf0e10cSrcweir  *
11*2e2212a7SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12cdf0e10cSrcweir  *
13*2e2212a7SAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*2e2212a7SAndrew Rist  * software distributed under the License is distributed on an
15*2e2212a7SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*2e2212a7SAndrew Rist  * KIND, either express or implied.  See the License for the
17*2e2212a7SAndrew Rist  * specific language governing permissions and limitations
18*2e2212a7SAndrew Rist  * under the License.
19cdf0e10cSrcweir  *
20*2e2212a7SAndrew Rist  *************************************************************/
21*2e2212a7SAndrew Rist 
22*2e2212a7SAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir #ifndef DBAUI_QUERYCONTAINERWINDOW_HXX
25cdf0e10cSrcweir #define DBAUI_QUERYCONTAINERWINDOW_HXX
26cdf0e10cSrcweir 
27cdf0e10cSrcweir #ifndef _SV_WINDOW_HXX
28cdf0e10cSrcweir #include <vcl/window.hxx>
29cdf0e10cSrcweir #endif
30cdf0e10cSrcweir #ifndef _SV_SPLIT_HXX
31cdf0e10cSrcweir #include <vcl/split.hxx>
32cdf0e10cSrcweir #endif
33cdf0e10cSrcweir #ifndef DBAUI_DATAVIEW_HXX
34cdf0e10cSrcweir #include "dataview.hxx"
35cdf0e10cSrcweir #endif
36cdf0e10cSrcweir #ifndef _COM_SUN_STAR_FRAME_XFRAME_HPP_
37cdf0e10cSrcweir #include <com/sun/star/frame/XFrame.hpp>
38cdf0e10cSrcweir #endif
39cdf0e10cSrcweir #ifndef DBAUI_QUERYVIEWSWITCH_HXX
40cdf0e10cSrcweir #include "QueryViewSwitch.hxx"
41cdf0e10cSrcweir #endif
42cdf0e10cSrcweir #ifndef _SV_DOCKWIN_HXX
43cdf0e10cSrcweir #include <vcl/dockwin.hxx>
44cdf0e10cSrcweir #endif
45cdf0e10cSrcweir 
46cdf0e10cSrcweir class FixedLine;
47cdf0e10cSrcweir //.........................................................................
48cdf0e10cSrcweir namespace dbaui
49cdf0e10cSrcweir {
50cdf0e10cSrcweir //.........................................................................
51cdf0e10cSrcweir 
52cdf0e10cSrcweir 	//=====================================================================
53cdf0e10cSrcweir 	//= OBeamer
54cdf0e10cSrcweir 	//=====================================================================
55cdf0e10cSrcweir 	// tempoaray class until the beamer is implemented
56cdf0e10cSrcweir 	class OBeamer : public DockingWindow
57cdf0e10cSrcweir 	{
58cdf0e10cSrcweir 	public:
OBeamer(Window * _pParent)59cdf0e10cSrcweir 		OBeamer(Window* _pParent) : DockingWindow(_pParent,0){}
60cdf0e10cSrcweir 	};
61cdf0e10cSrcweir 
62cdf0e10cSrcweir 	//=====================================================================
63cdf0e10cSrcweir 	//= OQueryContainerWindow
64cdf0e10cSrcweir 	//=====================================================================
65cdf0e10cSrcweir 	class OQueryContainerWindow : public ODataView
66cdf0e10cSrcweir 	{
67cdf0e10cSrcweir 		OQueryViewSwitch*	m_pViewSwitch;
68cdf0e10cSrcweir 		OBeamer*			m_pBeamer;
69cdf0e10cSrcweir 		Splitter*			m_pSplitter;
70cdf0e10cSrcweir 		::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >	m_xBeamer;
71cdf0e10cSrcweir 
72cdf0e10cSrcweir 		DECL_LINK( SplitHdl, void* );
73cdf0e10cSrcweir 	public:
74cdf0e10cSrcweir 		OQueryContainerWindow(Window* pParent, OQueryController& _rController,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >&);
75cdf0e10cSrcweir 		~OQueryContainerWindow();
76cdf0e10cSrcweir 
77cdf0e10cSrcweir 		virtual void Construct();
78cdf0e10cSrcweir 
79cdf0e10cSrcweir 		virtual long		PreNotify( NotifyEvent& rNEvt );
80cdf0e10cSrcweir 
81cdf0e10cSrcweir 		// show the beamer
82cdf0e10cSrcweir 		void	showPreview(const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& _xFrame);
83cdf0e10cSrcweir 			// called when the beamer has been disposed
84cdf0e10cSrcweir 		void	disposingPreview();
85cdf0e10cSrcweir 
86cdf0e10cSrcweir 		::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >
getPreviewFrame() const87cdf0e10cSrcweir 				getPreviewFrame() const { return m_xBeamer; }
88cdf0e10cSrcweir 
getDesignView()89cdf0e10cSrcweir 		OQueryDesignView*	getDesignView() { return m_pViewSwitch->getDesignView(); }
90cdf0e10cSrcweir 
isCutAllowed()91cdf0e10cSrcweir 		sal_Bool isCutAllowed()		{ return m_pViewSwitch->isCutAllowed(); }
isPasteAllowed()92cdf0e10cSrcweir 		sal_Bool isPasteAllowed()	{ return m_pViewSwitch->isPasteAllowed(); }
isCopyAllowed()93cdf0e10cSrcweir 		sal_Bool isCopyAllowed()	{ return m_pViewSwitch->isCopyAllowed(); }
copy()94cdf0e10cSrcweir 		void copy()					{ m_pViewSwitch->copy(); }
cut()95cdf0e10cSrcweir 		void cut()					{ m_pViewSwitch->cut(); }
paste()96cdf0e10cSrcweir 		void paste()				{ m_pViewSwitch->paste(); }
97cdf0e10cSrcweir 
clear()98cdf0e10cSrcweir 		void clear()														{ m_pViewSwitch->clear(); }
isSlotEnabled(sal_Int32 _nSlotId)99cdf0e10cSrcweir 		sal_Bool isSlotEnabled( sal_Int32 _nSlotId )						{ return m_pViewSwitch->isSlotEnabled( _nSlotId ); }
setSlotEnabled(sal_Int32 _nSlotId,sal_Bool _bEnable)100cdf0e10cSrcweir 		void	 setSlotEnabled( sal_Int32 _nSlotId, sal_Bool _bEnable )	{ m_pViewSwitch->setSlotEnabled( _nSlotId, _bEnable ); }
setNoneVisbleRow(sal_Int32 _nRows)101cdf0e10cSrcweir 		void	 setNoneVisbleRow(sal_Int32 _nRows)							{ m_pViewSwitch->setNoneVisbleRow( _nRows); }
102cdf0e10cSrcweir 
setReadOnly(sal_Bool _bReadOnly)103cdf0e10cSrcweir 		void setReadOnly( sal_Bool _bReadOnly )								{ m_pViewSwitch->setReadOnly( _bReadOnly ); }
104cdf0e10cSrcweir 
checkStatement()105cdf0e10cSrcweir 		sal_Bool checkStatement()											{ return m_pViewSwitch->checkStatement( ); }
getStatement()106cdf0e10cSrcweir 		::rtl::OUString getStatement()										{ return m_pViewSwitch->getStatement( ); }
setStatement(const::rtl::OUString & _rsStatement)107cdf0e10cSrcweir 		void setStatement( const ::rtl::OUString& _rsStatement )			{ m_pViewSwitch->setStatement( _rsStatement ); }
108cdf0e10cSrcweir 
initialize()109cdf0e10cSrcweir 		void    initialize()												{ m_pViewSwitch->initialize(); }
SaveUIConfig()110cdf0e10cSrcweir 		void    SaveUIConfig()												{ m_pViewSwitch->SaveUIConfig(); }
reset(::dbtools::SQLExceptionInfo * _pErrorInfo)111cdf0e10cSrcweir         bool    reset( ::dbtools::SQLExceptionInfo* _pErrorInfo )           { return m_pViewSwitch->reset( _pErrorInfo ); }
112cdf0e10cSrcweir 
113cdf0e10cSrcweir 		bool    switchView( ::dbtools::SQLExceptionInfo* _pErrorInfo );
114cdf0e10cSrcweir         void    forceInitialView();
115cdf0e10cSrcweir 
116cdf0e10cSrcweir 		virtual void GetFocus();
117cdf0e10cSrcweir 
118cdf0e10cSrcweir 	protected:
119cdf0e10cSrcweir 		// re-arrange the controls belonging to the document itself
120cdf0e10cSrcweir 		virtual void resizeAll( const Rectangle& _rPlayground );
121cdf0e10cSrcweir 
122cdf0e10cSrcweir 		// arrange dericed classes controls in the rectangle given
123cdf0e10cSrcweir 		virtual void resizeDocumentView(Rectangle& _rPlayground);
124cdf0e10cSrcweir 	};
125cdf0e10cSrcweir 	// end of temp classes
126cdf0e10cSrcweir 
127cdf0e10cSrcweir //.........................................................................
128cdf0e10cSrcweir }	// namespace dbaui
129cdf0e10cSrcweir //.........................................................................
130cdf0e10cSrcweir 
131cdf0e10cSrcweir #endif // DBAUI_QUERYCONTAINERWINDOW_HXX
132cdf0e10cSrcweir 
133