summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAriel Constenla-Haile <arielch@apache.org>2012-12-24 08:07:25 +0000
committerAriel Constenla-Haile <arielch@apache.org>2012-12-24 08:07:25 +0000
commit27cfcb1e9d103b3e49c1263b1fa59fee8b187b21 (patch)
tree3541a76c1ccb0049f3ae51fbd3620a76dcf0fc50
parent734b532fb77d2d5be7eb7becb6720dbd7b3d8978 (diff)
i121544 - Clean-up MessageBox API
Notes
-rw-r--r--desktop/test/deployment/active/Dispatch.java3
-rw-r--r--desktop/test/deployment/active/active_native.cxx3
-rw-r--r--desktop/test/deployment/active/active_python.py3
-rw-r--r--desktop/test/deployment/passive/Dispatch.java3
-rw-r--r--desktop/test/deployment/passive/passive_native.cxx3
-rw-r--r--desktop/test/deployment/passive/passive_python.py3
-rw-r--r--odk/examples/DevelopersGuide/Charts/SelectionChangeListener.java4
-rw-r--r--odk/examples/DevelopersGuide/GUI/MessageBox.java5
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx3
-rw-r--r--odk/examples/java/Inspector/Inspector.java3
-rw-r--r--offapi/com/sun/star/awt/MessageBoxButtons.idl11
-rw-r--r--offapi/com/sun/star/awt/MessageBoxResults.idl (renamed from offapi/com/sun/star/awt/MessageBoxCommand.idl)49
-rw-r--r--offapi/com/sun/star/awt/MessageBoxType.idl54
-rw-r--r--offapi/com/sun/star/awt/XMessageBox.idl46
-rw-r--r--offapi/com/sun/star/awt/XMessageBoxFactory.idl70
-rw-r--r--offapi/com/sun/star/awt/makefile.mk3
-rw-r--r--offapi/type_reference/types.rdbbin7504896 -> 7506432 bytes
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XMessageBoxFactory.java2
-rw-r--r--sdext/source/minimizer/unodialog.cxx49
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/Helper.java7
-rw-r--r--toolkit/inc/toolkit/awt/vclxtoolkit.hxx2
-rw-r--r--toolkit/source/awt/vclxtoolkit.cxx48
-rw-r--r--toolkit/source/layout/core/root.cxx3
23 files changed, 174 insertions, 203 deletions
diff --git a/desktop/test/deployment/active/Dispatch.java b/desktop/test/deployment/active/Dispatch.java
index d7f1cd1d9536..6fb3fa9d2c8b 100644
--- a/desktop/test/deployment/active/Dispatch.java
+++ b/desktop/test/deployment/active/Dispatch.java
@@ -24,6 +24,7 @@
package com.sun.star.comp.test.deployment.active_java;
import com.sun.star.awt.MessageBoxButtons;
+import com.sun.star.awt.MessageBoxType;
import com.sun.star.awt.Rectangle;
import com.sun.star.awt.XMessageBox;
import com.sun.star.awt.XMessageBoxFactory;
@@ -74,7 +75,7 @@ public final class Dispatch extends WeakBase implements XServiceInfo, XDispatch
smgr.createInstanceWithContext(
"com.sun.star.frame.Desktop", context)).
getCurrentFrame().getComponentWindow())),
- new Rectangle(), "infobox", MessageBoxButtons.BUTTONS_OK,
+ MessageBoxType.INFOBOX, MessageBoxButtons.BUTTONS_OK,
"active", "java");
box.execute();
UnoRuntime.queryInterface(XComponent.class, box).dispose();
diff --git a/desktop/test/deployment/active/active_native.cxx b/desktop/test/deployment/active/active_native.cxx
index f29270a2bb8f..768d3927cb4d 100644
--- a/desktop/test/deployment/active/active_native.cxx
+++ b/desktop/test/deployment/active/active_native.cxx
@@ -250,8 +250,7 @@ void Dispatch::dispatch(
css::uno::UNO_QUERY_THROW)->getCurrentFrame(),
css::uno::UNO_SET_THROW)->getComponentWindow(),
css::uno::UNO_QUERY_THROW),
- css::awt::Rectangle(),
- rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("infobox")),
+ css::awt::MessageBoxType_INFOBOX,
css::awt::MessageBoxButtons::BUTTONS_OK,
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("active")),
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("native"))),
diff --git a/desktop/test/deployment/active/active_python.py b/desktop/test/deployment/active/active_python.py
index e357271ba6ab..01f72e55121d 100644
--- a/desktop/test/deployment/active/active_python.py
+++ b/desktop/test/deployment/active/active_python.py
@@ -24,6 +24,7 @@ import unohelper
from com.sun.star.awt import Rectangle
from com.sun.star.awt.MessageBoxButtons import BUTTONS_OK
+from com.sun.star.awt.MessageBoxType import INFOBOX
from com.sun.star.frame import XDispatch, XDispatchProvider
from com.sun.star.lang import XServiceInfo
from com.sun.star.registry import InvalidRegistryException
@@ -79,7 +80,7 @@ class Dispatch(unohelper.Base, XServiceInfo, XDispatch):
smgr.createInstanceWithContext( \
"com.sun.star.frame.Desktop", self.context). \
getCurrentFrame().getComponentWindow(), \
- Rectangle(), "infobox", BUTTONS_OK, "active", "python")
+ INFOBOX, BUTTONS_OK, "active", "python")
box.execute();
box.dispose();
diff --git a/desktop/test/deployment/passive/Dispatch.java b/desktop/test/deployment/passive/Dispatch.java
index 59634a775444..5647b23f235d 100644
--- a/desktop/test/deployment/passive/Dispatch.java
+++ b/desktop/test/deployment/passive/Dispatch.java
@@ -24,6 +24,7 @@
package com.sun.star.comp.test.deployment.passive_java;
import com.sun.star.awt.MessageBoxButtons;
+import com.sun.star.awt.MessageBoxType;
import com.sun.star.awt.Rectangle;
import com.sun.star.awt.XMessageBox;
import com.sun.star.awt.XMessageBoxFactory;
@@ -74,7 +75,7 @@ public final class Dispatch extends WeakBase implements XServiceInfo, XDispatch
smgr.createInstanceWithContext(
"com.sun.star.frame.Desktop", context)).
getCurrentFrame().getComponentWindow())),
- new Rectangle(), "infobox", MessageBoxButtons.BUTTONS_OK,
+ MessageBoxType.INFOBOX, MessageBoxButtons.BUTTONS_OK,
"passive", "java");
box.execute();
UnoRuntime.queryInterface(XComponent.class, box).dispose();
diff --git a/desktop/test/deployment/passive/passive_native.cxx b/desktop/test/deployment/passive/passive_native.cxx
index abbb6681e4c3..1a39332a9889 100644
--- a/desktop/test/deployment/passive/passive_native.cxx
+++ b/desktop/test/deployment/passive/passive_native.cxx
@@ -248,8 +248,7 @@ void Dispatch::dispatch(
css::uno::UNO_QUERY_THROW)->getCurrentFrame(),
css::uno::UNO_SET_THROW)->getComponentWindow(),
css::uno::UNO_QUERY_THROW),
- css::awt::Rectangle(),
- rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("infobox")),
+ css::awt::MessageBoxType_INFOBOX,
css::awt::MessageBoxButtons::BUTTONS_OK,
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("passive")),
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("native"))),
diff --git a/desktop/test/deployment/passive/passive_python.py b/desktop/test/deployment/passive/passive_python.py
index bff7e3da323a..9ed30595de08 100644
--- a/desktop/test/deployment/passive/passive_python.py
+++ b/desktop/test/deployment/passive/passive_python.py
@@ -24,6 +24,7 @@ import unohelper
from com.sun.star.awt import Rectangle
from com.sun.star.awt.MessageBoxButtons import BUTTONS_OK
+from com.sun.star.awt.MessageBoxType import INFOBOX
from com.sun.star.frame import XDispatch, XDispatchProvider
from com.sun.star.lang import XServiceInfo
@@ -78,7 +79,7 @@ class Dispatch(unohelper.Base, XServiceInfo, XDispatch):
smgr.createInstanceWithContext( \
"com.sun.star.frame.Desktop", self.context). \
getCurrentFrame().getComponentWindow(), \
- Rectangle(), "infobox", BUTTONS_OK, "passive", "python")
+ INFOBOX, BUTTONS_OK, "passive", "python")
box.execute();
box.dispose();
diff --git a/odk/examples/DevelopersGuide/Charts/SelectionChangeListener.java b/odk/examples/DevelopersGuide/Charts/SelectionChangeListener.java
index 7b4dd3a87829..794e3b0ce024 100644
--- a/odk/examples/DevelopersGuide/Charts/SelectionChangeListener.java
+++ b/odk/examples/DevelopersGuide/Charts/SelectionChangeListener.java
@@ -45,6 +45,7 @@ import com.sun.star.awt.Point;
import com.sun.star.awt.Rectangle;
import com.sun.star.awt.Size;
import com.sun.star.awt.XMessageBoxFactory;
+import com.sun.star.awt.MessageBoxType;
import com.sun.star.awt.XWindow;
// __________ Implementation __________
@@ -195,10 +196,9 @@ public class SelectionChangeListener implements XSelectionChangeListener {
XWindow xWin = aDesktop.getCurrentFrame().getContainerWindow();
XWindowPeer aWinPeer = (XWindowPeer) UnoRuntime.queryInterface(XWindowPeer.class, xWin);
- Rectangle aRect = new Rectangle();
int button = com.sun.star.awt.MessageBoxButtons.BUTTONS_OK;
XMessageBoxFactory aMBF = (XMessageBoxFactory) UnoRuntime.queryInterface(XMessageBoxFactory.class, aToolKit);
- XMessageBox xMB = aMBF.createMessageBox(aWinPeer, aRect, "infobox" , button, "Event-Notify", "Listener was called, selcetion has changed");
+ XMessageBox xMB = aMBF.createMessageBox(aWinPeer, MessageBoxType.INFOBOX, button, "Event-Notify", "Listener was called, selcetion has changed");
xMB.execute();
}
}
diff --git a/odk/examples/DevelopersGuide/GUI/MessageBox.java b/odk/examples/DevelopersGuide/GUI/MessageBox.java
index 797d7ff96cf1..73bffc9eb5fe 100644
--- a/odk/examples/DevelopersGuide/GUI/MessageBox.java
+++ b/odk/examples/DevelopersGuide/GUI/MessageBox.java
@@ -22,6 +22,7 @@
import com.sun.star.awt.Rectangle;
+import com.sun.star.awt.MessageBoxType;
import com.sun.star.awt.XMessageBox;
import com.sun.star.awt.XMessageBoxFactory;
import com.sun.star.awt.XVclWindowPeer;
@@ -164,9 +165,7 @@ public class MessageBox {
try {
Object oToolkit = m_xMCF.createInstanceWithContext("com.sun.star.awt.Toolkit", m_xContext);
XMessageBoxFactory xMessageBoxFactory = (XMessageBoxFactory) UnoRuntime.queryInterface(XMessageBoxFactory.class, oToolkit);
- // rectangle may be empty if position is in the center of the parent peer
- Rectangle aRectangle = new Rectangle();
- XMessageBox xMessageBox = xMessageBoxFactory.createMessageBox(_xParentWindowPeer, aRectangle, "errorbox", com.sun.star.awt.MessageBoxButtons.BUTTONS_OK, _sTitle, _sMessage);
+ XMessageBox xMessageBox = xMessageBoxFactory.createMessageBox(_xParentWindowPeer, MessageBoxType.ERRORBOX, com.sun.star.awt.MessageBoxButtons.BUTTONS_OK, _sTitle, _sMessage);
xComponent = (XComponent) UnoRuntime.queryInterface(XComponent.class, xMessageBox);
if (xMessageBox != null){
short nResult = xMessageBox.execute();
diff --git a/odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx b/odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx
index 32d30aa083a6..c95fc3de81d8 100644
--- a/odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx
+++ b/odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx
@@ -58,8 +58,7 @@ void BaseDispatch::ShowMessageBox( const Reference< XFrame >& rFrame, const ::rt
{
Reference< XMessageBox > xMsgBox = xMsgBoxFactory->createMessageBox(
Reference< XWindowPeer >( rFrame->getContainerWindow(), UNO_QUERY ),
- Rectangle(0,0,300,200),
- rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "infobox" ) ),
+ com::sun::star::awt::MessageBoxType_INFOBOX,
MessageBoxButtons::BUTTONS_OK,
aTitle,
aMsgText );
diff --git a/odk/examples/java/Inspector/Inspector.java b/odk/examples/java/Inspector/Inspector.java
index c5b3f24ef344..18d8498dbb54 100644
--- a/odk/examples/java/Inspector/Inspector.java
+++ b/odk/examples/java/Inspector/Inspector.java
@@ -178,8 +178,7 @@ public class Inspector{
try {
Object oToolkit = m_xComponentContext.getServiceManager().createInstanceWithContext("com.sun.star.awt.Toolkit", m_xComponentContext);
XMessageBoxFactory xMessageBoxFactory = (XMessageBoxFactory) UnoRuntime.queryInterface(XMessageBoxFactory.class, oToolkit);
- Rectangle aRectangle = new Rectangle();
- XMessageBox xMessageBox = xMessageBoxFactory.createMessageBox(_xWindowPeer, aRectangle, "errorbox", com.sun.star.awt.MessageBoxButtons.BUTTONS_OK, _sTitle, _sMessage);
+ XMessageBox xMessageBox = xMessageBoxFactory.createMessageBox(_xWindowPeer, aRectangle, com.sun.star.awt.MessageBoxType.ERRORBOX, com.sun.star.awt.MessageBoxButtons.BUTTONS_OK, _sTitle, _sMessage);
XComponent xComponent = (XComponent) UnoRuntime.queryInterface(XComponent.class, xMessageBox);
if (xMessageBox != null){
short nResult = xMessageBox.execute();
diff --git a/offapi/com/sun/star/awt/MessageBoxButtons.idl b/offapi/com/sun/star/awt/MessageBoxButtons.idl
index b6426d7c474c..a8e7e2b1619a 100644
--- a/offapi/com/sun/star/awt/MessageBoxButtons.idl
+++ b/offapi/com/sun/star/awt/MessageBoxButtons.idl
@@ -19,15 +19,10 @@
*
*************************************************************/
-
#ifndef __com_sun_star_awt_MessageBoxButtons_idl__
#define __com_sun_star_awt_MessageBoxButtons_idl__
-//=============================================================================
-
- module com { module sun { module star { module awt {
-
-//=============================================================================
+module com { module sun { module star { module awt {
/** defines constants for the possible message box button
combinations.
@@ -35,8 +30,6 @@
*/
constants MessageBoxButtons
{
- //-------------------------------------------------------------------------
-
/** specifies a message with "OK" button.
*/
const long BUTTONS_OK = 1;
@@ -86,8 +79,6 @@ constants MessageBoxButtons
const long DEFAULT_BUTTON_IGNORE = 0x60000;
};
-//=============================================================================
-
}; }; }; };
#endif
diff --git a/offapi/com/sun/star/awt/MessageBoxCommand.idl b/offapi/com/sun/star/awt/MessageBoxResults.idl
index b8207dd1e666..baa72cfb7dca 100644
--- a/offapi/com/sun/star/awt/MessageBoxCommand.idl
+++ b/offapi/com/sun/star/awt/MessageBoxResults.idl
@@ -19,47 +19,40 @@
*
*************************************************************/
-
#ifndef __com_sun_star_awt_MessageBoxCommand_idl__
#define __com_sun_star_awt_MessageBoxCommand_idl__
+module com { module sun { module star { module awt {
-//=============================================================================
-
- module com { module sun { module star { module awt {
-
-//=============================================================================
-
-/** specifies a message box command.
-
- @deprecated
+/** These constants are used to specify a result of executing a <type>XMessageBox</type>.
*/
-published constants MessageBoxCommand
+constants MessageBoxResults
{
- //-------------------------------------------------------------------------
-
- const short CANCEL = 0;
+ /** The user canceled the <type>XMessageBox</type>, by pressing "Cancel" or "Abort" button.
+ */
+ const short CANCEL = 0;
- //-------------------------------------------------------------------------
+ /** The user pressed the "Ok" button.
+ */
+ const short OK = 1;
- const short OK = 1;
+ /** The user pressed the "Yes" button.
+ */
+ const short YES = 2;
- //-------------------------------------------------------------------------
+ /** The user pressed the "No" button.
+ */
+ const short NO = 3;
- const short YES = 2;
-
- //-------------------------------------------------------------------------
-
- const short NO = 3;
-
- //-------------------------------------------------------------------------
-
- const short RETRY = 4;
+ /** The user pressed the "Retry" button.
+ */
+ const short RETRY = 4;
+ /** The user pressed the "Ignore" button.
+ */
+ const short IGNORE = 5;
};
-//=============================================================================
-
}; }; }; };
#endif
diff --git a/offapi/com/sun/star/awt/MessageBoxType.idl b/offapi/com/sun/star/awt/MessageBoxType.idl
new file mode 100644
index 000000000000..c18274eecf17
--- /dev/null
+++ b/offapi/com/sun/star/awt/MessageBoxType.idl
@@ -0,0 +1,54 @@
+/**************************************************************
+ *
+ * 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
+ * regarding copyright ownership. The ASF licenses this file
+ * 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_awt_MessageBoxCommand_idl__
+#define __com_sun_star_awt_MessageBoxCommand_idl__
+
+module com { module sun { module star { module awt {
+
+/** specifies the type of a <type>XMessageBox</type>.
+ */
+published enum MessageBoxType
+{
+ /** A normal message box.
+ */
+ MESSAGEBOX,
+
+ /** A message box to inform the user about a certain event
+ */
+ INFOBOX,
+
+ /** A message to warn the user about a certain problem.
+ */
+ WARNINGBOX,
+
+ /** A message box to provide an error message to the user.
+ */
+ ERRORBOX,
+
+ /** A message box to query information from the user.
+ */
+ QUERYBOX
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/awt/XMessageBox.idl b/offapi/com/sun/star/awt/XMessageBox.idl
index ed27f15fc8e7..951e42e4a061 100644
--- a/offapi/com/sun/star/awt/XMessageBox.idl
+++ b/offapi/com/sun/star/awt/XMessageBox.idl
@@ -19,61 +19,33 @@
*
*************************************************************/
-
#ifndef __com_sun_star_awt_XMessageBox_idl__
#define __com_sun_star_awt_XMessageBox_idl__
-#ifndef __com_sun_star_uno_XInterface_idl__
#include <com/sun/star/uno/XInterface.idl>
-#endif
-
-
-//=============================================================================
-
- module com { module sun { module star { module awt {
-//=============================================================================
+module com { module sun { module star { module awt {
/** gives access to a message box.
-
- @deprecated
*/
-published interface XMessageBox: com::sun::star::uno::XInterface
+published interface XMessageBox
{
- //-------------------------------------------------------------------------
-
- /** sets the caption text.
- */
- [oneway] void setCaptionText( [in] string aText );
-
- //-------------------------------------------------------------------------
-
- /** returns the caption text.
+ /** the caption text.
*/
- string getCaptionText();
-
- //-------------------------------------------------------------------------
-
- /** sets the message text.
- */
- [oneway] void setMessageText( [in] string aText );
-
- //-------------------------------------------------------------------------
+ [attribute] string CaptionText;
- /** returns the message text.
+ /** the message text.
*/
- string getMessageText();
-
- //-------------------------------------------------------------------------
+ [attribute] string MessageText;
/** shows the message box.
+
+ @return
+ one of <type>MessageBoxResults</type>.
*/
short execute();
-
};
-//=============================================================================
-
}; }; }; };
#endif
diff --git a/offapi/com/sun/star/awt/XMessageBoxFactory.idl b/offapi/com/sun/star/awt/XMessageBoxFactory.idl
index 99875a186971..bf1b8b752a8d 100644
--- a/offapi/com/sun/star/awt/XMessageBoxFactory.idl
+++ b/offapi/com/sun/star/awt/XMessageBoxFactory.idl
@@ -19,86 +19,56 @@
*
*************************************************************/
-
-
#ifndef __com_sun_star_awt_XMessageBoxFactory_idl__
#define __com_sun_star_awt_XMessageBoxFactory_idl__
-#ifndef __com_sun_star_awt_XWindowPeer_idl__
#include <com/sun/star/awt/XWindowPeer.idl>
-#endif
-
-#ifndef __com_sun_star_awt_XMessageBox_idl__
#include <com/sun/star/awt/XMessageBox.idl>
-#endif
-
-#ifndef __com_sun_star_awt_MessageBoxButtons_idl__
#include <com/sun/star/awt/MessageBoxButtons.idl>
-#endif
-
-#ifndef __com_sun_star_awt_Rectangle_idl__
-#include <com/sun/star/awt/Rectangle.idl>
-#endif
-
-
-//=============================================================================
+#include <com/sun/star/awt/MessageBoxType.idl>
module com { module sun { module star { module awt {
-//=============================================================================
-
/** specifies a factory interface for creating message boxes.
*/
published interface XMessageBoxFactory : com::sun::star::uno::XInterface
{
- //-------------------------------------------------------------------------
-
/** creates a message box.
@returns
- the created message box or a null reference if it cannot be
- created.
+ the created message box or a null reference if it cannot be
+ created.
@param aParent
- a valid XWindowPeer reference which is used as a parent. This parameter
- must not be null.
+ a valid XWindowPeer reference which is used as a parent.
- @param aPosSize
- a rectangle which defines the position and size of the message
- box in pixel.
+ <p>This parameter must not be null.</p>
@param aType
- a string which determines the message box type.
- The following strings are defined.
- <ul>
- <li><b>infobox</b>A message box to inform the user about a certain event.
- <b>Attention:</b><br/>This type of message box ignores the argument
- aButton because a info box always shows a OK button.
- </li>
- <li><b>warningbox</b>A message to warn the user about a certain problem.</li>
- <li><b>errorbox</b>A message box to provide an error message to the user.</li>
- <li><b>querybox</b>A message box to query information from the user.</li>
- <li><b>messbox</b>A normal message box.</li>
- </ul>
+ the message box type.
@param aButtons
- specifies which buttons should be available on the
- message box. A combination of
- <type scope="com::sun::star::awt">MessageBoxButtons</type>. An <b>infobox</b>
- ignores this paramter and always use button "OK".
+ specifies which buttons should be available on the message box.
+
+ <p>A combination of <type>MessageBoxButtons</type>.</p>
+ <p>A <member scope="com::sun::star::awt">MessageBoxType::INFOBOX</member>
+ ignores this paramter, instead it uses a
+ <member scope="com::sun::star::awt">MessageBoxButtons::BUTTONS_OK</member>.</p>
@param aTitle
- specifies the title of the message box.
+ specifies the title of the message box.
@param aMessage
- specifies text which will be shown by the message box.
- Line-breaks must be added using 'CR' or 'CR+LF'.
+ specifies text which will be shown by the message box.
+ Line-breaks must be added using 'CR' or 'CR+LF'.
*/
- XMessageBox createMessageBox( [in] com::sun::star::awt::XWindowPeer aParent, [in] com::sun::star::awt::Rectangle aPosSize, [in] string aType, [in] long aButtons, [in] string aTitle, [in] string aMessage );
+ XMessageBox createMessageBox( [in] com::sun::star::awt::XWindowPeer aParent,
+ [in] MessageBoxType eType,
+ [in] long nButtons,
+ [in] string sTitle,
+ [in] string sMessage );
};
-//=============================================================================
-
}; }; }; };
#endif
diff --git a/offapi/com/sun/star/awt/makefile.mk b/offapi/com/sun/star/awt/makefile.mk
index 9eeff9af1829..6aff8119ae4e 100644
--- a/offapi/com/sun/star/awt/makefile.mk
+++ b/offapi/com/sun/star/awt/makefile.mk
@@ -117,7 +117,8 @@ IDLFILES=\
MenuEvent.idl\
MenuItemStyle.idl\
MessageBoxButtons.idl\
- MessageBoxCommand.idl\
+ MessageBoxResults.idl\
+ MessageBoxType.idl\
MouseButton.idl\
MouseEvent.idl\
MouseWheelBehavior.idl\
diff --git a/offapi/type_reference/types.rdb b/offapi/type_reference/types.rdb
index 5780e1a0687c..bb427656798d 100644
--- a/offapi/type_reference/types.rdb
+++ b/offapi/type_reference/types.rdb
Binary files differ
diff --git a/qadevOOo/tests/java/ifc/awt/_XMessageBoxFactory.java b/qadevOOo/tests/java/ifc/awt/_XMessageBoxFactory.java
index f10f7d1e0f5c..3ffe1c673253 100644
--- a/qadevOOo/tests/java/ifc/awt/_XMessageBoxFactory.java
+++ b/qadevOOo/tests/java/ifc/awt/_XMessageBoxFactory.java
@@ -52,7 +52,7 @@ public class _XMessageBoxFactory extends MultiMethodTest {
public void _createMessageBox() {
final XMessageBox mb = oObj.createMessageBox(
(XWindowPeer) tEnv.getObjRelation("WINPEER"),
- new Rectangle(0, 0, 100, 100), "errorbox", 1, "The Title",
+ com.sun.star.awt.MessageBoxType.ERRORBOX, 1, "The Title",
"The Message");
final UITools tools = new UITools(
(XMultiServiceFactory) tParam.getMSF(),
diff --git a/sdext/source/minimizer/unodialog.cxx b/sdext/source/minimizer/unodialog.cxx
index 38a3db7d85c0..3bd352271d6a 100644
--- a/sdext/source/minimizer/unodialog.cxx
+++ b/sdext/source/minimizer/unodialog.cxx
@@ -339,55 +339,6 @@ void UnoDialog::setControlProperty( const OUString& rControlName, const OUString
}
// -----------------------------------------------------------------------------
-#if 0
-void UnoDialog::showMessageBox( const OUString& rTitle, const OUString& rMessage, sal_Bool bErrorBox ) const
-{
- try
- {
- Reference< XMessageBoxFactory > xMessageBoxFactory( mxMSF->getServiceManager()->createInstanceWithContext( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.Toolkit" ) ), mxMSF ), UNO_QUERY_THROW );
- if ( xMessageBoxFactory.is() )
- {
- Rectangle aRectangle( 0, 0, 0, 0 );
- Reference< XMessageBox > xMessageBox( xMessageBoxFactory->createMessageBox( mxWindowPeer, aRectangle,
- bErrorBox ? OUString( RTL_CONSTASCII_USTRINGPARAM( "errorbox" ) ) : OUString( RTL_CONSTASCII_USTRINGPARAM( "querybox" ) ), MessageBoxButtons::BUTTONS_OK, rTitle, rMessage ) );
- Reference< XComponent > xComponent( xMessageBox, UNO_QUERY_THROW );
- /* sal_Int16 nResult = */ xMessageBox->execute();
- xComponent->dispose();
- }
- }
- catch ( Exception& )
- {
- }
-
-/*
-public void showErrorMessageBox(XWindowPeer _xParentWindowPeer, String _sTitle, String _sMessage){
-XComponent xComponent = null;
-try {
- Object oToolkit = m_xMCF.createInstanceWithContext("com.sun.star.awt.Toolkit", m_xContext);
- XMessageBoxFactory xMessageBoxFactory = (XMessageBoxFactory) UnoRuntime.queryInterface(XMessageBoxFactory.class, oToolkit);
- // rectangle may be empty if position is in the center of the parent peer
-
- Rectangle aRectangle = new Rectangle();
- XMessageBox xMessageBox = xMessageBoxFactory.createMessageBox(_xParentWindowPeer, aRectangle, "errorbox", com.sun.star.awt.MessageBoxButtons.BUTTONS_OK, _sTitle, _sMessage);
- xComponent = (XComponent) UnoRuntime.queryInterface(XComponent.class, xMessageBox);
- if (xMessageBox != null){
- short nResult = xMessageBox.execute();
- }
-} catch (com.sun.star.uno.Exception ex) {
- ex.printStackTrace(System.out);
-}
-finally{
- //make sure always to dispose the component and free the memory!
- if (xComponent != null){
- xComponent.dispose();
- }
-}}
-*/
-}
-
-#endif
-
-// -----------------------------------------------------------------------------
sal_Int32 UnoDialog::getMapsFromPixels( sal_Int32 nPixels ) const
{
diff --git a/swext/mediawiki/src/com/sun/star/wiki/Helper.java b/swext/mediawiki/src/com/sun/star/wiki/Helper.java
index 64d48311e21c..b8fcc3f7bb03 100644
--- a/swext/mediawiki/src/com/sun/star/wiki/Helper.java
+++ b/swext/mediawiki/src/com/sun/star/wiki/Helper.java
@@ -24,6 +24,7 @@
package com.sun.star.wiki;
import com.sun.star.awt.MessageBoxButtons;
+import com.sun.star.awt.MessageBoxType;
import com.sun.star.awt.XControl;
import com.sun.star.awt.XControlContainer;
import com.sun.star.awt.XDialog;
@@ -1008,8 +1009,7 @@ public class Helper
{
xMB = xMBFactory.createMessageBox(
xParentPeer,
- new com.sun.star.awt.Rectangle(),
- "querybox",
+ MessageBoxType.QUERYBOX,
MessageBoxButtons.BUTTONS_YES_NO | MessageBoxButtons.DEFAULT_BUTTON_NO,
sTitle,
sError );
@@ -1018,8 +1018,7 @@ public class Helper
{
xMB = xMBFactory.createMessageBox(
xParentPeer,
- new com.sun.star.awt.Rectangle(),
- "errorbox",
+ MessageBoxType.ERRORBOX,
MessageBoxButtons.BUTTONS_OK,
sTitle,
sError );
diff --git a/toolkit/inc/toolkit/awt/vclxtoolkit.hxx b/toolkit/inc/toolkit/awt/vclxtoolkit.hxx
index 6d1d8314a189..3a9c56fbbd7e 100644
--- a/toolkit/inc/toolkit/awt/vclxtoolkit.hxx
+++ b/toolkit/inc/toolkit/awt/vclxtoolkit.hxx
@@ -135,7 +135,7 @@ public:
::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > SAL_CALL createSystemChild( const ::com::sun::star::uno::Any& Parent, const ::com::sun::star::uno::Sequence< sal_Int8 >& ProcessId, sal_Int16 SystemType ) throw(::com::sun::star::uno::RuntimeException);
// ::com::sun::star::awt::XMessageBoxFactory
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMessageBox > SAL_CALL createMessageBox( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer >& aParent, const ::com::sun::star::awt::Rectangle& aPosSize, const ::rtl::OUString& aType, ::sal_Int32 aButtons, const ::rtl::OUString& aTitle, const ::rtl::OUString& aMessage ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMessageBox > SAL_CALL createMessageBox( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer >& aParent, ::com::sun::star::awt::MessageBoxType eType, ::sal_Int32 nButtons, const ::rtl::OUString& sTitle, const ::rtl::OUString& sMessage ) throw (::com::sun::star::uno::RuntimeException);
// ::com::sun::star::awt::XDataTransfer
::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::dnd::XDragGestureRecognizer > SAL_CALL getDragGestureRecognizer( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& window ) throw(::com::sun::star::uno::RuntimeException);
diff --git a/toolkit/source/awt/vclxtoolkit.cxx b/toolkit/source/awt/vclxtoolkit.cxx
index 3618585f09de..b30ec2a39ae4 100644
--- a/toolkit/source/awt/vclxtoolkit.cxx
+++ b/toolkit/source/awt/vclxtoolkit.cxx
@@ -381,6 +381,47 @@ sal_uInt16 ImplGetComponentType( const String& rServiceName )
}
+namespace
+{
+ struct MessageBoxTypeInfo
+ {
+ css::awt::MessageBoxType eType;
+ const sal_Char *pName;
+ sal_Int32 nLen;
+ };
+
+ static MessageBoxTypeInfo aMessageBoxTypeInfo[] =
+ {
+ { css::awt::MessageBoxType_MESSAGEBOX, RTL_CONSTASCII_STRINGPARAM("messbox") },
+ { css::awt::MessageBoxType_INFOBOX, RTL_CONSTASCII_STRINGPARAM("infobox") },
+ { css::awt::MessageBoxType_WARNINGBOX, RTL_CONSTASCII_STRINGPARAM("warningbox") },
+ { css::awt::MessageBoxType_ERRORBOX, RTL_CONSTASCII_STRINGPARAM("errorbox") },
+ { css::awt::MessageBoxType_QUERYBOX, RTL_CONSTASCII_STRINGPARAM("querybox") },
+ { css::awt::MessageBoxType_MAKE_FIXED_SIZE, 0, 0 }
+ };
+
+ static bool lcl_convertMessageBoxType(
+ rtl::OUString &sType,
+ css::awt::MessageBoxType eType )
+ {
+ const MessageBoxTypeInfo *pMap = aMessageBoxTypeInfo;
+ css::awt::MessageBoxType eVal = css::awt::MessageBoxType_MAKE_FIXED_SIZE;
+
+ while ( pMap->pName )
+ {
+ if ( pMap->eType == eType )
+ {
+ eVal = eType;
+ sType = rtl::OUString( pMap->pName, pMap->nLen, RTL_TEXTENCODING_ASCII_US );
+ break;
+ }
+ pMap++;
+ }
+
+ return ( eVal != css::awt::MessageBoxType_MAKE_FIXED_SIZE );
+ }
+}
+
// ----------------------------------------------------
// class VCLXToolkit
// ----------------------------------------------------
@@ -1225,8 +1266,7 @@ css::uno::Reference< css::awt::XWindowPeer > VCLXToolkit::ImplCreateWindow(
// ::com::sun::star::awt::XMessageBoxFactory
::com::sun::star::uno::Reference< ::com::sun::star::awt::XMessageBox > SAL_CALL VCLXToolkit::createMessageBox(
const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer >& aParent,
- const ::com::sun::star::awt::Rectangle& aPosSize,
- const ::rtl::OUString& aType,
+ ::com::sun::star::awt::MessageBoxType eType,
::sal_Int32 aButtons,
const ::rtl::OUString& aTitle,
const ::rtl::OUString& aMessage ) throw (::com::sun::star::uno::RuntimeException)
@@ -1267,11 +1307,13 @@ css::uno::Reference< css::awt::XWindowPeer > VCLXToolkit::ImplCreateWindow(
if ( sal_Int32( aButtons & 0xffff0000L ) == css::awt::MessageBoxButtons::DEFAULT_BUTTON_IGNORE )
nAddWinBits |= WB_DEF_IGNORE;
+ rtl::OUString aType;
+ lcl_convertMessageBoxType( aType, eType );
+
aDescriptor.Type = css::awt::WindowClass_MODALTOP;
aDescriptor.WindowServiceName = aType;
aDescriptor.ParentIndex = -1;
aDescriptor.Parent = aParent;
- aDescriptor.Bounds = aPosSize;
aDescriptor.WindowAttributes = nWindowAttributes;
::com::sun::star::uno::Reference< ::com::sun::star::awt::XMessageBox > xMsgBox(
ImplCreateWindow( aDescriptor, nAddWinBits ), css::uno::UNO_QUERY );
diff --git a/toolkit/source/layout/core/root.cxx b/toolkit/source/layout/core/root.cxx
index 43adb33bfd6c..b5a7cf80fea0 100644
--- a/toolkit/source/layout/core/root.cxx
+++ b/toolkit/source/layout/core/root.cxx
@@ -82,10 +82,9 @@ void ShowMessageBox( uno::Reference< lang::XMultiServiceFactory > const& xFactor
uno::Reference< awt::XWindowPeer > xWindowPeer( xContainerWindow, uno::UNO_QUERY_THROW );
uno::Reference< awt::XMessageBoxFactory > xMessageBoxFactory( xToolkit, uno::UNO_QUERY );
- awt::Rectangle aRectangle;
uno::Reference< awt::XMessageBox > xMessageBox
= xMessageBoxFactory->createMessageBox
- ( xWindowPeer, aRectangle, OUString::createFromAscii( "errorbox" ),
+ ( xWindowPeer, awt::MessageBoxType_ERRORBOX,
awt::MessageBoxButtons::BUTTONS_OK, aTitle, aMessage );
if ( xMessageBox.is() )