xref: /AOO41X/main/dbaccess/source/ui/inc/querycontainerwindow.hxx (revision 2e2212a7c22e96cf6f6fab0dd042c34a45a64bd6)
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 #ifndef DBAUI_QUERYCONTAINERWINDOW_HXX
25 #define DBAUI_QUERYCONTAINERWINDOW_HXX
26 
27 #ifndef _SV_WINDOW_HXX
28 #include <vcl/window.hxx>
29 #endif
30 #ifndef _SV_SPLIT_HXX
31 #include <vcl/split.hxx>
32 #endif
33 #ifndef DBAUI_DATAVIEW_HXX
34 #include "dataview.hxx"
35 #endif
36 #ifndef _COM_SUN_STAR_FRAME_XFRAME_HPP_
37 #include <com/sun/star/frame/XFrame.hpp>
38 #endif
39 #ifndef DBAUI_QUERYVIEWSWITCH_HXX
40 #include "QueryViewSwitch.hxx"
41 #endif
42 #ifndef _SV_DOCKWIN_HXX
43 #include <vcl/dockwin.hxx>
44 #endif
45 
46 class FixedLine;
47 //.........................................................................
48 namespace dbaui
49 {
50 //.........................................................................
51 
52     //=====================================================================
53     //= OBeamer
54     //=====================================================================
55     // tempoaray class until the beamer is implemented
56     class OBeamer : public DockingWindow
57     {
58     public:
OBeamer(Window * _pParent)59         OBeamer(Window* _pParent) : DockingWindow(_pParent,0){}
60     };
61 
62     //=====================================================================
63     //= OQueryContainerWindow
64     //=====================================================================
65     class OQueryContainerWindow : public ODataView
66     {
67         OQueryViewSwitch*   m_pViewSwitch;
68         OBeamer*            m_pBeamer;
69         Splitter*           m_pSplitter;
70         ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame > m_xBeamer;
71 
72         DECL_LINK( SplitHdl, void* );
73     public:
74         OQueryContainerWindow(Window* pParent, OQueryController& _rController,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >&);
75         ~OQueryContainerWindow();
76 
77         virtual void Construct();
78 
79         virtual long        PreNotify( NotifyEvent& rNEvt );
80 
81         // show the beamer
82         void    showPreview(const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& _xFrame);
83             // called when the beamer has been disposed
84         void    disposingPreview();
85 
86         ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >
getPreviewFrame() const87                 getPreviewFrame() const { return m_xBeamer; }
88 
getDesignView()89         OQueryDesignView*   getDesignView() { return m_pViewSwitch->getDesignView(); }
90 
isCutAllowed()91         sal_Bool isCutAllowed()     { return m_pViewSwitch->isCutAllowed(); }
isPasteAllowed()92         sal_Bool isPasteAllowed()   { return m_pViewSwitch->isPasteAllowed(); }
isCopyAllowed()93         sal_Bool isCopyAllowed()    { return m_pViewSwitch->isCopyAllowed(); }
copy()94         void copy()                 { m_pViewSwitch->copy(); }
cut()95         void cut()                  { m_pViewSwitch->cut(); }
paste()96         void paste()                { m_pViewSwitch->paste(); }
97 
clear()98         void clear()                                                        { m_pViewSwitch->clear(); }
isSlotEnabled(sal_Int32 _nSlotId)99         sal_Bool isSlotEnabled( sal_Int32 _nSlotId )                        { return m_pViewSwitch->isSlotEnabled( _nSlotId ); }
setSlotEnabled(sal_Int32 _nSlotId,sal_Bool _bEnable)100         void     setSlotEnabled( sal_Int32 _nSlotId, sal_Bool _bEnable )    { m_pViewSwitch->setSlotEnabled( _nSlotId, _bEnable ); }
setNoneVisbleRow(sal_Int32 _nRows)101         void     setNoneVisbleRow(sal_Int32 _nRows)                         { m_pViewSwitch->setNoneVisbleRow( _nRows); }
102 
setReadOnly(sal_Bool _bReadOnly)103         void setReadOnly( sal_Bool _bReadOnly )                             { m_pViewSwitch->setReadOnly( _bReadOnly ); }
104 
checkStatement()105         sal_Bool checkStatement()                                           { return m_pViewSwitch->checkStatement( ); }
getStatement()106         ::rtl::OUString getStatement()                                      { return m_pViewSwitch->getStatement( ); }
setStatement(const::rtl::OUString & _rsStatement)107         void setStatement( const ::rtl::OUString& _rsStatement )            { m_pViewSwitch->setStatement( _rsStatement ); }
108 
initialize()109         void    initialize()                                                { m_pViewSwitch->initialize(); }
SaveUIConfig()110         void    SaveUIConfig()                                              { m_pViewSwitch->SaveUIConfig(); }
reset(::dbtools::SQLExceptionInfo * _pErrorInfo)111         bool    reset( ::dbtools::SQLExceptionInfo* _pErrorInfo )           { return m_pViewSwitch->reset( _pErrorInfo ); }
112 
113         bool    switchView( ::dbtools::SQLExceptionInfo* _pErrorInfo );
114         void    forceInitialView();
115 
116         virtual void GetFocus();
117 
118     protected:
119         // re-arrange the controls belonging to the document itself
120         virtual void resizeAll( const Rectangle& _rPlayground );
121 
122         // arrange dericed classes controls in the rectangle given
123         virtual void resizeDocumentView(Rectangle& _rPlayground);
124     };
125     // end of temp classes
126 
127 //.........................................................................
128 }   // namespace dbaui
129 //.........................................................................
130 
131 #endif // DBAUI_QUERYCONTAINERWINDOW_HXX
132 
133