Author: arielch
Date: Thu Dec 6 13:28:49 2012
New Revision: 1417850
URL: http://svn.apache.org/viewvc?rev=1417850&view=rev
Log:
#i121442# - StatusbarController API Modifications
Modify the current StatusbarController API so that it can be used by pure UNO
implementations.
Modified:
openoffice/trunk/main/offapi/com/sun/star/frame/StatusbarController.idl
openoffice/trunk/main/offapi/com/sun/star/frame/XStatusbarController.idl
Modified:
openoffice/trunk/main/offapi/com/sun/star/frame/StatusbarController.idl
URL:
http://svn.apache.org/viewvc/openoffice/trunk/main/offapi/com/sun/star/frame/StatusbarController.idl?rev=1417850&r1=1417849&r2=1417850&view=diff
==============================================================================
--- openoffice/trunk/main/offapi/com/sun/star/frame/StatusbarController.idl
(original)
+++ openoffice/trunk/main/offapi/com/sun/star/frame/StatusbarController.idl Thu
Dec 6 13:28:49 2012
@@ -1,5 +1,5 @@
/**************************************************************
- *
+ *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -7,53 +7,38 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- *
+ *
*************************************************************/
#ifndef __com_sun_star_frame_StatusbarController_idl__
#define __com_sun_star_frame_StatusbarController_idl__
-#ifndef __com_sun_star_lang_XInitialization_idl__
-#include <com/sun/star/lang/XInitialization.idl>
-#endif
-
-#ifndef __com_sun_star_util_XUpdatable_idl__
-#include <com/sun/star/util/XUpdatable.idl>
-#endif
-
-#ifndef __com_sun_star_frame_XStatusListener_idl__
-#include <com/sun/star/frame/XStatusListener.idl>
-#endif
-
-#ifndef __com_sun_star_frame_XStatusbarController_idl__
#include <com/sun/star/frame/XStatusbarController.idl>
-#endif
-//=============================================================================
+module com { module sun { module star { module frame {
- module com { module sun { module star { module frame {
+interface XStatusbarController;
-//=============================================================================
-/** is an abstract service for a component which offers a more complex user
+/** is an abstract service for a component which offers a more complex user
interface to users within a status bar.
<p>
- A generic status bar function is represented as a text field which
- provides status information to the user. A status bar controller can be
- added to a status bar and provides information or functions with a more
+ A generic status bar function is represented as a text field which
+ provides status information to the user. A status bar controller can be
+ added to a status bar and provides information or functions with a more
sophisticated user interface.<br/>
- A typical example for a status bar controller is the zoom level chooser
- within the statusbar. It provides an option to change the zoom level of
+ A typical example for a status bar controller is the zoom level chooser
+ within the statusbar. It provides an option to change the zoom level of
an application.
<p>
@@ -62,77 +47,10 @@
@since OOo 2.0
*/
-
-service StatusbarController
+service StatusbarController : XStatusbarController
{
- //-------------------------------------------------------------------------
- /** with this interface a component can receive events if a feature has
- changed.
-
- <p>
- The status bar controller implementation should register itself as a
- listener when its <member
scope="com::sun::star::util">XUpdatable</member>
- interface has been called.
- </p>
- */
- interface com::sun::star::frame::XStatusListener;
-
- /** used to initialize a component with required arguments.
-
- <b>A status bar controller needs at least three additional arguments
- provided as <type scope="com::sun::star::beans">PropertyValue</type>:
- <ul>
- <li><b>Frame</b><br>a
- <type scope="com::sun::star::frame">XFrame</type> instance
- to which the status bar controller belongs.</li>
- <li><b>CommandURL</b><br>a string which specifies the command
- associated with the statusbar controller. The command is
- used to identify the status bar controller
- implementation.</li>
- <li><b>ServiceManager</b><br>a <type scope="com::sun::star::lang">
- XMultiServiceFactory</type> instance which can be used to
- create additional UNO services.</li>
- <li><b>Parent</b><br>a <type
scope="com::sun::star::awt">Window</type>
- instance which represents the parent window (status bar
- window).</li>
- <li><b>Identifier</b><br>an integer value which is the unique id
- used by the status bar implementation to identify a status
- bar entry. This value is currently only used by internal
- OpenOffice.org status bar controller implementations.</li>
- </ul>
- */
- interface com::sun::star::lang::XInitialization;
-
- /** used to notify an implementation that it needs to add its listener or
- remove and add them again.
-
- <p>
- A status bar controller instance is ready for use after this call has
- been made the first time. The status bar implementation guarentees
that
- the controller's item window has been added to the status bar and its
- reference is held by it.
- </p>
- */
- interface com::sun::star::util::XUpdatable;
-
- //-------------------------------------------------------------------------
- /** used to notify changed features and requests for additional user
- interface items.
-
- <p>
- Mostly used by a status bar implementation to forward information to
- and request services from a status bar controller component. This
- interface must be useable after
- <member
scope="com::sun::star::lang">XInitialitation::initialize</member>
- has been called. The behavior of the interface is undefined if the
- controller component hasn't been initialized.
- </p>
- */
- interface com::sun::star::frame::XStatusbarController;
};
-//=============================================================================
-
}; }; }; };
#endif
Modified:
openoffice/trunk/main/offapi/com/sun/star/frame/XStatusbarController.idl
URL:
http://svn.apache.org/viewvc/openoffice/trunk/main/offapi/com/sun/star/frame/XStatusbarController.idl?rev=1417850&r1=1417849&r2=1417850&view=diff
==============================================================================
--- openoffice/trunk/main/offapi/com/sun/star/frame/XStatusbarController.idl
(original)
+++ openoffice/trunk/main/offapi/com/sun/star/frame/XStatusbarController.idl
Thu Dec 6 13:28:49 2012
@@ -1,5 +1,5 @@
/**************************************************************
- *
+ *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -7,97 +7,134 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
- *
+ *
*************************************************************/
-
#ifndef __com_sun_star_frame_XStatusbarController_idl__
#define __com_sun_star_frame_XStatusbarController_idl__
-#ifndef __com_sun_star_awt_Point_idl__
-#include <com/sun/star/awt/Point.idl>
-#endif
-
-#ifndef __com_sun_star_awt_MouseEvent_idl__
#include <com/sun/star/awt/MouseEvent.idl>
-#endif
-
-#ifndef __com_sun_star_awt_Rectangle_idl__
+#include <com/sun/star/awt/Point.idl>
#include <com/sun/star/awt/Rectangle.idl>
-#endif
-
-#ifndef __com_sun_star_awt_XGraphics_idl__
#include <com/sun/star/awt/XGraphics.idl>
-#endif
-
-//=============================================================================
+#include <com/sun/star/frame/XStatusListener.idl>
+#include <com/sun/star/lang/XInitialization.idl>
+#include <com/sun/star/util/XUpdatable.idl>
module com { module sun { module star { module frame {
-//=============================================================================
-/** is an abstract service for a component which offers a more complex user
interface
- to users within a status bar.
+/** interface to be implemented by a component offering a more complex user
+ interface to users within a status bar.
<p>
- A generic status bar field is represented as a simple text field. A status
- bar controller can be added to a Statusbar and provide information or
+ A generic status bar field is represented as a simple text field. A status
+ bar controller can be added to a Statusbar and provide information or
functions with a more sophisticated user interface.<br/>
- A typical example for status bar controller is a zoom chooser. It shows
- the current zoom and provides general zoom levels on a popup menu
+ A typical example for status bar controller is a zoom chooser. It shows
+ the current zoom and provides general zoom levels on a popup menu
that can be activated by a mouse action for context menus.
<p>
@see com::sun::star::frame::XDispatchProvider
-
+
@since OOo 2.0
- */
-interface XStatusbarController : ::com::sun::star::uno::XInterface
+*/
+interface XStatusbarController
{
-
//=============================================================================
- /** is called by a status bar if the mouse position is within the
controller
- and a mouse button has been pressed. If the controller has captured
the
- mouse input this function is also called when the mouse position is
not
+ /** used to initialize a component with required arguments.
+
+ <p>A status bar controller is initialized with <b>five</b> additional
+ arguments provided as a sequence of
+ <type scope="com::sun::star::beans">PropertyValue</type>:</p>
+
+ <ul>
+ <li><b>Frame</b><br/>a <type
scope="com::sun::star::frame">XFrame</type>
+ instance to which the status bar controller belongs.
+ </li>
+ <li><b>CommandURL</b><br/>a string which specifies the command
+ associated with the statusbar controller.</br>
+ The command is used to identify the status bar controller
+ implementation.
+ </li>
+ <li><b>StatusbarItem</b><br/>a <type
scope="com::sun::star::ui">XStatusbarItem</type>
+ instance which represents the status bar item asociated with
+ this controller.
+ </li>
+ <li><b>ParentWindow</b><br/>a <type
scope="com::sun::star::awt">Window</type>
+ instance which represents the parent window (status bar
window).
+ </li>
+ <li><b>ModuleName</b><br/>a string which specifies the name of the
+ office module attached to the frame to which this controller
+ belongs; the value is taken from
+ <member
scope="com::sun::star::frame">XModuleManager::identify()</member>.
+ </li>
+ </ul>
+ */
+ interface com::sun::star::lang::XInitialization;
+
+ /** with this interface a component can receive events if a feature has
+ changed.
+
+ <p>The status bar controller implementation should register itself as a
+ listener when its <member
scope="com::sun::star::util">XUpdatable</member>
+ interface has been called.</p>
+ */
+ interface com::sun::star::frame::XStatusListener;
+
+ /** used to notify an implementation that it needs to add its listener or
+ remove and add them again.
+
+ <p>
+ A status bar controller instance is ready for use after this call has
+ been made the first time. The status bar implementation guarentees that
+ the controller's item window has been added to the status bar and its
+ reference is held by it.
+ </p>
+ */
+ interface com::sun::star::util::XUpdatable;
+
+ /** is called by a status bar if the mouse position is within the
controller
+ and a mouse button has been pressed. If the controller has captured the
+ mouse input this function is also called when the mouse position is not
within the controller.
-
+
@param aMouseEvent
current information about the mouse pointer.
@return
- return <TRUE/> if the event should not be processed and <FALSE/>
+ return <TRUE/> if the event should not be processed and <FALSE/>
if the event should be processed by the status bar.
*/
boolean mouseButtonDown( [in] ::com::sun::star::awt::MouseEvent
aMouseEvent );
-
//=============================================================================
- /** is called by a status bar if the mouse position is within the
controller
- and a mouse has been moved. If the controller has captured the
- mouse input this function is also called when the mouse position is
not
+ /** is called by a status bar if the mouse position is within the
controller
+ and a mouse has been moved. If the controller has captured the
+ mouse input this function is also called when the mouse position is not
within the controller.
-
+
@param aMouseEvent
current information about the mouse pointer.
@return
- return <TRUE/> if the event should not be processed and <FALSE/>
+ return <TRUE/> if the event should not be processed and <FALSE/>
if the event should be processed by the status bar.
*/
boolean mouseMove( [in] ::com::sun::star::awt::MouseEvent aMouseEvent );
-
//=============================================================================
- /** is called by a status bar if the mouse position is within the
controller
- and a mouse button has been released. If the controller has captured
the
- mouse input this function is also called when the mouse position is
not
+ /** is called by a status bar if the mouse position is within the
controller
+ and a mouse button has been released. If the controller has captured
the
+ mouse input this function is also called when the mouse position is not
within the controller.
-
+
@param aMouseEvent
current information about the mouse pointer.
@@ -107,14 +144,15 @@ interface XStatusbarController : ::com::
*/
boolean mouseButtonUp( [in] ::com::sun::star::awt::MouseEvent aMouseEvent
);
-
//=============================================================================
/** is called by a status bar if a command event is available for a
controller.
-
+
@param aPos
the current mouse position in pixel.
@param nCommand
describes which command has been invoked.
+ <br/>See <type scope="com::sun::star::awt">Command</type> for
+ possible values.
@param bMouseEvent
<TRUE/> if the command is based on a mouse event, otherwise
<FALSE/>.
@@ -126,11 +164,10 @@ interface XStatusbarController : ::com::
[in] long nCommand,
[in] boolean bMouseEvent,
[in] any aData );
-
-
//=============================================================================
+
/** is called by a status bar if the controller has to update the visual
representation.
-
+
@param xGraphics
a reference to a <type scope="com::sun::star::awt">XGraphics</type>
which has to be used to update the visual representation.
@@ -139,29 +176,29 @@ interface XStatusbarController : ::com::
a <type scope="com::sun::star::awt">Rectangle</type> which
determine the output rectangle for all drawing operations
- @param nItemID
- the unique ID of the control within the status bar.
-
@param nStyle
reserved for future use.
*/
void paint( [in] ::com::sun::star::awt::XGraphics xGraphics,
[in] ::com::sun::star::awt::Rectangle rOutputRectangle,
- [in] long nItemId,
[in] long nStyle );
-
-
//=============================================================================
- /** is called by a status bar if the user clicked with mouse into the
+
+ /** is called by a status bar if the user clicked with mouse into the
field of the corresponding control.
+
+ @param aPos
+ the current mouse position in pixel.
*/
- void click();
+ void click( [in] ::com::sun::star::awt::Point aPos );
-
//=============================================================================
- /** is called by a status bar if the user double-clicked with mouse
+ /** is called by a status bar if the user double-clicked with mouse
into the field of the corresponding control.
+
+ @param aPos
+ the current mouse position in pixel.
*/
- void doubleClick();
-};
+ void doubleClick( [in] ::com::sun::star::awt::Point aPos );
+};
}; }; }; };