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 package integration.extensions;
25 
26 import com.sun.star.uno.*;
27 import com.sun.star.frame.*;
28 import com.sun.star.task.XStatusIndicatorFactory;
29 import com.sun.star.util.XCloseable;
30 
31 /** wraps the coms.sun.star.frame.Frame service
32  *
33  * @author fs93730
34  */
35 public class Frame implements   XFrame,
36                                 XDispatchProvider,
37                                 XDispatchProviderInterception,
38                                 XFramesSupplier,
39                                 XStatusIndicatorFactory,
40                                 XCloseable
41 {
42     private XFrame                          m_frame;
43     private XDispatchProvider               m_dispatchProvider;
44     private XDispatchProviderInterception   m_dispatchProviderInterception;
45     private XFramesSupplier                 m_framesSupplier;
46     private XStatusIndicatorFactory         m_statusIndicatorFactory;
47     private XCloseable                      m_closeable;
48 
49     /** Creates a new instance of Frame */
Frame( Object _frameComponent )50     public Frame( Object _frameComponent )
51     {
52         if ( _frameComponent != null )
53         {
54             m_frame = (XFrame)UnoRuntime.queryInterface( XFrame.class, _frameComponent );
55             m_dispatchProvider = (XDispatchProvider)UnoRuntime.queryInterface( XDispatchProvider.class, _frameComponent );
56             m_dispatchProviderInterception = (XDispatchProviderInterception)UnoRuntime.queryInterface( XDispatchProviderInterception.class, _frameComponent );
57             m_framesSupplier = (XFramesSupplier)UnoRuntime.queryInterface( XFramesSupplier.class, _frameComponent );
58             m_statusIndicatorFactory = (XStatusIndicatorFactory)UnoRuntime.queryInterface( XStatusIndicatorFactory.class, _frameComponent );
59             m_closeable = (XCloseable)UnoRuntime.queryInterface( XCloseable.class, _frameComponent );
60         }
61     }
62 
getXFrame()63     public XFrame getXFrame()
64     {
65         return m_frame;
66     }
67 
activate()68     public void activate()
69     {
70         m_frame.activate();
71     }
72 
addEventListener(com.sun.star.lang.XEventListener _eventListener)73     public void addEventListener(com.sun.star.lang.XEventListener _eventListener)
74     {
75         m_frame.addEventListener( _eventListener );
76     }
77 
addFrameActionListener(XFrameActionListener _frameActionListener)78     public void addFrameActionListener(XFrameActionListener _frameActionListener)
79     {
80         m_frame.addFrameActionListener( _frameActionListener );
81     }
82 
contextChanged()83     public void contextChanged()
84     {
85         m_frame.contextChanged();
86     }
87 
createStatusIndicator()88     public com.sun.star.task.XStatusIndicator createStatusIndicator()
89     {
90         return m_statusIndicatorFactory.createStatusIndicator();
91     }
92 
deactivate()93     public void deactivate()
94     {
95         m_frame.deactivate();
96     }
97 
dispose()98     public void dispose()
99     {
100         m_frame.dispose();
101     }
102 
findFrame(String str, int param)103     public XFrame findFrame(String str, int param)
104     {
105         return m_frame.findFrame( str, param );
106     }
107 
getActiveFrame()108     public XFrame getActiveFrame()
109     {
110         return m_framesSupplier.getActiveFrame();
111     }
112 
getComponentWindow()113     public com.sun.star.awt.XWindow getComponentWindow()
114     {
115         return m_frame.getComponentWindow();
116     }
117 
getContainerWindow()118     public com.sun.star.awt.XWindow getContainerWindow()
119     {
120         return m_frame.getContainerWindow();
121     }
122 
getController()123     public XController getController()
124     {
125         return m_frame.getController();
126     }
127 
getCreator()128     public XFramesSupplier getCreator()
129     {
130         return m_frame.getCreator();
131     }
132 
getFrames()133     public XFrames getFrames()
134     {
135         return m_framesSupplier.getFrames();
136     }
137 
getName()138     public String getName()
139     {
140         return m_frame.getName();
141     }
142 
initialize(com.sun.star.awt.XWindow _window)143     public void initialize(com.sun.star.awt.XWindow _window)
144     {
145         m_frame.initialize( _window );
146     }
147 
isActive()148     public boolean isActive()
149     {
150         return m_frame.isActive();
151     }
152 
isTop()153     public boolean isTop()
154     {
155         return m_frame.isTop();
156     }
157 
queryDispatch(com.sun.star.util.URL _url, String _str, int _param)158     public XDispatch queryDispatch(com.sun.star.util.URL _url, String _str, int _param)
159     {
160         return m_dispatchProvider.queryDispatch( _url, _str, _param );
161     }
162 
queryDispatches(DispatchDescriptor[] dispatchDescriptor)163     public XDispatch[] queryDispatches(DispatchDescriptor[] dispatchDescriptor)
164     {
165         return m_dispatchProvider.queryDispatches( dispatchDescriptor );
166     }
167 
registerDispatchProviderInterceptor(XDispatchProviderInterceptor _dispatchProviderInterceptor)168     public void registerDispatchProviderInterceptor(XDispatchProviderInterceptor _dispatchProviderInterceptor)
169     {
170         m_dispatchProviderInterception.registerDispatchProviderInterceptor( _dispatchProviderInterceptor );
171     }
172 
releaseDispatchProviderInterceptor(XDispatchProviderInterceptor _dispatchProviderInterceptor)173     public void releaseDispatchProviderInterceptor(XDispatchProviderInterceptor _dispatchProviderInterceptor)
174     {
175         m_dispatchProviderInterception.releaseDispatchProviderInterceptor( _dispatchProviderInterceptor );
176     }
177 
removeEventListener(com.sun.star.lang.XEventListener _eventListener)178     public void removeEventListener(com.sun.star.lang.XEventListener _eventListener)
179     {
180         m_frame.removeEventListener( _eventListener );
181     }
182 
removeFrameActionListener(XFrameActionListener _frameActionListener)183     public void removeFrameActionListener(XFrameActionListener _frameActionListener)
184     {
185         m_frame.removeFrameActionListener( _frameActionListener );
186     }
187 
setActiveFrame(XFrame _frame)188     public void setActiveFrame(XFrame _frame)
189     {
190         m_framesSupplier.setActiveFrame( _frame );
191     }
192 
setComponent(com.sun.star.awt.XWindow _window, XController _controller)193     public boolean setComponent(com.sun.star.awt.XWindow _window, XController _controller)
194     {
195         return m_frame.setComponent( _window, _controller );
196     }
197 
setCreator(XFramesSupplier _framesSupplier)198     public void setCreator(XFramesSupplier _framesSupplier)
199     {
200         m_frame.setCreator( _framesSupplier );
201     }
202 
setName(String str)203     public void setName(String str)
204     {
205         m_frame.setName( str );
206     }
207 
close(boolean _deliverOwnership)208     public void close(boolean _deliverOwnership) throws com.sun.star.util.CloseVetoException
209     {
210         m_closeable.close( _deliverOwnership );
211     }
212 
removeCloseListener(com.sun.star.util.XCloseListener _closeListener)213     public void removeCloseListener(com.sun.star.util.XCloseListener _closeListener)
214     {
215         m_closeable.removeCloseListener( _closeListener );
216     }
217 
addCloseListener(com.sun.star.util.XCloseListener _closeListener)218     public void addCloseListener(com.sun.star.util.XCloseListener _closeListener)
219     {
220         m_closeable.addCloseListener( _closeListener );
221     }
222 }
223