diff options
Diffstat (limited to 'offapi/com/sun/star/sdb/application/DefaultViewController.idl')
-rw-r--r-- | offapi/com/sun/star/sdb/application/DefaultViewController.idl | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/offapi/com/sun/star/sdb/application/DefaultViewController.idl b/offapi/com/sun/star/sdb/application/DefaultViewController.idl new file mode 100644 index 000000000..c41879e57 --- /dev/null +++ b/offapi/com/sun/star/sdb/application/DefaultViewController.idl @@ -0,0 +1,92 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_sdb_application_DefaultViewController_idl__ +#define __com_sun_star_sdb_application_DefaultViewController_idl__ + +#include <com/sun/star/frame/Controller.idl> +#include <com/sun/star/ui/XContextMenuInterception.idl> +#include <com/sun/star/awt/XUserInputInterception.idl> +#include <com/sun/star/view/XSelectionSupplier.idl> +#include <com/sun/star/frame/XTitle.idl> +#include <com/sun/star/frame/XTitleChangeBroadcaster.idl> +#include <com/sun/star/sdb/application/XDatabaseDocumentUI.idl> + + +module com { module sun { module star { module sdb { module application { + + +/** is the default controller implementation for OpenOffice.org's database application. + */ +service DefaultViewController +{ + /** defines basic controller functionality + */ + service ::com::sun::star::frame::Controller; + + /** allows intercepting context menu requests done by the user + + <p>The ::com::sun::star::ui::ContextMenuExecuteEvent::Selection member + of the event passed to an interceptor will <em>not</em> be the controller itself + (though the controller also supports the <a href="#XSelectionSupplier"><code>XSelectionSupplier</code></a> + interface), but a component which describes the current selection of the very window where the context + menu was requested.</p> + + <p>In OpenOffice.org's database application, database objects such as tables, queries, forms, + reports are displayed in a tree-like fashion. Currently, only context menu requests on this tree view + can be intercepted using the <code>XContextMenuInterception</code> interface. Context menu requests + in other places cannot be intercepted.</p> + + <p>For the aforementioned tree view, the selection supplied by the <code>ContextMenuEvent::Selection</code> + component is an array of NamedDatabaseObject instances.</p> + */ + interface ::com::sun::star::ui::XContextMenuInterception; + + /** allows intercepting user input done by the user + */ + interface ::com::sun::star::awt::XUserInputInterception; + + /** <a name="XSelectionSupplier"></a> + provides access to the current selection inside the application window, and allows to change it + programmatically + + <p>The selection is an array of NamedDatabaseObject instances.</p> + */ + interface ::com::sun::star::view::XSelectionSupplier; + + /** allows to retrieve and set the title which of the component + */ + interface ::com::sun::star::frame::XTitle; + + /** allows being notified about changes in the component's title + */ + interface ::com::sun::star::frame::XTitleChangeBroadcaster; + + /** allows programmatic access to aspects of the application's user interface. + */ + interface XDatabaseDocumentUI; +}; + + +}; }; }; }; }; + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |