From 40260f9c6de091bb46b2c1529537540f5f9b12a4 Mon Sep 17 00:00:00 2001
From: "Ocke Janssen [oj]"
Date: Mon, 15 Feb 2010 10:09:28 +0100
Subject: dba33f: #i53377# new event to get the changed bookmarks
---
offapi/com/sun/star/sdb/RowSet.idl | 41 +++++++-------
offapi/com/sun/star/sdb/RowsChangeEvent.idl | 52 +++++++++++++++++
offapi/com/sun/star/sdb/XRowsChangeBroadcaster.idl | 66 ++++++++++++++++++++++
offapi/com/sun/star/sdb/XRowsChangeListener.idl | 60 ++++++++++++++++++++
offapi/com/sun/star/sdb/makefile.mk | 3 +
offapi/com/sun/star/sdbc/XRowSetListener.idl | 2 +
6 files changed, 205 insertions(+), 19 deletions(-)
create mode 100644 offapi/com/sun/star/sdb/RowsChangeEvent.idl
create mode 100644 offapi/com/sun/star/sdb/XRowsChangeBroadcaster.idl
create mode 100644 offapi/com/sun/star/sdb/XRowsChangeListener.idl
(limited to 'offapi')
diff --git a/offapi/com/sun/star/sdb/RowSet.idl b/offapi/com/sun/star/sdb/RowSet.idl
index fd860380fc28..c72d39ca7681 100644
--- a/offapi/com/sun/star/sdb/RowSet.idl
+++ b/offapi/com/sun/star/sdb/RowSet.idl
@@ -73,6 +73,7 @@ published interface XParametersSupplier;
to approve the actions and to react on them.
@see com::sun::star::sdb::RowChangeAction
@see com::sun::star::sdb::RowChangeEvent
+ @see com::sun::star::sdb::RowsChangeEvent
Notifications
@@ -100,7 +101,8 @@ published interface XParametersSupplier;
operation done |
When the operation is done, you get a notification about this. It may be a
XRowSetListener::cursorMoved or a
- XRowSetListener::rowChanged call.
+ XRowSetListener::rowChanged call or a
+ XRowsChangeListener::rowsChanged call.
|
row state |
@@ -124,39 +126,40 @@ published interface XParametersSupplier;
| approveCursorMove | approveRowChange |
column values |
cursorMoved | rowChanged |
+ rowsChanged |
IsModified | IsNew |
RowCount | IsRowCountFinal |
XResultSet | | | | | | | | |
- next | X | | X | X | | X | X | X | X |
-
beforeFirst | X | | X | X | | X | X | | |
- afterLast | X | | X | X | | X | X | X | X |
- first | X | | X | X | | X | X | X | X |
- last | X | | X | X | | X | X | X | X |
- absolute | X | | X | X | | X | X | X | X |
- relative | X | | X | X | | X | X | X | X |
- previous | X | | X | X | | X | X | X | X |
- refreshRow | | | X | | | X | X | | |
- cancelRowUpdates | | | X | | | X | | | |
+ next | X | | X | X | | | X | X | X | X |
+
beforeFirst | X | | X | X | | | X | X | | |
+ afterLast | X | | X | X | | | X | X | X | X |
+ first | X | | X | X | | | X | X | X | X |
+ last | X | | X | X | | | X | X | X | X |
+ absolute | X | | X | X | | | X | X | X | X |
+ relative | X | | X | X | | | X | X | X | X |
+ previous | X | | X | X | | | X | X | X | X |
+ refreshRow | | | X | | | | X | X | | |
+ cancelRowUpdates | | | X | | | | X | | | |
XResultSetUpdate | | | | | | | | |
- insertRow | | X | X | | X | X | X | X | X |
- updateRow | | X | X | | X | X | | | |
- deleteRow | | X | | | X | X | X | X | X |
- moveToInsertRow | X | | X | X | | | X | X |
- moveToCurrentRow | X | | | X | | X | X | | |
+ insertRow | | X | X | | X | X | X | X | X | X |
+ updateRow | | X | X | | X | X | X | | | |
+ deleteRow | | X | | | X | X | X | X | X | X |
+ moveToInsertRow | X | | X | X | | | | X | X |
+ moveToCurrentRow | X | | | X | | | X | X | | |
XDeleteRows | | | | | | | | |
- deleteRows | | X | | | X | X | X | X | X |
+ deleteRows | | X | | | X | X | X | X | X | X |
XRowLocate | | | | | | | | |
- moveToBookmark | X | | X | X | | X | X | | |
- moveRelativeToBookmark | X | | X | X | | X | X | X | X |
+ moveToBookmark | X | | X | X | | | X | X | | |
+ moveRelativeToBookmark | X | | X | X | | | X | X | X | X |
diff --git a/offapi/com/sun/star/sdb/RowsChangeEvent.idl b/offapi/com/sun/star/sdb/RowsChangeEvent.idl
new file mode 100644
index 000000000000..90bb50f4bf84
--- /dev/null
+++ b/offapi/com/sun/star/sdb/RowsChangeEvent.idl
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: RowsChangeEvent.idl,v $
+ * $Revision: 1.9 $
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ *
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sdb_RowsChangeEvent_idl__
+#define __com_sun_star_sdb_RowsChangeEvent_idl__
+
+#include
+
+ module com { module sun { module star { module sdb {
+
+
+/** indicates which rows have changed and the type of change action on the row set.
+ */
+struct RowsChangeEvent: com::sun::star::sdb::RowChangeEvent
+{
+
+ sequence< any > Bookmarks;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+/*===========================================================================
+===========================================================================*/
+#endif
diff --git a/offapi/com/sun/star/sdb/XRowsChangeBroadcaster.idl b/offapi/com/sun/star/sdb/XRowsChangeBroadcaster.idl
new file mode 100644
index 000000000000..feb8191c44d9
--- /dev/null
+++ b/offapi/com/sun/star/sdb/XRowsChangeBroadcaster.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2008 by Sun Microsystems, Inc.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* $RCSfile: code,v $
+*
+* $Revision: 1.3 $
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+*
+* for a copy of the LGPLv3 License.
+************************************************************************/
+
+#ifndef __com_sun_star_sdb_XRowsChangeBroadcaster_idl__
+#define __com_sun_star_sdb_XRowsChangeBroadcaster_idl__
+
+#include
+
+//=============================================================================
+
+module com { module sun { module star { module sdb {
+
+interface XRowsChangeListener;
+
+//=============================================================================
+
+/** broadcasts changes in the RowSet
supplied by a component
+
+ @see XRowSetSupplier
+ @see XRowsChangeListener
+ @since OOo 3.3
+ */
+interface XRowsChangeBroadcaster
+{
+ /** adds a listener to be notified when the RowSet
supplied by the component changes.
+ */
+ void addRowsChangeListener( [in] XRowsChangeListener listener );
+
+ /** removes a previously added listener.
+ */
+ void removeRowsChangeListener( [in] XRowsChangeListener listener );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+//=============================================================================
+
+#endif
diff --git a/offapi/com/sun/star/sdb/XRowsChangeListener.idl b/offapi/com/sun/star/sdb/XRowsChangeListener.idl
new file mode 100644
index 000000000000..995636e95e3f
--- /dev/null
+++ b/offapi/com/sun/star/sdb/XRowsChangeListener.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: XRowsChangeListener.idl,v $
+ * $Revision: 1.11 $
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ *
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sdb_XRowsChangeListener_idl__
+#define __com_sun_star_sdb_XRowsChangeListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include
+#endif
+#include
+
+ module com { module sun { module star { module sdb {
+
+
+/** is used for receiving "rowsChanged" events
+ posted by, for example, a rowset.
+ */
+interface XRowsChangeListener: com::sun::star::lang::XEventListener
+{
+
+ /** is called when rows are inserted, updated, or deleted.
+ @param event
+ contains information about the event
+ */
+ [oneway] void rowsChanged([in]com::sun::star::sdb::RowsChangeEvent event);
+};
+
+//=============================================================================
+
+}; }; }; };
+
+/*===========================================================================
+===========================================================================*/
+#endif
diff --git a/offapi/com/sun/star/sdb/makefile.mk b/offapi/com/sun/star/sdb/makefile.mk
index 3e76283ecf18..55359c603b9c 100644
--- a/offapi/com/sun/star/sdb/makefile.mk
+++ b/offapi/com/sun/star/sdb/makefile.mk
@@ -93,6 +93,7 @@ IDLFILES=\
ResultSet.idl \
RowChangeAction.idl \
RowChangeEvent.idl \
+ RowsChangeEvent.idl \
RowSet.idl \
RowSetVetoException.idl \
SingleSelectQueryAnalyzer.idl \
@@ -131,6 +132,8 @@ IDLFILES=\
XRowSetApproveListener.idl \
XRowSetChangeBroadcaster.idl \
XRowSetChangeListener.idl \
+ XRowsChangeBroadcaster.idl \
+ XRowsChangeListener.idl \
XRowSetSupplier.idl \
XSingleSelectQueryAnalyzer.idl \
XSingleSelectQueryComposer.idl \
diff --git a/offapi/com/sun/star/sdbc/XRowSetListener.idl b/offapi/com/sun/star/sdbc/XRowSetListener.idl
index 84022101661f..855f03bb3e9d 100644
--- a/offapi/com/sun/star/sdbc/XRowSetListener.idl
+++ b/offapi/com/sun/star/sdbc/XRowSetListener.idl
@@ -53,6 +53,8 @@ published interface XRowSetListener: com::sun::star::lang::XEventListener
/** is called when a row is inserted, updated, or deleted.
@param event
contains information about the event
+ @deprecated
+ @see com.sun.star.sdb.XRowsChangeListener
*/
[oneway] void rowChanged([in]com::sun::star::lang::EventObject event);
//-------------------------------------------------------------------------
--
cgit