From 1c10dd569addb74663a14a590abb3658c39847e5 Mon Sep 17 00:00:00 2001
From: Thomas Lange The model of an The model of an Various components interacting with the database access world require to specify (or provide themself) an object
- such as a query, a table, a result set, a connection to a data source, a column within a table, and so on.
+ such as a query, a table, a result set, a connection to a data source, a column within a table, and so on. The object will at least support the The object will at least support the Note that any superservices of The relative order of columns in the result set returned by In case of a
All of these objects are usually not specified with a single property, but with a set of properties, and for
various objects, various (but not always different) properties are needed.
The DataAccessDescriptor
describes the super set of the properties for the most common
@@ -202,7 +202,7 @@ published service DataAccessDescriptor
has access to an already existent result set, it can pass it along for reusage. This is encouraged
to increase performance.
+ It then can be to used to specify whether the SQL statement should be analyzed on the
+ client side before sending it to the database server.
+ The default value for 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
row state
@@ -124,39 +126,40 @@ published interface XParametersSupplier;
approveCursorMove approveRowChange
column values
cursorMoved rowChanged
+ rowsChanged
IsModified IsNew
RowCount IsRowCountFinal
- 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
-
- 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
-
+ deleteRows X X X X X X deleteRows X X X X X X X
-
- moveToBookmark X X X X X
+ moveRelativeToBookmark X X X X X X X
+ moveToBookmark 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
+ * moveRelativeToBookmark X X X X X X X 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
+ *
The URL prefix of views is private:resource/view
It is allowed for an implementation to return
It is allowed for an implementation to return
- The life time of a user interface element does not explicitly depend on the
- frame itself but on the visible component attached to the frame. It is possible
- to exchange the visible component of a frame and that will lead to the end of
- life of all user interface elements.
- */
- [readonly, property] com::sun::star::frame::XFrame Frame;
-
- /** a resource URL which is a unique identifier of a user interface element.
- */
- [readonly, property] string ResourceURL;
-
- /** determines the real type of the user interface element.
-
- @see UIElementType
- */
- [readonly, property] short Type;
};
}; }; }; };
diff --git a/offapi/com/sun/star/ui/XUIElement.idl b/offapi/com/sun/star/ui/XUIElement.idl
index 1f68a959dce7..a170835ef820 100644
--- a/offapi/com/sun/star/ui/XUIElement.idl
+++ b/offapi/com/sun/star/ui/XUIElement.idl
@@ -39,6 +39,10 @@
#include The life time of a user interface element does not explicitly depend on the
+ frame itself but on the visible component attached to the frame. It is possible
+ to exchange the visible component of a frame and that will lead to the end of
+ life of all user interface elements. It is allowed for an implementation to return It is allowed for an implementation to return In case the event is not related to a single item, but to the complete list, the value of this
+ member is undefined. If the event being notified did not touch the text of an item, this member is empty. For instance, upon
+ invocation of If the event being notified did not touch the image of an item, this member is empty. For instance, upon
+ invocation of Consumers of this event should discard their cached information about the current item list,
+ and completely refresh it from the
+ specifies a parent window to use for the window(s) representing
+ the UI element. Depending on the concrete UI element type, this parameter
+ might be required or ignored by an implementation.
+
specifies if changes to a configurable
user interface element should be persistent. This is an
optional argument. The default value is ItemImageURL
will be set, and
+ ItemText
will be empty.ItemText
will be set, and
+ ItemImageURL
will be empty.Position
is invalid.
+ */
+ void insertItem(
+ [in] long Position,
+ [in] string ItemText,
+ [in] string ItemImageURL
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** inserts an item which has only a text, but no image
+
+ @param Position
+ the position at which the item should be inserted. Must be greater or equal to 0, and
+ lesser than or equal to Position
is invalid.
+ */
+ void insertItemText(
+ [in] long Position,
+ [in] string ItemText
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** inserts an item which has only an image, but no text
+
+ @param Position
+ the position at which the item should be inserted. Must be greater or equal to 0, and
+ lesser than or equal to Position
is invalid.
+ */
+ void insertItemImage(
+ [in] long Position,
+ [in] string ItemImageURL
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** removes an item from the list
+
+ @param Position
+ the position of the item which should be removed. Must be greater or equal to 0, and
+ lesser than Position
is invalid.
+ */
+ void removeItem(
+ [in] long Position
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** removes all items from the list
+ */
+ void removeAllItems();
+
+ /** sets a new text for an existing item
+
+ @param Position
+ the position of the item whose text is to be changed. Must be greater or equal to 0, and
+ lesser than Position
is invalid.
+ */
+ void setItemText(
+ [in] long Position,
+ [in] string ItemText
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** sets a new image for an existing item
+
+ @param Position
+ the position of the item whose image is to be changed. Must be greater or equal to 0, and
+ lesser than Position
is invalid.
+ */
+ void setItemImage(
+ [in] long Position,
+ [in] string ItemImageURL
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** sets both a new position and text for an existing item
+
+ @param Position
+ the position of the item whose text and image is to be changed. Must be greater or equal to 0, and
+ lesser than Position
is invalid.
+ */
+ void setItemTextAndImage(
+ [in] long Position,
+ [in] string ItemText,
+ [in] string ItemImageURL
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** retrieves the text of an existing item
+
+ @param Position
+ the position of the item whose text should be retrieved. Must be greater or equal to 0, and
+ lesser than Position
is invalid.
+ */
+ string getItemText(
+ [in] long Position
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** retrieves the URL of the image of an existing item
+
+ @param Position
+ the position of the item whose image should be retrieved. Must be greater or equal to 0, and
+ lesser than Position
is invalid.
+ */
+ string getItemImage(
+ [in] long Position
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** retrieves both the text and the image URL of an existing item
+
+ @param Position
+ the position of the item whose text and image should be retrieved. Must be greater or equal to 0, and
+ lesser than Position
is invalid.
+ */
+ ::com::sun::star::beans::Pair< string, string >
+ getItemTextAndImage(
+ [in] long Position
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** retrieves the texts and images of all items in the list
+ */
+ sequence< ::com::sun::star::beans::Pair< string, string > >
+ getAllItems();
+
+ /** registers a listener which is notified about changes in the item list.
+ */
+ void addItemListListener( [in] XItemListListener Listener );
+
+ /** revokes a listener which is notified about changes in the item list.
+ */
+ void removeItemListListener( [in] XItemListListener Listener );
+};
+
+//==================================================================================================================
+
+}; }; }; };
+
+//==================================================================================================================
+
+#endif
diff --git a/offapi/com/sun/star/awt/XItemListListener.idl b/offapi/com/sun/star/awt/XItemListListener.idl
new file mode 100644
index 000000000000..d41d8b104a02
--- /dev/null
+++ b/offapi/com/sun/star/awt/XItemListListener.idl
@@ -0,0 +1,85 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * 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
+ *
You can use this to store data for an item which does not interfere with the displayed + text and image, but can be used by the client of the list box for an arbitrary purpose.
+ + @param Position + the position of the item whose data value should be set. Must be greater or equal to 0, and + lesser thanPosition
is invalid.
+
+ @see getUserData
+ */
+ void setUserData(
+ [in] long Position,
+ [in] any DataValue
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
/** retrieves the text of an existing item
@param Position
@@ -223,6 +243,23 @@ interface XItemList
)
raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+ /** retrieves the implementation dependend value associated with the given list item.
+ @see setUserData
+
+ @param Position
+ the position of the item whose data value should be retrieved. Must be greater or equal to 0, and
+ lesser than Position
is invalid.
+
+ @see getUserData
+ */
+ any getUserData(
+ [in] long Position
+ )
+ raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
+
/** retrieves the texts and images of all items in the list
*/
sequence< ::com::sun::star::beans::Pair< string, string > >
--
cgit
From ec28ca09191867b79d433c588f03dd89802d8b79 Mon Sep 17 00:00:00 2001
From: "Frank Schoenheit [fs]" Position
is invalid.
- @see getUserData
+ @see getItemData
*/
- void setUserData(
+ void setItemData(
[in] long Position,
- [in] any DataValue
+ [in] any ItemData
)
raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
@@ -244,7 +247,7 @@ interface XItemList
raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
/** retrieves the implementation dependend value associated with the given list item.
- @see setUserData
+ @see setItemData
@param Position
the position of the item whose data value should be retrieved. Must be greater or equal to 0, and
@@ -253,9 +256,9 @@ interface XItemList
@throws ::com::sun::star::lang::IndexOutOfBoundsException
if Position
is invalid.
- @see getUserData
+ @see setItemData
*/
- any getUserData(
+ any getItemData(
[in] long Position
)
raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
--
cgit
From 5ee055288d53fb2db05e835361574dbaae1b58c0 Mon Sep 17 00:00:00 2001
From: "Thomas Lange [tl]" If set, the frame follows the text flow and doesn't leaves the layout
--
cgit
From 9a40f47ebf9f07f5cae092ddd84280c2e21e515f Mon Sep 17 00:00:00 2001
From: "Frank Schoenheit [fs]" For instance, the You usually call this method from within a wizard page whose state changed in a way that it affects the
+ user's ability to reach other pages. In opposite to An implementation can veto the leave by returning Note that You should base this decision on the state of the page only, not on a global state of the wizard. Usually,
+ you return If checked for validity is expensive, or if you prefer giving your user more detailed feedback on validity
+ than a disabled Within a wizard, no two pages are allowed to have the same ID. Normally, you will want to use this method for the Finish button only: The Next
+ and Back buttons are usually maintained automatically, the Help and Cancel
+ buttons are unlikely to ever being disabled. In general, the default button in a wizard is the one which is activated when the user presses
+ the return key while the focus is in a control which does not handle this key itself (such as
+ ordinary input controls). You can use this method, for instance, to make the Next button the default button on all pages
+ except the last one, where Finish should be defaulted. Calling this method is equivalent to the user pressing the Next button in the wizard. Consequently,
+ the method will fail if in the current state of the wizard, it is not allowed to advance to a next page. Calling this method is equivalent to the user pressing the Back button in the wizard. You can use this method when not all pages of your wizard are necessarily needed in all cases. For instance,
+ assume that your first wizard page contains a check box, which the user can check to enter additional data.
+ If you place this data on the second page, then you will want to enable this second page if and only if the
+ checkbox is checked. If a page is disabled, it can reached neither by clicking the respective item in the wizard's roadmap,
+ nor by sequential traveling. Still, the page's item is displayed in the roadmap, though disabled. For instance, the Calling this method is equivalent to the user repeatedly pressing the Next button, until the
+ given page is reached. Consequently, the method will fail if one of the intermediate pages does not allow
+ advancing to the next page. Calling this method is equivalent to the user repeatedly pressing the Back button, until the
+ given page is reached. If the wizard has been created with multiple paths of control flow, then this method allows switching to
+ another path. You can only activate a path which shares the first Example: Say you have paths, If If In this latter case, you need another activatePath method (usually triggered by the user doing some decisions
+ and entering some data on the reachable pages) before the wizard can actually be finished. With the paths in the example above, if you activate the second path, then only steps A wizard is a dialog which guides the user through a number of tasks (usually input of data), which the user can
+ accomplish either sequentially or out-of-order. For this, a wizard is comprised of a number of tab pages,
+ each page representing a single step. Sequential navigation in a wizard is done via a Next and a Back button. Non-sequential navigation
+ is done via a roadmap, which is displayed on the left hand side of the wizard dialog, lists all available
+ steps, and allows jumping to a certain step (where the creator of the wizard can restrict the available steps
+ depending on the current situation in the wizard, see below). A sequence of steps in a wizard dialog is called a path. A given wizard can support one or multiple paths,
+ which are declared at the time of construction of the wizard. In the simplest case, where the wizard supports only one path, all available steps are displayed in the roadmap,
+ and the user can simply travel through them as desired. If the wizard is more complex, and supports multiple paths, things become more complicated. In a given situation
+ of the wizard, where the user is at step k of the current path, the potential or conflicting
+ paths are those whose first k steps are the same as in the current path. Obviously, there's at least one
+ potential path in every situation: the current one. If there is more than one, then the future steps in the dialog
+ are not finally decided. In such a case, the roadmap will display future steps up to the point where the potential
+ paths diverge, and then an item An Single steps in the wizard can be freely enabled and disabled, using the The state of the Next button in the dialog will be automatically maintained in most situations,
+ depending on the results of calls to the For instance, the For instance, the Next button is disabled if the current page's You usually call this method from within a wizard page whose state changed in a way that it affects the
diff --git a/offapi/com/sun/star/ui/dialogs/XWizardController.idl b/offapi/com/sun/star/ui/dialogs/XWizardController.idl
index e38bcb1a5f1f..abcec1ce6ef6 100644
--- a/offapi/com/sun/star/ui/dialogs/XWizardController.idl
+++ b/offapi/com/sun/star/ui/dialogs/XWizardController.idl
@@ -33,20 +33,36 @@
module com { module sun { module star { module ui { module dialogs {
-interface XWizard;
-
//==================================================================================================================
-/**
+/** is the interface of a client-provided controller of a custom Wizard pages are created on demand, when the respective page is reached during traveling through the
+ wizard. Effectively, this means the method is called at most once for each possible page ID. The page titles are displayed in the wizard's roadmap. This method allows the controller to do any final checks, and ultimatively veto finishing the wizard. In opposite to An implementation can veto the leave by returning Note that Next
button is disabled if the current page's confirmDeactivatePage
is intended for checking
+ conditions which involve more than the state of the currently active page.Next
button in the wizard, then move your checks to the Next
button is disabled if the current page's k
pages with the path
+ which is previously active (if any), where k
is the index of the current page within the current
+ path.(0,1,2,5)
and (0,1,4,5)
(with
+ the numbers denoting page IDs). This means that after page 1
, you either continue with page
+ 2
or state 4
,and after this, you finish in state 5
.
+ Now if the first path is active, and your current state is 1
, then you can easily switch to the
+ second path, since both paths start with (0,1)
.
+ However, if your current state is 2
, then you can not switch to the second path anymore.k
states with the to-be-activated path.)0
and
+ 1
are activated, since they are common to both paths. Steps 2
, 4
,
+ and 5
are not reachable, yet....
Next
button is disabled if the current page's confirmDeactivatePage
is intended for checking
- conditions which involve more than the state of the currently active page.