From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001
From: Daniel Baumann
+ This service implements a user interface for browsing data sources registered on the
+ com::sun::star::sdb::DatabaseContext
+ instance of the system.
+
+ It is possible to navigate through all the data sources, it's queries and it's tables.
+ The queries/tables can be displayed in a grid-like view, where functionality for searching,
+ sorting, filtering, and such is provided.
+
+ Usually, you won't instantiate this service directly, instead you use the dispatch mechanisms
+ of the application framework to load the URL .component:DB/DataSourceBrowser into an arbitrary
+ frame. This should involve a
+ com::sun::star::sdb::ContentLoader
+ service, which creates and initializes
+ the browser.
+
+ Some aspects of the browser can be controlled from outside, e.g.,
+ it is possible to dispatch a sort or filter
+ request, if a table or query is being displayed.
+ The communication between the browser and external instances works in two ways.
+
+ In particular, the supported URLs for communicating to an external instance are:
+
+ The way in is provided by the
+ com::sun::star::frame::XDispatchProvider
+ interface the service exports (Please see below for more details on this).
+
+ The way out works in another way. There are several URLs which an external
+ instance can provide dispatches for (usually by implementing a
+ com::sun::star::frame::XDispatchProviderInterceptor
+ for the parent frame of the browser), thus indicating that the browser should provide special functionality.
+
+ In this case, the browser displays and maintains some additional slots (to be more concrete: toolbox items), which,
+ upon triggering, call the
+ com::sun::star::frame::XDispatch::dispatch() method of the object
+ provided by the external instance.
+
+
+
+ Available whenever an external instance provides a dispatcher (
+ com::sun::star::frame::XDispatch)
+ for this URL.
+
+ Enabled, if at least one row in the grid view of a table or query is selected.
+
+ It is the task of the external instance to provide functionality for this URL, but usually it is used
+ to implement some kind of "Data To Text" functionality.
+
+
+ Available whenever an external instance provides a dispatcher(
+ com::sun::star::frame::XDispatch
+ ) for this URL.
+
+ Enabled, if at least one row in the grid view of a table or query is selected.
+
+ It is the task of the external instance to provide functionality for this URL, but usually it is used
+ to implement some kind of "Data To Fields" functionality.
+
+
+ Available whenever an external instance provides a dispatcher (
+ com::sun::star::frame::XDispatch) for this URL.
+
+ It is the task of the external instance to provide functionality for this URL, but usually it is used
+ to implement some kind of "Form Letter" functionality.
+
+
For all kinds of URLs, the parameters supplied during dispatching build up a DataAccessDescriptor, + where the following properties are present: +
The default for DataAccessDescriptor::Selection is to contain bookmarks, if not specified + otherwise by DataAccessDescriptor::BookmarkSelection. +
+ + @see com::sun::star::sdb::ContentLoader + @see com::sun::star::sdb::DatabaseContext + @see com::sun::star::sdb::DataSource + @see com::sun::star::frame::XDispatch + @see com::sun::star::frame::XDispatchProvider + @see com::sun::star::frame::XDispatchProviderInterceptor +*/ +published service DataSourceBrowser +{ + /** implements basic form controller functionality. ++ With a data source browser implementing this interface, external components have access to +
+ Parameters (passed to the method com::sun::star::lang::XInitialization::initialize())
+ have to be instances of com::sun::star::beans::PropertyValue, or
+ instances of com::sun::star::beans::NamedValue, where the Name
member
+ specifies what the parameter controls, with the Value
member containing the value to be used.
+
+ Recognized parameters are:
+
EnableBrowser
is `FALSE`, then this parameter is ignored. If
+ EnableBrowser
is `TRUE`, and ShowBrowser
is `FALSE`, then the control
+ is initially hidden, but can be toggled by a toolbar button.
+
+ + You may use the + com::sun::star::frame::XDispatchProvider::queryDispatch() + method + to query for objects which implement the + com::sun::star::frame::XDispatch + interface, + and which allow you to be notified on status changes and to dispatch special requests. +
++ The recognized URLs are: +
Context menu interception is currently supported only for the browser control where the registered + data sources and all their tables and queries are displayed in a tree view.
+ +The selection supplied by com::sun::star::ui::ContextMenuExecuteEvent::Selection, + in the event structure passed to the context menu interceptors, actually is a value from the + com::sun::star::sdb::application::NamedDatabaseObject group.
+ + @since OOo 3.0 + */ + [optional] interface ::com::sun::star::ui::XContextMenuInterception; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3