diff options
author | Ocke Janssen [oj] <Ocke.Janssen@sun.com> | 2010-02-15 10:09:28 +0100 |
---|---|---|
committer | Ocke Janssen [oj] <Ocke.Janssen@sun.com> | 2010-02-15 10:09:28 +0100 |
commit | 40260f9c6de091bb46b2c1529537540f5f9b12a4 (patch) | |
tree | 9eab269624e764cc1b5a893287df8d366c16a908 | |
parent | 32cf343b5b8948ff5135892e774af0dd1cf33ed9 (diff) |
dba33f: #i53377# new event to get the changed bookmarks
-rw-r--r-- | offapi/com/sun/star/sdb/RowSet.idl | 41 | ||||
-rw-r--r-- | offapi/com/sun/star/sdb/RowsChangeEvent.idl | 52 | ||||
-rw-r--r-- | offapi/com/sun/star/sdb/XRowsChangeBroadcaster.idl | 66 | ||||
-rw-r--r-- | offapi/com/sun/star/sdb/XRowsChangeListener.idl | 60 | ||||
-rw-r--r-- | offapi/com/sun/star/sdb/makefile.mk | 3 | ||||
-rw-r--r-- | offapi/com/sun/star/sdbc/XRowSetListener.idl | 2 |
6 files changed, 205 insertions, 19 deletions
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 </p> <h3>Notifications</h3> @@ -100,7 +101,8 @@ published interface XParametersSupplier; <tr><td valign="top"><em>operation done</em></td> <td valign="top">When the operation is done, you get a notification about this. It may be a <member scope="com::sun::star::sdbc">XRowSetListener::cursorMoved</member> or a - <member scope="com::sun::star::sdbc">XRowSetListener::rowChanged</member> call. + <member scope="com::sun::star::sdbc">XRowSetListener::rowChanged</member> call or a + <member>XRowsChangeListener::rowsChanged</member> call. </td> </tr> <tr><td valign="top"><em>row state</em></td> @@ -124,39 +126,40 @@ published interface XParametersSupplier; <tr><td/><td><strong>approveCursorMove</strong></td><td><strong>approveRowChange</strong></td> <td><strong>column values</strong></td> <td><strong>cursorMoved</strong></td><td><strong>rowChanged</strong></td> + <td><strong>rowsChanged</strong></td> <td><strong>IsModified</strong></td><td><strong>IsNew</strong></td> <td><strong>RowCount</strong></td><td><strong>IsRowCountFinal</strong></td> </tr> <tr><td><type scope="com::sun::star::sdbc">XResultSet</type></td><td/><td/><td/><td/><td/><td/><td/><td/></tr> - <tr><td align="right"><em>next</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td> - <tr><td align="right"><em>beforeFirst</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/></tr> - <tr><td align="right"><em>afterLast</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>first</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>last</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>absolute</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>relative</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>previous</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>refreshRow</em></td><td/><td/><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td/><td/></tr> - <tr><td align="right"><em>cancelRowUpdates</em></td><td/><td/><td align="center">X</td><td/><td/><td align="center">X</td><td/><td/><td/></tr> + <tr><td align="right"><em>next</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td> + <tr><td align="right"><em>beforeFirst</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td/><td/></tr> + <tr><td align="right"><em>afterLast</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>first</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>last</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>absolute</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>relative</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>previous</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>refreshRow</em></td><td/><td/><td align="center">X</td><td/><td/><td/><td align="center">X</td><td align="center">X</td><td/><td/></tr> + <tr><td align="right"><em>cancelRowUpdates</em></td><td/><td/><td align="center">X</td><td/><td/><td/><td align="center">X</td><td/><td/><td/></tr> <tr><td><type scope="com::sun::star::sdbc">XResultSetUpdate</type></td><td/><td/><td/><td/><td/><td/><td/><td/></tr> - <tr><td align="right"><em>insertRow</em></td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>updateRow</em></td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td/></tr> - <tr><td align="right"><em>deleteRow</em></td><td/><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>moveToInsertRow</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td></tr> - <tr><td align="right"><em>moveToCurrentRow</em></td><td align="center">X</td><td/><td/><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/></tr> + <tr><td align="right"><em>insertRow</em></td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>updateRow</em></td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td/><td/><td/></tr> + <tr><td align="right"><em>deleteRow</em></td><td/><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>moveToInsertRow</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td/><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>moveToCurrentRow</em></td><td align="center">X</td><td/><td/><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td/><td/></tr> <tr><td><type scope="com::sun::star::sdbcx">XDeleteRows</type></td><td/><td/><td/><td/><td/><td/><td/><td/></tr> - <tr><td align="right"><em>deleteRows</em></td><td/><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>deleteRows</em></td><td/><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> <tr><td><type scope="com::sun::star::sdbcx">XRowLocate</type></td><td/><td/><td/><td/><td/><td/><td/><td/></tr> - <tr><td align="right"><em>moveToBookmark</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/></tr> - <tr><td align="right"><em>moveRelativeToBookmark</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> + <tr><td align="right"><em>moveToBookmark</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td/><td/></tr> + <tr><td align="right"><em>moveRelativeToBookmark</em></td><td align="center">X</td><td/><td align="center">X</td><td align="center">X</td><td/><td/><td align="center">X</td><td align="center">X</td><td align="center">X</td><td align="center">X</td></tr> </tr> </table> 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 + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_sdb_RowsChangeEvent_idl__ +#define __com_sun_star_sdb_RowsChangeEvent_idl__ + +#include <com/sun/star/sdb/RowChangeEvent.idl> + + 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 +* <http://www.openoffice.org/license.html> +* for a copy of the LGPLv3 License. +************************************************************************/ + +#ifndef __com_sun_star_sdb_XRowsChangeBroadcaster_idl__ +#define __com_sun_star_sdb_XRowsChangeBroadcaster_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +//============================================================================= + +module com { module sun { module star { module sdb { + +interface XRowsChangeListener; + +//============================================================================= + +/** broadcasts changes in the <code>RowSet</code> supplied by a component + + @see XRowSetSupplier + @see XRowsChangeListener + @since OOo 3.3 + */ +interface XRowsChangeBroadcaster +{ + /** adds a listener to be notified when the <code>RowSet</code> 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 + * <http://www.openoffice.org/license.html> + * 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 <com/sun/star/lang/XEventListener.idl> +#endif +#include <com/sun/star/sdb/RowsChangeEvent.idl> + + 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); //------------------------------------------------------------------------- |