[ooo-build-commit] Branch 'ooo/master' - 2 commits - offapi/com udkapi/com

Jan Holesovsky kendy at kemper.freedesktop.org
Fri Jun 5 19:10:58 PDT 2009


 offapi/com/sun/star/form/component/CommandButton.idl |   37 ++-
 offapi/com/sun/star/report/XReportControlFormat.idl  |   35 +--
 offapi/com/sun/star/report/XReportEngine.idl         |    7 
 offapi/com/sun/star/sdb/ErrorCondition.idl           |   31 ++
 offapi/com/sun/star/sdb/RowSet.idl                   |    3 
 udkapi/com/sun/star/container/EnumerableMap.idl      |  139 +++++++++++++
 udkapi/com/sun/star/container/XEnumerableMap.idl     |  108 ++++++++++
 udkapi/com/sun/star/container/XMap.idl               |  201 +++++++++++++++++++
 udkapi/com/sun/star/container/makefile.mk            |    3 
 9 files changed, 525 insertions(+), 39 deletions(-)

New commits:
commit a48226fc07e3617c1307287b8a4e9592f5063f00
Author: Kurt Zenker <kz at openoffice.org>
Date:   Fri Jun 5 12:31:05 2009 +0000

    CWS-TOOLING: integrate CWS evoab2def
    2009-05-28 16:00:19 +0200 fs  r272412 : don't use createFalse - Evo 2.22 simply hangs when ask for all contacts without a first name. Instead, in the WHERE 0=1 case, simply create an empty result set
    2009-05-22 14:25:51 +0200 fs  r272193 : #i10000#
    2009-05-22 14:25:37 +0200 fs  r272192 : oops, ENABLE_EVOAB2 for some platforms only, not generically
    2009-05-22 14:19:00 +0200 fs  r272191 : #i10000#
    2009-05-22 12:42:38 +0200 fs  r272183 : when sorting, properly use a syslocale collator, instead of comparing the numerical values of the string's UTF-16 code points
    2009-05-20 15:09:00 +0200 fs  r272131 : clear/getWarnings: also allowed without cache
    2009-05-20 14:11:19 +0200 fs  r272128 : removed debug traces
    2009-05-20 14:03:31 +0200 fs  r272126 : #i55701# +STR_SORT_BY_COL_ONLY
    2009-05-20 14:02:29 +0200 fs  r272125 : implement sorting
    2009-05-20 10:10:19 +0200 fs  r272107 : #i10000#
    2009-05-19 16:02:17 +0200 fs  r272089 : #i10000#
    2009-05-19 16:02:02 +0200 fs  r272088 : #i55701# strings for new error condition DATA_CANNOT_SELECT_UNFILTERED
    2009-05-19 16:01:31 +0200 fs  r272087 : #i55701# use DATA_CANNOT_SELECT_UNFILTERED as standardized error code
    2009-05-19 15:59:59 +0200 fs  r272086 : #i55701# +DATA_CANNOT_SELECT_UNFILTERED
    2009-05-19 15:46:12 +0200 fs  r272084 : #i55701# recognize the DATA_CANNOT_SELECT_UNFILTERED error condition, and allow filtering in this case, even when the result set is empty
    2009-05-19 09:06:50 +0200 fs  r272059 : merging changes from CWS dba32b, to prevent future conflicts with upcoming local changes
    2009-05-18 21:48:58 +0200 fs  r272054 : accessing a non-local unfiltered address book now returns an empty result set, and reports a warning, instead of ungracefully failing
    2009-05-18 21:48:42 +0200 fs  r272053 : accessing a non-local unfiltered address book now returns an empty result set, and reports a warning, instead of ungracefully failing
    2009-05-18 21:47:41 +0200 fs  r272052 : +setExternalWarnings
    2009-05-18 21:47:12 +0200 fs  r272051 : #i55701# when re/loading the form, display any possible warnings
    2009-05-18 21:43:26 +0200 fs  r272050 : #i55701# implement XWarningsSupplier, exposing the warnings of our result set
    2009-05-18 21:42:51 +0200 fs  r272049 : #i55701# implement XWarningsSupplier, exposing the warnings of our aggregate RowSet
    2009-05-18 17:53:59 +0200 fs  r272041 : #i55701# moved the (I)WarningsContainer from dbaccess to connectivity, to be able to use it in the latter module, too
    2009-05-18 17:24:10 +0200 fs  r272040 : #i55701# properly enable the various Evolution types
    2009-05-18 14:52:19 +0200 fs  r272024 : #i55701# properly enable the Evolution types
    2009-05-18 13:57:10 +0200 fs  r272018 : fixed/extended whereAnalysis (column searching still not enabled, as neither LIKE nor = seem to work with my (somewhat older) Evolution version)
    2009-05-18 13:56:08 +0200 fs  r272017 : extended showParseTree
    2009-05-18 13:55:25 +0200 fs  r272016 : extended showParseTree
    2009-05-18 11:40:16 +0200 fs  r272008 : #i55701#
    2009-05-18 11:39:02 +0200 fs  r272006 : let the PreparedStatement return proper meta data, too
    2009-05-18 10:05:37 +0200 fs  r271999 : moved the XStatement interface to from OCommonStatement to OStatement - the former class is also the base for other classes which should not have this interface
    2009-05-15 21:53:22 +0200 fs  r271973 : collectColumnInformation: report invalid meta data as assertion
    2009-05-15 21:51:40 +0200 fs  r271972 : showParseTree should be const
    2009-05-15 21:51:26 +0200 fs  r271971 : showParseTree should be const
    2009-05-15 21:51:03 +0200 fs  r271970 : properly recognize the 'WHERE 0 = 1' clause, this way having proper statement meta data, this way saving much much calls from the DBA framework
    2009-05-15 20:29:03 +0200 fs  r271969 : cleaned up the mess with the statement classes
    2009-05-15 15:51:11 +0200 fs  r271944 : let the result set properly init its meta data
    2009-05-15 15:29:54 +0200 fs  r271939 : proper property implementations for the resultset class
    2009-05-15 15:01:31 +0200 fs  r271936 : proper property implementations for the statement class
    2009-05-08 14:46:33 +0200 fs  r271717 : component_foo must be PUBLIC
    2009-05-06 09:20:05 +0200 fs  r271565 : #i10000# (warnings on unxlngi6)
    2009-05-06 09:01:30 +0200 fs  r271564 : #i101493#
    2009-05-05 23:08:12 +0200 fs  r271560 : #i55701# merging the changes from the ancient (CVS-based) CWS evoab2default into this CWS here

diff --git a/offapi/com/sun/star/sdb/ErrorCondition.idl b/offapi/com/sun/star/sdb/ErrorCondition.idl
index 542674c..20c12f1 100644
--- a/offapi/com/sun/star/sdb/ErrorCondition.idl
+++ b/offapi/com/sun/star/sdb/ErrorCondition.idl
@@ -155,6 +155,23 @@ constants ErrorCondition
         with this name.</p>
     */
     const long AB_ADDRESSBOOK_NOT_FOUND = 500;
+
+    // ========================================================================
+    // = section DATA - data retrieval related error conditions
+    // =
+    // = next section should start with 600
+
+    /** used to indicate that a <code>SELECT</code> operation on a table needs a filter.
+
+        <p>Some database drivers are not able to <code>SELECT</code> from a table if the
+        statement does not contain a <code>WHERE</code> clause. In this case, a statement
+        like <code>SELECT * FROM "table"</cdeo> with fail with the error code
+        <code>DATA_CANNOT_SELECT_UNFILTERED</code>.</p>
+
+        <p>It is also legitimate for the driver to report this error condition as warning, and provide
+        an empty result set, instead of ungracefull failing.</p>
+    */
+    const long DATA_CANNOT_SELECT_UNFILTERED = 550;
 };
 
 //=============================================================================
commit 8a5e61c28f4b29ecb3a65b8b0885672c4db89030
Author: Kurt Zenker <kz at openoffice.org>
Date:   Fri Jun 5 09:47:55 2009 +0000

    CWS-TOOLING: integrate CWS dba32b
    2009-06-03 14:58:08 +0200 fs  r272581 : #i102439#
    2009-05-29 13:56:18 +0200 fs  r272456 : remove the sub form when the 'add subform' setting changes from <true/> to <false/>, not only its controls
    2009-05-29 13:19:27 +0200 fs  r272454 : display '(Default)' instead of an empty string when a control has the default font
    2009-05-28 20:49:18 +0200 fs  r272428 : #i98162# getFirstSelectedValue: do not return reference to a temporary
    2009-05-27 15:30:22 +0200 msc  r272353 : #102303#
    2009-05-26 13:03:06 +0200 fs  r272295 : spelling
    2009-05-26 12:59:54 +0200 fs  r272294 : merge m48 version to get latest cygwin related fixes
    2009-05-25 14:02:06 +0200 fs  r272239 : remove references to local files, needed for debugging sessions only
    2009-05-25 14:01:16 +0200 fs  r272238 : #i102021# ensure members such as bNumberFormat are initialized before actually returning them
    2009-05-25 13:10:20 +0200 fs  r272236 : #i10000# reset ENABLE_EVOAB2
    2009-05-22 06:44:45 +0200 oj  r272167 : #i99104# add import handler for calc-sett
    2009-05-22 06:42:27 +0200 oj  r272166 : #i99104# impl NullDate as member
    2009-05-22 06:36:22 +0200 oj  r272165 : #i99104# handle nulldate from parent model
    2009-05-22 06:33:13 +0200 oj  r272164 : #i99104# export and import calculation-settings and nulldate
    2009-05-22 06:27:50 +0200 oj  r272163 : #i99104# export and import calculation-settings and nulldate
    2009-05-20 13:29:58 +0200 oj  r272118 : #i99911# handle invalid name
    2009-05-20 13:28:49 +0200 oj  r272117 : #i101261# handle different rowsets
    2009-05-20 11:29:55 +0200 msc  r272111 : #i100000#
    2009-05-20 11:28:27 +0200 msc  r272110 : merge in change from dba32a
    2009-05-20 11:27:38 +0200 msc  r272109 : #102082# CTRL + C does not work
    2009-05-20 09:43:36 +0200 oj  r272106 : clean up includes
    2009-05-20 09:32:15 +0200 oj  r272105 : #i99060# merge error resovled now VERTICAL_ALIGN is in both stmt
    2009-05-20 08:37:21 +0200 msc  r272104 : add workaround for issue #102010#
    2009-05-20 08:10:12 +0200 oj  r272103 : #i99104# use numberformatkey
    2009-05-20 08:07:02 +0200 oj  r272102 : #i99104# use column info from rowset
    2009-05-20 08:04:43 +0200 oj  r272101 : #i102032# use a special column type where prec and scale are the values currently set at the column
    2009-05-20 08:03:04 +0200 oj  r272100 : #i102032# correct type info, we have to use SQL defined type names
    2009-05-19 10:27:02 +0200 oj  r272061 : #i99104# export null-date
    2009-05-19 08:26:53 +0200 oj  r272056 : #i99104# export null-date
    2009-05-18 13:15:10 +0200 msc  r272014 : add issue #102019#
    2009-05-18 11:33:07 +0200 msc  r272005 : add issue #102019#
    2009-05-18 08:59:45 +0200 msc  r271996 : add workaroud for issue #102010#
    2009-05-15 10:21:24 +0200 msc  r271929 : #101944#
    2009-05-11 21:18:30 +0200 fs  r271792 : #i99914#
    2009-05-08 13:52:06 +0200 oj  r271715 : #i96423# remember column span
    2009-05-08 11:26:19 +0200 oj  r271708 : #i98605# impl new scale mode
    2009-05-08 10:33:35 +0200 fs  r271706 : SendUserCall: only call into the shape notification routine for UserCall types where this is necessary (performance issue)
    2009-05-07 20:52:44 +0200 fs  r271698 : outsource ShapeProperty from shapepropertynotifier.hxx
    2009-05-07 20:43:33 +0200 fs  r271697 : #i99056# use notifyShapePropertyChange, instead of getShapePropertyChangeNotifier - the latter throws if no shape exists, yet
    2009-05-07 20:33:58 +0200 fs  r271696 : #i99056# +notifyShapePropertyChange: allow notifying chages without checking whether there actually already exists an SvxShape
    2009-05-07 16:22:15 +0200 fs  r271679 : #i10000# cygwin needs quotes around the classpath
    2009-05-07 16:21:37 +0200 fs  r271678 : #i10000# cygwin needs quotes around the classpath
    2009-05-07 16:01:11 +0200 oj  r271677 : #i99914# notify parent handler
    2009-05-07 15:54:54 +0200 fs  r271676 : #i10000# cygwin needs some quoting
    2009-05-07 14:49:48 +0200 oj  r271672 : #i99277# quote alias name
    2009-05-07 14:48:12 +0200 oj  r271671 : #i92538# add ~ in front of type
    2009-05-07 14:37:13 +0200 oj  r271667 : #i99118# change type from char to varchar
    2009-05-07 14:36:23 +0200 oj  r271666 : #i99118# clear dest columns when changing to create new table
    2009-05-07 13:35:32 +0200 oj  r271657 : #i94467# handle type 0 as double as well
    2009-05-07 13:20:49 +0200 oj  r271655 : i99743# setNull when varchar is no text
    2009-05-07 12:58:06 +0200 fs  r271651 : initialize the SdrObject's property change notifier after the ctor, if necessary
    2009-05-07 11:47:18 +0200 fs  r271647 : #i10000#
    2009-05-07 10:57:16 +0200 fs  r271639 : OPropertyBrowserController::propertyChange: care for the current property state, too, and properly forward it to the UI
    2009-05-07 10:18:14 +0200 fs  r271636 : onNewComponent: do not ask the map for grid columns, it will throw
    2009-05-07 10:09:55 +0200 fs  r271634 : #i101623#
    2009-05-07 09:53:44 +0200 fs  r271631 : #i101622#
    2009-05-06 21:55:53 +0200 fs  r271615 : #i10000#
    2009-05-06 21:10:42 +0200 fs  r271611 : #i10000#
    2009-05-06 13:11:48 +0200 fs  r271583 : #i10000#
    2009-05-05 22:29:31 +0200 fs  r271559 : proper assertion message
    2009-05-05 22:29:03 +0200 fs  r271558 : diagnostics
    2009-05-05 22:16:16 +0200 fs  r271557 : #i10000#
    2009-05-05 13:50:32 +0200 fs  r271513 : #i10000#
    2009-05-05 10:21:50 +0200 fs  r271503 : #i10000#
    2009-05-05 09:30:26 +0200 fs  r271501 : why did those survive the rebase -C step?
    2009-05-05 09:18:12 +0200 fs  r271500 : #i10000#
    2009-05-04 17:08:17 +0200 fs  r271475 : CWS-TOOLING: rebase CWS dba32b to trunk at 271427 (milestone: DEV300:m47)
    2009-05-04 14:51:26 +0200 fs  r271456 : line ends
    2009-04-30 15:55:27 +0200 fs  r271418 : NewURL -> PublicConnectionURL
    2009-04-22 21:18:34 +0200 fs  r271141 : #i100944#
    2009-04-22 09:12:26 +0200 oj  r271071 : #i101261# little code change
    2009-04-22 09:11:43 +0200 oj  r271070 : #i101261# only ask for parameters which aren't set before
    2009-04-22 09:11:25 +0200 oj  r271069 : #i101261# new grabage container for nodes
    2009-04-22 09:11:02 +0200 oj  r271068 : #i101261# new grabage container for nodes
    2009-04-22 09:10:44 +0200 oj  r271067 : #i101261# new grabage container for nodes
    2009-04-22 09:10:21 +0200 oj  r271066 : #i101261# only ask for parameters which aren't set before
    2009-04-22 09:08:24 +0200 oj  r271065 : #i101261# only ask for parameters which aren't set before
    2009-04-22 09:07:25 +0200 oj  r271064 : #i101261# only ask for parameters which aren't set before
    2009-04-22 08:49:07 +0200 oj  r271062 : #i77501# preview only when needed
    2009-04-22 08:45:44 +0200 oj  r271061 : #i101261# new prop max rows
    2009-04-22 08:44:18 +0200 oj  r271060 : #i101261# create dataprovider earlier to avoid the wrong legend in chart
    2009-04-22 08:42:48 +0200 oj  r271059 : #i101261# handle parameter
    2009-04-17 21:00:23 +0200 fs  r270954 : #i98350#
    2009-04-17 13:54:19 +0200 fs  r270942 : #i99565#
    2009-04-17 13:51:34 +0200 fs  r270940 : #i101153# only localize the (potentially) localizable properties when there really is support at the control model
    2009-04-17 11:43:14 +0200 fs  r270932 : removed superfluous include
    2009-04-17 10:10:15 +0200 fs  r270926 : #i10000#
    2009-04-17 10:02:36 +0200 fs  r270925 : #i10000#
    2009-04-17 09:15:13 +0200 fs  r270918 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
    2009-04-17 09:14:56 +0200 fs  r270917 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
    2009-04-17 09:13:25 +0200 fs  r270915 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
    2009-04-17 08:30:34 +0200 fs  r270914 : removed unotools/servicehelper.hxx in favour of the (duplicated) comphelper/servicehelper.hxx
    2009-04-16 21:05:25 +0200 fs  r270903 : #i10000#
    2009-04-16 20:43:43 +0200 fs  r270902 : #i99056# shape notification outsourced to the SdrObject, this is what all other shape implementations (which only aggregate an SvxShape) have access to, too
    2009-04-16 15:57:36 +0200 fs  r270891 : #i99056# make SetUnoControlModel virtual
    2009-04-16 15:44:02 +0200 fs  r270890 : #i99056# let the ScShapeObj notify changes in its Anchor property
    2009-04-16 15:36:47 +0200 fs  r270889 : #i99056# enable the sheet anchor type property, too
    2009-04-16 15:33:45 +0200 fs  r270887 : #i99056# shape notification outsourced to the SdrObject, this is what all other shape implementations (which only aggregate an SvxShape) have access to, too
    2009-04-15 14:53:13 +0200 fs  r270844 : #i10000#
    2009-04-15 13:08:29 +0200 fs  r270836 : #i10000#
    2009-04-15 12:28:14 +0200 fs  r270832 : #i10000#
    2009-04-15 10:59:14 +0200 fs  r270827 : #i10000#
    2009-04-15 09:41:08 +0200 oj  r270823 : fix issues found with findbugs and pmd
    2009-04-14 21:08:04 +0200 fs  r270808 : #i99056# implement SheetAnchorType - now the only thing missing to enable it is the proper notification when it is modified
    2009-04-14 17:09:00 +0200 fs  r270799 : #i99056# implement XServiceInfo for the ScShapeObj
    2009-04-14 17:07:55 +0200 fs  r270798 : #i99056# implement TextAnchorType, partially implement SheetAnchorType
    2009-04-14 15:54:05 +0200 fs  r270786 : #i99056# SwXShape: notify changes of the AnchorType property
    2009-04-14 15:47:32 +0200 fs  r270785 : #i99056# deliver shapepropertynotifier.hxx
    2009-04-14 15:46:54 +0200 fs  r270784 : diagnostics
    2009-04-14 15:08:28 +0200 fs  r270781 : #i99056# outsourced the SvxShape's property change notification code into a dedicated class
    2009-04-14 14:41:09 +0200 fs  r270773 : #i99056# outsourced the SvxShape's property change notification code into a dedicated class
    2009-04-14 14:37:23 +0200 fs  r270772 : in dtor, remove the properties from the temporary component context
    2009-04-14 14:36:34 +0200 fs  r270771 : getWeakUnoShape made const
    2009-04-14 12:23:08 +0200 oj  r270757 : #i101064# add missing braces
    2009-04-14 12:21:25 +0200 oj  r270756 : #i101065# add braces for gcc 4.3.2
    2009-04-14 12:17:45 +0200 oj  r270755 : #i101059# add dep for manifest
    2009-04-09 12:06:58 +0200 oj  r270686 : #i93100# use OptimalSize from control to get height
    2009-04-08 09:56:55 +0200 oj  r270619 : #i92537# handle calculations in the select columns as well
    2009-04-08 09:30:39 +0200 oj  r270615 : #i96657# throw error message when the key doesn't have any columns
    2009-04-07 12:08:26 +0200 oj  r270592 : #i77501# impl preview of the executed report
    2009-04-07 12:01:56 +0200 oj  r270591 : #i77501# impl preview of the executed report
    2009-04-07 11:41:03 +0200 oj  r270590 : #i77501# impl preview of the executed report
    2009-04-07 11:39:32 +0200 oj  r270589 : #i77501# impl preview of the executed report
    2009-04-07 11:29:25 +0200 oj  r270588 : #i77501# convert dos to unix lineends
    2009-04-07 11:28:23 +0200 oj  r270587 : #i77501# impl preview of the executed report
    2009-04-07 11:16:50 +0200 oj  r270586 : #i77501# impl preview of the executed report
    2009-04-07 11:16:00 +0200 oj  r270585 : #i77501# impl preview of the executed report
    2009-04-07 11:15:44 +0200 oj  r270584 : #i77501# impl preview of the executed report
    2009-04-07 11:15:28 +0200 oj  r270583 : #i77501# impl preview of the executed report
    2009-04-07 11:15:04 +0200 oj  r270582 : #i77501# impl preview of the executed report
    2009-04-06 15:38:54 +0200 fs  r270559 : merge changes from CWS dba32a herein
    2009-04-03 15:56:16 +0200 fs  r270494 : ImpSvMEdit::Resize: do multiple iterations, if necessary
    2009-04-03 14:35:49 +0200 fs  r270487 : #i10000#
    2009-04-03 13:17:16 +0200 fs  r270476 : #i99056# display geometry information for controls, too
    2009-04-03 13:16:37 +0200 fs  r270475 : #i99056# better ordering of the geometry properties
    2009-04-03 13:16:07 +0200 fs  r270473 : #i99056# now that SvxShape supports property change listeners, forward add/remove requests to it
    2009-04-03 13:13:18 +0200 fs  r270472 : #i99056# at SvxShape, allow for PropertyChangeListeners for Size/Position
    2009-04-03 09:29:27 +0200 oj  r270456 : #i94571# use correct prop name
    2009-04-03 09:14:54 +0200 fs  r270451 : merge changes from CWS dba32a herein
    2009-04-02 17:00:51 +0200 fs  r270424 : better diagnostics
    2009-04-02 16:35:19 +0200 fs  r270421 : diagnostics
    2009-04-02 16:34:50 +0200 fs  r270420 : #i99056# mxUnoShape not accessible anymore, use impl_setUnoShape instead
    2009-04-02 16:32:48 +0200 fs  r270419 : #i99056# make getUnoShape cheaper: keep the pointer to the SvxShape all the time, so there's no need to ask for it in getUnoShape. As a consequence, we will later be able to use the pointer in scenarious where performance (potentially) matters
    2009-04-02 16:31:13 +0200 fs  r270417 : merge changes from CWS dba32a herein
    2009-04-02 16:23:16 +0200 fs  r270414 : merge changes from CWS dba32a herein
    2009-04-02 14:10:35 +0200 fs  r270405 : #i10000#
    2009-04-02 14:06:26 +0200 fs  r270404 : merge changes from CWS dba32a herein
    2009-04-02 14:03:03 +0200 fs  r270401 : #i10000#
    2009-04-02 13:58:13 +0200 fs  r270400 : #i10000#
    2009-04-02 12:59:44 +0200 fs  r270397 : merge changes from CWS dba32a herein
    2009-04-02 12:46:30 +0200 fs  r270396 : #i99056# let the form page maintain a mapping between control models and control shapes
    2009-04-02 12:44:07 +0200 fs  r270395 : merge changes from CWS dba32a herein
    2009-04-02 12:42:06 +0200 fs  r270394 : merge changes from CWS dba32a herein
    2009-04-02 12:35:20 +0200 fs  r270393 : #i10000# precompiled header
    2009-04-02 12:05:31 +0200 fs  r270392 : merge changes from CWS dba32a herein
    2009-04-02 12:00:42 +0200 fs  r270391 : merge changes from CWS dba32a herein
    2009-04-02 11:47:26 +0200 fs  r270390 : merge changes from CWS dba32a herein
    2009-04-02 11:39:15 +0200 oj  r270389 : #i94467# foxpro impl several new types
    2009-04-02 11:35:58 +0200 fs  r270387 : merge changes from CWS dba32a herein
    2009-04-01 14:10:51 +0200 fs  r270329 : merge changes from CWS dba32a herein
    2009-03-31 17:29:50 +0200 fs  r270290 : merge changes from CWS dba32a herein
    2009-03-30 14:53:56 +0200 fs  r270233 : #i100417# don't set grid column widths to 0, but to <void/>
    2009-03-30 12:31:03 +0200 oj  r270213 : #i100552# wrong orb used
    2009-03-30 12:19:20 +0200 oj  r270212 : #i98303# convertlike corrected to sal_Unicode
    2009-03-30 11:58:25 +0200 fs  r270210 : merge changes from CWS dba32a herein
    2009-03-30 11:38:16 +0200 oj  r270205 : remove duplicate code from merge
    2009-03-30 11:02:27 +0200 fs  r270202 : merge changes from CWS dba32a herein
    2009-03-30 11:02:19 +0200 fs  r270201 : merge changes from CWS dba32a herein
    2009-03-30 10:31:26 +0200 oj  r270200 : #i100665# only throw exception and do not drop table
    2009-03-30 09:36:24 +0200 fs  r270195 : assertion text
    2009-03-28 20:21:58 +0100 fs  r270187 : #ii10000#
    2009-03-28 20:19:54 +0100 fs  r270186 : removed unused help ids
    2009-03-28 20:19:40 +0100 fs  r270185 : removed unused help ids
    2009-03-28 20:19:10 +0100 fs  r270184 : #i100237# +DefaultState/XReset
    2009-03-28 00:29:29 +0100 fs  r270177 : CWS-TOOLING: rebase CWS dba32b to trunk at 270033 (milestone: DEV300:m45)
    2009-03-27 22:56:46 +0100 fs  r270173 : #i100237# DEFAULT_CHECKED -> DEFAULT_STATE
    2009-03-27 22:55:52 +0100 fs  r270172 : #i100237# DefaultState property for buttons, enabled only when Toggle=Yes
    2009-03-27 22:54:15 +0100 fs  r270171 : #i100237# DEFAULT_CHECKED -> DEFAULT_STATE
    2009-03-27 22:53:54 +0100 fs  r270170 : #i100237# introduce a DefaultState property for buttons, which implies buttongs supporting XReset, which needed some refactoring
    2009-03-27 13:31:41 +0100 fs  r270152 : ignore output paths
    2009-03-27 11:23:44 +0100 fs  r270139 : tuned behavior with respect to invalid keys/values
    2009-03-27 09:57:14 +0100 fs  r270136 : don't allow Double.NaN
    2009-03-27 09:56:16 +0100 fs  r270135 : talk about Double.NaN
    2009-03-26 12:14:30 +0100 fs  r270067 : removed unused parameter
    2009-03-26 12:14:02 +0100 fs  r270066 : removed widening conversion when checking keys
    2009-03-26 09:17:34 +0100 fs  r270053 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
    2009-03-26 09:17:11 +0100 fs  r270052 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
    2009-03-26 09:16:49 +0100 fs  r270051 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
    2009-03-25 21:55:20 +0100 fs  r270044 : #i100541# properly calculat bNeedScrollBox
    2009-03-25 12:56:17 +0100 fs  r270019 : renamed the previously introduced error condition
    2009-03-25 12:11:48 +0100 fs  r270015 : #i100095# when the error messages contain non-trivial details (SQLState/ErrorCode), then always display the 'Details' button
    2009-03-25 12:10:05 +0100 fs  r270012 : renamed the previously introduced error condition
    2009-03-25 12:01:04 +0100 fs  r270011 : #i100095# when no address book (or respective profile) can be found, then use a dedicated ErrorCondition
    2009-03-25 10:29:07 +0100 fs  r270003 : add missing localization
    2009-03-25 10:23:12 +0100 fs  r270001 : in preparation of #i1000095#:
    rework the error handling, allow using css.sdb.ErrorCondition values, plus
    allow propagating the nsresult
    2009-03-25 10:21:55 +0100 fs  r270000 : in preparation of #i1000095#:
    rework the error handling, allow using css.sdb.ErrorCondition values, plus
    allow propagating the nsresult
    2009-03-20 23:05:38 +0100 fs  r269829 : XMap::getSize removed
    2009-03-20 23:05:19 +0100 fs  r269828 : changes as suggested by sb
    2009-03-20 23:04:56 +0100 fs  r269827 : enhanced documentation
    2009-03-20 15:31:40 +0100 fs  r269815 : changes as suggested by sb
    2009-03-20 13:23:52 +0100 oj  r269804 : #i92538# correct the zorder that fixedtext is infront of control
    2009-03-20 12:59:38 +0100 oj  r269801 : #i94571# paraadjust now supports BLOCK
    2009-03-20 12:58:11 +0100 oj  r269800 : #i94571# export style with data style
    2009-03-20 12:57:05 +0100 oj  r269799 : #i94571# text align is now paraadjust
    2009-03-20 12:37:02 +0100 fs  r269797 : enum keys only accepted if they have the exact type, not if they have *any* enum type
    2009-03-20 12:28:31 +0100 fs  r269794 : some changes requested by sb
    2009-03-20 08:52:47 +0100 fs  r269780 : doc
    2009-03-20 07:37:31 +0100 oj  r269779 : #i99913# only notifiy when values are different
    2009-03-20 07:36:58 +0100 oj  r269778 : #i99913# add undoenv as listener at the dataprovider
    2009-03-19 22:52:52 +0100 fs  r269771 : added comment
    2009-03-19 22:40:06 +0100 fs  r269770 : +testEnumeration
    2009-03-19 22:39:41 +0100 fs  r269769 : implemented enumeration, getKeySet, and getValues. Should be finished now.
    2009-03-19 14:01:01 +0100 oj  r269743 : #i99913# reset the modified state when selecting an object
    2009-03-19 12:19:54 +0100 lla  r269739 : #i72390# cleanups
    2009-03-19 09:25:27 +0100 fs  r269727 : #i10000#
    2009-03-18 23:37:02 +0100 fs  r269708 : extended checks for value type acceptance
    2009-03-18 23:36:41 +0100 fs  r269707 : fixed value type checks
    2009-03-18 14:59:56 +0100 fs  r269678 : initial complex test case for the new css.container.Map implementation
    2009-03-18 14:59:24 +0100 fs  r269677 : verifyExpectedException moved to base class (in complexlib), and renamed to assureException for consistency
    2009-03-18 14:58:35 +0100 fs  r269676 : removed unused imports
    2009-03-18 14:58:03 +0100 fs  r269675 : first implementation of the new css.container.Map service (not completed, yet)
    2009-03-18 14:57:17 +0100 fs  r269674 : base class for UNO components, freeing you from some repeating work
    2009-03-18 14:55:53 +0100 fs  r269672 : +assureException: call a given method with given parameters on a given object, ensure that a given exception is thrown by the method implementation
    2009-03-18 14:54:58 +0100 fs  r269671 : +getComponentContext
    2009-03-18 14:54:00 +0100 fs  r269670 : isEmpty returns a boolean, not a long
    2009-03-18 14:14:43 +0100 oj  r269663 : #i99743# now text also supports null
    2009-03-18 13:54:14 +0100 oj  r269660 : #i99223# remove check for 2 params
    2009-03-18 13:33:35 +0100 oj  r269659 : #i99060# replace text::ParagraphVertAlign with style::VerticalAlignment
    2009-03-18 13:32:18 +0100 oj  r269658 : #i99060# don't set void property when void isn't allowed
    2009-03-18 13:31:11 +0100 oj  r269657 : #i99060# handle vertical alignment
    2009-03-18 13:28:28 +0100 oj  r269656 : #i99060# remove unused elements from sytle
    2009-03-18 09:35:42 +0100 lla  r269639 : #i72390# cleanups
    2009-03-18 09:31:20 +0100 lla  r269638 : #i72390# add ButtonList
    2009-03-18 09:30:46 +0100 lla  r269637 : #i72390# renamed interface
    2009-03-18 09:30:15 +0100 lla  r269636 : #i72390# use ButtonList instead of ImageList
    2009-03-18 09:29:05 +0100 lla  r269635 : #i72390# new ButtonList, cleanups
    2009-03-18 09:26:34 +0100 lla  r269634 : #i72390# cleanups
    2009-03-17 12:21:20 +0100 oj  r269590 : #i99222# remove assertion
    2009-03-17 12:17:22 +0100 oj  r269589 : #i98605# impl scale mode
    2009-03-17 12:10:42 +0100 oj  r269588 : #i98605# impl scale mode
    2009-03-17 11:40:15 +0100 oj  r269584 : #i96944# doesn't create equation for shapes
    2009-03-17 11:33:16 +0100 oj  r269583 : #i96423# switch calc from float to long
    2009-03-16 15:19:18 +0100 fs  r269550 : #i41930# enable zoom for embedded/outplace documents
    2009-03-16 14:25:54 +0100 oj  r269542 : #i93734# remove ContextSensitive
    2009-03-16 14:21:58 +0100 oj  r269541 : #i99274# page header before group header
    2009-03-16 14:18:23 +0100 oj  r269539 : #i99110# fix value type
    2009-03-16 14:14:16 +0100 fs  r269537 : line ends
    2009-03-16 14:11:06 +0100 fs  r269535 : line ends
    2009-03-16 14:08:34 +0100 fs  r269534 : #i100087# (provided my np): allow for polymorphic types with more than one parameter
    2009-03-16 12:30:31 +0100 oj  r269521 : compile error
    2009-03-16 12:19:12 +0100 oj  r269519 : compile error
    2009-03-16 10:39:28 +0100 oj  r269511 : compile error under linux with swap
    2009-03-13 10:33:04 +0100 oj  r269462 : CWS-TOOLING: rebase CWS dba32b to trunk at 269297 (milestone: DEV300:m43)
    2009-03-12 14:37:25 +0100 fs  r269416 : interface SequenceOutputStreamTest is unneeded, and pollutes the namespace here :)
    2009-03-12 14:35:07 +0100 fs  r269414 : not needed
    2009-03-12 14:34:15 +0100 fs  r269413 : preparation for multiple tests in this module
    2009-03-12 14:33:02 +0100 fs  r269412 : ShowTargets was moved from module integration.forms to module complexlib
    2009-03-12 14:32:48 +0100 fs  r269411 : helper class for projects containing multiple complex test cases (and following a certain structure)
    2009-03-12 14:00:14 +0100 fs  r269407 : proper module after the move
    2009-03-12 13:59:10 +0100 fs  r269406 : superseded by ../makefile.mk
    2009-03-12 13:47:38 +0100 fs  r269403 : not needed anymore
    2009-03-12 13:45:46 +0100 fs  r269402 : moved, in preparation of adding more test cases here, with a common infrastructure
    2009-03-12 13:45:07 +0100 fs  r269401 : moved from ../
    2009-03-12 13:43:59 +0100 fs  r269400 : moved to ./comphelper, in preparation of adding more test cases here, with a common infrastructure
    2009-03-12 13:29:47 +0100 oj  r269396 : #i99914# set parent on dataprovider
    2009-03-12 13:10:35 +0100 oj  r269393 : #i99832# check thrown exception and show error
    2009-03-12 13:08:10 +0100 fs  r269392 : reorganizing tests
    2009-03-12 12:52:55 +0100 oj  r269390 : #i99118# convert formatkey in numberformat
    2009-03-12 12:34:53 +0100 fs  r269388 : new API tests
    2009-03-12 12:29:05 +0100 fs  r269386 : Map not yet committed
    2009-03-12 12:28:36 +0100 fs  r269385 : oops, forgot the SequenceInputStream during the previous refactoring
    2009-03-12 12:12:39 +0100 oj  r269384 : #i99104# set HasCategories prop
    2009-03-12 12:12:08 +0100 oj  r269383 : #i99104# check HasCategories even for internal dataprovider
    2009-03-12 12:10:40 +0100 oj  r269382 : #i99104# set HasCategories prop
    2009-03-12 10:51:49 +0100 fs  r269373 : #i10000# exception specifications
    2009-03-12 10:49:18 +0100 fs  r269372 : #i10000# exception specifications
    2009-03-12 10:44:02 +0100 fs  r269371 : #i10000# exception specifications
    2009-03-12 10:30:55 +0100 fs  r269368 : refactored the UNO service registration in this module, using the helper classes provided by comphelper itself, so you have less effort when extending the list of to-be-registered components
    2009-03-12 10:30:37 +0100 fs  r269367 : module-local includes
    2009-03-12 07:05:54 +0100 oj  r269357 : #i99104# database dataprovider doesn't need dataranges and diagramdata
    2009-03-11 10:58:28 +0100 oj  r269306 : #i99911# check if name of the report is a valid file name
    2009-03-11 10:03:23 +0100 oj  r269299 : #i99666# the report is new when the HierarchicalDocumentName is empty
    2009-03-10 11:32:45 +0100 oj  r269258 : #i99221# use fallback for language
    2009-03-10 10:48:40 +0100 oj  r269255 : #i99433# now use OStringBuffer
    2009-03-10 10:36:21 +0100 fs  r269252 : initial version of (X)Map
    2009-03-10 09:52:23 +0100 oj  r269246 : #i99433# now use OStringBuffer
    2009-03-10 08:56:13 +0100 oj  r269240 : #i99655# patch applied
    2009-03-09 07:35:33 +0100 lla  r269058 : #i10000# wrong variable assignment fixed
    2009-03-06 17:20:40 +0100 fs  r269030 : some explicit defaults
    2009-03-06 17:20:30 +0100 fs  r269029 : #i98600#
    2009-03-06 14:40:34 +0100 fs  r269009 : #i87692# during reload, prevent the document being modified just because of some control content changes ...
    2009-03-06 12:52:20 +0100 lla  r268997 : #i10000# ambigous problem with FontWeight fixed
    2009-03-06 11:39:32 +0100 fs  r268989 : #i10000# (approved by pl): use --without-t1-library configure option
    2009-03-06 10:55:43 +0100 fs  r268986 : #i99953# depends on xmlscript module now
    2009-03-06 10:54:04 +0100 fs  r268985 : #i99953# also adjust the event names found in dialogs embedded in the forms
    2009-03-06 09:53:41 +0100 fs  r268977 : #i10000#
    2009-03-06 09:30:41 +0100 lla  r268973 : #i10000# merge problems
    2009-03-05 17:52:34 +0100 fs  r268932 : #i98593# for sub components which are actually controlled by a DocumentDefinition (aka XComponentSupplier aka XCommandProcessor), close them by executing the 'close' command, not by suspending/closing the controller (which cannot be intercepted)
    2009-03-05 11:41:56 +0100 fs  r268889 : default the drop down line count for list/combo boxes to 20
    2009-03-05 11:39:10 +0100 fs  r268887 : do not display empty error messages
    2009-03-02 10:13:57 +0100 lla  r268639 : #i91541# CWS rebase m41 to m42
    2009-03-02 09:06:27 +0100 lla  r268635 : #i10000# add ';' to strings
    2009-02-26 11:18:00 +0100 fs  r268492 : reportdesign depends on REPORTBUILDER, not REPORTDESIGN
    2009-02-26 10:11:38 +0100 lla  r268489 : CWS-TOOLING: rebase CWS dba32b to trunk at 268395 (milestone: DEV300:m42)
    2009-02-26 09:04:11 +0100 lla  r268488 : CWS-TOOLING: rebase CWS dba32b to trunk at 268395 (milestone: DEV300:m42)
    2009-02-24 12:09:13 +0100 lla  r268392 : #i91541# #i91542# cleanups
    2009-02-24 08:08:06 +0100 lla  r268382 : merge all dba32a changes into dba32b
    2009-02-24 07:14:55 +0100 lla  r268381 : merge all dba32a changes into dba32b
    2009-02-23 21:44:28 +0100 fs  r268377 : oops ... don't tamper with m_aListSourceValues at the end of loadData
    2009-02-23 20:57:05 +0100 fs  r268376 : #i98162# don't hold the values as strings, but as ORowSetValue, this way preserving their type, and being agnostic to different result/rowset implementations doing different to-string-conversations
    2009-02-23 20:55:44 +0100 fs  r268375 : getObject: throwFunctionNotSupportedException, instead of silently returning NULL
    2009-02-23 20:55:20 +0100 fs  r268374 : #i98162# some more supported types
    2009-02-23 20:54:43 +0100 fs  r268373 : #i98162# +operator !=
    2009-02-20 09:35:39 +0100 fs  r268306 : #i99422# for a font, display the font name, the style, and the size
    2009-02-20 09:33:45 +0100 fs  r268305 : #i99422# in the property browser, FONT supersedes CHARFONTNAME: the aggregated FormComponentHandler displays them more nicely now
    2009-02-19 16:12:06 +0100 fs  r268293 : #i99372# recognize DataType::FLOAT as numeric
    2009-02-19 15:43:12 +0100 fs  r268291 : #i99415#
    2009-02-19 15:40:15 +0100 fs  r268290 : #i99242# lcl_firstFocussableControl: take disabled controls into account
    2009-02-19 15:34:36 +0100 fs  r268289 : #i99396# properly decode the base name of the URL when using it as title
    2009-02-19 15:19:05 +0100 fs  r268287 : #i98247#

diff --git a/offapi/com/sun/star/form/component/CommandButton.idl b/offapi/com/sun/star/form/component/CommandButton.idl
index 650b1bd..f6c4de8 100644
--- a/offapi/com/sun/star/form/component/CommandButton.idl
+++ b/offapi/com/sun/star/form/component/CommandButton.idl
@@ -30,25 +30,12 @@
 #ifndef __com_sun_star_form_component_CommandButton_idl__ 
 #define __com_sun_star_form_component_CommandButton_idl__ 
  
-#ifndef __com_sun_star_form_FormControlModel_idl__ 
 #include <com/sun/star/form/FormControlModel.idl> 
-#endif 
- 
-#ifndef __com_sun_star_awt_UnoControlButtonModel_idl__ 
 #include <com/sun/star/awt/UnoControlButtonModel.idl> 
-#endif 
- 
-#ifndef __com_sun_star_form_XImageProducerSupplier_idl__ 
 #include <com/sun/star/form/XImageProducerSupplier.idl> 
-#endif 
- 
-#ifndef __com_sun_star_form_XApproveActionBroadcaster_idl__ 
 #include <com/sun/star/form/XApproveActionBroadcaster.idl> 
-#endif 
- 
-#ifndef __com_sun_star_form_FormButtonType_idl__ 
 #include <com/sun/star/form/FormButtonType.idl> 
-#endif 
+#include <com/sun/star/form/XReset.idl> 
  
  
 //============================================================================= 
@@ -101,6 +88,28 @@ published service CommandButton
         @see com::sun::star::form::FormButtonType
      */
     [property] string TargetURL; 
+
+    /** specifies the default toggle state for the button, used when it is reset.
+
+        <p>This property is meaningful only when <member scope="com::sun::star::awt">UnoControlButtonModel::Toggle</member>
+        is <TRUE/>. In this case, the <code>DefaultState</code> controls to which <code>State</code> the button will
+        be reset.</p>
+
+        <p>For a given implementation of the interface, if this (optional) property is present, then also the optional
+        interface <type scope="com::sun::star::form">XReset</type> must be present.</p>
+    */
+    [optional, property] boolean DefaultState;
+
+    /** allows resetting the button
+
+        <p>This property is meaningful only when <member scope="com::sun::star::awt">UnoControlButtonModel::Toggle</member>
+        is <TRUE/>. In this case, the <code>DefaultState</code> controls to which <code>State</code> the button will
+        be reset, when <member scope="com::sun::star::form">XReset::reset</member> is invoked.</p>
+
+        <p>For a given implementation of the interface, if this (optional) interface is present, then also the optional
+        property <member>DefaultState</member> must be present.</p>
+    */
+    [optional] interface ::com::sun::star::form::XReset;
 }; 
  
 //============================================================================= 
diff --git a/offapi/com/sun/star/report/XReportControlFormat.idl b/offapi/com/sun/star/report/XReportControlFormat.idl
index caaa410..55e8590 100644
--- a/offapi/com/sun/star/report/XReportControlFormat.idl
+++ b/offapi/com/sun/star/report/XReportControlFormat.idl
@@ -30,21 +30,14 @@
 #ifndef __com_sun_star_report_XReportControlFormat_idl__ 
 #define __com_sun_star_report_XReportControlFormat_idl__ 
 
-#ifndef __com_sun_star_awt_FontDescriptor_idl__
 #include <com/sun/star/awt/FontDescriptor.idl>
-#endif
-#ifndef __com_sun_star_util_Color_idl__
-#include <com/sun/star/util/Color.idl>
-#endif
-#ifndef __com_sun_star_beans_XPropertySet_idl__ 
-#include <com/sun/star/beans/XPropertySet.idl> 
-#endif
-#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 
+#include <com/sun/star/awt/FontSlant.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
 #include <com/sun/star/lang/IllegalArgumentException.idl> 
-#endif
 #include <com/sun/star/lang/Locale.idl>
-#include <com/sun/star/awt/FontSlant.idl>
-
+#include <com/sun/star/style/ParagraphAdjust.idl>
+#include <com/sun/star/style/VerticalAlignment.idl>
+#include <com/sun/star/util/Color.idl>
 //============================================================================= 
  
  module com {  module sun {  module star {  module report {  
@@ -70,15 +63,8 @@ interface XReportControlFormat
         get raises ( com::sun::star::beans::UnknownPropertyException );
     };
 
-    /** specifies the horizontal alignment of the text in the control. 
-                
-        <pre>
-        0: left
-        1: center
-        2: right
-        </pre>
-
-        @since OOo 2.0.0
+    /** specifies the horizontal alignment of the text. 
+        @see ::com::sun::star::style::ParagraphAdjust
      */
     [attribute,bound] short ParaAdjust
     {
@@ -414,11 +400,12 @@ interface XReportControlFormat
     };
 
     /** specifies the vertical alignment of the text in the control.
-        @see com::sun::star::text::ParagraphVertAlign
+        @see com::sun::star::style::VerticalAlignment
      */
-    [attribute,bound] short ParaVertAlignment
+    [attribute,bound] com::sun::star::style::VerticalAlignment VerticalAlign
     {
-        set raises ( com::sun::star::lang::IllegalArgumentException );
+        set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+        get raises ( com::sun::star::beans::UnknownPropertyException );
     };
 
     //-------------------------------------------------------------------------
diff --git a/offapi/com/sun/star/report/XReportEngine.idl b/offapi/com/sun/star/report/XReportEngine.idl
index 3be2683..1e12f32 100644
--- a/offapi/com/sun/star/report/XReportEngine.idl
+++ b/offapi/com/sun/star/report/XReportEngine.idl
@@ -153,6 +153,13 @@ interface XReportEngine
     /** specifies the status indicator which shows the progress of the report generation process.
     */
     [attribute] com::sun::star::task::XStatusIndicator StatusIndicator;
+
+    /** defines the maximum number of rows which should be fetched for the report.
+        If the limit is exceeded, the excess rows are silently dropped.
+        <br/>
+        There is no limitation, if set to zero.
+     */
+    [attribute,bound] long MaxRows;
 };
 
 //=============================================================================
diff --git a/offapi/com/sun/star/sdb/ErrorCondition.idl b/offapi/com/sun/star/sdb/ErrorCondition.idl
index 0c288d8..542674c 100644
--- a/offapi/com/sun/star/sdb/ErrorCondition.idl
+++ b/offapi/com/sun/star/sdb/ErrorCondition.idl
@@ -141,6 +141,20 @@ constants ErrorCondition
         database, which did not exist at that time.
     */
     const long DB_NOT_CONNECTED = 304;
+
+    // ========================================================================
+    // = section AB - address book access related error conditions
+    // =
+    // = next section should start with 550
+
+    /** used by the component implementing address book access to indicate that a requested address book could
+        not be accessed.
+
+        <p>For instance, this error code is used when you try to access the address book
+        in a Thunderbird profile named <q>MyProfile</q>,  but there does not exist a profile
+        with this name.</p>
+    */
+    const long AB_ADDRESSBOOK_NOT_FOUND = 500;
 };
 
 //=============================================================================
diff --git a/offapi/com/sun/star/sdb/RowSet.idl b/offapi/com/sun/star/sdb/RowSet.idl
index 1c36a86..07a16fd 100644
--- a/offapi/com/sun/star/sdb/RowSet.idl
+++ b/offapi/com/sun/star/sdb/RowSet.idl
@@ -216,7 +216,8 @@ published service RowSet
         the <type scope="com::sun::star::sdbc">XParameters</type> interface.<br/>
         However, you can also choose to let an interaction handler supply such data. For this, you may
         for instance instantiate an <type>InteractionHandler</type>, which asks the user for the
-        data, or you may write your own one, which supplies the data from somewhere else.</p>
+        data, or you may write your own one, which supplies the data from somewhere else.
+        The default implementation will only ask for parameters which aren't set before through the <type scope="com::sun::star::sdbc">XParameters</type> interface.</p>
 
         @see com::sun::star::sdb::InteractionHandler
     */
diff --git a/udkapi/com/sun/star/container/EnumerableMap.idl b/udkapi/com/sun/star/container/EnumerableMap.idl
new file mode 100644
index 0000000..77183a6
--- /dev/null
+++ b/udkapi/com/sun/star/container/EnumerableMap.idl
@@ -0,0 +1,139 @@
+/*************************************************************************
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+* 
+* Copyright 2009 by Sun Microsystems, Inc.
+*
+* 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
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+************************************************************************/
+
+#ifndef __com_sun_star_container_Map_idl__
+#define __com_sun_star_container_Map_idl__
+
+#include <com/sun/star/beans/IllegalTypeException.idl>
+#include <com/sun/star/beans/Pair.idl>
+#include <com/sun/star/container/XEnumerableMap.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module container { 
+
+//=============================================================================
+
+/** provides a default <type>XEnumerableMap</type> implementation
+
+    <p>For the keys put into the map using <member>XMap::put</member> or <member>createImmutable</member>,
+    the following rules apply:
+    <a name="keyrules"></a>
+    <ul><li>A <VOID/> key is not allowed.</li>
+        <li>If the key type is <code>BOOLEAN</code>, <code>CHAR</code>, <code>FLOAT</code>, <code>DOUBLE</code>,
+            <code>STRING</code>, <code>TYPE</code>, or <code>UNSIGNED HYPER</code>, then only keys of exactly this
+            type are accepted.</li>
+        <li>If the key type is <code>DOUBLE</code> or <code>FLOAT</code>, then <code>Double.NaN</code> respectively
+            <code>Float.NaN</code> is not accepted as key.</li>
+        <li>If the key type's class is <member scope="com::sun::star::uno">TypeClass::ENUM</member>, then only keys
+            of exactly this type are accepted.</li>
+        <li>If the key type is any of <code>BYTE</code>, <code>SHORT</code>, <code>UNSIGNED SHORT</code>,
+            <code>LONG</code>, <code>UNSIGNED LONG</code>, or <code>HYPER</code>, then all keys which can losslessly
+            be converted to this type (possibly using widening conversions) are accepted.</li>
+        <li>If the key type is an interface type, then all key values denoting objects which can be queried for
+            the given interface are accepted.</li>
+        <li>All other key types are rejected.</li>
+    </ul></p>
+
+    <p>For the values put into the map using <member>XMap::put</member> or <member>createImmutable</member>,
+    the following rules apply:
+    <a name="valuerules"></a>
+    <ul><li>The <VOID/> value will be accepted to be put into the map.</p>
+        <li>If the value type's class is <member scope="com::sun::star::uno">TypeClass::ANY</member>, any value
+            will be accepted.</li>
+        <li>If the value type is an interface type, then all values denoting objects which can be queried for
+            the given interface are accepted.</li>
+        <li>If the value type's class is <member scope="com::sun::star::uno">TypeClass::EXCEPTION</member>
+            or <member scope="com::sun::star::uno">TypeClass::STRUCT</member>, then values whose type equals the
+            value type, or is a sub class of the value type, are accepted.</li>
+        <li>For all other value types, only values whose type matches exactly are accepted.</li>
+        <li>If the value type is <code>DOUBLE</code> or <code>FLOAT</code>, then <code>Double.NaN</code> respectively
+            <code>Float.NaN</code> is not accepted.</li>
+    </ul></p>
+
+    <p>The factory methods of the <code>XEnumerableMap</code> interface support both <em>isolated</em>
+    and <em>non-isolated</em> enumerators. The latter one will be automatically disposed when the map changes
+    after enumerator creation, so every attempt to use them will result in a
+    <type scope="com::sun::star::lang">DisposedException</type> being thrown.</p>
+
+    @see http://udk.openoffice.org/common/man/typesystem.html
+*/
+service EnumerableMap : XEnumerableMap
+{
+    /** creates an instance mapping from the given key type to the given value type
+
+        @param KeyType
+            denotes the type of the keys in the to-be-created map
+        @param ValueType
+            denotes the type of the values in the to-be-created map
+
+        @throws ::com::sun::star::beans::IllegalTypeException
+            if <arg>KeyType</arg> or <arg>ValueType</arg> are unsupported types.
+            For values, all type classes except <member scope="com::sun::star::uno">TypeClass::VOID</member>
+            and <member scope="com::sun::star::uno">TypeClass::UNKNOWN</member> are accepted.
+            For keys, scalar types, strings, <type scope="com::sun::star::uno">Type</type> itself, and interface
+            types are accepted.
+    */
+    create( [in] type KeyType, [in] type ValueType )
+        raises( ::com::sun::star::beans::IllegalTypeException );
+
+    /** creates an instance mapping from the given key type to the given value type
+
+        <p>The resulting map is immutable, so later alter operations on it will fail
+        with a <type scope="com::sun::star::lang">NoSupportException</type>.</p>
+
+        @param KeyType
+            denotes the type of the keys in the to-be-created map
+        @param ValueType
+            denotes the type of the values in the to-be-created map
+        @param Values
+            denote the values contained in the to-be-created map
+
+        @throws ::com::sun::star::beans::IllegalTypeException
+            if <arg>KeyType</arg> or <arg>ValueType</arg> are unsupported types.
+            For values, all type classes except <member scope="com::sun::star::uno">TypeClass::VOID</member>
+            are accepted.<br/>
+            For keys, scalar types, strings, <type scope="com::sun::star::uno">Type</type> itself, and interface
+            types are accepted.
+        @throws ::com::sun::star::lang::IllegalArgumentException
+            if any of the given values or keys violates the <a href="#keyrules">key rules</a> or
+            <a href="#valuerules">value rules</a>.
+    */
+    createImmutable(
+        [in] type KeyType,
+        [in] type ValueType,
+        [in] sequence< ::com::sun::star::beans::Pair< any, any > > Values
+    )
+        raises( ::com::sun::star::beans::IllegalTypeException,
+                ::com::sun::star::lang::IllegalArgumentException );
+};
+
+//=============================================================================
+
+}; }; }; }; 
+
+//=============================================================================
+
+#endif
diff --git a/udkapi/com/sun/star/container/XEnumerableMap.idl b/udkapi/com/sun/star/container/XEnumerableMap.idl
new file mode 100644
index 0000000..23b420d
--- /dev/null
+++ b/udkapi/com/sun/star/container/XEnumerableMap.idl
@@ -0,0 +1,108 @@
+/*************************************************************************
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+* 
+* Copyright 2009 by Sun Microsystems, Inc.
+*
+* 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
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+************************************************************************/
+
+#ifndef __com_sun_star_container_XEnumerableMap_idl__
+#define __com_sun_star_container_XEnumerableMap_idl__
+
+#include <com/sun/star/container/XMap.idl>
+#include <com/sun/star/container/XEnumeration.idl>
+#include <com/sun/star/lang/NoSupportException.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module container { 
+
+//=============================================================================
+
+/** extends <type>XMap</type> with enumeration capabilities.
+
+    <p>No assumption should be made about the ordering of the elements returned by the various enumerators.
+    In particular, you cannot assume the elements are returned in the same order as they were inserted. Also,
+    you should not expect the <code>XMap</code> implementation to make use of a possibly existing strict ordering
+    defined on the domain of all possible key values.</p>
+
+    <p>You can create enumerators for the keys of the map, its values, and its key-value pairs.</p>
+
+    <p>In all cases, you can create an <em>isolated</em> enumerator, which works on a copy of the
+    map's content. Such an iterator is not affected by changes done to the map after creation of
+    the enumerator.</p>
+
+    <p>On the contrary, an enumerator which is <em>non-isolated</em> works directly on the map data.
+    This is less expensive than an <em>isolated</em> enumerator, but means that changes to the map while
+    an enumeration is running potentially invalidate your enumerator. The concrete behavior in this
+    case is undefined, it's up to the service implementing the <code>XEnumerableMap</code> interface
+    to specify it in more detail.</p>
+
+    <p>Implementations of this interface might decide to support only <em>isolated</em> enumerators, or
+    only <em>non-isolated</em> enumerators. Again, it's up to the service to specify this. Requesting an
+    enumerator type which is not supported will generally result in an <type scope="com::sun::star::lang">NoSupportException</type>
+    being thrown.</p>
+ */
+interface XEnumerableMap : XMap
+{
+    /** creates a enumerator for the keys of the map
+
+        @param Isolated
+            controls whether the newly create enumerator should be isolated from the map.
+
+        @throws ::com::sun::star::lang::NoSupportException
+            if the specified enumerator method is not supported by the implementation.
+    */
+    XEnumeration createKeyEnumeration( [in] boolean Isolated )
+        raises ( ::com::sun::star::lang::NoSupportException );
+
+    /** creates a enumerator for the values of the map
+
+        @param Isolated
+            controls whether the newly create enumerator should be isolated from the map.
+
+        @throws ::com::sun::star::lang::NoSupportException
+            if the specified enumerator method is not supported by the implementation.
+    */
+    XEnumeration createValueEnumeration( [in] boolean Isolated )
+        raises ( ::com::sun::star::lang::NoSupportException );
+
+    /** creates a enumerator for the key-value pairs of the map
+
+        <p>The elements returned by the enumerator are instances of <type scope="com::sun::star::beans">Pair</type>,
+        holding the key-value-pairs which are part of the map.</p>
+
+        @param Isolated
+            controls whether the newly create enumerator should be isolated from the map.
+
+        @throws ::com::sun::star::lang::NoSupportException
+            if the specified enumerator method is not supported by the implementation.
+    */
+    XEnumeration createElementEnumeration( [in] boolean Isolated )
+        raises ( ::com::sun::star::lang::NoSupportException );
+};
+
+//=============================================================================
+
+}; }; }; }; 
+
+//=============================================================================
+
+#endif
diff --git a/udkapi/com/sun/star/container/XMap.idl b/udkapi/com/sun/star/container/XMap.idl
new file mode 100644
index 0000000..8cb3fa6
--- /dev/null
+++ b/udkapi/com/sun/star/container/XMap.idl
@@ -0,0 +1,201 @@
+/*************************************************************************
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+* 
+* Copyright 2009 by Sun Microsystems, Inc.
+*
+* 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
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+************************************************************************/
+
+#ifndef __com_sun_star_container_XMap_idl__
+#define __com_sun_star_container_XMap_idl__
+
+#include <com/sun/star/beans/IllegalTypeException.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/container/NoSuchElementException.idl>
+#include <com/sun/star/lang/NoSupportException.idl>
+#include <com/sun/star/container/XElementAccess.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module container { 
+
+//=============================================================================
+
+/** describes a map between keys and values.
+
+    <p>Keys in the map are unique, and each key maps to exactly one value.</p>
+
+    <p>Locating elements in the map, both values and keys, requires a notion of equality of two objects.
+    In conformance with the <a href="http://udk.openoffice.org/common/man/typesystem.html">UNO type system</a>,
+    two values are said to be equal if and only if they have the same type, and both denote the same element of this
+    type's value set.</p>
+
+    @see <type>Map</type> for a default implementation of this interface
+*/
+interface XMap
+{
+    interface XElementAccess;
+
+    /** denotes the type of the keys in the map.
+
+        <p>Implementations are free to accept any supertype of <code>KeyType</code> as keys.</p>
+    */
+    [attribute, readonly]   type    KeyType;
+
+    /** denotes the type of the values in the map.
+
+        <p>Implementations are free to accept any supertype of the <code>ValueType</code> as values.</p>
+    */
+    [attribute, readonly]   type    ValueType;
+
+    /** clears the map, removing all key-value pairs from it.
+
+        @throws ::com::sun::star::beans::NoSupportException
+            if the map is not mutable.
+    */
+    void clear()
+        raises( ::com::sun::star::lang::NoSupportException );
+
+    /** determines whether a mapping for he given key exists in the map
+
+        @param Key
+            is the key whose presence in the map is to be tested.
+        @return
+            <TRUE/> if and only if the map contains a mapping for the given key.
+
+        @throws ::com::sun::star::beans::IllegalTypeException
+            if the given key is not of a type which is accepted by the map
+        @throws ::com::sun::star::lang::IllegalArgumentException
+            if the given key is not supported to be put into the map. It's up to the service
+            implementing the <code>XMap</code> interface to specify which special values are not
+            supported. For instances, implementations might decide to not allow <VOID/> keys, or
+            to reject <code>Double.NaN</code> (<em>not a number</em>) to due its problematic
+            behavior with respect to equality.
+    */
+    boolean containsKey( [in] any Key )
+        raises( ::com::sun::star::beans::IllegalTypeException,
+                ::com::sun::star::lang::IllegalArgumentException );
+
+    /** determines whether the map contains a mapping to a given value.
+
+        @param Value
+            is the value whose presence in the map is to be tested.
+        @return
+            <TRUE/> if and only one or more keys map to the given value.
+
+        @throws ::com::sun::star::beans::IllegalTypeException
+            if the given value is not of a type which is accepted by the map. It's up to the service
+            implementing the <code>XMap</code> interface to specify which special values are not
+            supported. For instances, implementations might decide to not allow <code>Double.NaN</code>
+            (<em>not a number</em>) to due its problematic behavior with respect to equality.
+        @throws ::com::sun::star::lang::IllegalArgumentException
+            if the given value is not supported to be put into the map.
+    */
+    boolean containsValue( [in] any Value )
+        raises( ::com::sun::star::beans::IllegalTypeException,
+                ::com::sun::star::lang::IllegalArgumentException );
+
+    /** gets the value to which a given key maps.
+
+        @param Key
+            they key whose associated value is to be returned.
+        @return
+            the value which is associated with the given key.
+
+        @throws ::com::sun::star::beans::IllegalTypeException
+            if the given key is not of a type which is accepted by the map
+        @throws ::com::sun::star::beans::IllegalArgumentException
+            if the given key is not supported to be put into the map. It's up to the service
+            implementing the <code>XMap</code> interface to specify which special values are not
+            supported. For instances, implementations might decide to not allow <VOID/> keys, or
+            to reject <code>Double.NaN</code> (<em>not a number</em>) to due its problematic
+            behavior with respect to equality.
+        @throws ::com::sun::star::container::NoSuchElementException
+            if there is no value associated with the given key
+    */
+    any     get( [in] any Key )
+        raises( ::com::sun::star::beans::IllegalTypeException,
+                ::com::sun::star::lang::IllegalArgumentException,
+                ::com::sun::star::container::NoSuchElementException );
+
+    /** associates a given key with a given value
+
+        <p>If the map already contains a mapping for the given key, then the old value is replaced by the
+        given new value.</p>
+
+        @param Key
+            is the key which the given value should be associated with
+        @param Value
+            is the value which should be associated with the given key
+        @return
+            the value which was previously associated with the given key, or <VOID/>
+            if there was no such previous association.
+
+        @throws ::com::sun::star::beans::IllegalTypeException
+            if the given key is not of a type which is accepted by the map
+        @throws ::com::sun::star::lang::IllegalArgumentException
+            if the given key, or the given value, is not supported to be put into the map. It's up to
+            the service implementing the <code>XMap</code> interface to specify which special values
+            are not supported.<br/>
+            For instances, implementations might decide to not allow <VOID/> keys or values, or to
+            reject <code>Double.NaN</code> (<em>not a number</em>) to due its problematic behavior
+            with respect to equality.
+        @throws ::com::sun::star::beans::NoSupportException
+            if the map does not support putting new mappings into it
+    */
+    any     put( [in] any Key, [in] any Value )
+        raises( ::com::sun::star::lang::NoSupportException,
+                ::com::sun::star::beans::IllegalTypeException,
+                ::com::sun::star::lang::IllegalArgumentException );
+
+    /** removes a key-value mapping, given by key, from the map.
+
+        @param Key
+            is the key whose mapping should be removed from the map
+        @return
+            the value which was associated with the given key before the removal
+
+        @throws ::com::sun::star::beans::IllegalTypeException
+            if the given key is not of a type which is accepted by the map
+        @throws ::com::sun::star::lang::IllegalArgumentException
+            if the given key is not supported to be put into the map. It's up to the service
+            implementing the <code>XMap</code> interface to specify which special values are not
+            supported. For instances, implementations might decide to not allow <VOID/> keys, or
+            to reject <code>Double.NaN</code> (<em>not a number</em>) to due its problematic
+            behavior with respect to equality.
+        @throws ::com::sun::star::beans::NoSupportException
+            if the map does not support removing mappings
+        @throws ::com::sun::star::container::NoSuchElementException
+            if there is no value associated with the given key
+    */
+    any     remove( [in] any Key )
+        raises( ::com::sun::star::lang::NoSupportException,
+                ::com::sun::star::beans::IllegalTypeException,
+                ::com::sun::star::lang::IllegalArgumentException,
+                ::com::sun::star::container::NoSuchElementException );
+};
+
+//=============================================================================
+
+}; }; }; }; 
+
+//=============================================================================
+
+#endif
diff --git a/udkapi/com/sun/star/container/makefile.mk b/udkapi/com/sun/star/container/makefile.mk
index f78f338..07b4362 100644
--- a/udkapi/com/sun/star/container/makefile.mk
+++ b/udkapi/com/sun/star/container/makefile.mk
@@ -47,6 +47,7 @@ IDLFILES=\
     XIdentifierContainer.idl\
     ContainerEvent.idl\
     ElementExistException.idl\
+    EnumerableMap.idl\
     NoSuchElementException.idl\
     XChild.idl\
     XUniqueIDAccess.idl\
@@ -59,6 +60,7 @@ IDLFILES=\
     XContainerQuery.idl\
     XContentEnumerationAccess.idl\
     XElementAccess.idl\
+    XEnumerableMap.idl\
     XEnumeration.idl\
     XEnumerationAccess.idl\
     XHierarchicalName.idl\
@@ -71,6 +73,7 @@ IDLFILES=\
     XIndexAccess.idl\
     XIndexContainer.idl\
     XIndexReplace.idl\
+    XMap.idl\
     XNameAccess.idl\
     XNameContainer.idl\
     XNamed.idl\


More information about the ooo-build-commit mailing list